Foxtable(狐表)用户栏目专家坐堂 → [求助] 自动生成编号


  共有3477人关注过本帖树形打印复制链接

主题:[求助] 自动生成编号

帅哥哟,离线,有人找我吗?
wumingrong1
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1029 积分:6497 威望:0 精华:0 注册:2014/1/3 12:49:00
[求助] 自动生成编号  发帖心情 Post By:2015/4/15 16:34:00 [只看该作者]

我希望在【调令编号】列中实现自动生成调令编号,

编号规则为:粤L-抢修〔201503〕003号
1、其中201503为服务器的当前月份,003为在新增一行时在前一行的基础上+1的顺序编号;
2、如果从3月份进入到4月份时、4月份的第一条编号自动生成为:粤L-抢修〔201504〕001号

我的命令该怎么写?

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/4/15 16:35:00 [只看该作者]


 回到顶部
帅哥哟,离线,有人找我吗?
wumingrong1
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1029 积分:6497 威望:0 精华:0 注册:2014/1/3 12:49:00
  发帖心情 Post By:2015/4/15 17:44:00 [只看该作者]

如下命令、可以获得日期格式为 : 2015-04-04 


    Dim cmd As New SQLCommandDim dt As Date
    cmd.C
    cmd.CommandText = "Select GetDate()"
    dt = cmd.ExecuteScalar()
    
    e.DataRow("故障处理月份") = dt

1、我如何将【故障处理月份】列的显示格式变成为:201504  ?

2、我如何将【故障处理月份】列的显示格式变成为:2015年04月份  ?
[此贴子已经被作者于2015/4/15 19:55:51编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/4/16 8:45:00 [只看该作者]

format(dt,"yyyy年MM月份")

 回到顶部
帅哥哟,离线,有人找我吗?
wumingrong1
  5楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1029 积分:6497 威望:0 精华:0 注册:2014/1/3 12:49:00
  发帖心情 Post By:2015/4/16 17:52:00 [只看该作者]

是这样吗?好像不行

Dim cmd As New SQLCommand
    Dim dt As Date
    cmd.C
    cmd.CommandText = "Select GetDate()"
    dt = cmd.ExecuteScalar()
    
e.DataRow("故障处理月份") = format(dt,"yyyy年MM月份")

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  6楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47448 积分:251054 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2015/4/16 17:54:00 [只看该作者]

Select GetDate 需要Sql Server数据库才行,Access不支持

 回到顶部
帅哥哟,离线,有人找我吗?
wumingrong1
  7楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1029 积分:6497 威望:0 精华:0 注册:2014/1/3 12:49:00
  发帖心情 Post By:2015/4/17 9:32:00 [只看该作者]

是Sql Server数据库没错
在表的DataRowAdding中写了
Dim cmd As New SQLCommand
    Dim dt As Date
    cmd.C
    cmd.CommandText = "Select GetDate()"
    dt = cmd.ExecuteScalar()

e.DataRow("故障处理月份") = format(dt,"yyyy年MM月份")

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

[此贴子已经被作者于2015/4/17 9:34:24编辑过]

 回到顶部
帅哥哟,离线,有人找我吗?
Bin
  8楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:贵宾 帖子:35433 积分:178524 威望:0 精华:3 注册:2013/3/30 16:36:00
  发帖心情 Post By:2015/4/17 9:32:00 [只看该作者]

呵呵 你e.DataRow("故障处理月份")是日期类型,并不是字符串类型列

 回到顶部
帅哥哟,离线,有人找我吗?
wumingrong1
  9楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1029 积分:6497 威望:0 精华:0 注册:2014/1/3 12:49:00
  发帖心情 Post By:2015/4/17 9:35:00 [只看该作者]

恩、改为‘字符串类型列’就可以啦


 回到顶部
帅哥哟,离线,有人找我吗?
wumingrong1
  10楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:五尾狐 帖子:1029 积分:6497 威望:0 精华:0 注册:2014/1/3 12:49:00
  发帖心情 Post By:2015/4/30 12:24:00 [只看该作者]

我想实现当新增行后(其中【月份】列为自动生成的单前月份):

1、如果我在类别中选择【抢修】、那么在【编号】中自动生成 005   (即生成条件为:与【类别】相同而且【月份】列的月份为当前月份的当前【编号】列最大值+1)

2、如果我在类别中选择【迁改】、那么在【编号】中自动生成 007    (即生成条件为:与【类别】相同而且【月份】列的月份为当前月份的当前【编号】列最大值+1)


 下载信息  [文件大小:   下载次数: ]
图片点击可在新窗口打开查看点击浏览该文件:管理项目17.foxdb


[此贴子已经被作者于2015/4/30 23:30:57编辑过]

 回到顶部
总数 27 1 2 3 下一页