Rss & SiteMap

Foxtable(狐表) http://www.foxtable.com

新一代数据库软件,完美融合Access、Foxpro、Excel、vb.net之优势,人人都能掌握的快速软件开发工具!
共5 条记录, 每页显示 10 条, 页签: [1]
[浏览完整版]

标题:SQLSELECT 与addnew冲突?

1楼
lur320 发表于:2025/4/9 11:10:00
 下面这段代码很奇怪,如何修改?

        Dim drcs As New List(Of DataRow)
        drcs = DataTables("产品检验放行状态").sqlse ect("批号='" & e.Row("批号") & "'")   筛选后台的清单
        If drcs.Count = 0 Then
            Dim drc1 As DataRow
          。。。。。。。。
            drc1.save
        Else
            For Each drk As DataRow In drcs
                If drk.IsNull("成品编码") Then
             。。。。。。
                    drk("un包装规格") = e.Row("un包装规格")
                    drk.save
                End If
                If drk.IsNull("成品编码") = False AndAlso drk("un包装规格") <> e.Row("un包装规格") Then
                    Dim drc As DataRow                   
                    drc = DataTables("产品检验放行状态").AddNew
                    drc("批号") = e.Row("批号")
                    drc("成品描述") = e.Row("成品描述")
                    drc("实际出报告时间") = drk("实际出报告时间")
                    drc("备注") = drk("备注")
                    drc("QA接收时间") = drk("QA接收时间")
                    drc("QA放行时间") = drk("QA放行时间")
                    drc.save     这里出了问题,运行到这边后,table表格里面的确存在新创建的表,即drc都在,行状态也是正常,但是后台没有,一旦重新点击菜单,由drc增加的行就消失了。后台也没有。是否sqlselect与相同表格的addnew冲突?怎么改?
                End If
            Next
        
        
       
2楼
有点蓝 发表于:2025/4/9 11:20:00
drc.save应该不会有问题,除非表格有其它事件影响了

倒是sqlselect查询的行必须通过SQLUpdate才能保存,不能直接保存:http://www.foxtable.com/webhelp/topics/2901.htm
3楼
lur320 发表于:2025/4/9 11:26:00
检查了下,表格没有其他代码了。并且这个代码是在afteredit里面,不是datarow changed里面。

现在不清楚的原因就是: sqlselect 的for each 循环里面,再次对本表的datatable.addnew. 会不会冲突。
[此贴子已经被作者于2025/4/9 11:28:06编辑过]
4楼
有点蓝 发表于:2025/4/9 11:30:00
不会有冲突。找不到原因可以上传实例测试
5楼
lur320 发表于:2025/4/9 11:36:00
 我的问题。我只加载了10行。。。。都在都在
共5 条记录, 每页显示 10 条, 页签: [1]

Copyright © 2000 - 2018 foxtable.com Tel: 4000-810-820 粤ICP备11091905号

Powered By Dvbbs Version 8.3.0
Processed in .01953 s, 2 queries.