sqlserver 创建带返回值的存储过程

--创建存储过程
ALTER PROCEDURE [dbo].[pro_sales_month]
  @yearMonth varchar(30),
  @returnValue VARCHAR(10) output
AS
BEGIN TRY
    BEGIN TRANSACTION

	insert into crm_platform_kingyork_staging.dbo.KY_SD_DATA_M
	SELECT 
es.id as	PK_ID,
es.sale_year_month  as STATIS_MONTH,
es.institution_id as	COMPANY_CODE,
'' as ORIG_COMPANY_PRO,
'' as ORIG_COMPANY_CITY,
es.to_institution_name as	ORIG_CUSTOMER_NAME,
'' as ORIG_CUSTOMER_PRO,
'' as ORIG_CUSTOMER_CITY,
es.to_institution_id_format as	CUSTOMER_CODE,
es.product_name as	ORIG_PRODUCT_NAME,
es.product_specs as	ORIG_PRODUCT_ITEM,
es.product_batch_code as	BATCH_NUMBER,
es.product_count_original as	ORIG_NUMBER,
es.unit as	ORIG_UNIT,
es.product_id_format as PRODUCT_ID,
es.price as	PRODUCT_ID,
CONVERT(VARCHAR(10),es.sale_time,21) as	DATE_SD,
'' as UPDATE_STATUS,
'' as SYN_STATUS,
GETDATE() as CREATE_TIME,
'' as MODIFY_TIME,
'' as KY_MODIFY_TIME,
es.collect_type as DATA_SOURCE,
'' as REMARK
from ent_sfl_sale_format es
LEFT JOIN v_slf_institution vi on es.institution_id = vi.institution_id
LEFT JOIN v_slf_institution vif ON es.to_institution_id_format = vif.institution_id
LEFT JOIN v_slf_product vp on es.product_id_format = vp.product_id
LEFT JOIN s_user s on es.uploader_id = s.id
where vi.status = 'ACTIVE'
--  AND vif.status= 'ACTIVE'
--  AND vp.status= 'ACTIVE'
 AND es.deleted= 0 
 AND es.sale_year_month = @yearMonth 
	
	COMMIT TRANSACTION
	set @returnValue = '1'
	return @returnValue
		
END  TRY

BEGIN CATCH
 ROLLBACK TRANSACTION

--插入异常信息
insert into s_application_error_log(userName, tableName,     
            errorNumber, errorSeverity, errorState, errorMessage,timestamp)
 values (suser_sname(), @tableName, ERROR_NUMBER(),  
            ERROR_SEVERITY(), ERROR_STATE(), ERROR_MESSAGE(),CONVERT(varchar(50),GETDATE(),21));
    --抛出异常,也可不抛
    RAISERROR (@errormessage,16,1)


 set @returnValue = '0'
		return @returnValue
END CATCH

执行存储过程

declare @returnValue varchar(30)
exec  pro_sales_month '2020-06',@returnValue output
print @returnValue
 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值