以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 求代码 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=60482) |
-- 作者:seal51 -- 发布时间:2014/11/25 17:18:00 -- 求代码 订单主表有个“已开票”逻辑列, 订单明细表有个“开票编号”列, 如果开票编号列的内容不为空, 那么已开票=TRUE, 这个代码如何写 |
-- 作者:有点甜 -- 发布时间:2014/11/25 17:22:00 -- 问题要详细一点啊,一行对应一行? 开票编号是关联列? |
-- 作者:Bin -- 发布时间:2014/11/25 17:22:00 -- datacolchanged 事件 if e.datacol.name="开票编号" then if e.datarow.isnull(e.datacol.name) = false then e.datarow("已开票")=true end if end if
|
-- 作者:seal51 -- 发布时间:2014/11/25 17:23:00 -- 不是关联列, 关联列是订单编号 |
-- 作者:有点甜 -- 发布时间:2014/11/25 17:25:00 -- If e.DataCol.Name = "开票编号" Then Dim count As Integer = e.DataTable.Compute("Count(开票编号)", "主表编号 = \'" & e.DataRow("主表编号") & "\' and 开票编号 is not null") Dim rcount As Integer = e.DataTable.Compute("Count(开票编号)", "主表编号 = \'" & e.DataRow("主表编号") & "\'") Dim fdr As DataRow = DataTables("订单").Find("主表编号 = \'" & e.DataRow("主表编号") & "\'") If count = rcount Then fdr("已开票") = True Else fdr("已开票") = False End If End If |
-- 作者:seal51 -- 发布时间:2014/11/25 17:26:00 -- 我来测试一下, 谢谢老师! |
-- 作者:seal51 -- 发布时间:2014/11/25 17:29:00 -- 写在子表的datacolchanged 事件里吗? |
-- 作者:有点甜 -- 发布时间:2014/11/25 17:35:00 -- 是的 |
-- 作者:seal51 -- 发布时间:2014/11/25 17:42:00 -- 成功了, 谢谢老师, 但如果清空开票编号, 已开票=false, 怎么搞呢 |
-- 作者:有点甜 -- 发布时间:2014/11/25 17:43:00 -- 呃,上面的代码,就是 |