以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 【求助】狐表综合应用场景求助 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=151039) |
||||
-- 作者:chen_sheng -- 发布时间:2020/6/13 14:11:00 -- 【求助】狐表综合应用场景求助 如何用生产单明细+对应明细的【工艺档案】=生产工票 这里面涉及复杂运算,运算条件写在【工艺档案】【工序条件/单价公式】列 此种应用场景多次搜索论坛都不得解,请求官方及高人给予帮助及指导谢谢! |
||||
-- 作者:有点蓝 -- 发布时间:2020/6/13 14:18:00 -- 没看懂。请使用文字详细说明有什么问题?要做什么? |
||||
-- 作者:chen_sheng -- 发布时间:2020/6/13 14:31:00 -- 感谢蓝版的及时回帖 这里需要解决问题如下 【生产单明细】+【工艺档案】= 【生产工票】 实现原理 类似于 【销售订单明细】+【对应的BOM】=【套料单】 唯一不一样的是 【工艺档案】有【工序条件/单价公式】两个公式需要参与运算后再生成 【生产工票】 【工序条件】公式实例: case when ([家具名称] like \'%酒柜%\' and [厚] <= 450 ) then [平方数]*8 when ([家具名称] like \'%酒柜%\' and [厚] > 450 ) then [平方数]*5 when [家具名称] like \'%博古架%\' then [平方数]*10 when [家具名称] like \'%衣柜%\' or [家具名称] like \'%榻榻米%\' or [家具名称] like \'%衣帽间%\' then [平方数]*5 else [平方数]*8 end 【单价公式】实例: [单号] like \'G%\' and [家具名称] not like \'%不试装%\' 这是想用狐表翻写下之前的程序 这个逻辑困扰了很久实在是不得法 没有想通咋解决! [此贴子已经被作者于2020/6/13 14:35:08编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2020/6/13 14:36:00 -- 我不懂这些业务。您要告诉我的是这两个公式需要怎么用,怎么参与运算? |
||||
-- 作者:chen_sheng -- 发布时间:2020/6/13 14:48:00 -- 蓝版请结合下图及说明来理解需要
1.根据生产单 及 生产单.工艺档案 生成生产工票 2.满足条件的 【单价公式】 【值】生成到 生产工票【单价】列 3.满足条件的 【工序条件】 【值】生成到 生产工票【满足工序条件】列 ; 4.【工序条件】 没有设置工序条件的 默认为满足条件 5.生产工票【行号】=生产单.行号+三位流水号 6.其他列数据生成到对应列 [此贴子已经被作者于2020/6/13 15:53:43编辑过]
|
||||
-- 作者:chen_sheng -- 发布时间:2020/6/13 15:46:00 -- 顶顶 希望蓝版尽快看到 优化了一下生产工票表
[此贴子已经被作者于2020/6/13 15:54:46编辑过]
|
||||
-- 作者:有点蓝 -- 发布时间:2020/6/13 16:20:00 -- 这个意思? "生产工票"datacolchanged事件 Select Case e.DataCol.Name Case "工艺编号","工序编号" Dim dr As DataRow = DataTables("工艺档案").find("产品编号=\'" & e.DataRow("工艺编号") & "\' And 工序编号=\'" & e.DataRow("工序编号") & "\'") If dr IsNot Nothing AndAlso dr.IsNull("单价公式") = False Dim sql As String = "select top 1 (" & dr("单价公式") & ") from 生产单" If dr.IsNull("工序条件") = False sql = sql & " where " & dr("工序条件") End If Dim val As Double Dim cmd As New SQLCommand cmd.CommandText = sql val = cmd.ExecuteScalar() e.DataRow("输出_单价") = val End If End Select |
||||
-- 作者:chen_sheng -- 发布时间:2020/6/13 18:23:00 -- .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2020.5.29.8 错误所在事件: 详细错误信息: IErrorInfo.GetDescription 因 E_FAIL(0x80004005) 而失败。 用sql 就不报错了 [此贴子已经被作者于2020/6/13 18:49:16编辑过]
|
||||
-- 作者:chen_sheng -- 发布时间:2020/6/13 18:31:00 -- 是想实现点击按钮生成 生产工票明细 新增显得不太智能了 生产单内的【工艺档案】都是提前做好的 下完生产单 点个按钮就生成了相应的生产工票 |
||||
-- 作者:有点蓝 -- 发布时间:2020/6/14 20:20:00 -- 先按照正常的方式填充数据:http://www.foxtable.com/webhelp/topics/1533.htm 再使用sql计算单价即可
|