Foxtable(狐表)用户栏目专家坐堂 → 还是跨表删除问题


  共有1544人关注过本帖树形打印复制链接

主题:还是跨表删除问题

帅哥哟,离线,有人找我吗?
yzyend
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:婴狐 帖子:21 积分:304 威望:0 精华:0 注册:2016/8/18 16:30:00
还是跨表删除问题  发帖心情 Post By:2016/9/5 13:28:00 [只看该作者]

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:测试1.rar


老师,我的项目是SQL 的。做了一个测试例子,帮我看一下!  测试文件中确实没有什么问题,但在原文件中怎么都不行。

我的项目全部采用窗口类型,窗口中绑定表。

但实际原程序中有如下问题需要咨询一下:

1、在采购单 窗口中 输入数据完毕,不保存退出的话,(该记录号延时为红色)。在后台中应收账款表 的数据就全部都有。

这是 采购单 datacolchanged  


Select Case e.DataCol.name
    Case "采购编号"
        If e.DataCol.Name = "采购编号" AndAlso e.NewValue <> Nothing Then
            Dim fdr As DataRow = DataTables("应付账款表").Find("采购编号 = '" & e.NewValue & "'")'在应付账款表里找采购编号.因为是SQL 故在原程序中使用 SQLFind 
            If fdr Is Nothing Then '如果没有找到
                fdr = DataTables("应付账款表").AddNew '向应付账款表添加一行记录
                fdr("采购编号") = e.DataRow("采购编号")
                fdr("采购日期") = e.DataRow("采购日期")
                fdr("采购单位") = e.DataRow("采购单位")
                fdr("供应商") = e.DataRow("供应商")'其实这个时候应付账款表供应商列是空,因为采购编号产生的时候供应商还没有产生,一下两列同样是空.
                fdr("合计") = e.DataRow("合计")
                fdr("到期时间") = e.DataRow("到期时间")
                fdr.save '保存添加的行
            Else   '如果应付账款表中没有找到采购编号,则再次重置采购编号是 以下程序发送作用.
                fdr("采购编号") = e.DataRow("采购编号")
                fdr("采购日期") = e.DataRow("采购日期")
                fdr("采购单位") = e.DataRow("采购单位")
                fdr("供应商") = e.DataRow("供应商")
                fdr("合计") = e.DataRow("合计")
                fdr("到期时间") = e.DataRow("到期时间")
                fdr.save
            End If
        End If
End Select

问题来了,这个时候为什么所有的列都已经添加到 应付账款表 中了? 我认为是应该再次重置 采购编号采把数据列不全啊!(我在任何地方没有做重置 采购编号 列的动作)

2、保存采购单后,在应付账款表中能显示该采购记录。 但 如果从采购单窗口中删除 记录 的话。 不保存采购单窗口,后台的应付账款表重新添加了一条该记录。 保存采购单窗口后,应付账款表中只是删除了刚才添加(删除时自动添加到应付账款表中的)的记录,也就是说有两条记录,只删除了一条。最终的结果是:采购单中删除记录,应付账款表中的记录没有删除,只是把 合计 列 清零了。记录还在,数据不全。

采购单  datarowdeleting
Dim dr As DataRow = DataTables("应付账款表").SQLFind("采购编号 = '" & e.DataRow("采购编号") & "'")
If dr IsNot Nothing Then
    dr.Delete()
    dr.save
End If

老师请帮我分析一下!



 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:107861 积分:548662 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2016/9/5 15:28:00 [只看该作者]

1、示例看不出什么问题

2、数据库有没有触发器之类的

3、把这和2个表有关的其它事件全部注释试试

 回到顶部