以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- 自动编号 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=11716) |
||||
-- 作者:明丰 -- 发布时间:2011/8/9 10:43:00 -- 自动编号 按五笔码自动生成编号,品牌相同编号相同,如果删除附件中的“品牌中继号”列,要实现同样功能,主要问题:
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/8/9 11:11:00 -- 没有看懂你的问题。 |
||||
-- 作者:明丰 -- 发布时间:2011/8/9 11:39:00 -- 品牌 编号 联塑 241401 联塑 241401 Ls 241402
希望品牌列输入内容时,得到上面编号列同样的效果。 如果直接设置Dim drs As List(of DataRow) = e.DataTable.Select("编号 Like \'" & s2 & "*\' And [_Identify] < " & e.DataRow("_Identify")) 这个变量,品牌列输入“LS”时,编号列的值是:241403,因为编号列末2位编号规则是以变量drs行数+1,如果希望drs只提取编号列的值不重复的行来执行,类似GetUniqueValues功能,如上面输入LS,执行代码,drs.count得到的是1,请问如何设置? |
||||
-- 作者:明丰 -- 发布时间:2011/8/9 17:40:00 -- Dim Customers As List(Of String) 改用上面代码可以达到要求,但如果修改或删除已经录入的品牌内容,后面新增的编号会出现错误,因为编号末2位用行数+1递增是有限制的(即不能删除和修改前面的品牌),如果改用符合条件编号列的最大值+1就能解决问题。
问题:
要找出字符型集合中的最大值,请问如何设置? |
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/8/9 17:48:00 -- Dim vls As List(Of String) |
||||
-- 作者:明丰 -- 发布时间:2011/8/9 18:44:00 -- 谢谢! 另一个问题:如果删除或修改的品牌数量较多会浪费较多编号空间,如果下次新增品牌时,符合条件的编号优先填充到这些位置,如: 品牌 编号 修改后 品牌 编号 品牌 编号 联塑1 241401 联塑2 241402 联塑2 241402
联塑2 241402 新增 联塑6 241401
请问如何设置?
[此贴子已经被作者于2011-8-9 18:49:29编辑过]
|
||||
-- 作者:狐狸爸爸 -- 发布时间:2011/8/9 21:06:00 -- Dim i As Integer = 1 Do If DataTables("表A").Find("编号 = \'3122" & Format(i,"00") & "\'") Is Nothing Then Exit Do Else i = i+ 1 End If Loop messagebox.show(i) |