📄 3.pr_update_wlclient.sql
字号:
/*----本存储过程pr_update_wlclient用于触发器tr_clientbuybill_insert------ */
/*功能:更新客户往来明细和客户往来总帐以及客户档案*/
/*参数3:更新方向+or- */
/*参数4:客户id */
/*参数8:更新金额*/
/*作者:吕勇 */
/*日期:2006-04-10 */
/*版本:v1.0 */
/*修改人: */
/*修改日期: */
GO
IF EXISTS(SELECT name FROM sysobjects
WHERE name = 'pr_update_wlclient' AND type = 'P')
DROP PROCEDURE pr_update_wlclient
GO
--USE ercdata
GO
CREATE PROCEDURE pr_update_wlclient
@ls_direct char(1),
@ls_clientid char(36),
@ldb_acramt money
WITH ENCRYPTION
AS
declare @ll_count int
--尽管在应用程序中已经加入限制:必须输入客户\供应商代号(客户\供应商类型),但以防万一,若用户没有输入客户\供应商代号,则此处将给客户\供应商代号(客户\供应商类型)赋值
if isnull(@ls_clientid,'') = ''
select @ls_clientid ='nullclient'
--如需要,则初始化客户档案
select @ll_count = count(*) from f_client where c_clientid = @ls_clientid
if @ll_count <1
insert into f_client (c_clientid,i_balance) values(@ls_clientid,0)
--正向
if @ls_direct = '+'
update f_client set i_balance = i_balance - @ldb_acramt where c_clientid = @ls_clientid
else if @ls_direct = '-'
update f_client set i_balance = i_balance + @ldb_acramt where c_clientid = @ls_clientid
if @@error <> 0
begin
rollback tran
return
end
GO
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -