以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  指定行  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=86271)

--  作者:发财
--  发布时间:2016/6/14 15:34:00
--  指定行
    Tables("明细表").Sort = "序号,对应 DESC"
    Dim ss As String = e.Form.Controls("TextBox1").text
    With Tables("明细表")
        Dim r As Integer
    r = .Find(" & ss & " ,.RowSel + 1, "姓名", False, False, True)
messagebox.show(r)
        If r > - 1 Then \'如果找到符合条件的行
            .Position = r \'则选择该行
        End If
    End With


--  作者:发财
--  发布时间:2016/6/14 15:34:00
--  
 请问老师:该行代码应如何改:r = .Find(" & ss & " ,.RowSel + 1, "姓名", False, False, True) ?
--  作者:大红袍
--  发布时间:2016/6/14 15:36:00
--  
r = .FindRow("姓名 = \'" & ss & "\'", .RowSel + 1, true) 
--  作者:发财
--  发布时间:2016/6/15 15:30:00
--  
用代码Forms("数据表").Controls("Table1").Table.AllowEdit = False  对整个表禁止编辑,当要对其中一行进行修改编辑或新增一行录入时,请问老师应添加什么代码?
--  作者:大红袍
--  发布时间:2016/6/15 15:40:00
--  

 把行锁住即可,如

 

Forms("数据表").Controls("Table1").Table.Rows(2).Locked = True


--  作者:发财
--  发布时间:2016/6/15 16:28:00
--  
Tables("明细表").ApplySort = False
Dim ss As String = e.Form.Controls("ComboBox2").text
If ss = "" Then
    messagebox.show("请选择单位或个人!")
Else
    Dim s As Integer = DataTables("明细表").Compute("Max(序号)", "[对应] = \'" & ss & "\'")
    Tables("明细表").Position= s
    Dim r As Row = Tables("明细表").InsertNew()
    s = s + 1
    Tables("明细表").Position= s        为什么不能选择刚插入的行?
    r("序号") = format(s,"000")
    r("对应") = e.Form.Controls("ComboBox2").text
    Tables("明细表").Sort = "序号,对应 DESC"
    Forms("收款).Controls("TextBox2").Select
End If

--  作者:大红袍
--  发布时间:2016/6/15 16:31:00
--  
插入行,就自动选择了插入的行,不需要你指定position
--  作者:大红袍
--  发布时间:2016/6/15 16:32:00
--  
再有就是,你不要排序啊,排序后,顺序肯定又乱了,你要findrow,比较_Identify值,才能得到插入的行的最新位置。
--  作者:发财
--  发布时间:2016/6/16 8:17:00
--  
不排序,数据表会很乱,如何使数据表保存顺序不乱?
--  作者:发财
--  发布时间:2016/6/16 8:34:00
--  
如何使数据表保持按[序号]的顺序排序,每次打开或执行操作都不乱?