diff --git a/派诺报表SQL文件/销售执行统计表存储过程.sql b/派诺报表SQL文件/销售执行统计表存储过程.sql index 2c07e6d..88bba6e 100644 --- a/派诺报表SQL文件/销售执行统计表存储过程.sql +++ b/派诺报表SQL文件/销售执行统计表存储过程.sql @@ -1,367 +1,361 @@ - -/****** Object: StoredProcedure [dbo].[GetOrderData] Script Date: 2025/8/20 10:19:00 ******/ -SET ANSI_NULLS ON -GO -SET QUOTED_IDENTIFIER ON -GO - ---EXEC [GetOrderData] 'Ö麣ÅÉŵ','2025-01-01','2025-06-30' -ALTER PROCEDURE [dbo].[GetOrderData] - -( - @FSaleOrgIdName nvarchar(1000), - @FSDate nvarchar(1000), - @FEDate nvarchar(1000), - @FPaperContract NVARCHAR(500)='', - @QuYu NVARCHAR(500)='' -) -as - DECLARE @FSaleOrgId nvarchar(1000); - DECLARE @FSDateDate DATE; - DECLARE @FEDateDate DATE; - SELECT @FSaleOrgId = FORGID - FROM T_ORG_ORGANIZATIONS_L WHERE - FNAME = @FSaleOrgIdName - - SET @FSDateDate = CONVERT(DATE, @FSDate); - SET @FEDateDate = CONVERT(DATE, @FEDate); - - -- @FEDate + 1Ìì -SET @FEDateDate = DATEADD(DAY, 1, @FEDateDate); - - SELECT D.FENTRYID,sum(b.fqty) AS 'FQTY',sum(E.FAllAmount_LC) AS 'FAMOUNT' - INTO #SAL - FROM T_SAL_DELIVERYNOTICE A - INNER JOIN T_SAL_DELIVERYNOTICEENTRY B ON A.FID = B.FID - INNER JOIN T_SAL_DELIVERYNOTICEENTRY_F E ON E.FENTRYID = B.FENTRYID - INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK C ON C.FENTRYID = B.FENTRYID - INNER JOIN T_SAL_ORDERENTRY D ON D.FID = C.FSBILLID AND D.FENTRYID = C.FSID - WHERE A.FDOCUMENTSTATUS= 'C' - AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) - AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) - AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) - AND (a.F_PAPERCONTRACT=@FPaperContract OR @FPaperContract='') - GROUP BY D.FENTRYID - - - SELECT D.FENTRYID,sum(b.fqty) AS 'FQTY',sum(E.FAllAmount_LC) AS 'FAMOUNT' - INTO #RETURN - FROM T_SAL_RETURNNOTICE A - INNER JOIN T_SAL_RETURNNOTICEENTRY B ON A.FID = B.FID - INNER JOIN T_SAL_RETURNNOTICEENTRY_F E ON E.FENTRYID = B.FENTRYID - INNER JOIN T_SAL_RETURNNOTICEENTRY_LK C ON C.FENTRYID = B.FENTRYID - INNER JOIN T_SAL_ORDERENTRY D ON D.FID = C.FSBILLID AND D.FENTRYID = C.FSID - WHERE A.FDOCUMENTSTATUS= 'C' - AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) - AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) - AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) - AND (a.F_PAPERCONTRACT=@FPaperContract OR @FPaperContract='') - GROUP BY D.FENTRYID - - - SELECT F.FENTRYID,sum(b.FREALQTY) AS 'FQTY',sum(G.FALLAMOUNT_LC) AS 'FAMOUNT' - INTO #OUTSTOCK - FROM T_SAL_OUTSTOCK A - INNER JOIN T_SAL_OUTSTOCKENTRY B ON A.FID = B.FID - INNER JOIN T_SAL_OUTSTOCKENTRY_F G ON G.FENTRYID = B.FENTRYID - INNER JOIN T_SAL_OUTSTOCKENTRY_LK C ON C.FENTRYID = B.FENTRYID - INNER JOIN T_SAL_DELIVERYNOTICEENTRY D ON D.FID = C.FSBILLID AND D.FENTRYID = C.FSID - INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK E ON E.FENTRYID = D.FENTRYID - INNER JOIN T_SAL_ORDERENTRY F ON F.FID = E.FSBILLID AND F.FENTRYID = E.FSID - WHERE A.FDOCUMENTSTATUS= 'C' - AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) - AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) - AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) - AND (a.F_CONTRACTNUMBER=@FPaperContract OR @FPaperContract='') - GROUP BY F.FENTRYID - - SELECT F.FENTRYID,sum(b.FREALQTY) AS 'FQTY',sum(G.FALLAMOUNT_LC) AS 'FAMOUNT' - INTO #RETURNSTOCK - FROM T_SAL_RETURNSTOCK A - INNER JOIN T_SAL_RETURNSTOCKENTRY B ON A.FID = B.FID - INNER JOIN T_SAL_RETURNSTOCKENTRY_F G ON G.FENTRYID = B.FENTRYID - INNER JOIN T_SAL_RETURNSTOCKENTRY_LK C ON C.FENTRYID = B.FENTRYID - INNER JOIN T_SAL_RETURNNOTICEENTRY D ON D.FID = C.FSBILLID AND D.FENTRYID = C.FSID - INNER JOIN T_SAL_RETURNNOTICEENTRY_LK E ON E.FENTRYID = D.FENTRYID - INNER JOIN T_SAL_ORDERENTRY F ON F.FID = E.FSBILLID AND F.FENTRYID = E.FSID - WHERE A.FDOCUMENTSTATUS= 'C' - AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) - AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) - AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) - AND (a.F_CONTRACTNUMBER=@FPaperContract OR @FPaperContract='') - GROUP BY F.FENTRYID +--EXEC [GetOrderData] 'Ö麣ÅÉŵ','2025-01-01','2025-06-30' +ALTER PROCEDURE [dbo].[GetOrderData] +( + @FSaleOrgIdName nvarchar(1000), + @FSDate nvarchar(1000), + @FEDate nvarchar(1000), + @FPaperContract NVARCHAR(500)='', + @QuYu NVARCHAR(500)='' , + @KH NVARCHAR(500) +) +as + DECLARE @FSaleOrgId nvarchar(1000); + DECLARE @FSDateDate DATE; + DECLARE @FEDateDate DATE; - - --SELECT b.FORDERENTRYID as 'FENTRYID',sum(bF.FQty) AS 'FQTY',sum(bF.FRECAMOUNT_E) AS 'FAMOUNT' - --INTO #RECE - --FROM t_AR_receivable A - ----INNER JOIN t_AR_receivableENTRY B ON A.FID = B.FID - --LEFT JOIN dbo.T_AR_RECEIVEBILLENTRY bF on A.FID = BF.FID --ÏúÊÛ¶©µ¥±íÌå - - --WHERE A.FDOCUMENTSTATUS= 'C' - --AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) - --AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) - --AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) - --AND (a.F_PAPERCONTRACT=@FPaperContract OR @FPaperContract='') - --GROUP BY b.FORDERENTRYID - - SELECT a.FID, STUFF( - ( - SELECT ','+ CONVERT(NVARCHAR(100), FNAME,120) -- Ҫƴ½ÓµÄÁÐ - FROM ( - SELECT DISTINCT x.FNAME +'--'+CONVERT(NVARCHAR(50), CONVERT(INT, w.F_DAY))+'Ìì--'+CONVERT(NVARCHAR(50),CONVERT(DECIMAL(18,2), w.FRECADVANCERATE))+'%'+'---' +ISNULL(CONVERT(NVARCHAR(20),w.FMUSTDATE,23),'') AS FNAME - ,w.FID,w.F_PMSDate - ,W.FRECADVANCEAMOUNT,w.F_DAY ,w.F_MBBA_DECIMAL_UKY - ,w.FENTRYID, W.F_RecConditionId ,w.FRECADVANCERATE ,x.FNAME AS fname2 ,w.FMUSTDATE [µ½ÆÚÈÕ] - FROM T_SAL_ORDERPLAN w WITH(NOLOCK) - LEFT JOIN T_BD_RecCondition_L X ON X.FID = W.F_RecConditionId - ) t WHERE t.FID=a.FID - FOR XML PATH('') - ),1 ,1, '') ¸¶¿îÌõ¼þ - INTO #TEMP2 - FROM T_SAL_ORDER A WITH(NOLOCK) - WHERE - A.FDOCUMENTSTATUS= 'C' - AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) - AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) - AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) - AND (a.F_CONTRACTNUMBER=@FPaperContract OR @FPaperContract='') - - + SELECT @FSaleOrgId = FORGID + FROM T_ORG_ORGANIZATIONS_L WHERE + FNAME = @FSaleOrgIdName + + SET @FSDateDate = CONVERT(DATE, @FSDate); + SET @FEDateDate = CONVERT(DATE, @FEDate); - --¹ýÂËÅÉŵ×Ü - SELECT A.FID AS FID - INTO #TEMP3 - FROM T_SAL_ORDER A - INNER JOIN T_BD_CUSTOMER CC ON CC.FCUSTID= A.FCUSTID - INNER JOIN T_BD_CUSTOMER_L C ON C.FCUSTID= A.FCUSTID AND C.FLOCALEID= 2052 - LEFT JOIN V_BD_SALESMAN_L L ON L.fid = A.FSALERID - left JOIN T_PerformanceSharing M ON M.FSOURCEBILLNO = A.FBILLNO AND M.FDOCUMENTSTATUS = 'C' - left JOIN T_PerformanceSharingEntry N ON N.FID=M.FID - LEFT JOIN V_BD_SALESMAN_L O ON O.fid= N.FSALEID - LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO.Ãû³Æ=O.FNAME - LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.Ãû³Æ=L.FNAME - WHERE CC.F_correlation = '1' OR a.F_CONTRACTNUMBER IN ('CYJSQD2024123118401','CYJSQD2025011518501') - --WHERE A.FSALEORGID = 100302 AND - --( - -- CC.F_correlation = '1' - -- -- OR - -- --C.FCUSTID IN ('1517849','1156999','1149200') - -- OR - --(C.FCUSTID = 1150173 AND (ACO.ÇøÓò = '¾ö²ßÍŶÓ' OR ACL.ÇøÓò = '¾ö²ßÍŶÓ')) - --OR L.FNAME = 'ÐËŵ×Ü' - --OR A.FID IN (110185,207800) - --AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) - --AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE< @FEDateDate) ) - - - SELECT - A.FID , - A.FBILLNO , - B.FENTRYID , - a.F_INVOICEAMOUNT '¿ªÆ±½ð¶î', - j.FBILLALLAMOUNT- a.F_INVOICEAMOUNT 'δ¿ªÆ±½ð¶î', - - ISNULL(N.FSHARERATE,100) AS FSHARERATE, - F.FALLAMOUNT_LC , - MONTH(A.FApproveDate) AS 'Ô·Ý' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÈÕÆÚ-¶ÔÓ¦µÄÔÂ·Ý - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN L.FNAME - ELSE O.FNAME END as 'Òµ¼¨·Ö̯ºóÏúÊÛÔ±' -- Òµ¼¨·Ö̯ºóÏúÊÛÔ± - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END AS 'ÇøÓò' - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.Ã÷Ï¸ÇøÓò ELSE ACO.Ã÷Ï¸ÇøÓò END AS 'Ã÷Ï¸ÇøÓò' - ,c.FNAME as '¹º»õµ¥Î»' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-¿Í»§ - ,CONVERT(VARCHAR(10), A.FDate,23) AS 'Ç©¶©ÈÕÆÚ' - ,CONVERT(VARCHAR(10), A.FApproveDate,23) AS 'ÉóºËÈÕÆÚ' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÉóºËÈÕÆÚ - ,A.F_contractnumber AS 'Ö½ÖʺÏͬºÅ'--ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-Ö½ÖʺÏͬºÅ - ,E.FNUMBER AS '²úÆ·´úÂë' - ,d.FNAME as '²úÆ·Ãû³Æ' --ÏúÊÛ¶©µ¥-µ¥¾ÝÌå-ÎïÁÏÃû³Æ - ,d.FSPECIFICATION as '¹æ¸ñÐͺÅ'--ÏúÊÛ¶©µ¥-µ¥¾ÝÌå-¹æ¸ñÐͺŠ- ,CONCAT(A.F_contractnumber,d.FSPECIFICATION ) as '¶©µ¥¹æ¸ñÐͺÅ' --H¡¾¶©µ¥ºÅ¡¿(¶ÔÓ¦Ö½ÖʺÏͬºÅ)+J¡¾Ðͺţܹæ¸ñ£Ü±ê×¼¡¿ - ,CASE WHEN E.FNUMBER LIKE 'L%' AND HT.FNUMBER = 'SX' AND ISNULL(b.F_ProjectProposal,'') != '' - THEN CONCAT(b.F_ProjectProposal,'µÄÊ£Óಿ·Ö') ELSE E.F_114 END AS 'ÐͺŷÖÀà' --ÎïÁϵµ°¸-×Ô¶¨Òå×Ö¶Î-ÐͺŴóÀà - ,CASE WHEN E.FNUMBER LIKE 'L%' AND HT.FNUMBER = 'SX' AND ISNULL(b.F_ProjectProposal,'') != '' - THEN CONCAT(b.F_ProjectProposal,'µÄÊ£Óಿ·Ö') ELSE E.F_115 END AS '²úÆ··ÖÀà'--ÎïÁϵµ°¸-×Ô¶¨Òå×Ö¶Î-²úÆ·´óÀà -,E.F_116 AS '²úÆ·Ïß'--ÎïÁϵµ°¸-×Ô¶¨Òå×Ö¶Î-²úÆ·Ïß - --,'' as 'ÒµÎñÏß' --´ý¶¨£¬È·ÈÏÈ¡ÊýÂß¼­ - ,CASE WHEN A.F_VRYF_Combo_lsn LIKE '%XTZHT%' THEN 'ϵͳÖ÷ºÏͬ' - WHEN A.F_VRYF_Combo_lsn LIKE '%SXTXS%' THEN 'ËæÏµÍ³ÏúÊÛ' - WHEN A.F_Returntype = 'HH' OR A.F_Returntype = 'TH' THEN 'ËæÏµÍ³ÏúÊÛ' - WHEN F_VRYF_Combo_lsn LIKE 'DDXS' THEN 'µ¥¶ÀÏúÊÛ'END as 'ÏúÊÛÀàÐÍ' - ,CASE WHEN A.F_VRYF_Combo_lsn LIKe '%DDXS%' THEN 'ÒDZíÀàºÏͬ(CEP)' ELSE 'ËæÏµÍ³ÏúÊÛ' END AS 'ÏúÊÛÀàÐÍ1' - --,cast( B.FQTY as real) AS 'ÊýÁ¿Ì¨' --ÏúÊÛ¶©µ¥-µ¥¾ÝÌå-ÏúÊÛÊýÁ¿ÏÔʾÔÚÒµ¼¨·Ö̯µ¥ - ,cast( ROUND( F.FTAXPRICE,2) as real) AS 'µ¥¼ÛԪ̨' --ÏúÊÛ¶©µ¥-µ¥¾ÝÌå-º¬Ë°µ¥¼Û "Òµ¼¨·Öֻ̯·Ö̯½ð¶î²»·Ö̯ÊýÁ¿ -,cast( ROUND( f.FALLAMOUNT_LC,2) as real) as 'Ðк¬Ë°µ¥¼Û' - ,CASE WHEN n.FSHARERATE IS NULL THEN ROUND(F.FALLAMOUNT_LC,2) - ELSE ROUND( f.FALLAMOUNT_LC * (n.FSHARERATE/100) ,2) END as 'ºÏͬ×ܼÛ' --Òµ¼¨·Öֻ̯·Ö̯½ð¶î²»·Ö̯ÊýÁ¿£¬·Ö¼¡¾¼Û˰ºÏ¼Æ±¾Î»±Ò¡¿*Òµ¼¨·Ö̯µ¥ÖеķÖ̯±ÈÀý - , G.FNAME as 'ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÏîÄ¿Ãû³Æ' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÏîÄ¿Ãû³Æ - ,y.FCAPTION AS 'ÏîÄ¿ËùÊôÁìÓò'--ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÏîÄ¿ËùÊôÁìÓò - ,CASE - WHEN A.F_contractnumber LIKE 'W2%' OR A.F_contractnumber LIKE 'CW%' THEN '·þÎñÒµÎñ' - WHEN (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%×ÛºÏÄÜÔ´·þÎñ%' - OR (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%Êý¾ÝÖÐÐÄ%' - THEN 'ÐÐÒµ½â¾ö·½°¸ÒµÎñ' - ELSE '²úÆ·ÒµÎñ' - END AS 'ÒµÎñÀàÐÍ-°´²úÆ·»®·Ö' - ,CASE WHEN I.F_CustomerType= 'JXS' THEN '¾­ÏúÉÌ' - WHEN I.F_CustomerType = 'MYS' THEN 'óÒ×ÉÌ' - ELSE '' - END - as 'Ö±Ïú»¹ÊǾ­ÏúÉÌ' - ,CASE WHEN b.F_specialoffer = '1' AND (F_YKQC_CHECKBOX_QTR='0' OR F_YKQC_CHECKBOX_QTR IS NULL) THEN 'ÊÇ' ELSE '·ñ' end AS 'ÊÇ·ñÌØ¼Û'--ÏúÊÛ¶©µ¥-µ¥¾Ý·Ö¼-ÊÇ·ñÌØ¼Û - ,CASE WHEN (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%²úÆ·Ïß%' OR - (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%¾ö²ßÍŶÓ%'OR - (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%Èýµç²úÆ·Ïß%' - THEN '²úÆ·Ïß' - WHEN (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) like 'Êý¾ÝÖÐÐÄ' OR - (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%Ò½Ôº%' - OR (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%»ú³¡%' - THEN 'ÐÐÒµÏß' - ELSE 'ÇøÓòÏß' END AS 'Òµ¼¨ÀàÐÍ' - ,CASE WHEN N.FSHARERATE is null THEN '100' ELSE CONCAT( CAST ( N.FSHARERATE AS REAL),'%') END as 'Òµ¼¨·Ö̯±ÈÀý' --ÏúÊÛ¶©µ¥-Òµ¼¨·Ö̯µ¥-·Ö̯±ÈÀý - , b.F_ProjectProposal AS 'ÏîÄ¿·½°¸ÀàÐÍ' - ,a.F_Amount AS 'ÊÕ¿î½ð¶î' --´ý¶¨ ÊÕ¿î½ð¶î - , CAST( J.FEXCHANGERATE AS REAL) AS '»ãÂÊ' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-»ãÂÊ - ,H.F_Province AS 'ÏîÄ¿ËùÊôÊ¡·Ý' --×Ö¶ÎÃû¸Ä³É¡°ÏîÄ¿ËùÊôÊ¡·Ý¡±À´×ÔÓÚCRMϵͳÉÌ»ú£¬ERPÉÌ»úÐèÒªÔö¼ÓÎı¾×ֶζÔÓ¦ - ,h.F_City AS 'ÏîÄ¿ËùÊô³ÇÊÐ' --×Ö¶ÎÃû¸Ä³É¡°ÏîÄ¿ËùÊô³ÇÊС±À´×ÔÓÚCRMϵͳÉÌ»ú£¬ERPÉÌ»úÐèÒªÔö¼ÓÎı¾×ֶζÔÓ¦ - ,u.FCAPTION AS '±í¼Æ»òϵͳ'--±í¼Æ»òϵͳ ´Ë×Ö¶ÎÐèÒªÔÚÏúÊÛ¶©µ¥ÖÐÌåÏÖ£¬À´×ÔÓÚERPÎïÁϵµ°¸£¬¶©µ¥Ö´ÐÐͳ¼Æ±¨±í²»ÐèÒªÌåÏÖ´Ë×ֶΣ¬ÓÉÓÚÓ¦ÊÕ¿îÃ÷ϸ±íÐèÒª´Ó¶©µ¥Ö´ÐÐÃ÷ϸ±íÖÐÈ¡¸Ã×ֶΣ¬ËùÒÔ´Ë×ֶλ¹ÐèÒª±£Áô¡£È¡ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-¶©µ¥Àà±ð - - ,CASE WHEN ROW_NUMBER() OVER (PARTITION BY A.FID ORDER BY A.FID, B.FENTRYID ,FSHARERATE desc) = 1 - THEN CAST(J.FBILLALLAMOUNT_LC AS numeric(18,2)) ELSE NULL END AS '¶©µ¥×ܶî' - - ,K.FDATAVALUE AS 'ÆóÒµÀàÐ͹«Ë¾ÐÔÖÊ'--À´×ÔÓÚ¿Í»§×ÊÁÏ-¹«Ë¾ÐÔÖÊ - ,'' AS 'Ç·¿î×ܶî' --¡¾Òѽ»»õ½ð¶î£¨º¬ÍË»õ£©-ÊÕ¿î½ð¶î¡¿*Òµ¼¨·Ö̯±ÈÀý - , TU.FNAME AS 'ÖÆµ¥ÈË' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÆäËûҳǩ-´´½¨ÈË£¬Ï£ÍûÈ¡µÄÊÇÏúÊÛ¶©µ¥Ìá½»ÈË£¬ -,S.FCAPTION AS '¼¯²ÉÒµÎñ·ÖÀà' --2024-11-20¹µÍ¨ÐÂÔö×ֶΣ¬ÏúÊÛ¶©µ¥±íÍ·Ôö¼Ó£º¡¾ÊÇ·ñ¼¯²ÉÏîÄ¿¡¿ÏÂÀ­Ñ¡Ï·ñ/»ªÈó/Áúºþ/Â̵Ø/±£ÀûµØ²ú/»ªÈó·Ç¼¯²É£¬³£¹æÇé¿öÏÂĬÈÏΪ¡¾·ñ¡¿£¬ÓÉCRMϵͳ´«µÝµ½ERPϵͳÖУ¬Ä¬ÈÏֵΪ·ñ -,L.FNAME AS 'ÏúÊÛ¶©µ¥ÒµÎñÔ±' ---,CAST(B.FQTY AS REAL) AS 'ÊýÁ¿Ì¨' - -, CASE - WHEN N.FSHARERATE IS NOT NULL THEN - CASE - WHEN ROW_NUMBER() OVER (PARTITION BY A.FID, B.FENTRYID ORDER BY N.FENTRYID) = 1 THEN CAST(B.FQTY AS REAL) - ELSE NULL - END - ELSE CAST(B.FQTY AS REAL) - END AS 'ÊýÁ¿Ì¨' - - - ,AE.FDATAVALUE AS 'ºÏͬÀàÐÍ' - ,assl.FDATAVALUE '¿Í»§ÐÅÓü°·ÖÀà' - INTO #TEMP4 - FROM T_SAL_ORDER A --ÏúÊÛ¶©µ¥±íÍ· - INNER JOIN T_BAS_ASSISTANTDATAENTRY HT ON A.F_ORDERCATEGORY = HT.FMASTERID -- ¹ØÁª¸¨Öú×ÊÁϲéѯºÏͬµÄ±àÂë - INNER JOIN T_SEC_USER TU ON A.FCreatorId = TU.FUSERID -- Óû§µ¥¹ØÁª±íÌå - INNER JOIN T_SAL_orderentry b on a.FID = B.FID --ÏúÊÛ¶©µ¥±íÌå - INNER JOIN T_BD_CUSTOMER_L C ON C.FCUSTID= A.FCUSTID AND C.FLOCALEID= 2052 --¿Í»§¸½Êô±í - INNER JOIN T_BD_MATERIAL_L d on d.FMATERIALID =b.FMATERIALID and d.FLOCALEID=2052 --ÎïÁϸ½Êô±í - INNER JOIN T_BD_MATERIAL E ON E.FMATERIALID =D.FMATERIALID - INNER JOIN T_SAL_ORDERENTRY_F F ON F.FENTRYID = B.FENTRYID - INNER JOIN T_SAL_ORDERENTRY_R AR ON AR.FENTRYID = B.FENTRYID - INNER JOIN T_BD_CUSTOMER I ON I .FCUSTID = A.FCUSTID - INNER JOIN T_SAL_ORDERFIN J ON J.FID= A.FID - LEFT JOIN T_BAS_PREBDONE_L G ON G.FID = A.F_projectname AND G.FLocaleID =2052 - LEFT JOIN T_BAS_PREBDTHREE H ON H.FID = A.F_BON - LEFT JOIN T_META_FORMENUMITEM Z ON Z.FVALUE = H.F_PROJECTFIELD AND Z.FID = '3ad5efac-d4a5-467c-b290-685a22791e68' - LEFT JOIN T_META_FORMENUMITEM_L Y ON Y.FENUMID = Z.FENUMID AND Y.FLOCALEID = 2052 - LEFT JOIN T_META_FORMENUMITEM X ON x.FVALUE = I.F_CustomerType AND X.FID = '5fbc5d34-7347-4b6d-8a9d-4816a47936cc' - LEFT JOIN T_META_FORMENUMITEM_L W ON W.FENUMID = X.FENUMID AND W.FLOCALEID = 2052 - LEFT JOIN T_META_FORMENUMITEM V ON V.FVALUE = A.F_OrderType AND v.FID = 'bc2c1d77-0f4b-41d2-b61b-e29554c570d4' - LEFT JOIN T_META_FORMENUMITEM_L U ON U.FENUMID = V.FENUMID AND U.FLOCALEID = 2052 - LEFT JOIN T_META_FORMENUMITEM T ON T.FVALUE = A.F_PURCHASINGPRO AND T.FID = 'a8624cbb-00e0-4beb-8045-53cbe94eb9ee' - LEFT JOIN T_META_FORMENUMITEM_L S ON S.FENUMID = T.FENUMID AND S.FLOCALEID = 2052 - LEFT JOIN V_ASSISTANTDATA K ON K.FENTRYID = I.FCompanyNature - LEFT JOIN V_BD_SALESMAN_L L ON L.fid = A.FSALERID - left JOIN T_PerformanceSharing M ON M.FSOURCEBILLNO = A.FBILLNO AND M.FDOCUMENTSTATUS = 'C' - left JOIN T_PerformanceSharingEntry N ON N.FID=M.FID - LEFT JOIN V_BD_SALESMAN_L O ON O.fid= N.FSALEID --AND N.FID IN (SELECT FID FROM T_PerformanceSharing WHERE FDOCUMENTSTATUS = 'C' ) - LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO.Ãû³Æ=O.FNAME AND ISNULL(ACO.Ã÷Ï¸ÇøÓò,'') != '' - LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.Ãû³Æ=L.FNAME AND ISNULL(ACL.Ã÷Ï¸ÇøÓò,'') != '' - INNER JOIN T_BAS_ASSISTANTDATAENTRY_L AE ON AE.FENTRYID = A.F_Ordercategory - LEFT JOIN dbo.T_BAS_ASSISTANTDATAENTRY_L assl ON assl.FENTRYID= I.F_CreditClassification - WHERE -1=1 AND -A.FID NOT IN( - SELECT FID FROM #TEMP3 - ) - AND(@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) - AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) - AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) - AND A.FDocumentStatus = 'C' -AND A.FManualClose <> '1' -AND B.FManualRowClose <> '1' -AND A.F_contractnumber NOT LIKE 'Z%' - AND (a.F_CONTRACTNUMBER=@FPaperContract OR @FPaperContract='') - - SELECT - A.* - ,AD.¸¶¿îÌõ¼þ as '¸¶¿îÌõ¼þ'--ÏúÊÛ¶©µ¥-ÊÕ¿î¼Æ»®-ÊÕ¿îÌõ¼þ+ÌìÊý+¡°Ì족+Ó¦ÊÕ±ÈÀý(%),¶àÐÐÖ®¼äÐèÒªÓá°,¡±¸ô¿ª£¬Èç¹ûÌìÊýΪ¿Õ¾ÍĬÈÏΪ0Ìì - ,CAST( ISNULL(P.FQTY,'0') AS REAL) as '·¢»õÊýÁ¿' --ÏúÊÛ¶©µ¥¹ØÁªµÄ·¢»õ֪ͨµ¥ÊýÁ¿£¬ÏÔʾÔÚÒµ¼¨·Ö̯µ¥ÖеÚÒ»¸öÒµÎñÔ±ÃûÏ -,cast( round( ISNULL(P.FAMOUNT,0) * ISNULL(A.FSHARERATE,100)/100,2) as real) as '·¢»õ½ð¶î'--È¡ÏúÊÛ¶©µ¥¹ØÁªµÄ·¢»õ֪ͨµ¥½ð¶î*·Ö̯±ÈÀý - ,CAST( ISNULL(q.FQTY,'0') AS REAL) as 'ÍË»õÊýÁ¿' --ÏúÊÛ¶©µ¥¹ØÁªµÄÍË»õ֪ͨµ¥ÊýÁ¿ - ,cast( round( ISNULL(q.FAMOUNT,0) * ISNULL(A.FSHARERATE,100)/100,2) as real) as 'ÍË»õ½ð¶î'--ÏúÊÛ¶©µ¥¹ØÁªµÄÍË»õ֪ͨµ¥½ð¶î*·Ö̯±ÈÀý - ,CAST( ISNULL(P.FQTY,0)-isnull(q.FQTY,0) AS REAL) AS 'Òѽ»»õÊý-º¬ÍË»õ' --¹«Ê½=·¢»õ֪ͨµ¥ÊýÁ¿-ÍË»õ֪ͨµ¥ÊýÁ¿£¬ÏÔʾÔÚÒµ¼¨·Ö̯µ¥ÖеÚÒ»¸öÒµÎñÔ±ÃûÏ£¬AR¡¾·¢»õÊýÁ¿¡¿-AT¡¾ÍË»õÊýÁ¿¡¿ - ,round( (ISNULL(P.FAMOUNT,0)-isnull(q.FAMOUNT,0)) * isnull(A.FSHARERATE,100)/100 ,2) AS 'Òѽ»»õ½ð¶î-º¬ÍË»õ' --2024-11-20¹µÍ¨Ôö¼ÓÏúÊÛ¶¨¹ØÁªµÄ£¨AS·¢»õ½ð¶î-AUÍË»õ½ð¶î£©*Òµ¼¨·Ö̯±ÈÀý - ,B.FQTY - AR.FDeliQty AS 'δ½»»õÊý' --ÊýÁ¿-Òѽ»»õÊý - , round( (A.FALLAMOUNT_LC - ISNULL(P.FAMOUNT,0) +ISNULL(Q.FAMOUNT,0))* isnull(A.FSHARERATE,100)/100,2) as 'δ·¢»õ½ð¶î'--(ÏúÊÛ¶©µ¥¼Û˰ºÏ¼Æ±¾Î»±Ò-·¢»õ֪ͨµ¥½ð¶î+ÍË»õ֪ͨµ¥½ð¶î)*·Ö̯±ÈÀý ---,CAST( ISNULL(AB.FQTY,0) AS REAL) AS 'ÒÑ¿ªÆ±ÊýÁ¿' --¿ªÆ±ÊýÁ¿£¬È¡ÏúÊÛ³ö¿âµ¥¹ØÁªµÄÀ¶×ÖÓ¦ÊÕµ¥-ÍË»õµ¥¹ØÁªµÄºì×ÖÓ¦ÊÕµ¥ - --,CAST(round( ISNULL(AB.FAMOUNT,0) * isnull(A.FSHARERATE,100)/100,2) AS REAL) AS '¿ªÆ±½ð¶î'--ÏúÊÛ¶©µ¥¹ØÁªµÄ£¨À¶×ÖÓ¦ÊÕµ¥½ð¶î-ºì×ÖÓ¦ÊÕµ¥½ð¶î£©*·Ö̯±ÈÀý - --,CAST( ISNULL(P.FQTY,0)-isnull(q.FQTY,0) - ISNULL(AB.FQTY,0) AS REAL) AS 'δ¿ªÆ±ÊýÁ¿' --AVÒѽ»»õÊý-BBÒÑ¿ªÆ±ÊýÁ¿ - --,round( (ISNULL(P.FAMOUNT,0)-isnull(q.FAMOUNT,0)- ISNULL(AB.FAMOUNT,0) ) * isnull(A.FSHARERATE,100)/100 ,2) AS 'δ¿ªÆ±½ð¶î' --(AWÒѽ»»õ½ð¶î-BC¿ªÆ±½ð¶î)*·Ö̯±ÈÀý - ,ISNULL(G.F_CONTRACTNUMBER,'') AS 'Ô´¶©µ¥ºÅ' ,CONVERT(DECIMAL(18,2),0) AS ·Ö̯½ð¶î ,0 rownum - INTO #TEMP1 - FROM #TEMP4 A -LEFT JOIN T_SAL_orderentry b on a.FENTRYID = B.FENTRYID --ÏúÊÛ¶©µ¥±íÌå -LEFT JOIN dbo.T_SAL_ORDERENTRY_F bF on a.FENTRYID = bF.FENTRYID --ÏúÊÛ¶©µ¥±íÌå -LEFT JOIN T_SAL_ORDERENTRY_R AR ON AR.FENTRYID = A.FENTRYID -LEFT JOIN #SAL P ON P.FENTRYID = A.FENTRYID --·¢»õ֪ͨµ¥ -LEFT JOIN #RETURN q ON q.FENTRYID = A.FENTRYID --ÍË»õ֪ͨµ¥ -LEFT JOIN #OUTSTOCK R ON R.FENTRYID = A.FENTRYID --ÏúÊÛ³ö¿âµ¥ -LEFT JOIN #RETURNSTOCK AA ON AA.FENTRYID = A.FENTRYID --ÏúÊÛÍË»õµ¥ ---LEFT JOIN #RECE AB ON AB.FENTRYID = A.FENTRYID --Ó¦ÊÕµ¥ -LEFT JOIN #TEMP2 AD ON AD.FID = A.FID -LEFT JOIN ( - SELECT T1.FENTRYID,T3.F_CONTRACTNUMBER FROM T_SAL_ORDERENTRY_R T1 - --LEFT JOIN T_SAL_ORDER T2 on T1.FID = T2.FID - LEFT JOIN T_SAL_ORDER T3 on T3.FBILLNO = T1.FSRCBILLNO - WHERE T1.FSRCTYPE = 'SAL_SaleOrder' - )G ON A.FENTRYID = G.FENTRYID AND A.[ºÏͬ×ܼÛ]<0 - ORDER BY fid,FENTRYID ,FSHARERATE - - - UPDATE #TEMP1 SET ·Ö̯½ð¶î=b.ºÏͬ×ܼÛ2 - FROM (SELECT SUM(CONVERT(DECIMAL(18,2),ºÏͬ×ܼÛ)) AS ºÏͬ×ܼÛ2 ,FBILLNO FROM #TEMP1 GROUP BY FBILLNO) b - WHERE #TEMP1.FBILLNO=b.FBILLNO AND ¶©µ¥×ܶî <>0 - - - UPDATE #TEMP1 SET rownum=b.rownum2 - FROM (SELECT ROW_NUMBER() OVER (PARTITION BY FID ORDER BY FID,FENTRYID) AS rownum2, FID, FENTRYID FROM #TEMP1 ) b - WHERE #TEMP1.FID=b.fid AND #TEMP1.FENTRYID=b.FENTRYID - - UPDATE #TEMP1 SET ÊÕ¿î½ð¶î=0,¿ªÆ±½ð¶î=0,δ¿ªÆ±½ð¶î=0 - WHERE rownum>1; - - UPDATE #TEMP1 SET ºÏͬ×ܼÛ=ºÏͬ×ܼÛ+(¶©µ¥×ܶî- ·Ö̯½ð¶î ) - WHERE ¶©µ¥×ܶî<>0 - -UPDATE #TEMP1 SET ÊÕ¿î½ð¶î=ÊÕ¿î½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,¿ªÆ±½ð¶î=¿ªÆ±½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,¶©µ¥×ܶî=¶©µ¥×ܶî*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,ºÏͬ×ܼÛ=ºÏͬ×ܼÛ*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ -,·¢»õ½ð¶î=·¢»õ½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,δ·¢»õ½ð¶î=δ·¢»õ½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,ÍË»õ½ð¶î=ÍË»õ½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,[Òѽ»»õ½ð¶î-º¬ÍË»õ]=[Òѽ»»õ½ð¶î-º¬ÍË»õ]*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ -,δ¿ªÆ±½ð¶î=δ¿ªÆ±½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,µ¥¼ÛԪ̨=µ¥¼ÛԪ̨*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,Ðк¬Ë°µ¥¼Û=Ðк¬Ë°µ¥¼Û*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ -FROM ZZV_XiaoShouHuiLv b -WHERE #TEMP1.FID=b.ÏúÊÛ¶©µ¥ID - -IF(@QuYu='') - SELECT * FROM #TEMP1 ORDER BY fid,FENTRYID ,FSHARERATE DESC - ELSE - SELECT * FROM #TEMP1 WHERE ÇøÓò LIKE '%'+@QuYu+'%' ORDER BY fid,FENTRYID ,FSHARERATE DESC - - -drop table #TEMP2 ---drop table #RECE -drop table #RETURNSTOCK -drop table #OUTSTOCK -drop table #RETURN -drop table #SAL -drop table #TEMP3 -drop table #TEMP4 + -- @FEDate + 1Ìì +SET @FEDateDate = DATEADD(DAY, 1, @FEDateDate); + + SELECT D.FENTRYID,sum(b.fqty) AS 'FQTY',sum(E.FAllAmount_LC) AS 'FAMOUNT' + INTO #SAL + FROM T_SAL_DELIVERYNOTICE A + INNER JOIN T_SAL_DELIVERYNOTICEENTRY B ON A.FID = B.FID + INNER JOIN T_SAL_DELIVERYNOTICEENTRY_F E ON E.FENTRYID = B.FENTRYID + INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK C ON C.FENTRYID = B.FENTRYID + INNER JOIN T_SAL_ORDERENTRY D ON D.FID = C.FSBILLID AND D.FENTRYID = C.FSID + WHERE A.FDOCUMENTSTATUS= 'C' + AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) + AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) + AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) + AND (a.F_PAPERCONTRACT=@FPaperContract OR @FPaperContract='') + GROUP BY D.FENTRYID + + + SELECT D.FENTRYID,sum(b.fqty) AS 'FQTY',sum(E.FAllAmount_LC) AS 'FAMOUNT' + INTO #RETURN + FROM T_SAL_RETURNNOTICE A + INNER JOIN T_SAL_RETURNNOTICEENTRY B ON A.FID = B.FID + INNER JOIN T_SAL_RETURNNOTICEENTRY_F E ON E.FENTRYID = B.FENTRYID + INNER JOIN T_SAL_RETURNNOTICEENTRY_LK C ON C.FENTRYID = B.FENTRYID + INNER JOIN T_SAL_ORDERENTRY D ON D.FID = C.FSBILLID AND D.FENTRYID = C.FSID + WHERE A.FDOCUMENTSTATUS= 'C' + AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) + AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) + AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) + AND (a.F_PAPERCONTRACT=@FPaperContract OR @FPaperContract='') + GROUP BY D.FENTRYID + + + SELECT F.FENTRYID,sum(b.FREALQTY) AS 'FQTY',sum(G.FALLAMOUNT_LC) AS 'FAMOUNT' + INTO #OUTSTOCK + FROM T_SAL_OUTSTOCK A + INNER JOIN T_SAL_OUTSTOCKENTRY B ON A.FID = B.FID + INNER JOIN T_SAL_OUTSTOCKENTRY_F G ON G.FENTRYID = B.FENTRYID + INNER JOIN T_SAL_OUTSTOCKENTRY_LK C ON C.FENTRYID = B.FENTRYID + INNER JOIN T_SAL_DELIVERYNOTICEENTRY D ON D.FID = C.FSBILLID AND D.FENTRYID = C.FSID + INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK E ON E.FENTRYID = D.FENTRYID + INNER JOIN T_SAL_ORDERENTRY F ON F.FID = E.FSBILLID AND F.FENTRYID = E.FSID + WHERE A.FDOCUMENTSTATUS= 'C' + AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) + AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) + AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) + AND (a.F_CONTRACTNUMBER=@FPaperContract OR @FPaperContract='') + GROUP BY F.FENTRYID + + SELECT F.FENTRYID,sum(b.FREALQTY) AS 'FQTY',sum(G.FALLAMOUNT_LC) AS 'FAMOUNT' + INTO #RETURNSTOCK + FROM T_SAL_RETURNSTOCK A + INNER JOIN T_SAL_RETURNSTOCKENTRY B ON A.FID = B.FID + INNER JOIN T_SAL_RETURNSTOCKENTRY_F G ON G.FENTRYID = B.FENTRYID + INNER JOIN T_SAL_RETURNSTOCKENTRY_LK C ON C.FENTRYID = B.FENTRYID + INNER JOIN T_SAL_RETURNNOTICEENTRY D ON D.FID = C.FSBILLID AND D.FENTRYID = C.FSID + INNER JOIN T_SAL_RETURNNOTICEENTRY_LK E ON E.FENTRYID = D.FENTRYID + INNER JOIN T_SAL_ORDERENTRY F ON F.FID = E.FSBILLID AND F.FENTRYID = E.FSID + WHERE A.FDOCUMENTSTATUS= 'C' + AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) + AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) + AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) + AND (a.F_CONTRACTNUMBER=@FPaperContract OR @FPaperContract='') + GROUP BY F.FENTRYID + + + --SELECT b.FORDERENTRYID as 'FENTRYID',sum(bF.FQty) AS 'FQTY',sum(bF.FRECAMOUNT_E) AS 'FAMOUNT' + --INTO #RECE + --FROM t_AR_receivable A + ----INNER JOIN t_AR_receivableENTRY B ON A.FID = B.FID + --LEFT JOIN dbo.T_AR_RECEIVEBILLENTRY bF on A.FID = BF.FID --ÏúÊÛ¶©µ¥±íÌå + + --WHERE A.FDOCUMENTSTATUS= 'C' + --AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) + --AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) + --AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) + --AND (a.F_PAPERCONTRACT=@FPaperContract OR @FPaperContract='') + --GROUP BY b.FORDERENTRYID + + SELECT a.FID, STUFF( + ( + SELECT ','+ CONVERT(NVARCHAR(100), FNAME,120) -- Ҫƴ½ÓµÄÁÐ + FROM ( + SELECT DISTINCT x.FNAME +'--'+CONVERT(NVARCHAR(50), CONVERT(INT, w.F_DAY))+'Ìì--'+CONVERT(NVARCHAR(50),CONVERT(DECIMAL(18,2), w.FRECADVANCERATE))+'%'+'---' +ISNULL(CONVERT(NVARCHAR(20),w.FMUSTDATE,23),'') AS FNAME + ,w.FID,w.F_PMSDate + ,W.FRECADVANCEAMOUNT,w.F_DAY ,w.F_MBBA_DECIMAL_UKY + ,w.FENTRYID, W.F_RecConditionId ,w.FRECADVANCERATE ,x.FNAME AS fname2 ,w.FMUSTDATE [µ½ÆÚÈÕ] + FROM T_SAL_ORDERPLAN w WITH(NOLOCK) + LEFT JOIN T_BD_RecCondition_L X ON X.FID = W.F_RecConditionId + ) t WHERE t.FID=a.FID + FOR XML PATH('') + ),1 ,1, '') ¸¶¿îÌõ¼þ + INTO #TEMP2 + FROM T_SAL_ORDER A WITH(NOLOCK) + WHERE + A.FDOCUMENTSTATUS= 'C' + AND (@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) + AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) + AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) + AND (a.F_CONTRACTNUMBER=@FPaperContract OR @FPaperContract='') + + + + --¹ýÂËÅÉŵ×Ü + SELECT A.FID AS FID + INTO #TEMP3 + FROM T_SAL_ORDER A + INNER JOIN T_BD_CUSTOMER CC ON CC.FCUSTID= A.FCUSTID + INNER JOIN T_BD_CUSTOMER_L C ON C.FCUSTID= A.FCUSTID AND C.FLOCALEID= 2052 + LEFT JOIN V_BD_SALESMAN_L L ON L.fid = A.FSALERID + left JOIN T_PerformanceSharing M ON M.FSOURCEBILLNO = A.FBILLNO AND M.FDOCUMENTSTATUS = 'C' + left JOIN T_PerformanceSharingEntry N ON N.FID=M.FID + LEFT JOIN V_BD_SALESMAN_L O ON O.fid= N.FSALEID + LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO.Ãû³Æ=O.FNAME + LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.Ãû³Æ=L.FNAME + WHERE CC.F_correlation = '1' OR a.F_CONTRACTNUMBER IN ('CYJSQD2024123118401','CYJSQD2025011518501') + --WHERE A.FSALEORGID = 100302 AND + --( + -- CC.F_correlation = '1' + -- -- OR + -- --C.FCUSTID IN ('1517849','1156999','1149200') + -- OR + --(C.FCUSTID = 1150173 AND (ACO.ÇøÓò = '¾ö²ßÍŶÓ' OR ACL.ÇøÓò = '¾ö²ßÍŶÓ')) + --OR L.FNAME = 'ÐËŵ×Ü' + --OR A.FID IN (110185,207800) + --AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) + --AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE< @FEDateDate) ) + + + SELECT + A.FID , + A.FBILLNO , + B.FENTRYID , + a.F_INVOICEAMOUNT '¿ªÆ±½ð¶î', + j.FBILLALLAMOUNT- a.F_INVOICEAMOUNT 'δ¿ªÆ±½ð¶î', + + ISNULL(N.FSHARERATE,100) AS FSHARERATE, + F.FALLAMOUNT_LC , + MONTH(A.FApproveDate) AS 'Ô·Ý' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÈÕÆÚ-¶ÔÓ¦µÄÔÂ·Ý + ,CASE WHEN ISNULL(O.FNAME,'')='' THEN L.FNAME + ELSE O.FNAME END as 'Òµ¼¨·Ö̯ºóÏúÊÛÔ±' -- Òµ¼¨·Ö̯ºóÏúÊÛÔ± + ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END AS 'ÇøÓò' + ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.Ã÷Ï¸ÇøÓò ELSE ACO.Ã÷Ï¸ÇøÓò END AS 'Ã÷Ï¸ÇøÓò' + ,c.FNAME as '¹º»õµ¥Î»' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-¿Í»§ + ,CONVERT(VARCHAR(10), A.FDate,23) AS 'Ç©¶©ÈÕÆÚ' + ,CONVERT(VARCHAR(10), A.FApproveDate,23) AS 'ÉóºËÈÕÆÚ' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÉóºËÈÕÆÚ + ,A.F_contractnumber AS 'Ö½ÖʺÏͬºÅ'--ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-Ö½ÖʺÏͬºÅ + ,E.FNUMBER AS '²úÆ·´úÂë' + ,d.FNAME as '²úÆ·Ãû³Æ' --ÏúÊÛ¶©µ¥-µ¥¾ÝÌå-ÎïÁÏÃû³Æ + ,d.FSPECIFICATION as '¹æ¸ñÐͺÅ'--ÏúÊÛ¶©µ¥-µ¥¾ÝÌå-¹æ¸ñÐͺŠ+ ,CONCAT(A.F_contractnumber,d.FSPECIFICATION ) as '¶©µ¥¹æ¸ñÐͺÅ' --H¡¾¶©µ¥ºÅ¡¿(¶ÔÓ¦Ö½ÖʺÏͬºÅ)+J¡¾Ðͺţܹæ¸ñ£Ü±ê×¼¡¿ + ,CASE WHEN E.FNUMBER LIKE 'L%' AND HT.FNUMBER = 'SX' AND ISNULL(b.F_ProjectProposal,'') != '' + THEN CONCAT(b.F_ProjectProposal,'µÄÊ£Óಿ·Ö') ELSE E.F_114 END AS 'ÐͺŷÖÀà' --ÎïÁϵµ°¸-×Ô¶¨Òå×Ö¶Î-ÐͺŴóÀà + ,CASE WHEN E.FNUMBER LIKE 'L%' AND HT.FNUMBER = 'SX' AND ISNULL(b.F_ProjectProposal,'') != '' + THEN CONCAT(b.F_ProjectProposal,'µÄÊ£Óಿ·Ö') ELSE E.F_115 END AS '²úÆ··ÖÀà'--ÎïÁϵµ°¸-×Ô¶¨Òå×Ö¶Î-²úÆ·´óÀà +,E.F_116 AS '²úÆ·Ïß'--ÎïÁϵµ°¸-×Ô¶¨Òå×Ö¶Î-²úÆ·Ïß + --,'' as 'ÒµÎñÏß' --´ý¶¨£¬È·ÈÏÈ¡ÊýÂß¼­ + ,CASE WHEN A.F_VRYF_Combo_lsn LIKE '%XTZHT%' THEN 'ϵͳÖ÷ºÏͬ' + WHEN A.F_VRYF_Combo_lsn LIKE '%SXTXS%' THEN 'ËæÏµÍ³ÏúÊÛ' + WHEN A.F_Returntype = 'HH' OR A.F_Returntype = 'TH' THEN 'ËæÏµÍ³ÏúÊÛ' + WHEN F_VRYF_Combo_lsn LIKE 'DDXS' THEN 'µ¥¶ÀÏúÊÛ'END as 'ÏúÊÛÀàÐÍ' + ,CASE WHEN A.F_VRYF_Combo_lsn LIKe '%DDXS%' THEN 'ÒDZíÀàºÏͬ(CEP)' ELSE 'ËæÏµÍ³ÏúÊÛ' END AS 'ÏúÊÛÀàÐÍ1' + --,cast( B.FQTY as real) AS 'ÊýÁ¿Ì¨' --ÏúÊÛ¶©µ¥-µ¥¾ÝÌå-ÏúÊÛÊýÁ¿ÏÔʾÔÚÒµ¼¨·Ö̯µ¥ + ,cast( ROUND( F.FTAXPRICE,2) as real) AS 'µ¥¼ÛԪ̨' --ÏúÊÛ¶©µ¥-µ¥¾ÝÌå-º¬Ë°µ¥¼Û "Òµ¼¨·Öֻ̯·Ö̯½ð¶î²»·Ö̯ÊýÁ¿ +,cast( ROUND( f.FALLAMOUNT_LC,2) as real) as 'Ðк¬Ë°µ¥¼Û' + ,CASE WHEN n.FSHARERATE IS NULL THEN ROUND(F.FALLAMOUNT_LC,2) + ELSE ROUND( f.FALLAMOUNT_LC * (n.FSHARERATE/100) ,2) END as 'ºÏͬ×ܼÛ' --Òµ¼¨·Öֻ̯·Ö̯½ð¶î²»·Ö̯ÊýÁ¿£¬·Ö¼¡¾¼Û˰ºÏ¼Æ±¾Î»±Ò¡¿*Òµ¼¨·Ö̯µ¥ÖеķÖ̯±ÈÀý + , G.FNAME as 'ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÏîÄ¿Ãû³Æ' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÏîÄ¿Ãû³Æ + ,y.FCAPTION AS 'ÏîÄ¿ËùÊôÁìÓò'--ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÏîÄ¿ËùÊôÁìÓò + ,CASE + WHEN A.F_contractnumber LIKE 'W2%' OR A.F_contractnumber LIKE 'CW%' THEN '·þÎñÒµÎñ' + WHEN (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%×ÛºÏÄÜÔ´·þÎñ%' + OR (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%Êý¾ÝÖÐÐÄ%' + THEN 'ÐÐÒµ½â¾ö·½°¸ÒµÎñ' + ELSE '²úÆ·ÒµÎñ' + END AS 'ÒµÎñÀàÐÍ-°´²úÆ·»®·Ö' + ,CASE WHEN I.F_CustomerType= 'JXS' THEN '¾­ÏúÉÌ' + WHEN I.F_CustomerType = 'MYS' THEN 'óÒ×ÉÌ' + ELSE '' + END + as 'Ö±Ïú»¹ÊǾ­ÏúÉÌ' + ,CASE WHEN b.F_specialoffer = '1' AND (F_YKQC_CHECKBOX_QTR='0' OR F_YKQC_CHECKBOX_QTR IS NULL) THEN 'ÊÇ' ELSE '·ñ' end AS 'ÊÇ·ñÌØ¼Û'--ÏúÊÛ¶©µ¥-µ¥¾Ý·Ö¼-ÊÇ·ñÌØ¼Û + ,CASE WHEN (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%²úÆ·Ïß%' OR + (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%¾ö²ßÍŶÓ%'OR + (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%Èýµç²úÆ·Ïß%' + THEN '²úÆ·Ïß' + WHEN (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) like 'Êý¾ÝÖÐÐÄ' OR + (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%Ò½Ôº%' + OR (CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ÇøÓò ELSE ACO.ÇøÓò END) LIKE '%»ú³¡%' + THEN 'ÐÐÒµÏß' + ELSE 'ÇøÓòÏß' END AS 'Òµ¼¨ÀàÐÍ' + ,CASE WHEN N.FSHARERATE is null THEN '100' ELSE CONCAT( CAST ( N.FSHARERATE AS REAL),'%') END as 'Òµ¼¨·Ö̯±ÈÀý' --ÏúÊÛ¶©µ¥-Òµ¼¨·Ö̯µ¥-·Ö̯±ÈÀý + , b.F_ProjectProposal AS 'ÏîÄ¿·½°¸ÀàÐÍ' + ,a.F_Amount AS 'ÊÕ¿î½ð¶î' --´ý¶¨ ÊÕ¿î½ð¶î + , CAST( J.FEXCHANGERATE AS REAL) AS '»ãÂÊ' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-»ãÂÊ + ,H.F_Province AS 'ÏîÄ¿ËùÊôÊ¡·Ý' --×Ö¶ÎÃû¸Ä³É¡°ÏîÄ¿ËùÊôÊ¡·Ý¡±À´×ÔÓÚCRMϵͳÉÌ»ú£¬ERPÉÌ»úÐèÒªÔö¼ÓÎı¾×ֶζÔÓ¦ + ,h.F_City AS 'ÏîÄ¿ËùÊô³ÇÊÐ' --×Ö¶ÎÃû¸Ä³É¡°ÏîÄ¿ËùÊô³ÇÊС±À´×ÔÓÚCRMϵͳÉÌ»ú£¬ERPÉÌ»úÐèÒªÔö¼ÓÎı¾×ֶζÔÓ¦ + ,u.FCAPTION AS '±í¼Æ»òϵͳ'--±í¼Æ»òϵͳ ´Ë×Ö¶ÎÐèÒªÔÚÏúÊÛ¶©µ¥ÖÐÌåÏÖ£¬À´×ÔÓÚERPÎïÁϵµ°¸£¬¶©µ¥Ö´ÐÐͳ¼Æ±¨±í²»ÐèÒªÌåÏÖ´Ë×ֶΣ¬ÓÉÓÚÓ¦ÊÕ¿îÃ÷ϸ±íÐèÒª´Ó¶©µ¥Ö´ÐÐÃ÷ϸ±íÖÐÈ¡¸Ã×ֶΣ¬ËùÒÔ´Ë×ֶλ¹ÐèÒª±£Áô¡£È¡ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-¶©µ¥Àà±ð + + ,CASE WHEN ROW_NUMBER() OVER (PARTITION BY A.FID ORDER BY A.FID, B.FENTRYID ,FSHARERATE desc) = 1 + THEN CAST(J.FBILLALLAMOUNT_LC AS numeric(18,2)) ELSE NULL END AS '¶©µ¥×ܶî' + + ,K.FDATAVALUE AS 'ÆóÒµÀàÐ͹«Ë¾ÐÔÖÊ'--À´×ÔÓÚ¿Í»§×ÊÁÏ-¹«Ë¾ÐÔÖÊ + ,'' AS 'Ç·¿î×ܶî' --¡¾Òѽ»»õ½ð¶î£¨º¬ÍË»õ£©-ÊÕ¿î½ð¶î¡¿*Òµ¼¨·Ö̯±ÈÀý + , TU.FNAME AS 'ÖÆµ¥ÈË' --ÏúÊÛ¶©µ¥-µ¥¾ÝÍ·-ÆäËûҳǩ-´´½¨ÈË£¬Ï£ÍûÈ¡µÄÊÇÏúÊÛ¶©µ¥Ìá½»ÈË£¬ +,S.FCAPTION AS '¼¯²ÉÒµÎñ·ÖÀà' --2024-11-20¹µÍ¨ÐÂÔö×ֶΣ¬ÏúÊÛ¶©µ¥±íÍ·Ôö¼Ó£º¡¾ÊÇ·ñ¼¯²ÉÏîÄ¿¡¿ÏÂÀ­Ñ¡Ï·ñ/»ªÈó/Áúºþ/Â̵Ø/±£ÀûµØ²ú/»ªÈó·Ç¼¯²É£¬³£¹æÇé¿öÏÂĬÈÏΪ¡¾·ñ¡¿£¬ÓÉCRMϵͳ´«µÝµ½ERPϵͳÖУ¬Ä¬ÈÏֵΪ·ñ +,L.FNAME AS 'ÏúÊÛ¶©µ¥ÒµÎñÔ±' +--,CAST(B.FQTY AS REAL) AS 'ÊýÁ¿Ì¨' + +, CASE + WHEN N.FSHARERATE IS NOT NULL THEN + CASE + WHEN ROW_NUMBER() OVER (PARTITION BY A.FID, B.FENTRYID ORDER BY N.FENTRYID) = 1 THEN CAST(B.FQTY AS REAL) + ELSE NULL + END + ELSE CAST(B.FQTY AS REAL) + END AS 'ÊýÁ¿Ì¨' + + + ,AE.FDATAVALUE AS 'ºÏͬÀàÐÍ' + ,assl.FDATAVALUE '¿Í»§ÐÅÓü°·ÖÀà' + INTO #TEMP4 + FROM T_SAL_ORDER A --ÏúÊÛ¶©µ¥±íÍ· + INNER JOIN T_BAS_ASSISTANTDATAENTRY HT ON A.F_ORDERCATEGORY = HT.FMASTERID -- ¹ØÁª¸¨Öú×ÊÁϲéѯºÏͬµÄ±àÂë + INNER JOIN T_SEC_USER TU ON A.FCreatorId = TU.FUSERID -- Óû§µ¥¹ØÁª±íÌå + INNER JOIN T_SAL_orderentry b on a.FID = B.FID --ÏúÊÛ¶©µ¥±íÌå + INNER JOIN T_BD_CUSTOMER_L C ON C.FCUSTID= A.FCUSTID AND C.FLOCALEID= 2052 --¿Í»§¸½Êô±í + INNER JOIN T_BD_MATERIAL_L d on d.FMATERIALID =b.FMATERIALID and d.FLOCALEID=2052 --ÎïÁϸ½Êô±í + INNER JOIN T_BD_MATERIAL E ON E.FMATERIALID =D.FMATERIALID + INNER JOIN T_SAL_ORDERENTRY_F F ON F.FENTRYID = B.FENTRYID + INNER JOIN T_SAL_ORDERENTRY_R AR ON AR.FENTRYID = B.FENTRYID + INNER JOIN T_BD_CUSTOMER I ON I .FCUSTID = A.FCUSTID + INNER JOIN T_SAL_ORDERFIN J ON J.FID= A.FID + LEFT JOIN T_BAS_PREBDONE_L G ON G.FID = A.F_projectname AND G.FLocaleID =2052 + LEFT JOIN T_BAS_PREBDTHREE H ON H.FID = A.F_BON + LEFT JOIN T_META_FORMENUMITEM Z ON Z.FVALUE = H.F_PROJECTFIELD AND Z.FID = '3ad5efac-d4a5-467c-b290-685a22791e68' + LEFT JOIN T_META_FORMENUMITEM_L Y ON Y.FENUMID = Z.FENUMID AND Y.FLOCALEID = 2052 + LEFT JOIN T_META_FORMENUMITEM X ON x.FVALUE = I.F_CustomerType AND X.FID = '5fbc5d34-7347-4b6d-8a9d-4816a47936cc' + LEFT JOIN T_META_FORMENUMITEM_L W ON W.FENUMID = X.FENUMID AND W.FLOCALEID = 2052 + LEFT JOIN T_META_FORMENUMITEM V ON V.FVALUE = A.F_OrderType AND v.FID = 'bc2c1d77-0f4b-41d2-b61b-e29554c570d4' + LEFT JOIN T_META_FORMENUMITEM_L U ON U.FENUMID = V.FENUMID AND U.FLOCALEID = 2052 + LEFT JOIN T_META_FORMENUMITEM T ON T.FVALUE = A.F_PURCHASINGPRO AND T.FID = 'a8624cbb-00e0-4beb-8045-53cbe94eb9ee' + LEFT JOIN T_META_FORMENUMITEM_L S ON S.FENUMID = T.FENUMID AND S.FLOCALEID = 2052 + LEFT JOIN V_ASSISTANTDATA K ON K.FENTRYID = I.FCompanyNature + LEFT JOIN V_BD_SALESMAN_L L ON L.fid = A.FSALERID + left JOIN T_PerformanceSharing M ON M.FSOURCEBILLNO = A.FBILLNO AND M.FDOCUMENTSTATUS = 'C' + left JOIN T_PerformanceSharingEntry N ON N.FID=M.FID + LEFT JOIN V_BD_SALESMAN_L O ON O.fid= N.FSALEID --AND N.FID IN (SELECT FID FROM T_PerformanceSharing WHERE FDOCUMENTSTATUS = 'C' ) + LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO.Ãû³Æ=O.FNAME AND ISNULL(ACO.Ã÷Ï¸ÇøÓò,'') != '' + LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.Ãû³Æ=L.FNAME AND ISNULL(ACL.Ã÷Ï¸ÇøÓò,'') != '' + INNER JOIN T_BAS_ASSISTANTDATAENTRY_L AE ON AE.FENTRYID = A.F_Ordercategory + LEFT JOIN dbo.T_BAS_ASSISTANTDATAENTRY_L assl ON assl.FENTRYID= I.F_CreditClassification + WHERE +1=1 AND +A.FID NOT IN( + SELECT FID FROM #TEMP3 + ) + AND(@FSaleOrgIdName = '' Or A.FSALEORGID = @FSaleOrgId) + AND (ISNULL(@FSDate,'') = '' or A.FAPPROVEDATE > @FSDateDate) + AND (ISNULL(@FEDate,'') = '' or A.FAPPROVEDATE < @FEDateDate) + AND A.FDocumentStatus = 'C' AND(@KH = '' Or I.FNUMBER = @KH) +AND A.FManualClose <> '1' +AND B.FManualRowClose <> '1' +AND A.F_contractnumber NOT LIKE 'Z%' + AND (a.F_CONTRACTNUMBER=@FPaperContract OR @FPaperContract='') + + SELECT + A.* + ,AD.¸¶¿îÌõ¼þ as '¸¶¿îÌõ¼þ'--ÏúÊÛ¶©µ¥-ÊÕ¿î¼Æ»®-ÊÕ¿îÌõ¼þ+ÌìÊý+¡°Ì족+Ó¦ÊÕ±ÈÀý(%),¶àÐÐÖ®¼äÐèÒªÓá°,¡±¸ô¿ª£¬Èç¹ûÌìÊýΪ¿Õ¾ÍĬÈÏΪ0Ìì + ,CAST( ISNULL(P.FQTY,'0') AS REAL) as '·¢»õÊýÁ¿' --ÏúÊÛ¶©µ¥¹ØÁªµÄ·¢»õ֪ͨµ¥ÊýÁ¿£¬ÏÔʾÔÚÒµ¼¨·Ö̯µ¥ÖеÚÒ»¸öÒµÎñÔ±ÃûÏ +,cast( round( ISNULL(P.FAMOUNT,0) * ISNULL(A.FSHARERATE,100)/100,2) as real) as '·¢»õ½ð¶î'--È¡ÏúÊÛ¶©µ¥¹ØÁªµÄ·¢»õ֪ͨµ¥½ð¶î*·Ö̯±ÈÀý + ,CAST( ISNULL(q.FQTY,'0') AS REAL) as 'ÍË»õÊýÁ¿' --ÏúÊÛ¶©µ¥¹ØÁªµÄÍË»õ֪ͨµ¥ÊýÁ¿ + ,cast( round( ISNULL(q.FAMOUNT,0) * ISNULL(A.FSHARERATE,100)/100,2) as real) as 'ÍË»õ½ð¶î'--ÏúÊÛ¶©µ¥¹ØÁªµÄÍË»õ֪ͨµ¥½ð¶î*·Ö̯±ÈÀý + ,CAST( ISNULL(P.FQTY,0)-isnull(q.FQTY,0) AS REAL) AS 'Òѽ»»õÊý-º¬ÍË»õ' --¹«Ê½=·¢»õ֪ͨµ¥ÊýÁ¿-ÍË»õ֪ͨµ¥ÊýÁ¿£¬ÏÔʾÔÚÒµ¼¨·Ö̯µ¥ÖеÚÒ»¸öÒµÎñÔ±ÃûÏ£¬AR¡¾·¢»õÊýÁ¿¡¿-AT¡¾ÍË»õÊýÁ¿¡¿ + ,round( (ISNULL(P.FAMOUNT,0)-isnull(q.FAMOUNT,0)) * isnull(A.FSHARERATE,100)/100 ,2) AS 'Òѽ»»õ½ð¶î-º¬ÍË»õ' --2024-11-20¹µÍ¨Ôö¼ÓÏúÊÛ¶¨¹ØÁªµÄ£¨AS·¢»õ½ð¶î-AUÍË»õ½ð¶î£©*Òµ¼¨·Ö̯±ÈÀý + ,B.FQTY - AR.FDeliQty AS 'δ½»»õÊý' --ÊýÁ¿-Òѽ»»õÊý + , round( (A.FALLAMOUNT_LC - ISNULL(P.FAMOUNT,0) +ISNULL(Q.FAMOUNT,0))* isnull(A.FSHARERATE,100)/100,2) as 'δ·¢»õ½ð¶î'--(ÏúÊÛ¶©µ¥¼Û˰ºÏ¼Æ±¾Î»±Ò-·¢»õ֪ͨµ¥½ð¶î+ÍË»õ֪ͨµ¥½ð¶î)*·Ö̯±ÈÀý +--,CAST( ISNULL(AB.FQTY,0) AS REAL) AS 'ÒÑ¿ªÆ±ÊýÁ¿' --¿ªÆ±ÊýÁ¿£¬È¡ÏúÊÛ³ö¿âµ¥¹ØÁªµÄÀ¶×ÖÓ¦ÊÕµ¥-ÍË»õµ¥¹ØÁªµÄºì×ÖÓ¦ÊÕµ¥ + --,CAST(round( ISNULL(AB.FAMOUNT,0) * isnull(A.FSHARERATE,100)/100,2) AS REAL) AS '¿ªÆ±½ð¶î'--ÏúÊÛ¶©µ¥¹ØÁªµÄ£¨À¶×ÖÓ¦ÊÕµ¥½ð¶î-ºì×ÖÓ¦ÊÕµ¥½ð¶î£©*·Ö̯±ÈÀý + --,CAST( ISNULL(P.FQTY,0)-isnull(q.FQTY,0) - ISNULL(AB.FQTY,0) AS REAL) AS 'δ¿ªÆ±ÊýÁ¿' --AVÒѽ»»õÊý-BBÒÑ¿ªÆ±ÊýÁ¿ + --,round( (ISNULL(P.FAMOUNT,0)-isnull(q.FAMOUNT,0)- ISNULL(AB.FAMOUNT,0) ) * isnull(A.FSHARERATE,100)/100 ,2) AS 'δ¿ªÆ±½ð¶î' --(AWÒѽ»»õ½ð¶î-BC¿ªÆ±½ð¶î)*·Ö̯±ÈÀý + ,ISNULL(G.F_CONTRACTNUMBER,'') AS 'Ô´¶©µ¥ºÅ' ,CONVERT(DECIMAL(18,2),0) AS ·Ö̯½ð¶î ,0 rownum + INTO #TEMP1 + FROM #TEMP4 A +LEFT JOIN T_SAL_orderentry b on a.FENTRYID = B.FENTRYID --ÏúÊÛ¶©µ¥±íÌå +LEFT JOIN dbo.T_SAL_ORDERENTRY_F bF on a.FENTRYID = bF.FENTRYID --ÏúÊÛ¶©µ¥±íÌå +LEFT JOIN T_SAL_ORDERENTRY_R AR ON AR.FENTRYID = A.FENTRYID +LEFT JOIN #SAL P ON P.FENTRYID = A.FENTRYID --·¢»õ֪ͨµ¥ +LEFT JOIN #RETURN q ON q.FENTRYID = A.FENTRYID --ÍË»õ֪ͨµ¥ +LEFT JOIN #OUTSTOCK R ON R.FENTRYID = A.FENTRYID --ÏúÊÛ³ö¿âµ¥ +LEFT JOIN #RETURNSTOCK AA ON AA.FENTRYID = A.FENTRYID --ÏúÊÛÍË»õµ¥ +--LEFT JOIN #RECE AB ON AB.FENTRYID = A.FENTRYID --Ó¦ÊÕµ¥ +LEFT JOIN #TEMP2 AD ON AD.FID = A.FID +LEFT JOIN ( + SELECT T1.FENTRYID,T3.F_CONTRACTNUMBER FROM T_SAL_ORDERENTRY_R T1 + --LEFT JOIN T_SAL_ORDER T2 on T1.FID = T2.FID + LEFT JOIN T_SAL_ORDER T3 on T3.FBILLNO = T1.FSRCBILLNO + WHERE T1.FSRCTYPE = 'SAL_SaleOrder' + )G ON A.FENTRYID = G.FENTRYID AND A.[ºÏͬ×ܼÛ]<0 + ORDER BY fid,FENTRYID ,FSHARERATE + + + UPDATE #TEMP1 SET ·Ö̯½ð¶î=b.ºÏͬ×ܼÛ2 + FROM (SELECT SUM(CONVERT(DECIMAL(18,2),ºÏͬ×ܼÛ)) AS ºÏͬ×ܼÛ2 ,FBILLNO FROM #TEMP1 GROUP BY FBILLNO) b + WHERE #TEMP1.FBILLNO=b.FBILLNO AND ¶©µ¥×ܶî <>0 + + + UPDATE #TEMP1 SET rownum=b.rownum2 + FROM (SELECT ROW_NUMBER() OVER (PARTITION BY FID ORDER BY FID,FENTRYID) AS rownum2, FID, FENTRYID FROM #TEMP1 ) b + WHERE #TEMP1.FID=b.fid AND #TEMP1.FENTRYID=b.FENTRYID + + UPDATE #TEMP1 SET ÊÕ¿î½ð¶î=0,¿ªÆ±½ð¶î=0,δ¿ªÆ±½ð¶î=0 + WHERE rownum>1; + + UPDATE #TEMP1 SET ºÏͬ×ܼÛ=ºÏͬ×ܼÛ+(¶©µ¥×ܶî- ·Ö̯½ð¶î ) + WHERE ¶©µ¥×ܶî<>0 + +UPDATE #TEMP1 SET ÊÕ¿î½ð¶î=ÊÕ¿î½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,¿ªÆ±½ð¶î=¿ªÆ±½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,¶©µ¥×ܶî=¶©µ¥×ܶî*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,ºÏͬ×ܼÛ=ºÏͬ×ܼÛ*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ +,·¢»õ½ð¶î=·¢»õ½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,δ·¢»õ½ð¶î=δ·¢»õ½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,ÍË»õ½ð¶î=ÍË»õ½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,[Òѽ»»õ½ð¶î-º¬ÍË»õ]=[Òѽ»»õ½ð¶î-º¬ÍË»õ]*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ +,δ¿ªÆ±½ð¶î=δ¿ªÆ±½ð¶î*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,µ¥¼ÛԪ̨=µ¥¼ÛԪ̨*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ,Ðк¬Ë°µ¥¼Û=Ðк¬Ë°µ¥¼Û*¶©µ¥±¾Î»±Ò¶ÒÈËÃñ±Ò»ãÂÊ +FROM ZZV_XiaoShouHuiLv b +WHERE #TEMP1.FID=b.ÏúÊÛ¶©µ¥ID + +IF(@QuYu='') + SELECT * FROM #TEMP1 ORDER BY fid,FENTRYID ,FSHARERATE DESC + ELSE + SELECT * FROM #TEMP1 WHERE ÇøÓò LIKE '%'+@QuYu+'%' ORDER BY fid,FENTRYID ,FSHARERATE DESC + + +drop table #TEMP2 +--drop table #RECE +drop table #RETURNSTOCK +drop table #OUTSTOCK +drop table #RETURN +drop table #SAL +drop table #TEMP3 +drop table #TEMP4 drop table #TEMP1 \ No newline at end of file