以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- 插入行 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=162421) |
-- 作者:13775189031 -- 发布时间:2021/4/14 13:15:00 -- 插入行 请教: 加载树中加载所有行,执行以下命令时,增加行在所有行的第一行 但是加载树中分类显示时,执行以下命令时,新增加的行就不在所有行的第一行了 要如何改,在加载树中无论如何分类,增加行始终在所有行的第一行? Select Case e.DataCol.name Case "预算编号","物资说明" If e.DataRow.IsNull("预算编号") = True OrElse e.DataRow.IsNull("物资说明") = True Then DataTables("原材料采购明细表").DeleteFor("预算编号=\'" & e.DataRow("预算编号") & "\'") Else Dim ndr1 As DataRow = DataTables("原材料采购明细表").Find("预算编号 = \'" & e.DataRow("预算编号") & "\'") If e.DataRow("物资说明") = "原材料" Then Dim ndr As Row = Tables("原材料采购明细表").AddNew ndr("内部合同编号") = e.DataRow("内部合同编号") ndr("预算编号") = e.DataRow("预算编号") ndr("生产令号") = e.DataRow("生产令号") ndr("项目名称") = e.DataRow("项目名称") ndr("物资说明") = e.DataRow("物资说明") ndr("编制人") = e.DataRow("编制人") ndr("取消采购") = e.DataRow("取消采购") ndr("事业部_审核")= e.DataRow("事业部_审核") ndr.Move(0) ElseIf e.DataCol.name = "物资说明" AndAlso e.OldValue = "原材料" DataTables("原材料采购明细表").deletefor("预算编号 = \'" & e.DataRow("预算编号") & "\'") End If End If End Select |
-- 作者:有点蓝 -- 发布时间:2021/4/14 13:47:00 -- ndr.Move(0) ndr("_sortkey") = DataTables("原材料采购明细表").sqlcompute("min([_sortkey])") - 0.00000001
|
-- 作者:13775189031 -- 发布时间:2021/4/15 8:55:00 -- 如果在当前表直接点击插入行操作时,如何在加载树分类的情况下,始终都在所有行的第一行插入 |
-- 作者:有点蓝 -- 发布时间:2021/4/15 9:12:00 -- 同样的方法,到DataRowAdding事件给_sortkey赋值 |
-- 作者:13775189031 -- 发布时间:2021/4/15 9:29:00 -- OK! 可否实现无论在那个位置插入行,都能按照插入时间自动排序,最后插入的始终在所有行的第一行! |
-- 作者:有点蓝 -- 发布时间:2021/4/15 9:37:00 -- 这种建议不要使用默认的插入行功能,自己到按钮写代码处理,新增后给时间列和_sortkey赋值即可 [此贴子已经被作者于2021/4/15 9:37:10编辑过]
|