Sql Server中利用自定义函数完成单据流水号的设计
日期:2007年8月21日 作者: 查看:[大字体 中字体 小字体]-
流水号是现在各类系统中单据的必备字段,因为流水号很容易标识一个新的单据.
之前我也做了这么一个系统,流水号的格式为:单据前缀+业务日期+几位顺序编号.
知道了流水号的固定格式,设计流水号就非常方便了.
在SqlServer中,我们可以通过客户端程序来生成新的流水号,也可以利用存储过程来生成.
在实际的项目中,我觉得利用自定义函数来生成非常方便,方便存储过程调用,也方便客户端的调用.
说了一大堆废话,来看代码吧.
1.主调用函数,由于在设计过程中有很多类似单据表,而且每个单据表包含了一个相同的流水号字段,所以为了方便代码调用,提供了对应表的输入参数.
/**//*
获取一条新的单据流水号
-流水号格式为 @PrefixString+'-'+当前日期+4位顺序编号:CGRK-20070509-0001
*/CREATE FUNCTION dbo.fn_GetNewFlowNumber
(
@SheetTableName varchar(50)
)
RETURNS varchar(50) AS
BEGIN--流水号前缀
declare @PrefixString varchar(50)
--流水号后缀数字的位数
declare @PostfixLength int
--定义好当日单据所有的流水号数据表
declare @Table table(SheetNo varchar(50))
--1.取得单据的最后一条SheetNo
IF @SheetTableName=null OR @SheetTableName=''
return ''
/**//*库存部分*/
--其他入库
ELSE IF LOWER(@SheetTableName)=LOWER('AT_StoreInSheet')
BEGIN
SET @PrefixString='QTRK'
SET @PostfixLength=4
INSERT INTO @Table(SheetNo) SELECT SheetNo FROM AT_StoreInSheet WHERE DateDiff(d,CreateTime,dbo.fn_getNowDate())=0 OR CreateTime=NULL
END
--其他出库
ELSE IF LOWER(@SheetTableName)=LOWER('AT_StoreOutSheet')
BEGIN
SET @PrefixString='QTCK' - [1] [2] [3] [4] [5] [6] [7] [8] [9] 下一页
-
- Sql Server中利用自定义函数完成单据流水号的设计 相关文章:
- ·Windows Vista中如何自定义语言栏图标
- ·XML Schema定义元素的基本知识
- ·AutoCAD中自定义线型的小技巧
- ·网站策划有什么意义?
- ·菜鸟入门 AV功放机上的数字含义
- ·AutoCAD文件传递中的字体替换定义技巧
- ·PS基础教程 画笔应用之自定义画笔
- ·Linux中网络参数的意义及其应用
- ·ASP.Net中保护自定义的服务器控件
- ·站点推广的涵义
- Sql Server中利用自定义函数完成单据流水号的设计 相关软件
- ·正义与邪恶的较量:刑庭法官
- ·秘书长——一场正义与腐败的权利博弈
- ·三国演义
- ·《风俗通义校注》
- ·《以共和国的名义》
- ·一部爱国主义的历史长篇小说——《十字军骑士》
- ·jsp培训讲义
- ·DVD刻录之三国演义
- ·全年龄段言情主义大作《步步惊心》实体书版(全本)
- ·《蔡东藩历代历史演义合集》
- 特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作
- 者.文章版权归文章原始作者所有.对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转
- 载的文章有版权问题请联系编辑人员,我们尽快予以更正. 转载请注明来源:http://www.hackhome.com
下一篇:c#数据库操作的3种典型用法
精品推荐
热点TOP10
- ·SQL Server 练习题
- ·MS-SQL开发常用汇总和t-sql技巧集锦
- ·查询及删除重复记录的方法大全
- ·SQL server 2005安装问题汇总
- ·MS SQL的一些经典常用操作语句汇总
- ·SQL语法大全
- ·掌握SQL Server数据库的实用技巧
- ·解决用sa登录sql 2005失败的问题
- ·SQL Server建立应用程序安全性和程序角色
- ·轻松掌握使用 SQL Server 浏览器
- ·SQL Server安全问题全攻略之口令
- ·SQL Server 2005 中的分区表和索引
- ·sql server2000导入mdf文件
- ·一个复合查询方法
- ·如何创建SQL Server 2000故障转移群集
- ·SQL Server 2000企业版安装教程(1)
- ·SQL Server 2005 Reporting Services 初次使用感受
- ·使用用于SQL Server的IIS虚拟目录管理实用工具
- ·SQL Server中函数的用法两种
- ·改进SQL Server数据库系统安全五步走
特别推荐
- ·结束SQL注入隐患3招
- ·掌握SQL Server数据库的实用技巧
- ·SQL的简单查询
- ·快速解决SQL Server“安全疑难”相关问题
- ·SQL Server 2005:你应知道的13件事
- ·实例解析:减少SQL日志大小的三个好方法
- ·使用SQL2000将现有代码作为Web服务提供
- ·sql server 2000数据库置疑的解决方法
- ·SQL Server安全问题全攻略之口令
- ·XP上不能安装MicrosoftSQLSERVER2000吗
- ·解析Microsoft Sql Server中的like语句
- ·推荐;适合SQL初学者学习的SQL FAQ集锦
- ·SQL Server 2005 中的分区表和索引
- ·查询及删除重复记录的方法大全
- ·详细介绍优化SQL Server 2000的设置
- ·关于SQL SERVER 日志满的处理方法
- ·使用SQL Server 2000索引视图提高性能
- ·SQL server 2005安装问题汇总
- ·解决用sa登录sql 2005失败的问题
- ·简单三步走堵死SQL Server注入漏洞
