以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  自动增加行  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=128880)

--  作者:13775189031
--  发布时间:2018/12/17 13:45:00
--  自动增加行

请教

If e.keycode = keys.enter Then
    If e.Table.cols(e.Table.colsel).name = "备注"  Then
        Dim cr As Row = e.Table.rows(e.Table.position)
        Dim nr As Row = e.Table.addnew
        nr("预算编号") = cr("预算编号")
        nr("物资部采购预算编号") = cr("物资部采购预算编号")
        nr("编制人") = cr("编制人")
        nr("生产令号") = cr("生产令号")
        nr("项目名称") = cr("项目名称")
        nr("物资说明") = cr("物资说明")
        nr("中标情况_招标采购签收日期") = cr("中标情况_招标采购签收日期")
        nr.move(cr.index+1)
        e.cancel = True
    End If
End If

 

想增加判断,即登录账户user与“编辑人”不同,则不能增加此行,要怎么实现?


--  作者:y2287958
--  发布时间:2018/12/17 14:04:00
--  
If User.Name<>"编辑人"
    Return
End If

--  作者:有点甜
--  发布时间:2018/12/17 15:22:00
--  
If e.keycode = keys.enter Then
    If e.Table.cols(e.Table.colsel).name = "备注"  Then
        Dim cr As Row = e.Table.rows(e.Table.position)
        If cr("编制人") = user.name Then
            Dim nr As Row = e.Table.addnew
            nr("预算编号") = cr("预算编号")
            nr("物资部采购预算编号") = cr("物资部采购预算编号")
            nr("编制人") = cr("编制人")
            nr("生产令号") = cr("生产令号")
            nr("项目名称") = cr("项目名称")
            nr("物资说明") = cr("物资说明")
            nr("中标情况_招标采购签收日期") = cr("中标情况_招标采购签收日期")
            nr.move(cr.index+1)
            e.cancel = True
        End If
    End If
End If

--  作者:13775189031
--  发布时间:2018/12/20 13:47:00
--  

谢谢!


--  作者:13775189031
--  发布时间:2019/1/3 19:27:00
--  

请教

 

表A     

      编号列 

       0001

       0002

 

表B

     编号列       版本 

      0001       A

      0001       B

      0002       A

      0002       B

 

表B编号列不为空时,在表A中自动生成行,

想实现,表B中编号列相同时,版本升版后,由最新版本的行覆盖表A中的内容,也就是表A中内容始终是最新版本的内容


--  作者:有点甜
--  发布时间:2019/1/3 20:05:00
--  

参考

 

http://www.foxtable.com/webhelp/scr/2490.htm

 


--  作者:13775189031
--  发布时间:2019/1/26 10:57:00
--  

If e.keycode = keys.enter Then
    If e.Table.cols(e.Table.colsel).name = "焊缝编号"  Then
        Dim cr As Row = e.Table.rows(e.Table.position)
        Dim nr As Row = e.Table.addnew
        nr("零部件编号") = cr("零部件编号")
        nr("生产令号") = cr("生产令号")
        nr("项目名称") = cr("项目名称")
        nr("机组") = cr("机组")
        nr("零部件名称") = cr("零部件名称")
        nr("零部件图号") = cr("零部件图号")
        nr("数量") = cr("数量")
        nr.move(cr.index+1)
        e.cancel = True
    End If
End If

 

上面的代码是在“焊缝编号”列按回车键,自动插入行

能否实现某逻辑列A,若列A为true,则自动插入行


--  作者:有点蓝
--  发布时间:2019/1/26 11:21:00
--  
AfterEdit事件

If e.Col.Name = "某逻辑列" AndAlso e.Row(e.Col.Name) = True Then
    Dim cr As Row = e.Row
    Dim nr As Row = e.Table.addnew
    nr("零部件编号") = cr("零部件编号")
    nr("生产令号") = cr("生产令号")
    nr("项目名称") = cr("项目名称")
    nr("机组") = cr("机组")
    nr("零部件名称") = cr("零部件名称")
    nr("零部件图号") = cr("零部件图号")
    nr("数量") = cr("数量")
    nr.move(cr.index+1)
End If

--  作者:13775189031
--  发布时间:2019/1/28 15:17:00
--  

ok!谢谢!