Foxtable(狐表)用户栏目专家坐堂 → 【求助】狐表综合应用场景求助


  共有2024人关注过本帖树形打印复制链接

主题:【求助】狐表综合应用场景求助

帅哥哟,离线,有人找我吗?
chen_sheng
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:691 积分:6079 威望:0 精华:0 注册:2018/5/10 9:05:00
【求助】狐表综合应用场景求助  发帖心情 Post By:2020/6/13 14:11:00 [只看该作者]

如何用生产单明细+对应明细的【工艺档案】=生产工piao
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:工艺档案.table


这里面涉及复杂运算,运算条件写在【工艺档案】【工序条件/单价公式】列  

此种应用场景多次搜索论坛都不得解,请求官方及高人给予帮助及指导谢谢!


图片点击可在新窗口打开查看此主题相关图片如下:生产工piao.png
图片点击可在新窗口打开查看




 回到顶部
帅哥,在线噢!
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106665 积分:542508 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/13 14:18:00 [只看该作者]

没看懂。请使用文字详细说明有什么问题?要做什么?

 回到顶部
帅哥哟,离线,有人找我吗?
chen_sheng
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:691 积分:6079 威望:0 精华:0 注册:2018/5/10 9:05:00
  发帖心情 Post By:2020/6/13 14:31:00 [只看该作者]

感谢蓝版的及时回帖

这里需要解决问题如下

【生产单明细】+【工艺档案】= 【生产工piao】 实现原理 类似于  【销售订单明细】+【对应的BOM】=【套料单】

唯一不一样的是  【工艺档案】有【工序条件/单价公式】两个公式需要参与运算后再生成 【生产工piao

工序条件】公式实例:
 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编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106665 积分:542508 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/13 14:36:00 [只看该作者]

我不懂这些业务。您要告诉我的是这两个公式需要怎么用,怎么参与运算?

 回到顶部
帅哥哟,离线,有人找我吗?
chen_sheng
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:691 积分:6079 威望:0 精华:0 注册:2018/5/10 9:05:00
  发帖心情 Post By:2020/6/13 14:48:00 [只看该作者]

蓝版请结合下图及说明来理解需要

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:工艺档案.table

图片点击可在新窗口打开查看此主题相关图片如下:生产工piao.png
图片点击可在新窗口打开查看

1.根据生产单 及 生产单.工艺档案  生成生产工piao   
2.满足条件的  【单价公式】 【值】生成到  生产工piao【单价】列
3.满足条件的  【工序条件】 【值】生成到  生产工piao【满足工序条件】列  ;
4.【工序条件】 没有设置工序条件的 默认为满足条件
5.生产工piao【行号】=生产单.行号+三位流水号
6.其他列数据生成到对应列


图片点击可在新窗口打开查看此主题相关图片如下:生产单.png
图片点击可在新窗口打开查看

[此贴子已经被作者于2020/6/13 15:53:43编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
chen_sheng
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:691 积分:6079 威望:0 精华:0 注册:2018/5/10 9:05:00
  发帖心情 Post By:2020/6/13 15:46:00 [只看该作者]

顶顶  希望蓝版尽快看到

优化了一下生产工piao表 
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:工艺档案.table


[此贴子已经被作者于2020/6/13 15:54:46编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106665 积分:542508 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/13 16:20:00 [只看该作者]

这个意思?

"生产工piao"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
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:691 积分:6079 威望:0 精华:0 注册:2018/5/10 9:05:00
  发帖心情 Post By: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
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:三尾狐 帖子:691 积分:6079 威望:0 精华:0 注册:2018/5/10 9:05:00
  发帖心情 Post By:2020/6/13 18:31:00 [只看该作者]

是想实现点击按钮生成 生产工piao明细   新增显得不太智能了  
生产单内的【工艺档案】都是提前做好的  下完生产单 点个按钮就生成了相应的生产工piao


图片点击可在新窗口打开查看此主题相关图片如下:生成工piao.png
图片点击可在新窗口打开查看


 回到顶部
帅哥,在线噢!
有点蓝
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:106665 积分:542508 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2020/6/14 20:20:00 [只看该作者]

先按照正常的方式填充数据:http://www.foxtable.com/webhelp/topics/1533.htm

再使用sql计算单价即可

 回到顶部