1
This commit is contained in:
108
aoyuPlugIn/汇威/SQL Server/hw_get_zpjjmxb_20250926.sql
Normal file
108
aoyuPlugIn/汇威/SQL Server/hw_get_zpjjmxb_20250926.sql
Normal file
@@ -0,0 +1,108 @@
|
||||
|
||||
/****** Object: StoredProcedure [dbo].[hw_get_zpjjmxb] Script Date: 2025/9/26 15:54:09 ******/
|
||||
SET ANSI_NULLS ON
|
||||
GO
|
||||
SET QUOTED_IDENTIFIER ON
|
||||
GO
|
||||
ALTER PROCEDURE [dbo].[hw_get_zpjjmxb]
|
||||
@fdate1 NVARCHAR(20)
|
||||
AS
|
||||
BEGIN
|
||||
|
||||
DECLARE @fdate NVARCHAR(20)
|
||||
SET @fdate=''''+ @fdate1 + ''''
|
||||
|
||||
DELETE hw_zpjjmxb WHERE jjdate=@fdate1
|
||||
|
||||
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ƽ<EFBFBD>(jjDate, ygNo, ygNm, zlNo, cpNm, price, fqty, jtrs, je, bz, zje,jjcsbt,gwbt,jjdh)
|
||||
INSERT INTO hw_zpjjmxb
|
||||
SELECT t1.F_DATE
|
||||
,yg.FNUMBER,ygs.FNAME,scdd.FNUMBER,scdd.FCPNM,t2.F_PRICE
|
||||
,CASE WHEN ISNULL(rs1.rs,0)=0 THEN 0 ELSE t2.F_FQTY END
|
||||
,rs1.rs
|
||||
,CASE WHEN ISNULL(rs1.rs,0)=0 THEN 0 ELSE t2.F_FQTY/rs1.rs END * t2.F_PRICE
|
||||
,0
|
||||
,CASE WHEN ISNULL(rs1.rs,0)=0 THEN 0 ELSE t2.F_FQTY/rs1.rs END * t2.F_PRICE
|
||||
,0,0,t1.fbillno
|
||||
,scdd.FCPNO
|
||||
FROM GAT_DAY_ZP t1
|
||||
INNER JOIN GAT_DAY_CP_ZP t2 on t1.FID=t2.FID
|
||||
INNER JOIN hw_scdd_select scdd on t2.F_SCNO=scdd.FID
|
||||
INNER JOIN GAT_DAY_JT_ZP t3 on t1.FID=t3.FID
|
||||
INNER JOIN T_HR_EMPINFO yg on t3.F_YGNO=yg.FID
|
||||
INNER JOIN T_HR_EMPINFO_L ygs on yg.FID=ygs.FID
|
||||
INNER JOIN (
|
||||
--1<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><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
SELECT p1.FID,p1.rs-ISNULL(p2.syqrs,0) as rs
|
||||
FROM (
|
||||
SELECT t1.FID, count(*) as rs
|
||||
FROM GAT_DAY_ZP t1
|
||||
INNER JOIN GAT_DAY_jt_ZP jt on t1.fid=jt.fid
|
||||
WHERE F_DATE= @fdate1
|
||||
GROUP BY t1.FID
|
||||
) p1
|
||||
LEFT OUTER JOIN (
|
||||
SELECT t1.FID, count(*) as syqrs
|
||||
FROM GAT_DAY_ZP t1
|
||||
INNER JOIN GAT_DAY_jt_ZP t2 on t1.fid=t2.fid
|
||||
INNER JOIN GAT_YGCQs t3 on t2.f_ygno=t3.f_ygnm
|
||||
INNER JOIN GAT_YGCQ t4 on t3.fid=t4.fid AND t4.f_date = @fdate1
|
||||
LEFT OUTER JOIN hw_xygzjj t5 on t3.F_YGNM=t5.F_YGID AND t4.F_DATE>=t5.F_DATE
|
||||
WHERE t5.F_YGID IS NULL AND t3.f_issyq='<EFBFBD><EFBFBD>' AND t1.F_DATE = @fdate1
|
||||
GROUP BY t1.FID
|
||||
) p2 on p1.fid=p2.FID
|
||||
) rs1 on t1.fid = rs1.fid
|
||||
WHERE t1.F_DATE = @fdate1
|
||||
OPTION (RECOMPILE)
|
||||
|
||||
--<EFBFBD><EFBFBD><EFBFBD>˼Ƽ<EFBFBD>
|
||||
INSERT INTO hw_zpjjmxb
|
||||
SELECT t1.F_DATE as <EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,yg.FNUMBER as Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,ygs.FNAME as Ա<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,scdd.FNUMBER as <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,scdd.FCPNM as <EFBFBD><EFBFBD>Ʒ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t2.F_PRICE
|
||||
,t2.F_FQTY
|
||||
,null as <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t2.F_JJGZ as <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,null as <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
,t2.F_JJGZ as <EFBFBD>ܽ<EFBFBD><EFBFBD><EFBFBD>,0,0
|
||||
,t1.fbillno
|
||||
,scdd.FCPNO
|
||||
FROM GAT_DAY_ZP t1
|
||||
INNER JOIN GAT_DAY_GR_ZP t2 on t1.FID = t2.FID
|
||||
INNER JOIN hw_scdd_select scdd on t2.F_SCNO = scdd.FID
|
||||
INNER JOIN T_HR_EMPINFO yg on t2.F_YGNO = yg.FID
|
||||
INNER JOIN T_HR_EMPINFO_L ygs on yg.FID = ygs.FID
|
||||
WHERE t1.F_DATE = @fdate1
|
||||
OPTION (RECOMPILE)
|
||||
-----------------------------------------------
|
||||
|
||||
UPDATE t1 SET bz =t3.F_SYQBT
|
||||
,jjcsbt = t3.F_CSBT
|
||||
,gwbt = t3.F_GWBT
|
||||
FROM hw_zpjjmxb t1
|
||||
INNER JOIN GAT_rgz t2 on t1.jjDate=t2.FDATE
|
||||
INNER JOIN GAT_rgzs t3 on t2.fid=t3.fid
|
||||
INNER JOIN T_HR_EMPINFO yg on t3.F_YGNO = yg.FID AND t1.ygno = yg.FNUMBER
|
||||
WHERE t1.jjDate=@fdate1
|
||||
|
||||
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ظ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
UPDATE hw_zpjjmxb SET bz = 0 WHERE bz>0 AND jjDate=@fdate1 AND FInterID NOT IN (SELECT MIN(FInterID) FROM hw_zpjjmxb WHERE jjDate=@fdate1 GROUP BY ygno,bz)
|
||||
UPDATE hw_zpjjmxb SET jjcsbt = 0 WHERE jjcsbt>0 AND jjDate=@fdate1 AND FInterID NOT IN (SELECT MIN(FInterID) FROM hw_zpjjmxb WHERE jjDate=@fdate1 GROUP BY ygno,jjcsbt)
|
||||
UPDATE hw_zpjjmxb SET gwbt = 0 WHERE gwbt>0 AND jjDate=@fdate1 AND FInterID NOT IN (SELECT MIN(FInterID) FROM hw_zpjjmxb WHERE jjDate=@fdate1 GROUP BY ygno,gwbt)
|
||||
|
||||
--<EFBFBD><EFBFBD><EFBFBD>¼<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>˽<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܽ<EFBFBD><EFBFBD><EFBFBD>
|
||||
UPDATE hw_zpjjmxb SET je=ROUND(price*fqty/ CASE WHEN ISNULL(jtrs,0)=0 THEN 1 ELSE jtrs END,2)
|
||||
,zje=ROUND(price * fqty / CASE WHEN ISNULL(jtrs,0) = 0 THEN 1 ELSE jtrs END ,2) + bz + jjcsbt + gwbt
|
||||
WHERE jjdate=@fdate1
|
||||
|
||||
--
|
||||
DELETE t1 FROM hw_zpjjmxb t1
|
||||
INNER JOIN T_HR_EMPINFO yg on t1.ygno = yg.FNUMBER
|
||||
INNER JOIN GAT_YGCQs cqs on yg.FID = cqs.F_YGNM
|
||||
INNER JOIN GAT_YGCQ cq on cqs.fid = cq.fid
|
||||
WHERE jjDate=@fdate1 AND cq.F_DATE = @fdate1 AND cqs.F_ISSYQ = '<EFBFBD><EFBFBD>'
|
||||
AND cqs.F_YGNM NOT IN (SELECT f_ygID FROM hw_xygzjj WHERE f_date <= @fdate1)
|
||||
END
|
||||
Reference in New Issue
Block a user