From 6480727e0d93cc6261e061da003d7b0a53688a63 Mon Sep 17 00:00:00 2001 From: liqionghai <1> Date: Mon, 25 Aug 2025 18:44:53 +0800 Subject: [PATCH] 1 --- HKBaoBiao/回款报表服务器插件.py | 6 +- YSZKDZBaoBiao/AccountsReceivableReport2.cs | 1 + YSZKDZGongNeng_MX/LiteVersionPlugIn2.cs | 38 +- YeJiPaiHangBang/PHBSaleOrderReport.cs | 2 + 派诺报表SQL文件/业绩排行榜插入数据SQL.sql | 773 +++++++++++------- .../应收对账单明细更新发票金额存储过程.sql | 23 +- .../应收对账表(明细版存储过程).sql | 4 +- 7 files changed, 512 insertions(+), 335 deletions(-) diff --git a/HKBaoBiao/回款报表服务器插件.py b/HKBaoBiao/回款报表服务器插件.py index ef07bc6..5fbfe35 100644 --- a/HKBaoBiao/回款报表服务器插件.py +++ b/HKBaoBiao/回款报表服务器插件.py @@ -136,7 +136,7 @@ def BuilderReportSqlAndTempTable(Filter,tableName): strFilter += " AND ( <= '{0}' OR ISNULL(,'') = '' OR IN (3,4))".format(str(customFiler["F_EDate"].ToString("yyyy-MM-dd"))) SKRQE = str(customFiler["F_EDate"].ToString("yyyy-MM-dd")) if customFiler["F_contractnumber"] != None and customFiler["F_contractnumber"].ToString() != "": - strFilter += " AND = '{0}'".format(str(customFiler["F_contractnumber"].ToString())) + strFilter += " AND LIKE '%{0}%'".format(str(customFiler["F_contractnumber"].ToString())) if customFiler["F_Currency"] != None and customFiler["F_Currency"].ToString() != "": strFilter += " AND (ұ = '{0}' OR IN (3,4) OR '{0}' = '0')".format(BB) if ZKTSHX: @@ -145,6 +145,10 @@ def BuilderReportSqlAndTempTable(Filter,tableName): strFilter += " AND NOT IN (3,4)" if SKDH != "": strFilter += " AND ShouKuanBillNo = '{0}'".format(SKDH) + if customFiler["FSaler"] != None and customFiler["FSaler"].ToString() != "": + strFilter += " AND (ISNULL('{0}','') = '' OR Ա LIKE '%{0}%' OR ҵ = '')".format(str(customFiler["FSaler"].ToString())) + if customFiler["FSBU"] != None and customFiler["FSBU"].ToString() != "": + strFilter += " AND (ISNULL('{0}','') = '' OR SBU LIKE '%{0}%' OR ҵ = '')".format(str(customFiler["FSBU"].ToString())) sql = String.format("""/*dialect*/ diff --git a/YSZKDZBaoBiao/AccountsReceivableReport2.cs b/YSZKDZBaoBiao/AccountsReceivableReport2.cs index a37c02f..1afea00 100644 --- a/YSZKDZBaoBiao/AccountsReceivableReport2.cs +++ b/YSZKDZBaoBiao/AccountsReceivableReport2.cs @@ -204,6 +204,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivableStatements sql += string.Format(@" SELECT ROW_NUMBER() OVER (ORDER BY [FID],OrderAmount desc) AS FIDENTITYID, + DENSE_RANK() OVER (ORDER BY [FID] ) AS OUTPUTNUMBER, * INTO {0} FROM YingShouZhanKuanMX_GZTH diff --git a/YSZKDZGongNeng_MX/LiteVersionPlugIn2.cs b/YSZKDZGongNeng_MX/LiteVersionPlugIn2.cs index ba74552..a4a1f8b 100644 --- a/YSZKDZGongNeng_MX/LiteVersionPlugIn2.cs +++ b/YSZKDZGongNeng_MX/LiteVersionPlugIn2.cs @@ -223,7 +223,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivable //将新创建或获取的单元格的值修改 cell22.SetCellValue(""); var YFHpriceSumZW = ToChineseNumber(YFHpriceSum, Context); - cell3.SetCellValue("贵公司截至 " + fDate + " 共欠我公司货款金额为:" + YFHpriceSum + "元【等于已发货欠款总额】(大写:"+ YFHpriceSumZW + ")"); + cell3.SetCellValue("贵公司截至 " + fDate + " 共欠我公司货款金额为:" + YFHpriceSum + "元(大写:"+ YFHpriceSumZW + ")"); //将新创建或获取的单元格的值修改 cell.SetCellValue("尊敬的 " + fClient + " 客户您好,我公司已根据合同/订单的要求向贵公司交付相关产品并请验收确认,鉴于我公司对贵公司已通知发货部分的交付义务已完成,"); cell2.SetCellValue(fClient); @@ -267,16 +267,24 @@ namespace Pilot.Report.Exploitation.AccountsReceivable //将合计行放到最下方 IRow rowi = sheet.CreateRow(j + i); + //if (list[i]["Number"].ToString() == "合计") + //{ + // rowi = sheet.CreateRow(j + list.Count-2); + // j = 12; + //} + ICell c1 = rowi.CreateCell(0); if (list[i]["Number"].ToString() == "合计") { - rowi = sheet.CreateRow(j + list.Count-2); - j = 12; + c1.SetCellValue(list[i]["Number"].ToString()); } - - ICell c1 = rowi.CreateCell(0); c1.SetCellValue(list[i]["Number"].ToString()); c1.CellStyle = cellStyle; + else + { + c1.SetCellValue(list[i]["OUTPUTNUMBER"].ToString()); + } + c1.CellStyle = cellStyle; ICell c2 = rowi.CreateCell(1); c2.SetCellValue(""+date+""); c2.CellStyle = cellStyle2; ICell c3 = rowi.CreateCell(2); c3.SetCellValue(list[i]["CONTRACTNUMBER"].ToString()); c3.CellStyle = cellStyle2; - ICell c4 = rowi.CreateCell(3); c4.SetCellValue(list[i]["ProjectName"].ToString()); c4.CellStyle = cellStyle2; + ICell c4 = rowi.CreateCell(3); c4.SetCellValue(list[i]["FBILLNO"].ToString()); c4.CellStyle = cellStyle2; ICell c5 = rowi.CreateCell(4); c5.SetCellValue(list[i]["SizeModel"].ToString()); c5.CellStyle = cellStyle2; ICell c6 = rowi.CreateCell(5); c6.SetCellValue(""); c6.CellStyle = cellStyle; //数量 @@ -381,6 +389,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivable if (GroupCount > 1 || k == 0) { // 创建CellRangeAddress对象 + CellRangeAddress cellRangeAddress0 = new CellRangeAddress(GroupIndex, j + i - k, 0, 0); CellRangeAddress cellRangeAddress = new CellRangeAddress(GroupIndex, j + i - k, 1, 1); CellRangeAddress cellRangeAddress2 = new CellRangeAddress(GroupIndex, j + i - k, 2, 2); CellRangeAddress cellRangeAddress3 = new CellRangeAddress(GroupIndex, j + i - k, 3, 3); @@ -388,6 +397,10 @@ namespace Pilot.Report.Exploitation.AccountsReceivable CellRangeAddress cellRangeAddress8 = new CellRangeAddress(GroupIndex, j + i - k, 8, 8); CellRangeAddress cellRangeAddress9 = new CellRangeAddress(GroupIndex, j + i - k, 9, 9); + CellRangeAddress cellRangeAddress11 = new CellRangeAddress(GroupIndex, j + i - k, 11, 11); + CellRangeAddress cellRangeAddress12 = new CellRangeAddress(GroupIndex, j + i - k, 12, 12); + CellRangeAddress cellRangeAddress14 = new CellRangeAddress(GroupIndex, j + i - k, 14, 14); + CellRangeAddress cellRangeAddress15 = new CellRangeAddress(GroupIndex, j + i - k, 15, 15); CellRangeAddress cellRangeAddress16 = new CellRangeAddress(GroupIndex, j + i - k, 16, 16); CellRangeAddress cellRangeAddress17 = new CellRangeAddress(GroupIndex, j + i - k, 17, 17); @@ -395,8 +408,10 @@ namespace Pilot.Report.Exploitation.AccountsReceivable CellRangeAddress cellRangeAddress19 = new CellRangeAddress(GroupIndex, j + i - k, 19, 19); CellRangeAddress cellRangeAddress20 = new CellRangeAddress(GroupIndex, j + i - k, 20, 20); CellRangeAddress cellRangeAddress21 = new CellRangeAddress(GroupIndex, j + i - k, 21, 21); + CellRangeAddress cellRangeAddress22 = new CellRangeAddress(GroupIndex, j + i - k, 22, 22); // 检查并移除重叠的合并区域 + RemoveOverlappingMergedRegions(sheet, cellRangeAddress0); RemoveOverlappingMergedRegions(sheet, cellRangeAddress); RemoveOverlappingMergedRegions(sheet, cellRangeAddress2); RemoveOverlappingMergedRegions(sheet, cellRangeAddress3); @@ -404,6 +419,10 @@ namespace Pilot.Report.Exploitation.AccountsReceivable RemoveOverlappingMergedRegions(sheet, cellRangeAddress8); RemoveOverlappingMergedRegions(sheet, cellRangeAddress9); + RemoveOverlappingMergedRegions(sheet, cellRangeAddress11); + RemoveOverlappingMergedRegions(sheet, cellRangeAddress12); + RemoveOverlappingMergedRegions(sheet, cellRangeAddress14); + RemoveOverlappingMergedRegions(sheet, cellRangeAddress15); RemoveOverlappingMergedRegions(sheet, cellRangeAddress16); RemoveOverlappingMergedRegions(sheet, cellRangeAddress17); @@ -411,8 +430,10 @@ namespace Pilot.Report.Exploitation.AccountsReceivable RemoveOverlappingMergedRegions(sheet, cellRangeAddress19); RemoveOverlappingMergedRegions(sheet, cellRangeAddress20); RemoveOverlappingMergedRegions(sheet, cellRangeAddress21); + RemoveOverlappingMergedRegions(sheet, cellRangeAddress22); // 合并单元格 + sheet.AddMergedRegion(cellRangeAddress0); sheet.AddMergedRegion(cellRangeAddress); sheet.AddMergedRegion(cellRangeAddress2); sheet.AddMergedRegion(cellRangeAddress3); @@ -420,6 +441,10 @@ namespace Pilot.Report.Exploitation.AccountsReceivable sheet.AddMergedRegion(cellRangeAddress8); sheet.AddMergedRegion(cellRangeAddress9); + sheet.AddMergedRegion(cellRangeAddress11); + sheet.AddMergedRegion(cellRangeAddress12); + sheet.AddMergedRegion(cellRangeAddress14); + sheet.AddMergedRegion(cellRangeAddress15); sheet.AddMergedRegion(cellRangeAddress16); sheet.AddMergedRegion(cellRangeAddress17); @@ -427,6 +452,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivable sheet.AddMergedRegion(cellRangeAddress19); sheet.AddMergedRegion(cellRangeAddress20); sheet.AddMergedRegion(cellRangeAddress21); + sheet.AddMergedRegion(cellRangeAddress22); } GroupCONTRACTNUMBER = list[i]["CONTRACTNUMBER"].ToString(); GroupIndex = j + i; diff --git a/YeJiPaiHangBang/PHBSaleOrderReport.cs b/YeJiPaiHangBang/PHBSaleOrderReport.cs index c3f6f64..dac87fd 100644 --- a/YeJiPaiHangBang/PHBSaleOrderReport.cs +++ b/YeJiPaiHangBang/PHBSaleOrderReport.cs @@ -86,6 +86,7 @@ namespace GZ_LTHReportForms.YeJiPaiHangBang header.AddChild("广东碳索业绩_含往年订单变更", new LocaleValue("广东碳索业绩(含往年订单变更)"), SqlStorageType.SqlDecimal); header.AddChild("香港派诺业绩_含往年订单变更", new LocaleValue("香港派诺业绩(含往年订单变更)"), SqlStorageType.SqlDecimal); header.AddChild("华夏云联业绩_含往年订单变更", new LocaleValue("华夏云联业绩(含往年订单变更)"), SqlStorageType.SqlDecimal); + header.AddChild("诺瓦数能业绩_含往年订单变更", new LocaleValue("诺瓦数能业绩(含往年订单变更)"), SqlStorageType.SqlDecimal); header.AddChild("当年累计业绩", new LocaleValue("当年累计业绩"), SqlStorageType.SqlDecimal); header.AddChild("往年变更合同额", new LocaleValue("往年变更合同额"), SqlStorageType.SqlDecimal); header.AddChild("集团回款合计", new LocaleValue("集团回款合计"), SqlStorageType.SqlDecimal); @@ -95,6 +96,7 @@ namespace GZ_LTHReportForms.YeJiPaiHangBang header.AddChild("广东碳索累计回款额", new LocaleValue("广东碳索累计回款额"), SqlStorageType.SqlDecimal); header.AddChild("香港派诺累计回款额", new LocaleValue("香港派诺累计回款额"), SqlStorageType.SqlDecimal); header.AddChild("华夏云联累计回款额", new LocaleValue("华夏云联累计回款额"), SqlStorageType.SqlDecimal); + header.AddChild("诺瓦数能累计回款额", new LocaleValue("诺瓦数能累计回款额"), SqlStorageType.SqlDecimal); header.AddChild("本年销售目标_新", new LocaleValue(year + "年销售目标-新"), SqlStorageType.SqlDecimal); header.AddChild("本年达标率_不含往年订单变更_新", new LocaleValue(year + "年达标率(不含往年订单变更)-新"), SqlStorageType.Sqlvarchar); header.AddChild("本年销售目标_原", new LocaleValue(year + "年销售目标-原"), SqlStorageType.SqlDecimal); diff --git a/派诺报表SQL文件/业绩排行榜插入数据SQL.sql b/派诺报表SQL文件/业绩排行榜插入数据SQL.sql index 120aaa2..7d053cf 100644 --- a/派诺报表SQL文件/业绩排行榜插入数据SQL.sql +++ b/派诺报表SQL文件/业绩排行榜插入数据SQL.sql @@ -11,35 +11,19 @@ DECLARE @SixYearsAgoYear INT; DECLARE @FEDateDate DATE = CAST(@FEDate AS DATE); -DECLARE @FSDateDate DATE = CAST(@FSDate AS DATE); +DECLARE @FSDateDate DATE = CAST(@FSDate AS DATE); + + +-- ַתΪ +DECLARE @FStartDate DATE = CONVERT(DATE, @FSDate); +DECLARE @FEndDate DATE = CONVERT(DATE, @FEDate); --- ڼһ -set @FEDate = CASE @FEDate WHEN '' THEN '' ELSE FORMAT(DateAdd(DAY,1,CAST(@FEDate AS Date)),'yyyy-MM-dd') END -- ȡ SET @Year = YEAR(@FSDate) - 1; -- ǰ SET @SixYearsAgoYear = @Year - 6; ----- 洢ֵֺ --- DECLARE @SalesID NVARCHAR(50); --- DECLARE @Pos INT; --- DECLARE @FSaleOrgId1 NVARCHAR(50); - --- -- ʼ --- SET @FSaleOrgId1 = LTRIM(RTRIM(@FSaleOrgId)) + ','; --- SET @Pos = CHARINDEX(',', @FSaleOrgId1); - --- TRUNCATE TABLE SalesIDTable --- -- ѭַ --- WHILE @Pos > 0 --- BEGIN --- SET @SalesID = SUBSTRING(@FSaleOrgId1, 1, @Pos - 1); --- INSERT INTO SalesIDTable (SalesID) VALUES (@SalesID); --- SET @FSaleOrgId1 = SUBSTRING(@FSaleOrgId1, @Pos + 1, LEN(@FSaleOrgId1)); --- SET @Pos = CHARINDEX(',', @FSaleOrgId1); --- END - SElECT FID AS 'SalesID' INTO #SalesIDTable FROM fn_StrSplit(@FSaleOrgId,',') @@ -47,30 +31,55 @@ SET @SixYearsAgoYear = @Year - 6; --ձ TRUNCATE TABLE YJPHB_GZTH ---ŵ - SELECT A.FID AS FID - INTO #TEMP3 - FROM T_SAL_ORDER A - INNER JOIN T_BD_CUSTOMER_L C ON C.FCUSTID= A.FCUSTID AND C.FLOCALEID= 2052 - INNER JOIN T_BD_CUSTOMER D ON C.FCUSTID= D.FCUSTID - 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 1=1 - --AND A.FSALEORGID = 100302 - AND (ACO. = '̼ǿ' - OR ACL. = '̼ǿ' - OR C.FNAME IN ('ŵƼۣ޹˾','人ŵƼչ޹˾','ͻ-ʹ' - ,'麣޹˾','麣ŵԴ޹˾','㶫̼ǿؿƼ޹˾','㶫ŵܿƼ޹˾') - OR (C.FCUSTID = 1150173 AND (ACO. = 'Ŷ' OR ACL. = 'Ŷ')) - OR L.FNAME = 'ŵ' - OR A.FID IN (110185,207800) - OR D.F_correlation = 1) - --AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') > @FSDate) - --AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd')< @FEDate) +----ŵ +-- SELECT A.FID AS FID +-- INTO #TEMP3 +-- FROM T_SAL_ORDER A +-- INNER JOIN T_BD_CUSTOMER_L C ON C.FCUSTID= A.FCUSTID AND C.FLOCALEID= 2052 +-- INNER JOIN T_BD_CUSTOMER D ON C.FCUSTID= D.FCUSTID +-- 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 1=1 +-- --AND A.FSALEORGID = 100302 +-- AND (ACO. = '̼ǿ' +-- OR ACL. = '̼ǿ' +-- OR C.FNAME IN ('ŵƼۣ޹˾','人ŵƼչ޹˾','ͻ-ʹ' +-- ,'麣޹˾','麣ŵԴ޹˾','㶫̼ǿؿƼ޹˾','㶫ŵܿƼ޹˾') +-- OR (C.FCUSTID = 1150173 AND (ACO. = 'Ŷ' OR ACL. = 'Ŷ')) +-- OR L.FNAME = 'ŵ' +-- OR A.FID IN (110185,207800) +-- OR D.F_correlation = 1) +-- --AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') > @FSDate) +-- --AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd')< @FEDate) + + + -- βѯҪų۶ + SELECT A.FID AS 'FID'--,a.FSALERID, + INTO #TEMP3 + FROM T_SAL_ORDER A --۶ͷ + INNER JOIN T_ORG_ORGANIZATIONS_L B ON A.FSALEORGID=B.FORGID --֯ + INNER join T_BD_CUSTOMER CC on a.FCUSTID = cc.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 A.FSALEORGID = 100302 -- ֯=麣ŵ + AND ( + ACO. = '̼ǿ' + OR ACL. = '̼ǿ' + OR C.FNAME IN ('ŵƼ޹˾', '人ŵƼչ޹˾') + OR (C.FCUSTID = 1150173 AND (ACO. = 'Ŷ' OR ACL. = 'Ŷ')) --1150173Ӧ麣ŵԴ޹˾ + OR L.FNAME = 'ŵ' + OR A.FID IN (110185, 207800) -- + ) + OR cc.F_correlation = '1' --ѯǰ۶ܶ SELECT @@ -101,16 +110,108 @@ TRUNCATE TABLE YJPHB_GZTH AND A.FManualClose <> '1' AND B.FManualRowClose <> '1' AND A.F_contractnumber NOT LIKE 'Z%' - -----ȫ֯ʾ --- SELECT + + /*2025-08-23 ߼ΪЧһ£ԭ߼ȡ*/ +--/*ʱһ汾ıԭΪ */ +-- SELECT ROW_NUMBER() OVER(PARTITION BY FPKIDX ORDER BY AL.FCHANGEDATE DESC) AS 'rn', +-- AL.FPKIDX,AL.FID +-- INTO #TEMP5 +-- FROM T_SAL_XORDER AL +-- INNER JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX +-- INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- û,ȡ +-- WHERE 1=1 +-- AND A.FID NOT IN(SELECT FID FROM #TEMP3) +-- AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) +-- AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= @FSDate) +-- AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') < @FEDate) +-- AND (ISNULL(@FSDate,'') = '' OR FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) +-- AND A.F_contractnumber NOT LIKE 'Z%' +-- AND AL.FDOCUMENTSTATUS = 'C' +-- AND A.FManualClose <> '1' +-- AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) +-- AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' + +-- DELETE FROM #TEMP5 WHERE rn > 1 + +-- /*ڽʱһ汾ıԭΪ */ +-- SELECT ROW_NUMBER() OVER(PARTITION BY AL.FPKIDX ORDER BY AL.FCHANGEDATE ASC) AS 'rn', +-- AL.FPKIDX,AL.FID, +-- SUM(CAST(( +-- ROUND((AM.FQTY * AB.FTAXPRICE - (ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) * ISNULL(AB.FDISCOUNTRATE,0))/ 100*ISNULL(AN.FEXCHANGERATE,0))/( 1+ FTAXRATE /100 ),2) +-- +ROUND(((ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) - (ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) * ISNULL(AB.FDISCOUNTRATE,0)/ 100))/( 1+ FTAXRATE /100 )* (FTAXRATE /100)* ISNULL(AN.FEXCHANGERATE,0) ),2) +-- -ROUND((AM.FQTYX * AB.FTAXPRICEX - (ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) * ISNULL(AB.FDISCOUNTRATEX,0))/ 100*ISNULL(AN.FEXCHANGERATE,0))/( 1+ FTAXRATEX /100 ),2) +-- -ROUND(((ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) - (ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) * ISNULL(AB.FDISCOUNTRATEX,0)/ 100))/( 1+ FTAXRATEX /100 )* (FTAXRATEX /100)* ISNULL(AN.FEXCHANGERATE,0) ),2)) AS DECIMAL(20, 10))) AS '' , +-- AN.FBillAllAmount_LC AS '' +-- INTO #TEMP6 +-- FROM T_SAL_XORDER AL +-- INNER JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX +-- INNER JOIN T_SAL_XORDERFIN AN ON AN.FID = AL.FID --±Ϣȡͬ +-- INNER JOIN T_SAL_XORDERENTRY AM ON AM.FID = AL.FID +-- INNER JOIN T_SAL_XORDERENTRY_F AB ON AB.FENTRYID = AM.FENTRYID +-- INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- û,ȡ +-- WHERE 1=1 +-- AND A.FID NOT IN(SELECT FID FROM #TEMP3) +-- AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) +-- AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= @FEDate) +-- AND (ISNULL(@FSDate,'') = '' OR FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) +-- AND (ISNULL(@FEDate,'') = '' OR FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < @FEDate) +-- AND A.F_contractnumber NOT LIKE 'Z%' +-- AND A.FManualClose <> '1' +-- AND AL.FDOCUMENTSTATUS = 'C' +-- AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) +-- AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' +-- GROUP BY AL.FID,AL.FPKIDX,AL.FCHANGEDATE,AN.FBillAllAmount_LC + +-- DELETE FROM #TEMP6 WHERE rn > 1 + +-- --ѯȫ֯ĵǰʱ汾ԭΪ +-- SELECT +-- A.FSaleOrgId AS '֯FID' +-- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL. ELSE ACO. END AS '(SBU)' +-- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ϸ ELSE ACO.ϸ END AS 'ϸ' +-- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN XS_L.FNAME +-- ELSE O.FNAME END AS 'Ա' +-- ,CASE WHEN n.FSHARERATE IS NULL THEN CAST(ROUND(AN.FBillAllAmount_LC, 2) AS DECIMAL(20,10)) +-- ELSE CAST(ROUND(AN.FBillAllAmount_LC * (n.FSHARERATE/100),2) AS DECIMAL(20, 10)) END AS 'ҵ' +-- --,CAST(AN.FBillAllAmount_LC AS DECIMAL(20, 10)) AS 'ҵ' +-- ,A.F_CONTRACTNUMBER AS 'ֽʺͬ' +-- ,A.fbillno AS '۶' +-- ,AL.FPKIDX AS '۶FID' +-- INTO #TEMP4 +-- FROM T_SAL_XORDER AL +-- --LEFT JOIN T_SAL_ORDERFIN AN ON A.FID = AN.FID --۶ϸȡͬ +-- LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX +-- LEFT JOIN T_SAL_XORDERFIN AN ON AN.FID = AL.FID --±Ϣȡͬ +-- LEFT JOIN V_BD_SALESMAN XS ON XS.fid = A.FSalerId +-- LEFT JOIN V_BD_SALESMAN_L XS_L ON XS_L.fid = XS.fid --ԱģͣȡԱ +-- 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 AND ISNULL(ACO.ϸ,'') != '' +-- LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=XS_L.FNAME AND ISNULL(ACL.ϸ,'') != '' +-- INNER JOIN T_SEC_USER TU ON A.FChangerId = TU.FUSERID -- û,ȡ +-- WHERE 1=1 +-- AND AL.FDOCUMENTSTATUS = 'C' +-- AND AL.FID IN (SELECT FID FROM #TEMP5) + +-- SELECT * +-- INTO #TEMP1 FROM( +-- --ǰʱ汾ı +-- SELECT * FROM #TEMP4 +-- UNION ALL +-- --ǰʱޱҺҲޱĶ +-- SELECT -- A.FSALEORGID AS '֯FID', -- CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL. ELSE ACO. END AS '(SBU)', -- CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ϸ ELSE ACO.ϸ END AS 'ϸ', -- CASE WHEN ISNULL(O.FNAME,'')='' THEN L.FNAME ELSE O.FNAME END AS 'Ա', --- CASE WHEN n.FSHARERATE IS NULL THEN ROUND(F.FALLAMOUNT_LC,10) --- ELSE ROUND( F.FALLAMOUNT_LC * (n.FSHARERATE/100) ,10) END as 'ҵ' --- INTO #TEMP1 +-- CASE WHEN n.FSHARERATE IS NULL THEN CAST(ROUND(F.FALLAMOUNT_LC, 2) AS DECIMAL(20,10)) +-- ELSE CAST(ROUND( F.FALLAMOUNT_LC * (n.FSHARERATE/100) ,2) AS DECIMAL(20,10)) END as 'ҵ' +-- --,CASE WHEN n.FSHARERATE IS NULL THEN 0 ELSE ROUND( F.FALLAMOUNT_LC * (n.FSHARERATE/100) ,10) END as '̯' +-- --,CASE WHEN n.FSHARERATE IS NULL THEN ROUND(F.FALLAMOUNT_LC,10) ELSE 0 END as '޷̯' +-- ,A.F_CONTRACTNUMBER as 'ֽʺͬ' +-- ,A.fbillno as '۶' +-- ,A.FID as '۶FID' -- FROM T_SAL_ORDER A --۶ͷ -- INNER JOIN T_SAL_orderentry b on a.FID = B.FID --۶ -- INNER JOIN T_SAL_ORDERENTRY_F F ON F.FENTRYID = B.FENTRYID @@ -120,30 +221,36 @@ TRUNCATE TABLE YJPHB_GZTH -- 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 AND ISNULL(ACO.ϸ,'') != '' --- LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=L.FNAME AND ISNULL(ACL.ϸ,'') != '' --- WHERE 1=1 --- AND A.FID NOT IN(SELECT FID FROM #TEMP3) +-- LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=L.FNAME AND ISNULL(ACL.ϸ,'') != '' +-- WHERE 1=1 +-- AND A.FID NOT IN(SELECT FID FROM #TEMP3) +-- AND A.FID NOT IN(SELECT ۶FID FROM #TEMP4) +-- AND A.FID NOT IN(SELECT FPKIDX FROM #TEMP6) -- AND(@FSaleOrgId = '' Or A.FSALEORGID IN(SELECT SalesID FROM #SalesIDTable)) -- AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= @FSDate) -- AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < @FEDate) -- AND A.FDocumentStatus = 'C' -- AND A.FManualClose <> '1' -- AND B.FManualRowClose <> '1' --- AND A.F_contractnumber NOT LIKE 'Z%' - --- --ѯȫ֯Ķ --- SELECT +-- AND A.F_contractnumber NOT LIKE 'Z%' +-- --ǰʱޱбĶ +-- UNION ALL +-- SELECT -- A.FSaleOrgId AS '֯FID' -- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL. ELSE ACO. END AS '(SBU)' -- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ϸ ELSE ACO.ϸ END AS 'ϸ' -- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN XS_L.FNAME -- ELSE O.FNAME END AS 'Ա' --- ,CAST(AN.FBillAllAmount_LC - A.F_Amountstar AS DECIMAL(20, 10)) AS '' --- ,A.F_CONTRACTNUMBER as 'ֽʺͬ' --- ,A.fbillno as '۶' --- INTO #BGTEMP1 --- FROM T_SAL_ORDER A --- LEFT JOIN T_SAL_ORDERFIN AN ON A.FID = AN.FID --۶ϸȡͬ +-- ,CASE WHEN n.FSHARERATE IS NULL THEN CAST(ROUND(AN.-AN., 2) AS DECIMAL(20,10)) +-- ELSE CAST(ROUND((AN.-AN.) * (n.FSHARERATE/100),2) AS DECIMAL(20, 10)) END AS 'ҵ' +-- --,CAST(AN.FBillAllAmount_LC AS DECIMAL(20, 10)) AS 'ҵ' +-- ,A.F_CONTRACTNUMBER AS 'ֽʺͬ' +-- ,A.fbillno AS '۶' +-- ,AL.FPKIDX AS '۶FID' +-- FROM T_SAL_XORDER AL +-- --LEFT JOIN T_SAL_ORDERFIN AN ON A.FID = AN.FID --۶ϸȡͬ +-- LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX +-- LEFT JOIN #TEMP6 AN ON AL.FID = AN.FID -- LEFT JOIN V_BD_SALESMAN XS ON XS.fid = A.FSalerId -- LEFT JOIN V_BD_SALESMAN_L XS_L ON XS_L.fid = XS.fid --ԱģͣȡԱ -- left JOIN T_PerformanceSharing M ON M.FSOURCEBILLNO = A.FBILLNO AND M.FDOCUMENTSTATUS = 'C' @@ -151,241 +258,253 @@ TRUNCATE TABLE YJPHB_GZTH -- 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 AND ISNULL(ACO.ϸ,'') != '' -- LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=XS_L.FNAME AND ISNULL(ACL.ϸ,'') != '' --- INNER JOIN T_SEC_USER TU ON A.FChangerId = TU.FUSERID -- û,ȡ +-- INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- û,ȡ -- WHERE 1=1 --- AND A.FID NOT IN(SELECT FID FROM #TEMP3) --- AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) --- AND (ISNULL(@FSDate,'') = '' OR FORMAT(A.FCHANGEDATE,'yyyy-MM-dd') >= @FSDate) --- AND (ISNULL(@FSDate,'') = '' OR FORMAT(A.FCHANGEDATE,'yyyy-MM-dd') < @FEDate) --- --AND FORMAT(A.FDATE,'yyyy') != FORMAT(A.FCHANGEDATE,'yyyy') --- AND A.F_contractnumber NOT LIKE 'Z%' --- AND A.FManualClose <> '1' +-- AND AL.FPKIDX NOT IN(SELECT FID FROM #TEMP3) +-- AND AL.FPKIDX NOT IN(SELECT FPKIDX FROM #TEMP5) +-- AND AL.FID IN(SELECT FID FROM #TEMP6) +-- AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) +-- AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) +-- AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= @FSDate) +-- AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < @FEDate) +-- AND A.FManualClose <> '1' +-- AND AL.FDOCUMENTSTATUS = 'C' -- AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) --- AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' - - -/*ʱһ汾ıԭΪ */ - SELECT ROW_NUMBER() OVER(PARTITION BY FPKIDX ORDER BY AL.FCHANGEDATE DESC) AS 'rn', - AL.FPKIDX,AL.FID - INTO #TEMP5 - FROM T_SAL_XORDER AL - INNER JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX - INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- û,ȡ - WHERE 1=1 - AND A.FID NOT IN(SELECT FID FROM #TEMP3) - AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) - AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= @FSDate) - AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') < @FEDate) - AND (ISNULL(@FSDate,'') = '' OR FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) - AND A.F_contractnumber NOT LIKE 'Z%' - AND AL.FDOCUMENTSTATUS = 'C' - AND A.FManualClose <> '1' - AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) - AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' +-- AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' +-- ) a - DELETE FROM #TEMP5 WHERE rn > 1 +--/*ۼDZ*/ +--SELECT AL.FID, +--SUM(CAST(( +-- ROUND((AM.FQTY * AB.FTAXPRICE - (ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) * ISNULL(AB.FDISCOUNTRATE,0))/ 100*ISNULL(AN.FEXCHANGERATE,0))/( 1+ FTAXRATE /100 ),2) +-- +ROUND(((ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) - (ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) * ISNULL(AB.FDISCOUNTRATE,0)/ 100))/( 1+ FTAXRATE /100 )* (FTAXRATE /100)* ISNULL(AN.FEXCHANGERATE,0) ),2) +-- -ROUND((AM.FQTYX * AB.FTAXPRICEX - (ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) * ISNULL(AB.FDISCOUNTRATEX,0))/ 100*ISNULL(AN.FEXCHANGERATE,0))/( 1+ FTAXRATEX /100 ),2) +-- -ROUND(((ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) - (ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) * ISNULL(AB.FDISCOUNTRATEX,0)/ 100))/( 1+ FTAXRATEX /100 )* (FTAXRATEX /100)* ISNULL(AN.FEXCHANGERATE,0) ),2)) AS DECIMAL(20, 10))) AS '' +-- INTO #TEMPCHANGEFIN +-- FROM T_SAL_XORDER AL +-- LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX +-- LEFT JOIN T_SAL_XORDERFIN AN ON AN.FID = AL.FID --±Ϣȡͬ +-- LEFT JOIN T_SAL_XORDERENTRY AM ON AM.FID = AL.FID +-- LEFT JOIN T_SAL_XORDERENTRY_F AB ON AB.FENTRYID = AM.FENTRYID +-- INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- û,ȡ +-- WHERE 1=1 +-- AND A.FID NOT IN(SELECT FID FROM #TEMP3) +-- AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) +-- AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) +-- AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) +-- AND (ISNULL(@FEDate,'') = '' or FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') < @FEDate) +-- AND A.FManualClose <> '1' +-- AND AL.FDOCUMENTSTATUS = 'C' +-- AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) +-- AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' +-- GROUP BY AL.FID - /*ڽʱһ汾ıԭΪ */ - SELECT ROW_NUMBER() OVER(PARTITION BY AL.FPKIDX ORDER BY AL.FCHANGEDATE ASC) AS 'rn', - AL.FPKIDX,AL.FID, - SUM(CAST(( - ROUND((AM.FQTY * AB.FTAXPRICE - (ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) * ISNULL(AB.FDISCOUNTRATE,0))/ 100*ISNULL(AN.FEXCHANGERATE,0))/( 1+ FTAXRATE /100 ),2) - +ROUND(((ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) - (ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) * ISNULL(AB.FDISCOUNTRATE,0)/ 100))/( 1+ FTAXRATE /100 )* (FTAXRATE /100)* ISNULL(AN.FEXCHANGERATE,0) ),2) - -ROUND((AM.FQTYX * AB.FTAXPRICEX - (ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) * ISNULL(AB.FDISCOUNTRATEX,0))/ 100*ISNULL(AN.FEXCHANGERATE,0))/( 1+ FTAXRATEX /100 ),2) - -ROUND(((ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) - (ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) * ISNULL(AB.FDISCOUNTRATEX,0)/ 100))/( 1+ FTAXRATEX /100 )* (FTAXRATEX /100)* ISNULL(AN.FEXCHANGERATE,0) ),2)) AS DECIMAL(20, 10))) AS '' , - AN.FBillAllAmount_LC AS '' - INTO #TEMP6 - FROM T_SAL_XORDER AL - INNER JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX - INNER JOIN T_SAL_XORDERFIN AN ON AN.FID = AL.FID --±Ϣȡͬ - INNER JOIN T_SAL_XORDERENTRY AM ON AM.FID = AL.FID - INNER JOIN T_SAL_XORDERENTRY_F AB ON AB.FENTRYID = AM.FENTRYID - INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- û,ȡ - WHERE 1=1 - AND A.FID NOT IN(SELECT FID FROM #TEMP3) - AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) - AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= @FEDate) - AND (ISNULL(@FSDate,'') = '' OR FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) - AND (ISNULL(@FEDate,'') = '' OR FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < @FEDate) - AND A.F_contractnumber NOT LIKE 'Z%' - AND A.FManualClose <> '1' - AND AL.FDOCUMENTSTATUS = 'C' - AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) - AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' - GROUP BY AL.FID,AL.FPKIDX,AL.FCHANGEDATE,AN.FBillAllAmount_LC +-- SELECT +-- A.FSaleOrgId AS '֯FID' +-- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL. ELSE ACO. END AS '(SBU)' +-- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ϸ ELSE ACO.ϸ END AS 'ϸ' +-- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN XS_L.FNAME +-- ELSE O.FNAME END AS 'Ա' +-- ,CASE WHEN n.FSHARERATE IS NULL THEN ROUND(AN.,2) +-- ELSE CAST(AN. * (n.FSHARERATE/100) AS DECIMAL(10, 2)) END AS '' +-- ,A.F_CONTRACTNUMBER as 'ֽʺͬ' +-- ,A.fbillno as '۶' +-- ,A.FID as '۶FID' +-- ,AL.FBILLNO AS '' +-- INTO #BGTEMP1 +-- FROM T_SAL_XORDER AL +-- --LEFT JOIN T_SAL_ORDERFIN AN ON A.FID = AN.FID --۶ϸȡͬ +-- LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX +-- LEFT JOIN #TEMPCHANGEFIN AN ON AL.FID = AN.FID +-- LEFT JOIN V_BD_SALESMAN XS ON XS.fid = A.FSalerId +-- LEFT JOIN V_BD_SALESMAN_L XS_L ON XS_L.fid = XS.fid --ԱģͣȡԱ +-- 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 AND ISNULL(ACO.ϸ,'') != '' +-- LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=XS_L.FNAME AND ISNULL(ACL.ϸ,'') != '' +-- INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- û,ȡ +-- WHERE 1=1 +-- AND A.FID NOT IN(SELECT FID FROM #TEMP3) +-- AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) +-- AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) +-- AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) +-- AND (ISNULL(@FEDate,'') = '' or FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') < @FEDate) +-- AND A.FManualClose <> '1' +-- AND AL.FDOCUMENTSTATUS = 'C' +-- AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) +-- AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' - DELETE FROM #TEMP6 WHERE rn > 1 - --ѯȫ֯ĵǰʱ汾ԭΪ - SELECT - A.FSaleOrgId AS '֯FID' - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL. ELSE ACO. END AS '(SBU)' - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ϸ ELSE ACO.ϸ END AS 'ϸ' - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN XS_L.FNAME - ELSE O.FNAME END AS 'Ա' - ,CASE WHEN n.FSHARERATE IS NULL THEN CAST(ROUND(AN.FBillAllAmount_LC, 2) AS DECIMAL(20,10)) - ELSE CAST(ROUND(AN.FBillAllAmount_LC * (n.FSHARERATE/100),2) AS DECIMAL(20, 10)) END AS 'ҵ' - --,CAST(AN.FBillAllAmount_LC AS DECIMAL(20, 10)) AS 'ҵ' - ,A.F_CONTRACTNUMBER AS 'ֽʺͬ' - ,A.fbillno AS '۶' - ,AL.FPKIDX AS '۶FID' - INTO #TEMP4 - FROM T_SAL_XORDER AL - --LEFT JOIN T_SAL_ORDERFIN AN ON A.FID = AN.FID --۶ϸȡͬ - LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX - LEFT JOIN T_SAL_XORDERFIN AN ON AN.FID = AL.FID --±Ϣȡͬ - LEFT JOIN V_BD_SALESMAN XS ON XS.fid = A.FSalerId - LEFT JOIN V_BD_SALESMAN_L XS_L ON XS_L.fid = XS.fid --ԱģͣȡԱ - 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 AND ISNULL(ACO.ϸ,'') != '' - LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=XS_L.FNAME AND ISNULL(ACL.ϸ,'') != '' - INNER JOIN T_SEC_USER TU ON A.FChangerId = TU.FUSERID -- û,ȡ - WHERE 1=1 - AND AL.FDOCUMENTSTATUS = 'C' - AND AL.FID IN (SELECT FID FROM #TEMP5) + /*2025-08-23 ߼ΪЧһ*/ + /* + ı + */ + SELECT + MAX(t1.FID) ChangeOrderId, -- ID + t1.FPKIDX + INTO #ThisYearChange + FROM + T_SAL_XORDER t1 + INNER JOIN T_SAL_XORDERFIN t1fin ON t1.FID = t1fin.FID + WHERE + 1 = 1 + AND t1fin.FISACTIVE = 'B' + AND(@FSaleOrgId = '' Or t1.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) + AND t1fin.FACTIVEDATE >= @FStartDate + AND t1fin.FACTIVEDATE <= @FEndDate + GROUP BY + t1.FPKIDX; + /* + ڵı + */ + SELECT + MAX(t1.FID) ChangeOrderId, -- ID + t1.FPKIDX + INTO #LastYearChange + FROM + T_SAL_XORDER t1 + INNER JOIN T_SAL_XORDERFIN t1fin ON t1.FID = t1fin.FID + WHERE + 1 = 1 + AND t1fin.FISACTIVE = 'B' + AND(@FSaleOrgId = '' Or t1.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) + AND t1fin.FACTIVEDATE < @FStartDate + GROUP BY + t1.FPKIDX; - SELECT * - INTO #TEMP1 FROM( - --ǰʱ汾ı - SELECT * FROM #TEMP4 - UNION ALL - --ǰʱޱҺҲޱĶ - SELECT - A.FSALEORGID AS '֯FID', - CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL. ELSE ACO. END AS '(SBU)', - CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ϸ ELSE ACO.ϸ END AS 'ϸ', - CASE WHEN ISNULL(O.FNAME,'')='' THEN L.FNAME ELSE O.FNAME END AS 'Ա', - CASE WHEN n.FSHARERATE IS NULL THEN CAST(ROUND(F.FALLAMOUNT_LC, 2) AS DECIMAL(20,10)) - ELSE CAST(ROUND( F.FALLAMOUNT_LC * (n.FSHARERATE/100) ,2) AS DECIMAL(20,10)) END as 'ҵ' - --,CASE WHEN n.FSHARERATE IS NULL THEN 0 ELSE ROUND( F.FALLAMOUNT_LC * (n.FSHARERATE/100) ,10) END as '̯' - --,CASE WHEN n.FSHARERATE IS NULL THEN ROUND(F.FALLAMOUNT_LC,10) ELSE 0 END as '޷̯' - ,A.F_CONTRACTNUMBER as 'ֽʺͬ' - ,A.fbillno as '۶' - ,A.FID as '۶FID' - FROM T_SAL_ORDER A --۶ͷ - INNER JOIN T_SAL_orderentry b on a.FID = B.FID --۶ - INNER JOIN T_SAL_ORDERENTRY_F F ON F.FENTRYID = B.FENTRYID - INNER JOIN T_SAL_ORDERENTRY_R AR ON AR.FENTRYID = B.FENTRYID - 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 AND ISNULL(ACO.ϸ,'') != '' - LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=L.FNAME AND ISNULL(ACL.ϸ,'') != '' - WHERE 1=1 - AND A.FID NOT IN(SELECT FID FROM #TEMP3) - AND A.FID NOT IN(SELECT ۶FID FROM #TEMP4) - AND A.FID NOT IN(SELECT FPKIDX FROM #TEMP6) - AND(@FSaleOrgId = '' Or A.FSALEORGID IN(SELECT SalesID FROM #SalesIDTable)) - AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= @FSDate) - AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < @FEDate) - AND A.FDocumentStatus = 'C' - AND A.FManualClose <> '1' - AND B.FManualRowClose <> '1' - AND A.F_contractnumber NOT LIKE 'Z%' - --ǰʱޱбĶ - UNION ALL - SELECT - A.FSaleOrgId AS '֯FID' - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL. ELSE ACO. END AS '(SBU)' - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ϸ ELSE ACO.ϸ END AS 'ϸ' - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN XS_L.FNAME - ELSE O.FNAME END AS 'Ա' - ,CASE WHEN n.FSHARERATE IS NULL THEN CAST(ROUND(AN.-AN., 2) AS DECIMAL(20,10)) - ELSE CAST(ROUND((AN.-AN.) * (n.FSHARERATE/100),2) AS DECIMAL(20, 10)) END AS 'ҵ' - --,CAST(AN.FBillAllAmount_LC AS DECIMAL(20, 10)) AS 'ҵ' - ,A.F_CONTRACTNUMBER AS 'ֽʺͬ' - ,A.fbillno AS '۶' - ,AL.FPKIDX AS '۶FID' - FROM T_SAL_XORDER AL - --LEFT JOIN T_SAL_ORDERFIN AN ON A.FID = AN.FID --۶ϸȡͬ - LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX - LEFT JOIN #TEMP6 AN ON AL.FID = AN.FID - LEFT JOIN V_BD_SALESMAN XS ON XS.fid = A.FSalerId - LEFT JOIN V_BD_SALESMAN_L XS_L ON XS_L.fid = XS.fid --ԱģͣȡԱ - 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 AND ISNULL(ACO.ϸ,'') != '' - LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=XS_L.FNAME AND ISNULL(ACL.ϸ,'') != '' - INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- û,ȡ - WHERE 1=1 - AND AL.FPKIDX NOT IN(SELECT FID FROM #TEMP3) - AND AL.FPKIDX NOT IN(SELECT FPKIDX FROM #TEMP5) - AND AL.FID IN(SELECT FID FROM #TEMP6) - AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) - AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) - AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= @FSDate) - AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < @FEDate) - AND A.FManualClose <> '1' - AND AL.FDOCUMENTSTATUS = 'C' - AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) - AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' - ) a -/*ۼDZ*/ -SELECT AL.FID, -SUM(CAST(( - ROUND((AM.FQTY * AB.FTAXPRICE - (ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) * ISNULL(AB.FDISCOUNTRATE,0))/ 100*ISNULL(AN.FEXCHANGERATE,0))/( 1+ FTAXRATE /100 ),2) - +ROUND(((ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) - (ISNULL(AM.FQTY,0) * ISNULL(AB.FTAXPRICE,0) * ISNULL(AB.FDISCOUNTRATE,0)/ 100))/( 1+ FTAXRATE /100 )* (FTAXRATE /100)* ISNULL(AN.FEXCHANGERATE,0) ),2) - -ROUND((AM.FQTYX * AB.FTAXPRICEX - (ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) * ISNULL(AB.FDISCOUNTRATEX,0))/ 100*ISNULL(AN.FEXCHANGERATE,0))/( 1+ FTAXRATEX /100 ),2) - -ROUND(((ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) - (ISNULL(AM.FQTYX,0) * ISNULL(AB.FTAXPRICEX,0) * ISNULL(AB.FDISCOUNTRATEX,0)/ 100))/( 1+ FTAXRATEX /100 )* (FTAXRATEX /100)* ISNULL(AN.FEXCHANGERATE,0) ),2)) AS DECIMAL(20, 10))) AS '' - INTO #TEMPCHANGEFIN - FROM T_SAL_XORDER AL - LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX - LEFT JOIN T_SAL_XORDERFIN AN ON AN.FID = AL.FID --±Ϣȡͬ - LEFT JOIN T_SAL_XORDERENTRY AM ON AM.FID = AL.FID - LEFT JOIN T_SAL_XORDERENTRY_F AB ON AB.FENTRYID = AM.FENTRYID - INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- û,ȡ - WHERE 1=1 - AND A.FID NOT IN(SELECT FID FROM #TEMP3) - AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) - AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) - AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) - AND (ISNULL(@FEDate,'') = '' or FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') < @FEDate) - AND A.FManualClose <> '1' - AND AL.FDOCUMENTSTATUS = 'C' - AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) - AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' - GROUP BY AL.FID + ---- βѯҪų۶ + --SELECT A.FID AS 'FID'--,a.FSALERID, + --INTO #TEMP3 + --FROM T_SAL_ORDER A --۶ͷ + --INNER JOIN T_ORG_ORGANIZATIONS_L B ON A.FSALEORGID=B.FORGID --֯ + --INNER join T_BD_CUSTOMER CC on a.FCUSTID = cc.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 A.FSALEORGID = 100302 -- ֯=麣ŵ + -- AND ( + -- ACO. = '̼ǿ' + -- OR ACL. = '̼ǿ' + -- OR C.FNAME IN ('ŵƼ޹˾', '人ŵƼչ޹˾') + -- OR (C.FCUSTID = 1150173 AND (ACO. = 'Ŷ' OR ACL. = 'Ŷ')) --1150173Ӧ麣ŵԴ޹˾ + -- OR L.FNAME = 'ŵ' + -- OR A.FID IN (110185, 207800) -- + -- ) + -- OR cc.F_correlation = '1' - SELECT - A.FSaleOrgId AS '֯FID' - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL. ELSE ACO. END AS '(SBU)' - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.ϸ ELSE ACO.ϸ END AS 'ϸ' - ,CASE WHEN ISNULL(O.FNAME,'')='' THEN XS_L.FNAME - ELSE O.FNAME END AS 'Ա' - ,CASE WHEN n.FSHARERATE IS NULL THEN ROUND(AN.,2) - ELSE CAST(AN. * (n.FSHARERATE/100) AS DECIMAL(10, 2)) END AS '' - ,A.F_CONTRACTNUMBER as 'ֽʺͬ' - ,A.fbillno as '۶' - ,A.FID as '۶FID' - ,AL.FBILLNO AS '' - INTO #BGTEMP1 - FROM T_SAL_XORDER AL - --LEFT JOIN T_SAL_ORDERFIN AN ON A.FID = AN.FID --۶ϸȡͬ - LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX - LEFT JOIN #TEMPCHANGEFIN AN ON AL.FID = AN.FID - LEFT JOIN V_BD_SALESMAN XS ON XS.fid = A.FSalerId - LEFT JOIN V_BD_SALESMAN_L XS_L ON XS_L.fid = XS.fid --ԱģͣȡԱ - 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 AND ISNULL(ACO.ϸ,'') != '' - LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=XS_L.FNAME AND ISNULL(ACL.ϸ,'') != '' - INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- û,ȡ - WHERE 1=1 - AND A.FID NOT IN(SELECT FID FROM #TEMP3) - AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) - AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) - AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) - AND (ISNULL(@FEDate,'') = '' or FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') < @FEDate) - AND A.FManualClose <> '1' - AND AL.FDOCUMENTSTATUS = 'C' - AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) - AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' + --ȫ֯ʾ() + SELECT + A.FBILLNO, + A.FSALEORGID AS '֯FID', + CASE + WHEN ISNULL (O.FNAME, '') = '' THEN ACL. + ELSE ACO. + END AS '(SBU)', + CASE + WHEN ISNULL (O.FNAME, '') = '' THEN ACL.ϸ + ELSE ACO.ϸ + END AS 'ϸ', + CASE + WHEN ISNULL (O.FNAME, '') = '' THEN L.FNAME + ELSE O.FNAME + END AS 'Ա', + CASE + WHEN n.FSHARERATE IS NULL THEN CASE + WHEN t1.ChangeOrderId IS NULL THEN ROUND(A.F_AMOUNTSTAR * HL.λҶһ, 10) + ELSE ROUND(t1fen.FBILLALLAMOUNT_LC * HL.λҶһ, 10) + END + ELSE CASE + WHEN t1.ChangeOrderId IS NULL THEN ROUND(A.F_AMOUNTSTAR * HL.λҶһ * (n.FSHARERATE / 100), 10) + ELSE ROUND( + t1fen.FBILLALLAMOUNT_LC * HL.λҶһ * (n.FSHARERATE / 100), + 10 + ) + END + END AS 'ҵ' + INTO #TEMP1 + FROM T_SAL_ORDER A --۶ͷ + INNER JOIn T_SAL_ORDERFIN A_FIN on A.FID = A_FIN.FID -- ͷϢ + INNER join ZZV_XiaoShouHuiLv HL on a.fid = HL.۶ID + LEFT JOIN #ThisYearChange t1 on t1.FPKIDX = A.FID -- ۶± + LEFT JOIN T_SAL_XORDERFIN t1fen on t1.ChangeOrderId = t1fen.FID -- Ľ + 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 AND ISNULL(ACO.ϸ,'') != '' --ԽϢ + LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=L.FNAME AND ISNULL(ACL.ϸ,'') != '' --ԽϢ + WHERE + 1=1 AND A.FID NOT IN( SELECT FID FROM #TEMP3) + AND A.FAPPROVEDATE >= @FStartDate -- + AND A.FAPPROVEDATE '1' + -- AND B.FManualRowClose <> '1' + AND A.F_contractnumber NOT LIKE 'Z%' + AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) + + + --ѯȫ֯ʾ + SELECT + A.FBILLNO, + A.FSALEORGID AS '֯FID', + CASE + WHEN ISNULL (O.FNAME, '') = '' THEN ACL. + ELSE ACO. + END AS '(SBU)', + CASE + WHEN ISNULL (O.FNAME, '') = '' THEN ACL.ϸ + ELSE ACO.ϸ + END AS 'ϸ', + CASE + WHEN ISNULL (O.FNAME, '') = '' THEN L.FNAME + ELSE O.FNAME + END AS 'Ա', + CASE + WHEN n.FSHARERATE IS NULL THEN CASE + WHEN t2fen.FBILLALLAMOUNT_LC IS NULL THEN (t1fen.FBILLALLAMOUNT_LC - A.F_AMOUNTSTAR) * HL.λҶһ + ELSE (t1fen.FBILLALLAMOUNT_LC - t2fen.FBILLALLAMOUNT_LC) * HL.λҶһ + END + ELSE CASE + WHEN t2fen.FBILLALLAMOUNT_LC IS NULL THEN ROUND( + (t1fen.FBILLALLAMOUNT_LC - A.F_AMOUNTSTAR) * HL.λҶһ * (n.FSHARERATE / 100), + 10 + ) + ELSE ROUND( + (t1fen.FBILLALLAMOUNT_LC - t2fen.FBILLALLAMOUNT_LC) * HL.λҶһ * (n.FSHARERATE / 100), + 10 + ) + END + END AS '' + INTO #BGTEMP1 + FROM T_SAL_ORDER A --۶ͷ + INNER JOIn T_SAL_ORDERFIN A_FIN on A.FID = A_FIN.FID -- ͷϢ + INNER join ZZV_XiaoShouHuiLv HL on a.fid = HL.۶ID + INNER JOIN #ThisYearChange t1 on t1.FPKIDX = A.FID -- ۶± + LEFT JOIN T_SAL_XORDERFIN t1fen on t1.ChangeOrderId = t1fen.FID -- Ľ + LEFT JOIN #LastYearChange t2 on t1.FPKIDX = A.FID -- ȥ۶± + LEFT JOIN T_SAL_XORDERFIN t2fen on t2.ChangeOrderId = t2fen.FID -- Ľ + 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 AND ISNULL(ACO.ϸ,'') != '' + LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=L.FNAME AND ISNULL(ACL.ϸ,'') != '' + WHERE + 1=1 + AND A.FID NOT IN (SELECT FID FROM #TEMP3) + AND A.FAPPROVEDATE <= @FStartDate + AND A.FDocumentStatus = 'C' + AND A.FManualClose <> '1' + AND A.F_contractnumber NOT LIKE 'Z%' + AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) --ŵҵ(궩) @@ -410,7 +529,11 @@ SUM(CAST(( --뻪ҵ(궩) INSERT INTO YJPHB_GZTH([_SBU],[ϸ],[],[ҵ_궩]) - SELECT [(SBU)],[ϸ],[Ա],SUM([ҵ]) AS 'ҵ' FROM #TEMP1 WHERE [֯FID] = 533896 GROUP BY [(SBU)],[ϸ],[Ա] + SELECT [(SBU)],[ϸ],[Ա],SUM([ҵ]) AS 'ҵ' FROM #TEMP1 WHERE [֯FID] = 533896 GROUP BY [(SBU)],[ϸ],[Ա] + + --ŵҵ(궩) + INSERT INTO YJPHB_GZTH([_SBU],[ϸ],[],[ŵҵ_궩]) + SELECT [(SBU)],[ϸ],[Ա],SUM([ҵ]) AS 'ҵ' FROM #TEMP1 WHERE [֯FID] = 1467475 GROUP BY [(SBU)],[ϸ],[Ա] --ŵҵ(궩) INSERT INTO YJPHB_GZTH([_SBU],[ϸ],[],[ŵҵ_궩]) @@ -434,7 +557,11 @@ SUM(CAST(( --뻪ҵ(궩) INSERT INTO YJPHB_GZTH([_SBU],[ϸ],[],[ҵ_궩]) - SELECT [(SBU)],[ϸ],[Ա],[] FROM #BGTEMP1 WHERE [֯FID] = 533896; + SELECT [(SBU)],[ϸ],[Ա],[] FROM #BGTEMP1 WHERE [֯FID] = 533896; + + --ŵҵ(궩) + INSERT INTO YJPHB_GZTH([_SBU],[ϸ],[],[ŵҵ_궩]) + SELECT [(SBU)],[ϸ],[Ա],SUM([]) AS '' FROM #BGTEMP1 WHERE [֯FID] = 1467475 GROUP BY [(SBU)],[ϸ],[Ա] --2024۶ INSERT INTO YJPHB_GZTH([_SBU],[ϸ],[],[۶1]) @@ -552,7 +679,14 @@ SELECT [ --ŵۼƻؿտ˿ INSERT INTO YJPHB_GZTH([_SBU],[ϸ],[],[ۼƻؿ]) SELECT [_SBU],[ϸ],[Ա],[տ˿] FROM #SKTKTEMP1 WHERE [֯FID] = '533896' + +--ŵۼƻؿ +INSERT INTO YJPHB_GZTH([_SBU],[ϸ],[],[ŵۼƻؿ]) +SELECT [_SBU],[ϸ],[Ա],[տ] FROM #SKTEMP1 WHERE [֯FID] = '1467475' +--ŵۼƻؿտ˿ +INSERT INTO YJPHB_GZTH([_SBU],[ϸ],[],[ŵۼƻؿ]) +SELECT [_SBU],[ϸ],[Ա],[տ˿] FROM #SKTKTEMP1 WHERE [֯FID] = '1467475' --Ѿ¼ @@ -561,24 +695,26 @@ SELECT [ FROM ( SELECT [_SBU],[ϸ],[], - SUM([ŵҵ_궩]) AS 'ŵҵ_궩', - SUM([ŵҵ_궩]) AS 'ŵҵ_궩', - SUM([人ŵҵ_궩]) AS '人ŵҵ_궩', - SUM([㶫̼ҵ_궩]) AS '㶫̼ҵ_궩', - SUM([ŵҵ_궩]) AS 'ŵҵ_궩', - SUM([ҵ_궩]) AS 'ҵ_궩', - SUM([ŵۼƻؿ]) AS 'ŵۼƻؿ', - SUM([ŵۼƻؿ]) AS 'ŵۼƻؿ', - SUM([人ŵۼƻؿ]) AS '人ŵۼƻؿ', - SUM([㶫̼ۼƻؿ]) AS '㶫̼ۼƻؿ', - SUM([ŵۼƻؿ]) AS 'ŵۼƻؿ', - SUM([ۼƻؿ]) AS 'ۼƻؿ', - SUM([۶1]) AS '۶1', - SUM([۶2]) AS '۶2', - SUM([۶3]) AS '۶3', - SUM([۶4]) AS '۶4', - SUM([۶5]) AS '۶5', - SUM([۶6]) AS '۶6' + SUM([ŵҵ_궩])/10000 AS 'ŵҵ_궩', + SUM([ŵҵ_궩])/10000 AS 'ŵҵ_궩', + SUM([人ŵҵ_궩])/10000 AS '人ŵҵ_궩', + SUM([㶫̼ҵ_궩])/10000 AS '㶫̼ҵ_궩', + SUM([ŵҵ_궩])/10000 AS 'ŵҵ_궩', + SUM([ҵ_궩])/10000 AS 'ҵ_궩', + SUM([ŵҵ_궩])/10000 AS 'ŵҵ_궩', + SUM([ŵۼƻؿ])/10000 AS 'ŵۼƻؿ', + SUM([ŵۼƻؿ])/10000 AS 'ŵۼƻؿ', + SUM([人ŵۼƻؿ])/10000 AS '人ŵۼƻؿ', + SUM([㶫̼ۼƻؿ])/10000 AS '㶫̼ۼƻؿ', + SUM([ŵۼƻؿ])/10000 AS 'ŵۼƻؿ', + SUM([ۼƻؿ])/10000 AS 'ۼƻؿ', + SUM([ŵۼƻؿ])/10000 AS 'ŵۼƻؿ', + SUM([۶1])/10000 AS '۶1', + SUM([۶2])/10000 AS '۶2', + SUM([۶3])/10000 AS '۶3', + SUM([۶4])/10000 AS '۶4', + SUM([۶5])/10000 AS '۶5', + SUM([۶6])/10000 AS '۶6' FROM YJPHB_GZTH GROUP BY [_SBU],[ϸ],[] ) AS IDa @@ -588,27 +724,29 @@ SELECT [ --²֯Ķ INSERT INTO YJPHB_GZTH([_SBU],[ϸ],[],[ŵҵ_궩],[ŵҵ_궩], - [人ŵҵ_궩],[㶫̼ҵ_궩],[ŵҵ_궩],[ҵ_궩] - ,[ŵۼƻؿ],[ŵۼƻؿ],[人ŵۼƻؿ],[㶫̼ۼƻؿ],[ŵۼƻؿ],[ۼƻؿ] + [人ŵҵ_궩],[㶫̼ҵ_궩],[ŵҵ_궩],[ҵ_궩] + ,[ŵҵ_궩] + ,[ŵۼƻؿ],[ŵۼƻؿ],[人ŵۼƻؿ],[㶫̼ۼƻؿ],[ŵۼƻؿ],[ۼƻؿ] + ,[ŵۼƻؿ] ,[۶1],[۶2],[۶3],[۶4],[۶5],[۶6]) SELECT * FROM #TEMP2 --µۼҵ update A - SET [ۼҵ] = B.[ҵ] + SET [ۼҵ] = B.[ҵ]/10000 FROM YJPHB_GZTH A INNER JOIN (SELECT [Ա],SUM([ҵ]) AS 'ҵ' FROM #TEMP1 GROUP BY [Ա]) B ON A.[] = B.[Ա] --ͬ update A - SET [ͬ] = B.[] + SET [ͬ] = B.[]/10000 FROM YJPHB_GZTH A INNER JOIN (SELECT [Ա],SUM([]) AS '' FROM #BGTEMP1 GROUP BY [Ա]) B ON A.[] = B.[Ա] --ŵ-ѽмҵ(궩)ֶνиֵ UPDATE YJPHB_GZTH SET [ŵ_ѽмҵ_궩] = ISNULL([ŵҵ_궩],0) + ISNULL([ŵҵ_궩],0) + ISNULL([人ŵҵ_궩],0) - +ISNULL([㶫̼ҵ_궩],0) + ISNULL([ŵҵ_궩],0) + ISNULL([ҵ_궩],0); + +ISNULL([㶫̼ҵ_궩],0) + ISNULL([ŵҵ_궩],0) + ISNULL([ҵ_궩],0)+ ISNULL([ŵҵ_궩],0); --ԼŻؿϼֶνиֵ UPDATE YJPHB_GZTH @@ -713,5 +851,6 @@ SET A.[Ŀ FROM YJPHB_GZTH A -DROP TABLE #TEMP1,#TEMP2,#TEMP3,#BGTEMP1,#YGTEMP1,#DateTEMP3,#SKTEMP1,#SKTKTEMP1,#SixYearEMP1,#TEMP4,#TEMP5 +--DROP TABLE #TEMP1,#TEMP2,#TEMP3,#BGTEMP1,#YGTEMP1,#DateTEMP3,#SKTEMP1,#SKTKTEMP1,#SixYearEMP1,#TEMP4,#TEMP5 +DROP TABLE #TEMP1,#TEMP3,#BGTEMP1,#YGTEMP1,#DateTEMP3,#SKTEMP1,#SKTKTEMP1,#SixYearEMP1,#SalesIDTable END; \ No newline at end of file diff --git a/派诺报表SQL文件/应收对账单明细更新发票金额存储过程.sql b/派诺报表SQL文件/应收对账单明细更新发票金额存储过程.sql index 692860f..6de8fe3 100644 --- a/派诺报表SQL文件/应收对账单明细更新发票金额存储过程.sql +++ b/派诺报表SQL文件/应收对账单明细更新发票金额存储过程.sql @@ -117,7 +117,7 @@ WHERE B.FPLX = 'רƱ' AND A.[ --׷K3רƱ UPDATE A -SET PPBillingDate = CASE ISNULL(A.PPBillingDate,'') WHEN '' THEN '' ELSE A.PPBillingDate + ',' END + B.FPRQ +SET ZPBillingDate = CASE ISNULL(A.ZPBillingDate,'') WHEN '' THEN '' ELSE A.ZPBillingDate + ',' END + B.FPRQ FROM YingShouZhanKuanMX_GZTH A INNER JOIN ( SELECT ( @@ -210,7 +210,9 @@ WHERE B. --ѳǷѿƱǷǷƱǷֶ -- OrderAmount=0,PaymentAmount=0,ShippedDebt=0,InvoicedDebt=0,IsEnded = NULL ,OwedTickets= 0,BillingAmount=0 SELECT - FID, SUM(ShipmentsAmount) - AVG(PaymentAmount) - SUM(ISNULL(ReturnAmount,0)) AS 'ѳǷ',AVG(BillingAmount) - AVG(PaymentAmount) AS 'ѿƱǷ',SUM(OrderAmount) - SUM(BillingAmount) AS 'ǷƱ', + FID, + SUM(ShipmentsAmount) - AVG(PaymentAmount) - SUM(ISNULL(ReturnAmount,0)) AS 'ѳǷ', + AVG(BillingAmount) - AVG(PaymentAmount) AS 'ѿƱǷ',SUM(OrderAmount) - SUM(BillingAmount) AS 'ǷƱ', CASE WHEN (AVG(ISNULL(OrderAmount,0)) - SUM(ISNULL(ReturnAmount,0))) = SUM(ISNULL(ShipmentsAmount,0)) AND (AVG(ISNULL(OrderAmount,0)) - SUM(ISNULL(ReturnAmount,0))) = AVG(ISNULL(BillingAmount,0)) AND (AVG(ISNULL(OrderAmount,0)) - SUM(ISNULL(ReturnAmount,0))) = AVG(ISNULL(PaymentAmount,0)) @@ -222,15 +224,17 @@ WHERE B. WHERE A.[ǷK3] = 0 GROUP BY FID - UPDATE A - SET A.ShippedDebt = B.[ѳǷ],-- A.InvoicedDebt = B.[ѿƱǷ],--A.OwedTickets = B.[ǷƱ], - A.IsEnded = B.[Ƿ] - FROM YingShouZhanKuanMX_GZTH A - INNER JOIN #TEMP4 B ON A.FID = B.FID - WHERE A.[ǷK3] = 0 + --UPDATE A + --SET A.ShippedDebt = B.[ѳǷ],-- A.InvoicedDebt = B.[ѿƱǷ],--A.OwedTickets = B.[ǷƱ], + --A.IsEnded = B.[Ƿ] + --FROM YingShouZhanKuanMX_GZTH A + --INNER JOIN #TEMP4 B ON A.FID = B.FID + --WHERE A.[ǷK3] = 0 + --ѿƱǷ,ѳǷ UPDATE A - SET A.InvoicedDebt = BillingAmount - PaymentAmount + SET A.InvoicedDebt = BillingAmount - PaymentAmount + ,ShippedDebt= ShipmentsAmount- PaymentAmount -ReturnAmount FROM YingShouZhanKuanMX_GZTH A --Աеݽе @@ -275,6 +279,7 @@ WHERE B. FROM YingShouZhanKuanMX_GZTH GROUP BY FID) B ON A.FID = B.FID WHERE A.[ǷK3] = 0 AND A.row_num = 1 + DROP TABLE #TEMP3 DROP TABLE #TEMP4 DROP TABLE #TEMP5 diff --git a/派诺报表SQL文件/应收对账表(明细版存储过程).sql b/派诺报表SQL文件/应收对账表(明细版存储过程).sql index da93f99..6dfba3c 100644 --- a/派诺报表SQL文件/应收对账表(明细版存储过程).sql +++ b/派诺报表SQL文件/应收对账表(明细版存储过程).sql @@ -105,7 +105,7 @@ BEGIN ,ROW_NUMBER() OVER(ORDER BY A.FID) AS NUMBER FROM T_SAL_ORDER A INNER JOIN ( - SELECT T1.FID,SUM(T1.FALLAMOUNT) FBillAllAmount + SELECT T1.FID,SUM(T1.FALLAMOUNT_LC) FBillAllAmount FROM T_SAL_ORDERENTRY_F T1 INNER JOIN T_SAL_ORDERENTRY T2 ON T1.FENTRYID = T2.FENTRYID AND T2.FRETURNTYPE <> 'RETURN' GROUP BY T1.FID @@ -251,7 +251,7 @@ INNER JOIN ( --K3 UPDATE A - SET ShipmentsDate = CONCAT(CASE WHEN A.ShipmentsDate IS NULL THEN '' ELSE A.ShipmentsDate+',' END ,B.ϲ) + SET ShipmentsDate = LEFT(CONCAT(CASE WHEN ISNULL(A.ShipmentsDate,'') = '' THEN '' ELSE A.ShipmentsDate+',' END ,B.ϲ),1990) FROM YingShouZhanKuanMX_GZTH A INNER JOIN T_SAL_ORDERENTRY C ON A.FENTRYID = C.FENTRYID INNER JOIN (SELECT к,STUFF((SELECT DISTINCT ','+ FROM oldk3seorder0701 WHERE ݱ = a.ݱ FOR XML PATH('')),1,1,'') AS 'ϲ',ݱ