以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助] 数据分析并用颜色管理 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=136805) |
-- 作者:sanny -- 发布时间:2019/6/21 20:20:00 -- [求助] 数据分析并用颜色管理 [此贴子已经被作者于2019/10/7 12:57:38编辑过]
|
-- 作者:有点蓝 -- 发布时间:2019/6/21 22:38:00 -- 参考:http://www.foxtable.com/webhelp/topics/1452.htm OrderList 表datacolchanged事件 If e.DataCol.Name = "PartNo" Then If e.NewValue > "" Then Dim dr As DataRow = DataTables("库存表").Find("Part=\'" & e.NewValue & "\' and Qty > 0") If dr IsNot Nothing Then e.DataRow("Color") = Color.red.ToARGB e.DataRow("缺料程度百分比") = "0%" Else e.DataRow("Color") = Nothing e.DataRow("缺料程度百分比") = Nothing End If End If End If |
-- 作者:sanny -- 发布时间:2019/6/22 9:21:00 -- 版主,
这个有点不对。这个只是找到成品,如果没有成品,可以根据BOM展开找子物料状态吗?
另外想把这个加到窗口的按钮中。 |
-- 作者:有点蓝 -- 发布时间:2019/6/22 10:06:00 -- 同样的方法使用Find函数查询即可,用法都差不多的,看懂下面代码自行扩展 DDim r As Row = Tables("OrderList").Current If r IsNot Nothing AndAlso r.IsNull("PartNo") = False Then Dim dr As DataRow = DataTables("库存表").Find("Part=\'" & r("PartNo") & "\' and Qty > 0") If dr IsNot Nothing Then r("Color") = Color.green.ToARGB r("缺料程度百分比") = "0%" Else Dim str As String = DataTables("BOM").GetComboListString("FNumber=\'" & r("PartNo") & "\'") dr As DataRow = DataTables("待检产品").Find("Part in (\'" & str.Replace("|","\',\'") & "\') and Qty > 0") If dr IsNot Nothing Then r("Color") = Color.blue.ToARGB r("缺料程度百分比") = "0%" Else r("Color") = Color.red.ToARGB r("缺料程度百分比") = Nothing End If End If End If [此贴子已经被作者于2019/6/22 10:39:58编辑过]
|
-- 作者:sanny -- 发布时间:2019/6/22 10:25:00 -- 谢谢版主,出现如下错误了。 此主题相关图片如下:捕获.jpg |
-- 作者:有点蓝 -- 发布时间:2019/6/22 10:40:00 -- Dim r As Row = Tables("OrderList").Current If r IsNot Nothing AndAlso r.IsNull("PartNo") = False Then Dim dr As DataRow = DataTables("库存表").Find("Part=\'" & r("PartNo") & "\' and Qty > 0") If dr IsNot Nothing Then r("Color") = Color.green.ToARGB r("缺料程度百分比") = "0%" Else Dim str As String = DataTables("BOM").GetComboListString("FNumber=\'" & r("PartNo") & "\'") dr As DataRow = DataTables("待检产品").Find("Part in (\'" & str.Replace("|","\',\'") & "\') and Qty > 0") If dr IsNot Nothing Then r("Color") = Color.blue.ToARGB r("缺料程度百分比") = "0%" Else r("Color") = Color.red.ToARGB r("缺料程度百分比") = Nothing End If End If End If
|
-- 作者:sanny -- 发布时间:2019/6/22 12:07:00 -- 版主,有不对,请查看。 此主题相关图片如下:捕获.jpg |
-- 作者:有点蓝 -- 发布时间:2019/6/22 13:27:00 -- dr = DataTables("待检产品").Find("Part in (\'" & str.Replace("|","\',\'") & "\') and Qty > 0") |
-- 作者:sanny -- 发布时间:2019/6/22 13:35:00 --
|
-- 作者:sanny -- 发布时间:2019/6/22 13:35:00 -- 已经纠正,可以这个结果是不对的
Dim r As Row = Tables("OrderList").Current |