|
|
|
|
if exists(select * from sysobjects where name='p_rz_prepare_jj' and xtype='p')
|
|
|
|
|
drop procedure p_rz_prepare_jj
|
|
|
|
|
go
|
|
|
|
|
create procedure p_rz_prepare_jj
|
|
|
|
|
(
|
|
|
|
|
@psorgcode varchar(10),
|
|
|
|
|
@psbillno varchar(20),
|
|
|
|
|
@psparams varchar(200),
|
|
|
|
|
@psmsg varchar(2000) out
|
|
|
|
|
)
|
|
|
|
|
as
|
|
|
|
|
declare @sitemvalue varchar(200)
|
|
|
|
|
begin
|
|
|
|
|
declare @ssupcode varchar(15)
|
|
|
|
|
declare @ssupstatus varchar(1)
|
|
|
|
|
declare @ssupvalidstatus varchar(1)
|
|
|
|
|
declare @ssupcontractstatus varchar(1)
|
|
|
|
|
|
|
|
|
|
select @ssupcode=supcode from t_adjbuyprice_head where billno=@psbillno
|
|
|
|
|
|
|
|
|
|
if not exists(select * from t_supplier where supcode=@ssupcode)
|
|
|
|
|
begin
|
|
|
|
|
set @psmsg='<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD>Ӧ<EFBFBD>̲<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܼ<EFBFBD><EFBFBD><EFBFBD>'
|
|
|
|
|
return(-1)
|
|
|
|
|
end
|
|
|
|
|
select @ssupstatus=supstatus,
|
|
|
|
|
@ssupvalidstatus=case when (isnull(validdate,'')='' or validdate>=convert(varchar(100),getdate(),23)) then '1' else '0' end,
|
|
|
|
|
@ssupcontractstatus=case when (not exists(select * from t_contract where supcode=t_supplier.supcode and contrstatus='0')) or
|
|
|
|
|
(exists(select * from t_contract where supcode=t_supplier.supcode and contrstatus='0' and convert(varchar(100),getdate(),23) between bgndate and enddate)) then '1' else '0' end
|
|
|
|
|
from t_supplier where supcode=@ssupcode
|
|
|
|
|
if @ssupstatus <> '0'
|
|
|
|
|
begin
|
|
|
|
|
set @psmsg='<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD>Ӧ<EFBFBD><EFBFBD>״̬<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܼ<EFBFBD><EFBFBD><EFBFBD>'
|
|
|
|
|
return(-1)
|
|
|
|
|
end
|
|
|
|
|
if @ssupvalidstatus='0'
|
|
|
|
|
begin
|
|
|
|
|
set @psmsg='<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><EFBFBD><EFBFBD>Ĺ<EFBFBD>Ӧ<EFBFBD><EFBFBD><EFBFBD>ѹ<EFBFBD><EFBFBD><EFBFBD>Ч<EFBFBD>ڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܼ<EFBFBD><EFBFBD><EFBFBD>'
|
|
|
|
|
return(-1)
|
|
|
|
|
end
|
|
|
|
|
-- if @ssupcontractstatus='0'
|
|
|
|
|
-- begin
|
|
|
|
|
-- set @psmsg='<27><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ָ<EFBFBD><D6B8><EFBFBD>Ĺ<EFBFBD>Ӧ<EFBFBD>̺<EFBFBD>ͬ<EFBFBD>ѹ<EFBFBD><D1B9>ڣ<EFBFBD><DAA3><EFBFBD><EFBFBD>ܼ<EFBFBD><DCBC><EFBFBD>'
|
|
|
|
|
-- return(-1)
|
|
|
|
|
-- end
|
|
|
|
|
|
|
|
|
|
set @psmsg=''
|
|
|
|
|
return(1)
|
|
|
|
|
end
|
|
|
|
|
go
|
|
|
|
|
|
|
|
|
|
if exists(select * from sysobjects where name='p_rz_jj' and xtype='p')
|
|
|
|
|
drop procedure p_rz_jj
|
|
|
|
|
go
|
|
|
|
|
create procedure p_rz_jj
|
|
|
|
|
(
|
|
|
|
|
@psorgcode varchar(10),
|
|
|
|
|
@psbillno varchar(20),
|
|
|
|
|
@psparams varchar(200),
|
|
|
|
|
@psmsg varchar(2000) out
|
|
|
|
|
)
|
|
|
|
|
as
|
|
|
|
|
declare @sorgcode varchar(10)
|
|
|
|
|
declare @finacode varchar(10)
|
|
|
|
|
declare @outfinacode varchar(10) --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
|
|
|
|
declare @ssameaccorg varchar(1)
|
|
|
|
|
declare @sisdbdeploy varchar(1)
|
|
|
|
|
declare @sorgtype varchar(1)
|
|
|
|
|
declare @sver varchar(1)
|
|
|
|
|
declare @stztype varchar(1)
|
|
|
|
|
declare @stag varchar(1)
|
|
|
|
|
declare @siszsvendor varchar(1)
|
|
|
|
|
declare @sdate varchar(10)
|
|
|
|
|
declare @svbktbl varchar(20)
|
|
|
|
|
declare @bookdate varchar(10)
|
|
|
|
|
declare @booktime varchar(8)
|
|
|
|
|
declare @ssql varchar(8000)
|
|
|
|
|
begin
|
|
|
|
|
set @psmsg=''
|
|
|
|
|
select @sver=itemvalue from t_syscfg where section='SYSTEM' and itemname='VER'
|
|
|
|
|
select @sorgcode=orgcode,@stztype=tztype,@stag=tag from t_adjbuyprice_head where billno=@psbillno
|
|
|
|
|
select @sisdbdeploy=isdbdeploy,@sorgtype=orgtype,@finacode=isnull(finacode,'') from t_shop where orgcode=@sorgcode
|
|
|
|
|
select @sdate=convert(varchar(10),getdate(),20)
|
|
|
|
|
if @@error <> 0
|
|
|
|
|
begin
|
|
|
|
|
set @psmsg='<EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˳<EFBFBD>ʼ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>'
|
|
|
|
|
return -1
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
exec p_get_finacode 'C009',@sorgcode,@outfinacode out,@ssameaccorg out ,@psmsg out
|
|
|
|
|
if @psmsg <> ''
|
|
|
|
|
begin
|
|
|
|
|
return (-1)
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if @stztype='2'
|
|
|
|
|
begin
|
|
|
|
|
update o set ojprice=d.newjprice
|
|
|
|
|
from t_plu_org o,t_adjbuyprice_body d
|
|
|
|
|
where d.billno=@psbillno and o.orgcode=@sorgcode and o.plucode=d.plucode
|
|
|
|
|
if @@error <> 0
|
|
|
|
|
begin
|
|
|
|
|
set @psmsg='<EFBFBD><EFBFBD><EFBFBD>۵<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˸<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>½<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>'
|
|
|
|
|
return -1
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
return 1
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
select @svbktbl='t_vbk_'+substring(@sdate,1,4)+substring(@sdate,6,2)
|
|
|
|
|
exec p_create_vbk @svbktbl,@psmsg out
|
|
|
|
|
if @psmsg<>''
|
|
|
|
|
begin
|
|
|
|
|
return -1
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if @sver='0' or @stztype='0' or @sisdbdeploy='1'
|
|
|
|
|
begin
|
|
|
|
|
if ((@sver='0') or (@sver='1' and @sisdbdeploy='1' and @stag='1'))
|
|
|
|
|
begin
|
|
|
|
|
if exists(select name from tempdb..sysobjects where name='##tmpjjtz_d' and xtype='u')
|
|
|
|
|
drop table ##tmpjjtz_d
|
|
|
|
|
create table ##tmpjjtz_d
|
|
|
|
|
(billno varchar(20),plucode varchar(20),jprice numeric(19,4),netjprice numeric(19,4),newjprice numeric(19,4),newnetjprice numeric(19,4),
|
|
|
|
|
tzcount numeric(19,4),cjcost numeric(19,4),netcjcost numeric(19,4),stock_counts numeric(19,4),stock_cost numeric(19,4),
|
|
|
|
|
tzcjcost numeric(19,4),nettzcjcost numeric(19,4),g_jtaxrate numeric(19,4),g_jprice numeric(19,4),g_tzamount numeric(19,4))
|
|
|
|
|
|
|
|
|
|
insert into ##tmpjjtz_d(billno,plucode,jprice,netjprice,newjprice,newnetjprice,tzcount,cjcost,netcjcost,
|
|
|
|
|
stock_counts,stock_cost,tzcjcost,nettzcjcost,g_jtaxrate,g_jprice,g_tzamount)
|
|
|
|
|
select billno,d.plucode,d.jprice,d.netjprice,d.newjprice,d.newnetjprice,d.tzcount,d.cjcost,d.netcjcost,
|
|
|
|
|
o.gcount+o.ccount,o.cost,0 tzcjcost,0 tznetcjcost,g.jtaxrate,o.jprice,o.tzamount
|
|
|
|
|
from t_adjbuyprice_body d join t_plu_org o on d.plucode=o.plucode join t_plu g on d.plucode=g.plucode
|
|
|
|
|
where d.billno=@psbillno and o.orgcode=@sorgcode
|
|
|
|
|
|
|
|
|
|
update ##tmpjjtz_d
|
|
|
|
|
set cjcost=round(newjprice*stock_counts,2)-round(jprice*stock_counts,2),
|
|
|
|
|
netcjcost=round(round(newjprice*stock_counts,2)/(1+g_jtaxrate/100.00),2)-round(round(jprice*stock_counts,2)/(1+g_jtaxrate/100.00),2),
|
|
|
|
|
tzcjcost=cjcost-(round(newjprice*stock_counts,2)-round(jprice*stock_counts,2)),
|
|
|
|
|
nettzcjcost=netcjcost-round(round(newjprice*stock_counts,2)/(1+g_jtaxrate/100.00),2) -round(round(jprice*stock_counts,2)/(1+g_jtaxrate/100.00),2)
|
|
|
|
|
where stock_counts>0 and tzcount>stock_counts
|
|
|
|
|
|
|
|
|
|
update ##tmpjjtz_d
|
|
|
|
|
set g_jprice=case when g_jprice>newjprice then newjprice else g_jprice end
|
|
|
|
|
where stock_counts>0 and (stock_cost+cjcost<0)
|
|
|
|
|
|
|
|
|
|
if @stztype='0'
|
|
|
|
|
begin
|
|
|
|
|
print('<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʷ')
|
|
|
|
|
--update o set o.jprice=case when (stock_counts>0) and (stock_cost+tmp.cjcost>=0) then round((stock_cost+tmp.cjcost)/stock_counts,4)
|
|
|
|
|
-- when (stock_counts>0) and (stock_cost+tmp.cjcost<0) then g_jprice else o.jprice end,
|
|
|
|
|
-- o.cost=case when (stock_counts>0) and (stock_cost+tmp.cjcost>=0) then round(round((stock_cost+tmp.cjcost)/stock_counts,4)*stock_counts,2)
|
|
|
|
|
-- when (stock_counts>0) and (stock_cost+tmp.cjcost<0) then round(g_jprice*stock_counts,2) else o.cost end,
|
|
|
|
|
-- o.tzamount=case when stock_counts<=0 then o.tzamount+tmp.cjcost
|
|
|
|
|
-- when (stock_counts>0) and (stock_cost+tmp.cjcost>=0) then o.tzamount+tmp.tzcjcost+stock_cost+tmp.cjcost-round(round((stock_cost+tmp.cjcost)/stock_counts,4)*stock_counts,2)
|
|
|
|
|
-- when (stock_counts>0) and (stock_cost+tmp.cjcost<0) then o.tzamount+stock_cost+d.cjcost-round(g_jprice*stock_counts,2) else o.tzamount end
|
|
|
|
|
-- from t_plu_org o
|
|
|
|
|
-- join t_adjbuyprice_body d on o.plucode=d.plucode and o.orgcode=@sorgcode and d.billno=@psbillno
|
|
|
|
|
-- join ##tmpjjtz_d tmp on d.plucode=tmp.plucode
|
|
|
|
|
-- where o.isright='1'
|
|
|
|
|
|
|
|
|
|
--update o set o.netjprice=case when (stock_counts > 0) then round(o.jprice/(1+g_jtaxrate/100.00),4) else o.netjprice end,
|
|
|
|
|
-- o.netcost=case when (stock_counts > 0) then o.netcost+round(tmp.g_tzamount/(1+g_jtaxrate/100.00),2)+d.netcjcost-round(o.tzamount/(1+g_jtaxrate/100.00),2) else o.netcost end
|
|
|
|
|
-- from t_plu_org o
|
|
|
|
|
-- join t_adjbuyprice_body d on o.plucode=d.plucode and o.orgcode=@sorgcode and d.billno=@psbillno
|
|
|
|
|
-- join ##tmpjjtz_d tmp on d.plucode=tmp.plucode
|
|
|
|
|
-- where o.isright='1'
|
|
|
|
|
|
|
|
|
|
--update o set ojprice=d.newjprice
|
|
|
|
|
-- from t_plu_org o,t_adjbuyprice_body d
|
|
|
|
|
-- where o.orgcode=@sorgcode and o.plucode=d.plucode and d.billno=@psbillno and d.tzcount=0
|
|
|
|
|
|
|
|
|
|
--update g set jprice=d.newjprice,netjprice=d.newnetjprice
|
|
|
|
|
-- from t_plu g,t_adjbuyprice_body d
|
|
|
|
|
-- where g.plucode=d.plucode and d.billno=@psbillno and d.tzcount=0
|
|
|
|
|
end
|
|
|
|
|
else
|
|
|
|
|
begin
|
|
|
|
|
update d set jprice=o.jprice,
|
|
|
|
|
netjprice=o.netjprice,
|
|
|
|
|
tzcount=o.gcount+o.ccount,
|
|
|
|
|
cost=o.cost,
|
|
|
|
|
netcost=o.netcost,
|
|
|
|
|
cjcost=round(d.newjprice*(o.gcount+o.ccount)-o.cost,2),
|
|
|
|
|
netcjcost=round(d.newnetjprice*(o.gcount+o.ccount)-o.netcost,2),
|
|
|
|
|
newcost=round(d.newjprice*(o.gcount+o.ccount),2),
|
|
|
|
|
newnetcost=round(d.newnetjprice*(o.gcount+o.ccount),2)
|
|
|
|
|
from t_adjbuyprice_body d join t_plu_org o on d.plucode=o.plucode and d.billno=@psbillno and o.orgcode=@sorgcode
|
|
|
|
|
where o.isright='1'
|
|
|
|
|
|
|
|
|
|
update g set jprice=d.newjprice,
|
|
|
|
|
netjprice=d.newnetjprice
|
|
|
|
|
from t_plu g join t_adjbuyprice_body d on g.plucode=d.plucode and d.billno=@psbillno
|
|
|
|
|
|
|
|
|
|
update o set jprice=d.newjprice,
|
|
|
|
|
netjprice=d.newnetjprice,
|
|
|
|
|
ojprice=d.newjprice,
|
|
|
|
|
hjprice=case when hjprice>d.newjprice then hjprice else d.newjprice end,
|
|
|
|
|
ljprice=case when ljprice<d.newjprice then ljprice else d.newjprice end,
|
|
|
|
|
cost=round(d.newjprice*(o.gcount+o.ccount),2),
|
|
|
|
|
netcost=o.netcost+round(tmp.g_tzamount/(1+g_jtaxrate/100.00),2)+d.netcjcost-round(o.tzamount/(1+g_jtaxrate/100.00),2)
|
|
|
|
|
from t_adjbuyprice_body d join t_plu_org o on d.plucode=o.plucode and d.billno=@psbillno and o.orgcode=@sorgcode
|
|
|
|
|
join ##tmpjjtz_d tmp on d.plucode=tmp.plucode
|
|
|
|
|
where o.isright='1'
|
|
|
|
|
|
|
|
|
|
--
|
|
|
|
|
select @bookdate=convert(varchar(10),getdate(),20),@booktime=convert(varchar(8),getdate(),8)
|
|
|
|
|
|
|
|
|
|
update t_gbk_yyyymm set jprice=round((fscost+d.cjcost)/(fscount+0),4),
|
|
|
|
|
netjprice=round((fsnetcost+d.netcjcost)/(fscount+0),4),
|
|
|
|
|
price=o.price,
|
|
|
|
|
fscost=fscost+d.cjcost,
|
|
|
|
|
fsnetcost=fsnetcost+d.netcjcost,
|
|
|
|
|
jccount=o.gcount+o.ccount,
|
|
|
|
|
jccost=o.cost+o.tzamount,
|
|
|
|
|
jcnetcost=o.netcost+round(o.tzamount/(1+d.jtaxrate/100.00),2),
|
|
|
|
|
jctotal=o.total,
|
|
|
|
|
tag='',
|
|
|
|
|
accdate=''
|
|
|
|
|
from t_gbk_yyyymm gbk join t_adjbuyprice_body d on gbk.plucode=d.plucode and d.billno=@psbillno
|
|
|
|
|
join t_plu_org o on d.plucode=o.plucode and o.orgcode=@sorgcode
|
|
|
|
|
where bookdate=@bookdate and booktime=@booktime and gbk.plucode=d.plucode and gbk.depcode=d.depcode
|
|
|
|
|
and d.billno=@psbillno and billtype='4' and gbk.orgcode=@sorgcode
|
|
|
|
|
if @@error<>0
|
|
|
|
|
begin
|
|
|
|
|
set @psmsg='<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ̨<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>'
|
|
|
|
|
return -1
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
insert into t_gbk_yyyymm
|
|
|
|
|
(bookdate,booktime,plucode,depcode,billno,billtype,jprice,netjprice,price,fscount,
|
|
|
|
|
fscost,fsnetcost,fstotal,jccount,jccost,jcnetcost,jctotal,tag,orgcode,accdate)
|
|
|
|
|
select @bookdate,@booktime,d.plucode,d.depcode,@psbillno,'4',o.jprice,o.netjprice,o.price,0,d.cjcost,d.netcjcost,0,
|
|
|
|
|
o.gcount+o.ccount,o.cost+o.tzamount,o.netcost+round(o.tzamount/(1+d.jtaxrate/100.00),2),o.total,'',@sorgcode,''
|
|
|
|
|
from t_adjbuyprice_body d join t_plu_org o on d.plucode=o.plucode and d.billno=@psbillno and o.orgcode=@sorgcode
|
|
|
|
|
where not exists(select plucode from t_gbk_yyyymm where bookdate=@bookdate and booktime=@booktime and plucode=d.plucode
|
|
|
|
|
and depcode=d.depcode and billno=@psbillno and billtype='4' and orgcode=@sorgcode)
|
|
|
|
|
if @@error<>0
|
|
|
|
|
begin
|
|
|
|
|
set @psmsg='<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ʒ̨<EFBFBD><EFBFBD>ʧ<EFBFBD><EFBFBD>'
|
|
|
|
|
return -1
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if @stztype='1'
|
|
|
|
|
begin
|
|
|
|
|
update a set cost=b.cost,
|
|
|
|
|
netcost=b.netcost,
|
|
|
|
|
cjcost=b.cjcost,
|
|
|
|
|
netcjcost=b.netcjcost,
|
|
|
|
|
newcost=b.newcost,
|
|
|
|
|
newnetcost=b.newnetcost,
|
|
|
|
|
tzcount=b.tzcount
|
|
|
|
|
from t_adjbuyprice_head a,
|
|
|
|
|
(select sum(cost) cost,sum(netcost) netcost,sum(cjcost) cjcost,sum(netcjcost) netcjcost,
|
|
|
|
|
sum(newcost) newcost,sum(newnetcost) newnetcost,sum(tzcount) tzcount
|
|
|
|
|
from t_adjbuyprice_body where billno=@psbillno) b
|
|
|
|
|
where (a.billno=@psbillno)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
end --@sver='0' or @stztype='0' or @sisdbdeploy='1'
|
|
|
|
|
|
|
|
|
|
--if @stztype='1'
|
|
|
|
|
begin
|
|
|
|
|
if not (@sver='1' and @stztype='1' and @sisdbdeploy='0')
|
|
|
|
|
begin
|
|
|
|
|
update t_supplier set tjtotal=tjtotal+w.cjcost
|
|
|
|
|
from t_supplier v join t_adjbuyprice_head w on v.supcode=w.supcode
|
|
|
|
|
where w.billno=@psbillno
|
|
|
|
|
|
|
|
|
|
select @bookdate=convert(varchar(10),getdate(),20),@booktime=convert(varchar(8),getdate(),8)
|
|
|
|
|
set @ssql='insert into '+@svbktbl+'(orgcode,bookdate,booktime,supcode,billno,billtype,fsamount,yfjytotal,prejytotal)
|
|
|
|
|
select '''+@sorgcode+''','''+@bookdate+''','''+@booktime+''',w.supcode ,'''+@psbillno+''',
|
|
|
|
|
''4'',w.cjcost,v.jhtotal-v.thtotal+v.tjtotal,v.prepay
|
|
|
|
|
from t_supplier v join t_adjbuyprice_head w on v.supcode=w.supcode
|
|
|
|
|
where billno='''+@psbillno+''''
|
|
|
|
|
exec (@ssql)
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if not (@sver='1' and @stztype='1' and @sisdbdeploy='0')
|
|
|
|
|
begin
|
|
|
|
|
if exists (select supcode from t_supplier where supcode=(select supcode from t_adjbuyprice_head where billno=@psbillno) and suptype=@sver)
|
|
|
|
|
set @siszsvendor='1'
|
|
|
|
|
else
|
|
|
|
|
set @siszsvendor='0'
|
|
|
|
|
|
|
|
|
|
insert into t_pay_bill(billtype,billno,orgcode,bizdate,supcode ,sqauremode,cost,paydate,jscost,zrcost,isfinished,contrno,finacode)
|
|
|
|
|
select billtype=case when @siszsvendor='1' and @sver='1' then '5' else '2' end,
|
|
|
|
|
@psbillno,@sorgcode,rzdate,supcode,sqauremode,cjcost,paydate,0.00,0.00,
|
|
|
|
|
isfinished=case when cjcost=0 then '1' else '0' end,contrno,@outfinacode
|
|
|
|
|
from t_adjbuyprice_head
|
|
|
|
|
where billno=@psbillno
|
|
|
|
|
if @ssameaccorg <> '1'
|
|
|
|
|
begin
|
|
|
|
|
insert into t_pay_bill(billtype,billno,orgcode,bizdate,supcode ,sqauremode,cost,paydate,jscost,zrcost,isfinished,contrno,finacode)
|
|
|
|
|
select '8' as billtype,
|
|
|
|
|
@psbillno,@sorgcode,rzdate,'C2000',sqauremode,cjcost,paydate,0.00,0.00,
|
|
|
|
|
isfinished=case when cjcost=0 then '1' else '0' end,contrno,@finacode
|
|
|
|
|
from t_adjbuyprice_head
|
|
|
|
|
where billno=@psbillno
|
|
|
|
|
end
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
if exists(select a.plucode from t_adjbuyprice_body a,t_plu b where a.plucode=b.plucode and isnull(b.iszfcode,'0')='1' and a.billno=@psbillno)
|
|
|
|
|
begin
|
|
|
|
|
update a set jprice=b.jprice,netjprice=b.netjprice from t_plu_org a,
|
|
|
|
|
(select plucode,jprice,netjprice,orgcode from t_plu_org where plucode in (select plucode from t_adjbuyprice_body where billno=@psbillno)) b,
|
|
|
|
|
(select plucode,innercode from t_plu where iszfcode='2') c
|
|
|
|
|
where a.plucode=c.plucode and b.plucode=c.innercode and a.orgcode=b.orgcode
|
|
|
|
|
end
|
|
|
|
|
|
|
|
|
|
set @psmsg=''
|
|
|
|
|
return(1)
|
|
|
|
|
end
|
|
|
|
|
go
|
|
|
|
|
|