以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]不是插入到筛选后的“表A”的最后一行,应该怎么写?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=97290)

--  作者:fengwenliuyan
--  发布时间:2017/3/9 11:58:00
--  [求助]不是插入到筛选后的“表A”的最后一行,应该怎么写?
表B中逻辑列“入库”的行,插入到“表A”的全显界面的最后一行,而不是筛选后的“表A”的最后一行,应该怎么写?
--  作者:有点蓝
--  发布时间:2017/3/9 12:07:00
--  
使用DataTables("").AddNew()

不要使用Tables("").AddNew()


--  作者:fengwenliuyan
--  发布时间:2017/3/9 12:15:00
--  
Dim Cols1() As String = {"客户","入库日期","客户凭证","入库编号","品名规格","工序","颜色","套油","额外","单位","入库数量","单价","入库金额","备注","拉回数量_不锈钢","拉回数量_普通圆钢"}
Dim Cols2() As String = {"客户","入库日期","客户凭证","入库编号","品名规格","工序","颜色","套油","额外","单位","入库数量","单价","入库金额","备注","拉回数量_不锈钢","拉回数量_普通圆钢"}
For Each dr1 As DataRow In DataTables("意和入库登记表").Select("[入库] = true")
    Dim dr2 As DataRow = DataTables("意和出入库登记表").AddNew()
    For i As Integer = 0 To Cols1.Length -1
        dr2(Cols2(i)) = dr1(Cols1(i))
    Next
    dr1("已入") = True
Next

DataTables("意和出入库登记表").LoadFilter = ""
DataTables("意和出入库登记表").Load
Forms("意和出入库登记表窗口").Controls("客户").Value = Nothing
Forms("意和出入库登记表窗口").Controls("工序").Value = Nothing
Forms("意和出入库登记表窗口").Controls("品名规格").Value = Nothing
Forms("意和出入库登记表窗口").Controls("cs").Value = Nothing
Forms("意和出入库登记表窗口").Controls("cm").Value = Nothing

DataTables("意和入库登记表").ReplaceFor("入库", False, "[入库] = true")

--  作者:fengwenliuyan
--  发布时间:2017/3/9 12:18:00
--  
我就是用的datetable
但是,选中入库逻辑列为true的行导入到“意和出入库登记表”后,如果“意和出入库登记表”是处在筛选界面,比如说是客户筛选界面,那么选中行导入后,会打乱顺序出现在全显界面


--  作者:有点色
--  发布时间:2017/3/9 13:11:00
--  

 如果你用 LoadFilter 控制,那个不是筛选这个是加载。

 

 建议你用 Filter 控制,这个才是筛选。这样做利于你的控制。

 

 如果还是用原来的方式,那么建议动态修改_Sortkey列的值

 

Dim drs As List(of DataRow) = DataTables("表A").Select("","[_Identify]")
For i As Integer = 0 To drs.Count - 1
    drs(i).BaseRow("_SortKey") = i
Next


--  作者:fengwenliuyan
--  发布时间:2017/3/9 13:34:00
--  

感觉还是直接用排序处理好,但是排序代码不知道该怎么写?

http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&Id=97293