以文本方式查看主题
- Foxtable(狐表) (http://foxtable.com/bbs/index.asp)
-- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2)
---- RowNum重新赋值的问题 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=158128)
|
-- 作者:suliao9641
-- 发布时间:2020/11/9 13:12:00
-- RowNum重新赋值的问题
此主题相关图片如下:qq图片20201109130744.png
Dim drs As List(of DataRow) = DataTables(eform.name & "_Table1").Select("","[RowNum]") For i As Integer = 0 To drs.Count - 1 drs(i).BaseRow("RowNum") = i Next
表格行通过上移和下移改变了顺序。保存时需要RowNum列顺序和左边一致。 这个代码修改无效,请问还有什么其他方法。
|
-- 作者:有点蓝
-- 发布时间:2020/11/9 13:57:00
--
行号列是没有什么业务意义的,没有必要设置一致。
除非只是单机使用,并且每次都加载全部的数据,表格(包括窗口表)也每次都显示全部的数据(不做筛选、不排序)。否则其它列顺序值永远都不可能和行号列的顺序值一致的
|
-- 作者:suliao9641
-- 发布时间:2020/11/9 14:31:00
--
现在的问题是,通过表格行通过上移和下移改变了顺序。等于我这个前台修改表格行顺序看起来正常满足要求。打印报表的时候数据排列还是未改动,行顺序调整实际上无效
|
-- 作者:suliao9641
-- 发布时间:2020/11/9 14:32:00
--
If Tables(eForm.name & "_Table1").Rows.Count>0 Then Tables(eForm.name & "_Table1").Current.Move(Tables(eForm.name & "_Table1").Position - 1) End If
这个是上移行代码
|
-- 作者:有点蓝
-- 发布时间:2020/11/9 14:36:00
--
怎么做的打印报表?execl模板?专业报表?这些都有自己处理顺序的模式,和界面顺序基本没有关系
|
-- 作者:suliao9641
-- 发布时间:2020/11/9 14:56:00
--
execl模板。这个跟打印顺序没关系。我只是手动调整行。并不是根据列排序。随机调整,我如果前台格式调整好了。打印的时候后台数据就不跟我需要的格式同步。是要解决这个问题。简单的办法就是"RowNum"重新赋值。好像无法实现。还有什么变通的方法
|
-- 作者:有点蓝
-- 发布时间:2020/11/9 15:03:00
--
要遍历table,而不是datatable
For i As Integer = 0 To Tables(e.form.name & "_Table1").rows.Count - 1 Tables(e.form.name & "_Table1").rows(i)("RowNum") = i Next
|
-- 作者:suliao9641
-- 发布时间:2020/11/9 15:57:00
--
谢谢版主。新建一排序列,保存时用代码赋值。打印模板排序列升序。完美解决我要的效果。
另一个问题。 就是我在窗口子表输入数字,让后点保存。这个数字保存不下来。如果我输入完了以后,鼠标在其他格子里点一下,那么保存才正常。
这个焦点问题怎弄
|
-- 作者:有点蓝
-- 发布时间:2020/11/9 16:02:00
--
结束编辑:
Tables("A").FinishEditing Tables("A").save
|