以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  自动编号生成  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=3384)

--  作者:woodiy
--  发布时间:2009/7/1 16:46:00
--  自动编号生成
请问如下的自动编号该如何设置代码啊?

GH-0906195
GH-0906196
GH-0906197
GH-0906198
GH-0906199
GH-0906200
GH-0906201
GH-0906202
GH-0906203
GH-0907204
GH-0907205

--  作者:yangming
--  发布时间:2009/7/1 16:51:00
--  
你是想一次性增加N行,并按你在窗口输入的第一个编号后再生成吗?,最好上传文件
[此贴子已经被作者于2009-7-1 16:51:06编辑过]

--  作者:woodiy
--  发布时间:2009/7/1 17:20:00
--  
不是,是每次增加一行,但是自动编号有日期+数字组成
--  作者:狐狸爸爸
--  发布时间:2009/7/1 17:25:00
--  

在DataRowAdding中想办法
判断日期,如果日期和最后一行相同,则编号加1,否则重新开始编号.


--  作者:qtcks
--  发布时间:2009/7/1 17:51:00
--  

关于自动编号,在多人使用同一模板时,最好是采取保存后生成自动编号.
否则同一时间多个人同时编辑,会产生相同的编码.
除非编码字段中,包含个人代码.


--  作者:qtcks
--  发布时间:2009/7/1 18:51:00
--  

根据给定条件,对编码库匹配.计数后+1

采用自定义函数方式

自定义函数  Nid  \'nid 为名称

dim 头 as string=Args(0)\'起始头条件
dim 头2 as string=Args(1)\'日期条件
dim a as integer = DataTables("表A").Compute("Count(第一列)",("第一列 like\'" & 头  &"%\'and SubString(第一列,4,4) =\'" & 头2  &"\'" ))

a=a+1  \'没有匹配到数据,a=0,所以,不能在上面的公式后直接+1
\'Output.Show(Format(a, "\'"& 头 & "-\'"& 头2 &"0000\'"))
dim nid as string=Format(a, "\'"& 头 & "-\'"& 头2 &"000\'")  \'000 3位自增位数
Return nid


窗口调用
e.Form.Controls("Label1").Text=Functions.Execute("Nid","GH","0906")


图片点击可在新窗口打开查看此主题相关图片如下:新id.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:条件匹配新增id.jpg
图片点击可在新窗口打开查看
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:自动编号.rar

[此贴子已经被作者于2009-7-1 18:53:43编辑过]

--  作者:狐狸爸爸
--  发布时间:2009/7/1 19:11:00
--  
谢,我顶
--  作者:yangming
--  发布时间:2009/7/1 19:23:00
--  

我做的增加二列辅助列

 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:我的自动编号.table


--  作者:gdtgl
--  发布时间:2009/7/1 20:09:00
--  
自已的用法 (不管多少人用,不会重复) 
 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:新建文件夹.rar


--  作者:狐狸爸爸
--  发布时间:2009/7/1 20:29:00
--  
越来越牛了