跪求SQL牛人拯救。熬了一夜了,没找到原因

zhangliang6702 zhangliang6702 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
USE [xlmis]
GO
/****** Object: StoredProcedure [dbo].[Pb_SendBillToInvoice] Script Date: 09/20/2014 05:06:26 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
ALTER proc [dbo].[Pb_SendBillToInvoice] @BillClient int,@IDString nvarchar(1000)='',@UserID int,@UserName nvarchar(50)
as
declare @sql nvarchar(max)='',@invoiceid int
--处理数据源
select item_id itemid,* into #Temp from Tb_BillItem where 1=0
alter table #Temp drop column item_id
select @sql= N'insert into #Temp select * from xlmis.dbo.Tb_BillItem where item_id in ('+@IDString+')'
exec sp_executesql @sql
alter table #Temp add invoice_id int

--插入主表
insert into XLData.dbo.htxx_invoice_input(client_id,customer_name,invoice_flag,extract_flag,freight_charge,batch_code,creator_id,creator_name)
select @BillClient,customer_name,(case when (select invoice_money from #Temp)>0 then 0 else 4 end),(select top 1 machine_number from #Temp),isnull((select SUM(freight_cost) from #Temp),0),(select top 1 batch_code from #Temp),@UserID,@UserName from Tb_ClientInfo where client_id=@BillClient
select @invoiceid=IDENT_CURRENT('XLData.dbo.htxx_invoice_input')
--更新从表数据源
update #Temp set invoice_id=@invoiceid

--插入从表
insert into XLData.dbo.htxx_invoice_input_item(item_id,invoice_id,[type_id],[type_name],item_name,item_price,tax_rate,tax_money,item_amount,item_money,free_amount,item_stand)
select itemid,invoice_id,[type_id],[type_name],product_type,invoice_price,tax_rate,tax_money,invoice_amount,invoice_money,free_amount,product_model from #Temp

select @sql= N'update Tb_BillItem set invoice_status=1 where item_id in ('+@IDString+')'
exec sp_executesql @sql

truncate table #Temp
drop table #Temp


搞不懂什么原因,之前还可以的。
...全文

相关推荐

评论 5
收藏 已收藏
分享
返回顶部
zhangliang6702
C# 111,128 成员 642,536 内容