小系统单据自动生成存储过程

时间:2024-01-16 23:16:17 


create table [order]
(
code varchar(50),
createtime datetime
)

--应用 usp_ordernumbergenerate(@prefix = 'PRC100701')
--传入前缀 大类+单据编码+6位日期
--获取当日该类单据最大流水号(需按日归零)
--此处判断有两种方法:一种是根据传入6位日期判断;另一种根据单据创建日期字段(前提:表有创建时间字段)
create procedure usp_OrderNumberGenerate
@prefix varchar(50)
as
declare @count int
declare @midcode varchar(3)
declare @Digits int = 3
declare @orderNumber varchar(50)

select @count = COUNT(*) from [order] where DATEDIFF(day, createtime, GETDATE()) = 0
if(@count = 0) --当日无单据情况 流水号为001
--print @count
select @orderNumber = @prefix + '001'
else --当日有单据情况 最大流水号+1
select @midcode = max(substring(midcode, 10, 3)) + 1
from [order]
where DATEDIFF(day, createtime, GETDATE()) = 0

select @orderNumber =@prefix + RIGHT(REPLICATE('0', @Digits)
+ CAST(@midcode as VARCHAR), @Digits)

print @ordernumber

标签:自动生成,存储过程
0
投稿

猜你喜欢

  • Python+OpenCV进行人脸面部表情识别

    2021-07-18 22:47:35
  • Django1.7+JQuery+Ajax验证用户注册集成小例子

    2024-04-25 13:16:09
  • 解决SQL Server的“此数据库没有有效所有者”问题

    2024-01-16 22:21:58
  • ThinkPHP视图查询详解

    2024-05-03 15:52:08
  • python新手经常遇到的17个错误分析

    2021-08-09 21:46:00
  • python判断设备是否联网的方法

    2022-05-03 12:34:55
  • 超简单的scrapy实现ip动态代理与更换ip的方法实现

    2022-12-21 19:58:05
  • python2.6.6如何升级到python2.7.14

    2023-08-07 22:54:52
  • Pycharm代码无法复制,无法选中删除,无法编辑的解决方法

    2023-10-01 01:43:31
  • 使用Python进行数独求解详解(一)

    2023-12-25 09:39:20
  • php 生成静态页面的办法与实现代码详细版

    2023-10-31 06:05:33
  • js返回顶部代码

    2011-04-25 19:21:00
  • SQL中自己创建函数 分割字符串

    2008-11-20 16:13:00
  • 分支任务:从哪里来,回哪里去

    2009-09-04 18:58:00
  • Python设计模式编程中的备忘录模式与对象池模式示例

    2023-02-06 05:48:43
  • Python手机号码归属地查询代码

    2021-05-02 05:00:30
  • Python Web后端开发中的增查改删处理

    2022-11-21 06:15:42
  • 如何利用Python获取鼠标的实时位置

    2022-08-11 07:00:33
  • 我的页面制作方法

    2008-03-23 13:51:00
  • Python+Pygame实战之吃豆豆游戏的实现

    2022-10-01 17:29:39
  • asp之家 网络编程 m.aspxhome.com