diff --git a/DDWFHMX.cs b/DDWFHMX.cs index d14cc41..90d6ba8 100644 --- a/DDWFHMX.cs +++ b/DDWFHMX.cs @@ -73,6 +73,7 @@ namespace GZ_LTHReportForms.ReporyDDWFH 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); diff --git a/HKBaoBiao/回款报表服务器插件.py b/HKBaoBiao/回款报表服务器插件.py index c254645..ef07bc6 100644 --- a/HKBaoBiao/回款报表服务器插件.py +++ b/HKBaoBiao/回款报表服务器插件.py @@ -123,18 +123,18 @@ def BuilderReportSqlAndTempTable(Filter,tableName): if customFiler["F_SDate"] != None and customFiler["F_SDate"].ToString() != "": if RQLX == "1": - SKRQS = str(customFiler["F_SDate"].ToString("yyyy-MM-dd")) + HXRQS = str(customFiler["F_SDate"].ToString("yyyy-MM-dd")) strFilter += " AND (ҵ >= '{0}' OR ISNULL(ҵ,'') = '' OR IN (3,4))".format(str(customFiler["F_SDate"].ToString("yyyy-MM-dd"))) if RQLX == "2": strFilter += " AND ( >= '{0}' OR ISNULL(,'') = '' OR IN (3,4))".format(str(customFiler["F_SDate"].ToString("yyyy-MM-dd"))) - HXRQS = str(customFiler["F_SDate"].ToString("yyyy-MM-dd")) + SKRQS = str(customFiler["F_SDate"].ToString("yyyy-MM-dd")) if customFiler["F_EDate"] != None and customFiler["F_EDate"].ToString() != "": if RQLX == "1": 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")) + HXRQE = str(customFiler["F_EDate"].ToString("yyyy-MM-dd")) if RQLX == "2": strFilter += " AND ( <= '{0}' OR ISNULL(,'') = '' OR IN (3,4))".format(str(customFiler["F_EDate"].ToString("yyyy-MM-dd"))) - HXRQE = 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())) if customFiler["F_Currency"] != None and customFiler["F_Currency"].ToString() != "": @@ -162,7 +162,7 @@ def BuilderReportSqlAndTempTable(Filter,tableName): WHERE T1.FID IN (SELECT XiaoShouFid FROM ZZZ_HeXiaoBook) AND T1.FDOCUMENTSTATUS = 'C' --AND (T1.FSALEORGID = {4} OR {4} = 0) - --AND (T1.FCUSTID = {5} OR {5} = 0) + AND (T1.FCUSTID = {5} OR {5} = 0) /*ץȡտӦƱ*/ SELECT T1.FID,FORMAT(T1.FDATE,'yyyy-MM-dd') AS 'տ',T1.FRECAMOUNT AS 'տ' @@ -274,7 +274,8 @@ def BuilderReportSqlAndTempTable(Filter,tableName): ,T1.Remark AS 'ע' ,T1.ZhangLing AS '' ,CAST('' AS VARCHAR(500)) AS 'ұ' - ,CASE T1.ShouKuanType WHEN 1 THEN 3 WHEN 2 THEN 4 END AS '' + --,CASE T1.ShouKuanType WHEN 1 THEN 3 WHEN 2 THEN 4 END AS '' + ,3 '' FROM ZZZ_HeXiaoBook T1 INNER JOIN #TEMP1 T2 ON T1.XiaoShouFid = T2.FID WHERE T1.ShouKuanType IN (1,2) @@ -345,6 +346,10 @@ def BuilderReportSqlAndTempTable(Filter,tableName): FROM (SELECT DISTINCT ACO22.,ACO22.ϸ,ACO22. FROM ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO22 ) b WHERE Ա=b. + /*Ա'ӦտרС'ʱSBUϸ'ӦտרС'*/ + UPDATE #TEMP3 SET SBU=Ա,[ϸ]=Ա + WHERE Ա='ӦտרС' + /*̯β*/ UPDATE T1 SET ̯ = ISNULL(T1.̯,0)+(ISNULL(T1.,0)-ISNULL(T2.̯,0)) FROM #TEMP3 T1 INNER JOIN(SELECT ShouKuanFid,SUM(ISNULL(̯,0)) ̯ FROM #TEMP3 GROUP BY ShouKuanFid) T2 ON T1.ShouKuanFid = T2.ShouKuanFid diff --git a/YSZKDZBaoBiao/AccountsReceivableReport.cs b/YSZKDZBaoBiao/AccountsReceivableReport.cs index 56c8802..61cdb52 100644 --- a/YSZKDZBaoBiao/AccountsReceivableReport.cs +++ b/YSZKDZBaoBiao/AccountsReceivableReport.cs @@ -156,10 +156,11 @@ namespace Pilot.Report.Exploitation.AccountsReceivableStatements ", FSDate, fDate, ZZFID, fClient,XSYFID,ZZHTH,SFQJFWDZ); sql += string.Format(@" - INSERT INTO YingShouZhanKuanJY_GZTH(Number,OrderAmount,ShipmentsAmount,FBillAllAmount, + INSERT INTO YingShouZhanKuanJY_GZTH(FID,Number,OrderAmount,ShipmentsAmount,FBillAllAmount, FALLAmountFor,PaymentAmount,ShippedDebt,InvoicedDebt,OwedTickets ,[K3发货数量],[K3发货金额],[K3退货数量],[K3退货金额],[星空发货数量],[星空发货金额],[星空退货数量],[星空退货金额],PPFALLAmountFor,ZPFALLAmountFor,[K3专票金额],[K3普票金额]) - Select + Select + 999998, '合计', SUM(OrderAmount) as OrderAmount, SUM(ShipmentsAmount) as ShipmentsAmount, @@ -244,7 +245,8 @@ namespace Pilot.Report.Exploitation.AccountsReceivableStatements { fState = "未完结订单"; } - + //是否月结客户 + var SFQJFWDZ = customFilter["F_ALL_GROUP2"]?.ToString(); //这里是报表页面的标识 reportTitles.AddTitle("FState", fGROUP == null ? "" : fState); reportTitles.AddTitle("FClient", fClientList == null ? "" : fClientList); @@ -253,6 +255,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivableStatements reportTitles.AddTitle("FProject", fProjectList == null ? "" : string.Join(",", fProjectList)); reportTitles.AddTitle("F_ZZHTH", ZZHTH == null ? "" : ZZHTH); reportTitles.AddTitle("F_XSY", XSYFID == null ? "" : XSYFID); + reportTitles.AddTitle("F_SFYJKH", SFQJFWDZ == null ? "" : SFQJFWDZ); } return reportTitles; } diff --git a/YSZKDZBaoBiao/AccountsReceivableReport2.cs b/YSZKDZBaoBiao/AccountsReceivableReport2.cs index c9b0250..035b996 100644 --- a/YSZKDZBaoBiao/AccountsReceivableReport2.cs +++ b/YSZKDZBaoBiao/AccountsReceivableReport2.cs @@ -90,9 +90,9 @@ namespace Pilot.Report.Exploitation.AccountsReceivableStatements header.AddChild("星空退货金额", new LocaleValue("星空退货金额"), SqlStorageType.SqlDecimal); header.AddChild("ReturnNum", new LocaleValue("总退货数量"), SqlStorageType.SqlInt); header.AddChild("ReturnAmount", new LocaleValue("总退货金额"), SqlStorageType.SqlDecimal); - header.AddChild("PPBillingDate", new LocaleValue("星空普票开票日期"), SqlStorageType.Sqlvarchar); + header.AddChild("PPBillingDate", new LocaleValue("普票开票日期"), SqlStorageType.Sqlvarchar); header.AddChild("PPBillingAmount", new LocaleValue("星空普票开票金额"), SqlStorageType.SqlDecimal); - header.AddChild("ZPBillingDate", new LocaleValue("星空专票开票日期"), SqlStorageType.Sqlvarchar); + header.AddChild("ZPBillingDate", new LocaleValue("专票开票日期"), SqlStorageType.Sqlvarchar); header.AddChild("ZPBillingAmount", new LocaleValue("星空专票开票金额"), SqlStorageType.SqlDecimal); header.AddChild("BillingAmount", new LocaleValue("总开票金额"), SqlStorageType.SqlDecimal); header.AddChild("PaymentDate", new LocaleValue("回款日期"), SqlStorageType.Sqlvarchar); @@ -164,10 +164,11 @@ namespace Pilot.Report.Exploitation.AccountsReceivableStatements ", FSDate,fDate,ZZFID,fClient,XSYFID,ZZHTH,SFQJFWDZ); sql += string.Format($@"/*dialect*/ - INSERT INTO YingShouZhanKuanMX_GZTH(NUMBER,FQTY,FALLAMOUNT,OrderAmount,ShipmentsNum,ShipmentsAmount, + INSERT INTO YingShouZhanKuanMX_GZTH(FID,NUMBER,FQTY,FALLAMOUNT,OrderAmount,ShipmentsNum,ShipmentsAmount, ReturnNum,ReturnAmount,BillingAmount,PaymentAmount,ShippedDebt,InvoicedDebt,OwedTickets,[K3退货金额],PPBillingAmount,ZPBillingAmount,[星空退货金额],[星空发货金额] ,[K3发货数量],[K3发货金额],[星空发货数量],[K3退货数量],[星空退货数量],[K3专票金额],[K3普票金额]) - SELECT + SELECT + 999998, '合计', SUM(FQTY), SUM(FALLAMOUNT), @@ -212,7 +213,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivableStatements { sql += string.Format("AND FID IN (SELECT FID FROM YingShouZhanKuanMX_GZTH WHERE IsEnded = '未完结')"); } - Logger.Error("sql脚本", sql, new Exception()); + //Logger.Error("sql脚本", sql, new Exception()); DBUtils.Execute(this.Context, sql); } diff --git a/YSZKDZGongNeng_MX/LiteVersionPlugIn2.cs b/YSZKDZGongNeng_MX/LiteVersionPlugIn2.cs index 4679c04..129f005 100644 --- a/YSZKDZGongNeng_MX/LiteVersionPlugIn2.cs +++ b/YSZKDZGongNeng_MX/LiteVersionPlugIn2.cs @@ -57,6 +57,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivable string fDate = rptTitles.FirstOrDefault(a => a.TitleKey == "FDate").TitleValue.ToString(); string fProject = rptTitles.FirstOrDefault(a => a.TitleKey == "FProject").TitleValue.ToString(); string FState = rptTitles.FirstOrDefault(a => a.TitleKey == "FState").TitleValue.ToString(); + string F_SFYJKH = rptTitles.FirstOrDefault(a => a.TitleKey == "F_SFYJKH").TitleValue.ToString(); //单据体 var list = reportModel.DataSource.Rows; @@ -74,14 +75,14 @@ namespace Pilot.Report.Exploitation.AccountsReceivable fDate2 = sqlTestList[0]["Date"].ToString().Split(' ')[0]; } - Main(filePath, fClient, fDate, fProject, list, Num, fAmount, fDate2, Context); + Main(filePath, fClient, fDate, fProject, list, Num, fAmount, fDate2, F_SFYJKH, Context); } } /// /// 赋值EXCEL /// - static void Main(string outputFilePath, string fClient, string fDate, string fProject, DataRowCollection list, int Num, decimal fAmount,string fDate2,Kingdee.BOS.Context Context) + static void Main(string outputFilePath, string fClient, string fDate, string fProject, DataRowCollection list, int Num, decimal fAmount,string fDate2,string F_SFYJKH, Kingdee.BOS.Context Context) { #region Excel代码 @@ -206,7 +207,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivable cell.SetCellValue("尊敬的 " + fClient + " 客户您好,我公司已根据合同/订单的要求向贵公司交付相关产品并请验收确认,鉴于我公司对贵公司已通知发货部分的交付义务已完成,"); cell2.SetCellValue(fClient); var fAmountZW = ToChineseNumber(fAmount, Context); - if (Num > 0) + if (Num > 0 && F_SFYJKH == "2") { cel3.SetCellValue("其中上期(截止" + fDate2 + "共欠我公司货款金额为:" + fAmount + "元(大写:"+ fAmountZW + ")"); } @@ -241,6 +242,8 @@ namespace Pilot.Report.Exploitation.AccountsReceivable string BillingDate = string.IsNullOrWhiteSpace(list[i]["ZPBillingDate"].ToString()) ? "" : list[i]["ZPBillingDate"].ToString().Split(' ')[0]; string ReturnDate = string.IsNullOrWhiteSpace(list[i]["ReturnDate"].ToString()) ? "" : list[i]["ReturnDate"].ToString().Split(' ')[0]; + BillingDate += string.IsNullOrWhiteSpace(list[i]["PPBillingDate"].ToString()) ? "" : (string.IsNullOrWhiteSpace(BillingDate) ?"":",")+list[i]["PPBillingDate"].ToString().Split(' ')[0]; + //将合计行放到最下方 IRow rowi = sheet.CreateRow(j + i); if (list[i]["Number"].ToString() == "合计") @@ -351,10 +354,10 @@ namespace Pilot.Report.Exploitation.AccountsReceivable n++; //根据订单号分组合并单元格 - if(list[i]["CONTRACTNUMBER"].ToString() != GroupCONTRACTNUMBER || i == list.Count-2) + if(list[i]["CONTRACTNUMBER"].ToString() != GroupCONTRACTNUMBER || i == list.Count-3) { - int k = (i == list.Count - 2) ? 0 : 1; - if (GroupCount > 1) + int k = (i == list.Count - 3 && list[i]["CONTRACTNUMBER"].ToString() == GroupCONTRACTNUMBER) ? 0 : 1; + if (GroupCount > 1 || k == 0) { // 创建CellRangeAddress对象 CellRangeAddress cellRangeAddress = new CellRangeAddress(GroupIndex, j + i - k, 1, 1); diff --git a/派诺报表SQL文件/业绩排行榜插入数据SQL.sql b/派诺报表SQL文件/业绩排行榜插入数据SQL.sql index 255caf6..120aaa2 100644 --- a/派诺报表SQL文件/业绩排行榜插入数据SQL.sql +++ b/派诺报表SQL文件/业绩排行榜插入数据SQL.sql @@ -21,25 +21,28 @@ SET @Year = YEAR(@FSDate) - 1; -- ǰ SET @SixYearsAgoYear = @Year - 6; --- 洢ֵֺ - DECLARE @SalesID NVARCHAR(50); - DECLARE @Pos INT; - DECLARE @FSaleOrgId1 NVARCHAR(50); +---- 洢ֵֺ +-- DECLARE @SalesID NVARCHAR(50); +-- DECLARE @Pos INT; +-- DECLARE @FSaleOrgId1 NVARCHAR(50); - -- ʼ - SET @FSaleOrgId1 = LTRIM(RTRIM(@FSaleOrgId)) + ','; - SET @Pos = CHARINDEX(',', @FSaleOrgId1); +-- -- ʼ +-- 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 +-- 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,',') --ձ TRUNCATE TABLE YJPHB_GZTH @@ -66,8 +69,8 @@ TRUNCATE TABLE YJPHB_GZTH 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) + --AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') > @FSDate) + --AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd')< @FEDate) --ѯǰ۶ܶ SELECT @@ -91,7 +94,7 @@ TRUNCATE TABLE YJPHB_GZTH 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(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM SalesIDTable)) + AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy') >= @SixYearsAgoYear) AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy') <= @Year) AND A.FDocumentStatus = 'C' @@ -120,7 +123,7 @@ TRUNCATE TABLE YJPHB_GZTH -- 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(@FSaleOrgId = '' Or A.FSALEORGID IN(SELECT SalesID FROM SalesIDTable)) +-- 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' @@ -151,7 +154,7 @@ TRUNCATE TABLE YJPHB_GZTH -- INNER JOIN T_SEC_USER TU ON A.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(@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') @@ -163,14 +166,14 @@ TRUNCATE TABLE YJPHB_GZTH /*ʱһ汾ıԭΪ */ SELECT ROW_NUMBER() OVER(PARTITION BY FPKIDX ORDER BY AL.FCHANGEDATE DESC) AS 'rn', - AL.FID + 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(@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')) @@ -182,6 +185,37 @@ TRUNCATE TABLE YJPHB_GZTH 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' @@ -217,7 +251,7 @@ TRUNCATE TABLE YJPHB_GZTH --ǰʱ汾ı SELECT * FROM #TEMP4 UNION ALL - --ǰʱޱĶ + --ǰʱޱҺҲޱĶ SELECT A.FSALEORGID AS '֯FID', CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL. ELSE ACO. END AS '(SBU)', @@ -242,14 +276,53 @@ TRUNCATE TABLE YJPHB_GZTH 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(@FSaleOrgId = '' Or A.FSALEORGID IN(SELECT SalesID FROM SalesIDTable)) + 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*/ @@ -268,7 +341,7 @@ SUM(CAST(( 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(@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) @@ -305,7 +378,7 @@ SUM(CAST(( 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(@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) @@ -398,7 +471,7 @@ SUM(CAST(( --FROM T_AR_RECEIVEBILL A --INNER JOIN V_BD_SALESMAN_L O ON O.fid= A.FSALEERID --INNER JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO.=O.FNAME AND ISNULL(ACO.ϸ,'') != '' ---WHERE (@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM SalesIDTable)) +--WHERE (@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) SELECT t1.FSaleOrgId AS '֯FID', t3.FNAME AS 'Ա' @@ -410,7 +483,7 @@ FROM ZZZ_HeXiaoBook t1 INNER JOIN T_SAL_ORDER t2 ON t1.XiaoShouFid = t2.FID INNER JOIN V_BD_SALESMAN_L t3 ON t3.fid= t2.FSALERID INNER JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO.=t3.FNAME AND ISNULL(ACO.ϸ,'') != '' -WHERE (@FSaleOrgId = '' Or t1.FSaleOrgId IN (SELECT SalesID FROM SalesIDTable)) AND t1.ShoukuanType = 0 +WHERE (@FSaleOrgId = '' Or t1.FSaleOrgId IN (SELECT SalesID FROM #SalesIDTable)) AND t1.ShoukuanType = 0 --ѯ֯µտ˿ --SELECT @@ -423,7 +496,7 @@ WHERE (@FSaleOrgId = '' Or t1.FSaleOrgId IN (SELECT SalesID FROM SalesIDTable)) --FROM T_AR_REFUNDBILL A --INNER JOIN V_BD_SALESMAN_L B ON A.FSALEERID = B.fid --INNER JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO.=B.FNAME AND ISNULL(ACO.ϸ,'') != '' ---WHERE (@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM SalesIDTable)) +--WHERE (@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) SELECT t1.FSaleOrgId AS '֯FID', t3.FNAME AS 'Ա' @@ -435,7 +508,7 @@ FROM ZZZ_HeXiaoBook t1 INNER JOIN T_SAL_ORDER t2 ON t1.XiaoShouFid = t2.FID INNER JOIN V_BD_SALESMAN_L t3 ON t3.fid= t2.FSALERID INNER JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO.=t3.FNAME AND ISNULL(ACO.ϸ,'') != '' -WHERE (@FSaleOrgId = '' Or t1.FSaleOrgId IN (SELECT SalesID FROM SalesIDTable)) AND t1.ShoukuanType = 1 +WHERE (@FSaleOrgId = '' Or t1.FSaleOrgId IN (SELECT SalesID FROM #SalesIDTable)) AND t1.ShoukuanType = 1 --ŵۼƻؿ(ο۶ۼƺ) diff --git a/派诺报表SQL文件/应收对账单明细更新发票金额存储过程.sql b/派诺报表SQL文件/应收对账单明细更新发票金额存储过程.sql index 2df7b40..e203c0d 100644 --- a/派诺报表SQL文件/应收对账单明细更新发票金额存储过程.sql +++ b/派诺报表SQL文件/应收对账单明细更新发票金额存储过程.sql @@ -68,6 +68,7 @@ BEGIN --ON A.FID = B.XSDDFID AND A.FENTRYID = B.XSDDFENTRYID AND A.FSaleOrgId = B.FPJSZZ --WHERE B.FPLX = 'Ʊ' AND A.[ǷK3] = 0 + --ǿƱ UPDATE A SET PPBillingDate = B.FPRQ FROM YingShouZhanKuanMX_GZTH A @@ -80,6 +81,20 @@ INNER JOIN ( ON A.FID = B.XSDDFID AND A.FSaleOrgId = B.FPJSZZ WHERE B.FPLX = 'Ʊ' AND A.[ǷK3] = 0 +--׷K3Ʊ +UPDATE A +SET PPBillingDate = CASE ISNULL(A.PPBillingDate,'') WHEN '' THEN '' ELSE A.PPBillingDate + ',' END + B.FPRQ +FROM YingShouZhanKuanMX_GZTH A +INNER JOIN ( + SELECT ( + stuff((select ','+format(convert(date,Ʊ),'yyyy-MM-dd') from (select distinct Ʊ,ͬ,Ʊ from oldk3ICSale0802)b WHERE ͬ = A.ͬ AND Ʊ = '' FOR xml path('')),1,1,'')) FPRQ, + ͬ,Ʊ + FROM oldk3ICSale0802 A + WHERE Ʊ = '' + GROUP BY ͬ,Ʊ) B + ON A.CONTRACTNUMBER = B.ͬ +WHERE B.Ʊ = '' AND A.[ǷK3] = 0 + -- UPDATE A --SET ZPBillingDate = FORMAT(CONVERT(DATE, B.FPRQ), 'yyyy-MM-dd') --FROM YingShouZhanKuanMX_GZTH A @@ -87,6 +102,7 @@ WHERE B.FPLX = ' --ON A.FID = B.XSDDFID AND A.FENTRYID = B.XSDDFENTRYID AND A.FSaleOrgId = B.FPJSZZ -- WHERE B.FPLX = 'רƱ' AND A.[ǷK3] = 0 + --ǿרƱ UPDATE A SET ZPBillingDate = B.FPRQ FROM YingShouZhanKuanMX_GZTH A @@ -98,8 +114,20 @@ INNER JOIN ( GROUP BY XSDDFID,XSDDFENTRYID,FPJSZZ,FPLX) B ON A.FID = B.XSDDFID AND A.FSaleOrgId = B.FPJSZZ WHERE B.FPLX = 'רƱ' AND A.[ǷK3] = 0 - - + +--׷K3רƱ +UPDATE A +SET PPBillingDate = CASE ISNULL(A.PPBillingDate,'') WHEN '' THEN '' ELSE A.PPBillingDate + ',' END + B.FPRQ +FROM YingShouZhanKuanMX_GZTH A +INNER JOIN ( + SELECT ( + stuff((select ','+format(convert(date,Ʊ),'yyyy-MM-dd') from (select distinct Ʊ,ͬ,Ʊ from oldk3ICSale0802)b WHERE ͬ = A.ͬ AND Ʊ = 'ר' FOR xml path('')),1,1,'')) FPRQ, + ͬ,Ʊ + FROM oldk3ICSale0802 A + WHERE Ʊ = 'ר' + GROUP BY ͬ,Ʊ) B + ON A.CONTRACTNUMBER = B.ͬ +WHERE B.Ʊ = 'ר' AND A.[ǷK3] = 0 --UPDATE A --SET PPBillingAmount = B.KPJE @@ -181,7 +209,7 @@ WHERE B.FPLX = 'רƱ' AND A.[ --ѳǷѿƱǷǷƱǷֶ -- OrderAmount=0,PaymentAmount=0,ShippedDebt=0,InvoicedDebt=0,IsEnded = NULL ,OwedTickets= 0,BillingAmount=0 SELECT - FID, SUM(ShipmentsAmount) - AVG(PaymentAmount) 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))