PiolotTH_ReportFrom/派诺报表SQL文件/应收对账表(简易)更新数据.sql
liqionghai fabf921d10 1
2025-09-02 17:33:12 +08:00

73 lines
3.1 KiB
SQL

ALTER PROCEDURE UpdateYSDZBJY_GZTH
AS
BEGIN
TRUNCATE TABLE YingShouZhanKuanJY_GZTH
INSERT INTO YingShouZhanKuanJY_GZTH(FID,FSaleOrgId,FSalerId,[DATE],ContractNumber,ProjectName,OrderAmount,FALLAmountFor,PaymentAmount,ShippedDebt,InvoicedDebt,OwedTickets,IsEnded,Remark,[K3专票金额],[K3普票金额],ZPFALLAmountFor,PPFALLAmountFor
,[K3发货数量],[K3发货金额],[K3退货数量],[K3退货金额],[],[],[退],[退],ShipmentsAmount,FBillAllAmount)
SELECT FID,FSaleOrgId,FSalerId,[Date],CONTRACTNUMBER,ProjectName,SUM(OrderAmount) OrderAmount,SUM(BillingAmount) BillingAmount,SUM(PaymentAmount) PaymentAmount,SUM(ShippedDebt) ShippedDebt
,SUM(InvoicedDebt) InvoicedDebt,SUM(OwedTickets) OwedTickets,null,Remark,SUM([K3专票金额]) [K3专票金额],SUM([K3普票金额]) [K3普票金额],SUM(ZPBillingAmount) [],SUM(PPBillingAmount) []
,SUM([K3发货数量]) [K3发货数量],SUM([K3发货金额]) [K3发货金额],SUM([K3退货数量]) [K3退货数量],SUM([K3退货金额]) [K3退货金额],SUM([]) [],SUM([]) [],SUM([退]) [退],SUM([退]) [退]
,SUM(ShipmentsAmount) ,SUM(ReturnAmount) 退
FROM YingShouZhanKuanMX_GZTH
WHERE Number <> '合计' OR Number IS NULL
GROUP BY FID,FSaleOrgId,FSalerId,[Date],CONTRACTNUMBER,ProjectName,Remark
UPDATE YingShouZhanKuanJY_GZTH SET IsEnded= b.IsEnded
FROM (SELECT DISTINCT CONTRACTNUMBER,IsEnded FROM YingShouZhanKuanMX_GZTH aa
WHERE IsEnded IS NOT NULL) b
WHERE b.CONTRACTNUMBER=YingShouZhanKuanJY_GZTH.CONTRACTNUMBER
----对表里未添加数据进行添加
--select FID,sum(shipmentsamount) as '发货金额',
--sum(ReturnAmount) AS '退货金额',
--SUM(PPBillingAmount) AS '普票金额',
--SUM(ZPBillingAmount) AS '专票金额'
--INTO #TEMP1
--from yingshouzhankuanmx_gzth
--group by fid
--UPDATE A
--SET A.ShipmentsAmount = B.发货金额,
--A.FBillAllAmount = B.退货金额,
--A.PPFALLAmountFor = B.普票金额,
--A.ZPFALLAmountFor = B.专票金额
--FROM YingShouZhanKuanJY_GZTH A
--INNER JOIN #TEMP1 B ON A.FID = B.FID
SELECT
*,
ROW_NUMBER() OVER (PARTITION BY FID ORDER BY FID) as row_num1
INTO #CFTEMP1
FROM YingShouZhanKuanJY_GZTH
UPDATE A
SET A.row_num = B.row_num1
FROM YingShouZhanKuanJY_GZTH A
INNER JOIN #CFTEMP1 B On A.FID = B.FID
DELETE FROM YingShouZhanKuanJY_GZTH
WHERE row_num <> 1;
UPDATE A
SET A.Number = B.row_num1
FROM YingShouZhanKuanJY_GZTH A
INNER JOIN (
SELECT
FID,
ROW_NUMBER() OVER (ORDER BY [DATE] ,[FID]) as row_num1
FROM YingShouZhanKuanJY_GZTH
) B On A.FID = B.FID
--更新专票和普票的开票时间
UPDATE A
SET A.PPBillingDate = B.PPBillingDate,A.ZPBillingDate = B.ZPBillingDate
FROM YingShouZhanKuanJY_GZTH A
INNER JOIN YingShouZhanKuanMX_GZTH B ON A.FID = B.FID
--DROP TABLE #TEMP1
END