以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]复制 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=157304) |
-- 作者:江南小镇 -- 发布时间:2020/10/11 22:47:00 -- [求助]复制 老师,下面代码重置审核列为不停的复制,我想在重置审核列时如果收支表的单据编号列有相同的就不复制。 If e.DataCol.Name = "审核" If e.DataRow("审核") = True Then Dim nma() As String = {"_Identify","入库单编号明细" , "入库日期","客户ID","客户名称","商品ID","商品名称","项目分类","规格","入库_数量","入库_单价","入库_单位","入库_折扣合计" } \'A表数据来源列 Dim nmb() As String = {"ID" ,"单据编号" , "日期","客户ID","客户","商品ID","项目名称","项目类别","规格","数量","单价","单位","支出" } \'B表数据接收列 e.DataRow.save Dim dr2 As DataRow = DataTables("收支表").Find("单据编号 = \'" & e.DataRow("入库单编号明细") & "\'") \'找到指定返回的行 If dr2 Is Nothing Then Dim dr3 As DataRow = DataTables("收支表").AddNew For i As Integer = 0 To nma.Length - 1 dr3(nmb(i)) = e.DataRow(nma(i)) Next dr3("来源") = "采购" \'入库表就改为"采购",其他表改为"其它" End If Else DataTables("收支表").deletefor("ID = \'" & e.DataRow("_Identify") & "\'") End If End If |
-- 作者:有点蓝 -- 发布时间:2020/10/11 23:19:00 -- 代码没有问题,如果数据没有加载,Find改为sqlFind |
-- 作者:江南小镇 -- 发布时间:2020/10/12 6:11:00 -- 老师好,数据加载了,就是重置审核列会继续复制。(重置入库明细审核列收支表单据编号列有相同的就禁止复制) [此贴子已经被作者于2020/10/12 6:18:41编辑过]
|
-- 作者:有点蓝 -- 发布时间:2020/10/12 8:36:00 -- 说明没有对应编号的数据,或者数据有问题 |
-- 作者:江南小镇 -- 发布时间:2020/10/12 9:05:00 -- 老师,重置审核列他会重复复制相同行数据,重置审核列希望复制单据编号不相同的行数据。 If e.DataCol.Name = "审核" If e.DataRow("审核") = True Then Dim nma() As String = {"_Identify","入库单编号明细" , "入库日期","客户ID","客户名称","商品ID","商品名称","项目分类","规格","入库_数量","入库_单价","入库_单位","入库_折扣合计" } \'A表数据来源列 Dim nmb() As String = {"ID" ,"单据编号" , "日期","客户ID","客户","商品ID","项目名称","项目类别","规格","数量","单价","单位","支出" } \'B表数据接收列 e.DataRow.save Dim dr2 As DataRow = DataTables("收支表").Find("单据编号 = \'" & e.DataRow("入库单编号明细") & "\'") \'找到指定返回的行 If dr2 Is Nothing Then Dim dr3 As DataRow = DataTables("收支表").AddNew For i As Integer = 0 To nma.Length - 1 dr3(nmb(i)) = e.DataRow(nma(i)) Next dr3("来源") = "采购" \'入库表就改为"采购",其他表改为"其它" End If Else DataTables("收支表").deletefor("ID = \'" & e.DataRow("_Identify") & "\'") End If End If |
-- 作者:有点蓝 -- 发布时间:2020/10/12 9:23:00 -- 请上传实例说明 |
-- 作者:江南小镇 -- 发布时间:2020/10/13 7:25:00 -- 老师好,我把下面事件MainTableChanged的代码屏蔽后重置审核列在支出表中就没有重复行了。有的表要通过重置列来更新数据我应该把代码摆到哪里。 \'DataTables("入库明细").DataCols("入库单编号明细").RaiseDataColChanged() \'DataTables("入库明细").DataCols("客户名称").RaiseDataColChanged() \'DataTables("入库明细").DataCols("商品ID").RaiseDataColChanged()
|
-- 作者:有点蓝 -- 发布时间:2020/10/13 8:44:00 -- 说明"入库明细"表格的datacolchanged事件代码之间互相有冲突。具体请上传实例说明 |
-- 作者:江南小镇 -- 发布时间:2020/10/15 4:51:00 -- 老师,我想把审核列(逻辑型)改成收支列(字符型)当收支列中出现支出字段就复制到支出表 当收支列中出现收入字段就复制到收入表 If e.DataCol.Name = "审核" If e.DataRow("审核") = True Then Dim nma() As String = {"_Identify","入库单编号明细" , "入库日期","客户ID","客户名称","商品ID","商品名称","项目分类","规格","入库_数量","入库_单价","入库_单位","入库_折扣合计" } \'A表数据来源列 Dim nmb() As String = {"ID" ,"单据编号" , "日期","客户ID","客户","商品ID","项目名称","项目类别","规格","数量","单价","单位","支出" } \'B表数据接收列 e.DataRow.save Dim dr2 As DataRow = DataTables("收支表").Find("单据编号 = \'" & e.DataRow("入库单编号明细") & "\'") \'找到指定返回的行 If dr2 Is Nothing Then Dim dr3 As DataRow = DataTables("收支表").AddNew For i As Integer = 0 To nma.Length - 1 dr3(nmb(i)) = e.DataRow(nma(i)) Next dr3("来源") = "采购" \'入库表就改为"采购",其他表改为"其它" End If Else DataTables("收支表").deletefor("ID = \'" & e.DataRow("_Identify") & "\'") End If End If
|
-- 作者:有点蓝 -- 发布时间:2020/10/15 9:05:00 -- If e.DataCol.Name = "审核" If e.DataRow("审核") = "支出" Then 对支出表的操作 ElseIf e.DataRow("审核") = "收入" Then 对收入表的操作 Else 输入其它值的操作 End If End If
|