Foxtable(狐表)用户栏目专家坐堂 → _Identify列在赋值到其他表时出错


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

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

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


加好友 发短信
等级:幼狐 帖子:77 积分:943 威望:0 精华:0 注册:2022/11/15 18:31:00
_Identify列在赋值到其他表时出错  发帖心情 Post By: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楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/3/19 16:13:00 [只看该作者]

dr("YID") = r("_Identify") 这样有没有问题?

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


加好友 发短信
等级:幼狐 帖子:77 积分:943 威望:0 精华:0 注册:2022/11/15 18:31:00
  发帖心情 Post By:2024/3/20 8:52:00 [只看该作者]

dr("YID") = r("_Identify")  这样也是会出问题
我现在发现我在新增行之后,另一个用户也同时新增行依旧会是我已经新增的YID需要怎么防止呢
[此贴子已经被作者于2024/3/20 8:52:59编辑过]

 回到顶部
帅哥,在线噢!
有点蓝
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:110758 积分:563716 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2024/3/20 9:08:00 [只看该作者]

自增主键_Identify是由数据库分配的,所以保存后才是正确的值。

另外强烈不建议把自增主键用作业务关联,因为这个值并不是绝对不变的,在某种极端情况下可能会变,比如迁移数据库等。

 回到顶部