Rss & SiteMap

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

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

标题:_Identify列在赋值到其他表时出错

1楼
fx719 发表于:2024/3/19 15:48:00
With Tables("东营预报单")
    Dim rs As List(Of Row) = Tables("东营预报单").GetCheckedRows()'获取复选框选中的行
   
            For Each r As Row In rs '取所有选中的行
                Dim dr As DataRow = DataTables("东营计划清单").AddNew()'增加到东营计划清单
                r("提报日期") = Date.today 
                r("计划号") = NO
                dr("YID") = r("YID") 
                messagebox.Show(r("YID"))
                dr("计划号") = r("计划号")
                dr("物码") = r("物码")
                dr("物码描述") = r("物码描述")
                dr("项目名称") = r("项目名称")
                dr("使用单位") = r("使用单位")
                dr("报单人") = r("报单人")
                dr("单位") = r("单位")
                dr("分配供应商") = r("供应商")
                dr("计划数量") = r("计划数量")
                dr("备注") = r("备注")
                dr("计划日期") = Date.today 
                dr("需求到货日期") = r("需求日期")
                dr("附件") = r("附件")
                dr("额外配套") = r("额外配套")
                dr("预留号") = r("预留or销售单号")
                dr("需求计划单号") = r("需求计划单号")
                dr("供应处结算") = r("供应处结算")
                dr("框架编号") = r("框架编号")
                dr("框架名称") = r("框架名称")
                dr("协议价格含税") = r("协议价格含税")
                dr.save()
                r("计划状态") = "已提报未提交"
                r.locked = True
                r.save()
                'MessageBox.Show("报错出现在东营计划清单")
            Next
            Dim dt As DataRow = DataTables("东营计划").addnew()
            dt("计划号") = NO
            dt("报单日期") = Date.today
            dt("报单人") = user.name
            dt("年份") = Format(Date.today, "yyyy")
            dt.Locked = True
            dt.save()
            Tables("东营预报单").ClearCheckedRows

        End If
    End If
End With
图片点击可在新窗口打开查看
东营预报单 YID 是表达式 取的是[_Identify] 把数据从预报单赋值到东营计划清单其他列都没有问题 唯独这个YID列 会在跟其他人一起录入的时候时常出错可能变成别人的 ,别人的YID也会变错,我该怎么修改
[此贴子已经被作者于2024/3/19 15:50:25编辑过]
2楼
有点蓝 发表于:2024/3/19 16:13:00
dr("YID") = r("_Identify") 这样有没有问题?
3楼
fx719 发表于:2024/3/20 8:52:00
dr("YID") = r("_Identify")  这样也是会出问题
我现在发现我在新增行之后,另一个用户也同时新增行依旧会是我已经新增的YID需要怎么防止呢
[此贴子已经被作者于2024/3/20 8:52:59编辑过]
4楼
有点蓝 发表于:2024/3/20 9:08:00
自增主键_Identify是由数据库分配的,所以保存后才是正确的值。

另外强烈不建议把自增主键用作业务关联,因为这个值并不是绝对不变的,在某种极端情况下可能会变,比如迁移数据库等。
共4 条记录, 每页显示 10 条, 页签: [1]

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

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