设为首页收藏本站Access中国

Office中国论坛/Access中国论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
查看: 965|回复: 3
打印 上一主题 下一主题

[Access本身] 探讨自动号问题:年月日+每日自动号

[复制链接]
跳转到指定楼层
1#
发表于 2004-3-2 22:43:00 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我想做这样一个自动号:
年月日+每日自动号
例:第一天为20040302001
      20040302002
      20040302003
           ......
  第二天为20040303001
      20040303002
      20040303003
           ......
  第三天为20040304001
      20040304002
      20040304003
           ......
以上自动编号每天都在系统时间后自动从001开始递增
请各位朋友帮助解决一下
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享分享 分享淘帖 订阅订阅
2#
发表于 2004-3-2 23:09:00 | 只看该作者
Public Function GetStockbookNo() As String
'自动按照用户自定义的规则获取库存帐编号,在frmStockIn和frmStockOut中被调用

'此函数得到的可用编号为3位数
    Dim iNum As Integer
    Dim StockDate As String
   
    '将当天的日期以“yyyymmdd”的格式存为字符串
    StockDate = CStr(Year(Date)) & CStr(Format(Month(Date), "00")) & CStr(Format(Day(Date), "00"))
   
    'iNum存储计算出的可用编号
    Dim rs As ADODB.Recordset
    '按序号反向排序打开该分类帐帐户已有的日记帐,这样首记录就是编号最大的一个
    OpenRS "SELECT * FROM 库存变动 ORDER BY '库存帐编号' DESC", rs
'---------------------------------------------
' 1 参见下面的OpenRS函数
' 2 “库存变动”表中有一个字段“库存帐编号”,文本型,格式为yyyymmdd-<三位流水号>
'--------------------------------------------

    If rs.EOF Then
      iNum = 1 '
    'iNum取已有的编号最大值(就是首记录)加1
    Else
      If Left(CStr(rs("库存帐编号")), 8) = StockDate Then
        iNum = CInt(Right(CStr(rs("库存帐编号")), 3)) + 1
      Else
        iNum = 1
      End If
    End If
   
    GetStockbookNo = StockDate + "-" + CStr(Format(iNum, "000"))
   
End Function

Public Function OpenRS(strSql As String, rs As ADODB.Recordset)
'按strSql中的SQL语句打开一个ADO记录集。
    '为记录集rs分配空间
    Set rs = New ADODB.Recordset
    '使用本数据库的连接打开记录集,使用键集游标和乐观锁定方式。
    rs.Open strSql, CurrentProject.Connection, adOpenKeyset, adLockOptimistic
   
End Function

Private Sub AddNewRecord
   ……
  库存帐新记录编号=GetStockbookNo
  ……

End Sub


3#
 楼主| 发表于 2004-3-2 23:45:00 | 只看该作者
谢谢这位朋友的指点,我觉得这个办法有点复杂,不知能不能有个简单一点的方法。
4#
发表于 2004-3-3 01:58:00 | 只看该作者
简单的可以参考:

http://www.posesky.com/bbs/dispbbs.asp?boardID=5&ID=58&page=1
中的采购单录入中的确定按钮代码!

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|站长邮箱|小黑屋|手机版|Office中国/Access中国 ( 粤ICP备10043721号-1 )  

GMT+8, 2024-5-30 05:39 , Processed in 0.092344 second(s), 27 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表