以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 求助自动复制行数值为0 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=148705) |
-- 作者:沪上游客 -- 发布时间:2020/4/13 23:24:00 -- 求助自动复制行数值为0 If e.DataCol.Name = "财务编号" AndAlso e.DataRow("期末贷方余额") <> 0 Then For Each cdr As DataRow In DataTables("项目清算_应付账款").Select("[期末贷方余额] <> 0") Dim nma() As String = {"供应商名称","期末贷方余额","合同编号"} \'"项目清算_应付账款"表数据来源列 Dim nmb() As String = {"成本项目明细","未付金额","合同编号"} \'"成本计划及支出情况"表数据接收列 Dim dr As DataRow = DataTables("成本计划及支出情况").AddNew For i As Integer = 0 To nma.Length - 1 dr(nmb(i)) = cdr(nma(i)) dr("成本项目") = "应付账款" Next Next End If 老师您好! 以上代码是用窗口表自动复制行到内部表,为什么"期末贷方余额"复制到"未付金额",结果是 0 请老师指教一下,我搞了好长时间没有解决。
|
-- 作者:有点蓝 -- 发布时间:2020/4/14 9:02:00 -- 这个代码看不出什么问题,应该是有其他代码影响了。找不到问题可以上传实例看看 |
-- 作者:沪上游客 -- 发布时间:2020/4/14 11:28:00 -- 对的,谢谢老师!另外一个问题,下面代码同时在窗口AfterLoad 和 Click 中,执行时顺序不同。加了Application.DoEvents() 也无效。请老师指教。 再次感谢!
Dim pr As String = Tables("工程合同基础数据").Current("合同编号") Dim yfzkdr As DataRow yfzkdr = DataTables("项目清算_应付账款").Find("[期末贷方余额] <> 0") If yfzkdr IsNot Nothing Then DataTables("项目清算_应付账款").DataCols("财务编号").RaiseDataColChanged(yfzkdr) End If Dim cbxmdr As DataRow cbxmdr = DataTables("成本计划及支出情况").Find("[成本项目] <> \'应付账款\'") If cbxmdr IsNot Nothing Then DataTables("成本计划及支出情况").DataCols("入账金额").RaiseDataColChanged(cbxmdr) DataTables("成本计划及支出情况").DataCols("实付金额").RaiseDataColChanged(cbxmdr) Application.DoEvents() End If Tables("成本计划及支出情况").Current("成本项目") = "应付账款" Tables("成本计划及支出情况").Current("成本项目明细") = "应付款余额合计" Tables("成本计划及支出情况").Current("未付金额") = yfkkmye Tables("成本计划及支出情况").Current("合同编号") = pr |
-- 作者:沪上游客 -- 发布时间:2020/4/14 11:44:00 -- 我在“项目清算_应付账款”表事件DataColChanged设置了自动复制行代码 If e.DataCol.Name = "财务编号" AndAlso e.DataRow("期末贷方余额") <> 0 Then For Each cdr As DataRow In DataTables("项目清算_应付账款").Select("[期末贷方余额] <> 0") Dim nma() As String = {"供应商名称","期末贷方余额","合同编号"} \'"项目清算_应付账款"表数据来源列 Dim nmb() As String = {"成本项目明细","未付金额","合同编号"} \'"成本计划及支出情况"表数据接收列 Dim dr As DataRow = DataTables("成本计划及支出情况").AddNew dr("成本项目") = "应付账款" For i As Integer = 0 To nma.Length - 1 dr(nmb(i)) = cdr(nma(i)) Next Next End If 老师在按钮Click中怎么样才达到“项目清算_应付账款”表事件DataColChanged自动复制行结束后再执行以下代码新增行? Tables("成本计划及支出情况").AddNew() Tables("成本计划及支出情况").Current("成本项目") = "应付账款" Tables("成本计划及支出情况").Current("成本项目明细") = "应付款余额合计" Tables("成本计划及支出情况").Current("未付金额") = yfkkmye Tables("成本计划及支出情况").Current("合同编号") = pr [此贴子已经被作者于2020/4/14 12:08:31编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/4/14 12:09:00 -- Dim dr As DataRow = DataTables("成本计划及支出情况").AddNew 试试改为 Dim dr As Row = Tables("成本计划及支出情况").AddNew
|