This commit is contained in:
liqionghai
2025-07-08 16:42:01 +08:00
parent 8d9d9ed160
commit b6aee23267
3 changed files with 456 additions and 408 deletions

View File

@@ -95,13 +95,16 @@ namespace GZ_LTHReportForms.ReporyDDWFH
string FEndDate = (customFilter["F_EDate"] == null) ? string.Empty : Convert.ToDateTime(
customFilter["F_EDate"]).ToString("yyyy-MM-dd");
var FZZ = customFilter["F_YWZZ"] as DynamicObject;
//纸质合同号
string Fcontractnumber = customFilter["F_contractnumber"] == null ? string.Empty :
customFilter["F_contractnumber"].ToString();
string FSaleOrgId = "";
if (FZZ != null)
{
FSaleOrgId = FZZ["Id"].ToString();
}
string sql = String.Format(@"/*dialect*/
EXEC GZTH_DDWFHMXB '{0}','{1}','{2}'
EXEC GZTH_DDWFHMXB '{0}','{1}','{2}','{4}'
SELECT
ROW_NUMBER() OVER (ORDER BY [日期]) AS FIDENTITYID,
@@ -110,7 +113,7 @@ namespace GZ_LTHReportForms.ReporyDDWFH
FROM GZ_DDWFHMX_TH
WHERE [未发货数量] <> 0 AND [未发货数量] <> 0
ORDER BY [日期]
", FstartDate, FEndDate, FSaleOrgId, tableName);
", FstartDate, FEndDate, FSaleOrgId, tableName, Fcontractnumber);
DBUtils.Execute(this.Context, sql);
}
//设置报表合计列

View File

@@ -95,10 +95,10 @@ 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(year + "年销售目标-新"), SqlStorageType.SqlDecimal);
header.AddChild("本年达标率_不含往年订单变更_新", new LocaleValue(year + "年达标率(不含往年订单变更)-新"), SqlStorageType.SqlDecimal);
header.AddChild("本年销售目标-原", new LocaleValue(year + "年销售目标-原"), SqlStorageType.SqlDecimal);
header.AddChild("本年达标率_不含往年订单变更_原", new LocaleValue(year + "年达标率(不含往年订单变更)-原"), SqlStorageType.SqlDecimal);
header.AddChild("本年销售目标_新", new LocaleValue(year + "年销售目标-新"), SqlStorageType.SqlDecimal);
header.AddChild("本年达标率_不含往年订单变更_新", new LocaleValue(year + "年达标率(不含往年订单变更)-新"), SqlStorageType.Sqlvarchar);
header.AddChild("本年销售目标_原", new LocaleValue(year + "年销售目标-原"), SqlStorageType.SqlDecimal);
header.AddChild("本年达标率_不含往年订单变更_原", new LocaleValue(year + "年达标率(不含往年订单变更)-原"), SqlStorageType.Sqlvarchar);
header.AddChild("目标调整金额", new LocaleValue("目标调整金额"), SqlStorageType.SqlDecimal);
header.AddChild("年度销售额1", new LocaleValue((year - 1) + "年度销售额"), SqlStorageType.SqlDecimal);
header.AddChild("年度销售额2", new LocaleValue((year - 2) + "年度销售额"), SqlStorageType.SqlDecimal);

View File

@@ -1,4 +1,4 @@
CREATE PROCEDURE GZYJPHB_TH
ALTER PROCEDURE GZYJPHB_TH
@FSDate NVARCHAR(50),
@FEDate NVARCHAR(50),
@FSaleOrgId nvarchar(1000)
@@ -55,14 +55,16 @@ TRUNCATE TABLE YJPHB_GZTH
ACO.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = '̼<EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD>'
OR ACL.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = '̼<EFBFBD><EFBFBD><EFBFBD>ǿ<EFBFBD>'
OR C.FNAME IN ('<EFBFBD><EFBFBD>ŵ<EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>޹<EFBFBD>˾','<EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD>Ƽ<EFBFBD><EFBFBD><EFBFBD>չ<EFBFBD><EFBFBD><EFBFBD>޹<EFBFBD>˾')
OR (C.FCUSTID = 1150173 AND (ACO.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷ<EFBFBD>' OR ACL.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŷ<EFBFBD>'))
OR L.FNAME = '<EFBFBD><EFBFBD>ŵ<EFBFBD><EFBFBD>'
AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= @FSDate)
AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') <= @FEDate)
OR A.FID IN (110185,207800)
AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FDate,'yyyy-MM-dd') > @FSDate)
AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FDate,'yyyy-MM-dd')< @FEDate)
--<EFBFBD><EFBFBD>ѯ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ǰ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ܶ<EFBFBD>
SELECT
A.FSALEORGID AS '<EFBFBD><EFBFBD>֯FID',
FORMAT(A.FAPPROVEDATE,'yyyy') AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',
FORMAT(A.FDate,'yyyy') AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',
CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE ACO.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> END AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>(SBU)',
CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.<EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE ACO.<EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> END AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ',
CASE WHEN ISNULL(O.FNAME,'')='' THEN L.FNAME ELSE O.FNAME END AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա',
@@ -85,8 +87,8 @@ TRUNCATE TABLE YJPHB_GZTH
SELECT FID FROM #TEMP3
)
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 (ISNULL(@FSDate,'') = '' or FORMAT(A.FDate,'yyyy') >= @SixYearsAgoYear)
AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FDate,'yyyy') <= @Year)
AND A.FDocumentStatus = 'C'
AND A.FManualClose <> '1'
AND B.FManualRowClose <> '1'
@@ -117,8 +119,8 @@ TRUNCATE TABLE YJPHB_GZTH
SELECT FID FROM #TEMP3
)
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 (ISNULL(@FSDate,'') = '' or FORMAT(A.FDate,'yyyy-MM-dd') >= @FSDate)
AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FDate,'yyyy-MM-dd') <= @FEDate)
AND A.FDocumentStatus = 'C'
AND A.FManualClose <> '1'
AND B.FManualRowClose <> '1'
@@ -148,8 +150,8 @@ TRUNCATE TABLE YJPHB_GZTH
SELECT FID FROM #TEMP3
)
AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM SalesIDTable))
AND (ISNULL(@FSDate,'') = '' OR FORMAT(A.FApproveDate,'yyyy-MM-dd') <= @FSDate)
AND FORMAT(A.FDATE,'yyyy') != FORMAT(A.FChangeDate,'yyyy')
AND (ISNULL(@FSDate,'') = '' OR FORMAT(A.FDate,'yyyy-MM-dd') <= @FSDate)
AND FORMAT(A.FDATE,'yyyy') != FORMAT(A.FDate,'yyyy')
AND A.F_contractnumber NOT LIKE 'Z%'
AND A.FManualClose <> '1'
AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy'))
@@ -292,7 +294,7 @@ SELECT [
INSERT INTO YJPHB_GZTH([<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_SBU],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۼƻؿ<EFBFBD><EFBFBD><EFBFBD>])
SELECT [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_SBU],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա],[<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>] FROM #SKTEMP1 WHERE [<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֯FID] = '533896'
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۼƻؿ<EFBFBD><EFBFBD><EFBFBD>տ<EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ŵ<EFBFBD>ۼƻؿ<EFBFBD><EFBFBD><EFBFBD>տ<EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
INSERT INTO YJPHB_GZTH([<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_SBU],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۼƻؿ<EFBFBD><EFBFBD><EFBFBD>])
SELECT [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>_SBU],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ],[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա],[<EFBFBD>տ<EFBFBD><EFBFBD>˿<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>] FROM #SKTKTEMP1 WHERE [<5B><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>֯FID] = '533896'
@@ -406,5 +408,48 @@ UPDATE A
SET A.[<EFBFBD><EFBFBD>ְ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>] = CAST(ROUND((DATEDIFF(DAY, A.[<EFBFBD><EFBFBD>˾ʱ<EFBFBD><EFBFBD>], @FEDateDate) / 365.0), 1) AS DECIMAL(23,1))
FROM YJPHB_GZTH A
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>_<EFBFBD><EFBFBD>]<EFBFBD>ֶ<EFBFBD>
UPDATE A
SET A.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>_<EFBFBD><EFBFBD>] = B.FPERFORMANCETARGETS
FROM YJPHB_GZTH A
LEFT JOIN(SELECT ROW_NUMBER() OVER (PARTITION BY t3.FNAME ORDER BY F_MBBA_CREATEDATE_6OQ DESC) rn,t3.FNAME [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>],
YEAR(F_VRYF_DATE_83G) [<EFBFBD><EFBFBD>],t2.F_MBBA_CREATEDATE_6OQ [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>],FPERFORMANCETARGETS
FROM MBBA_t_Cust_Entry100003 t1
LEFT JOIN MBBA_t_Cust100002 t2 ON t1.FID = t2.FID
LEFT JOIN V_BD_SALESMAN_L t3 ON t1.FNAME = t3.FID
WHERE YEAR(F_VRYF_DATE_83G)= YEAR(@FSDate) AND t2.FDOCUMENTSTATUS = 'C'
) B ON A.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = B.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> AND B.rn = 1
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>]<EFBFBD>ֶ<EFBFBD>
UPDATE A
SET A.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>] = B.FPERFORMANCETARGETS
FROM YJPHB_GZTH A
LEFT JOIN(SELECT ROW_NUMBER() OVER (PARTITION BY t3.FNAME ORDER BY F_MBBA_CREATEDATE_6OQ ASC) rn,t3.FNAME [<EFBFBD><EFBFBD><EFBFBD><EFBFBD>],
YEAR(F_VRYF_DATE_83G) [<EFBFBD><EFBFBD>],t2.F_MBBA_CREATEDATE_6OQ [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>],FPERFORMANCETARGETS
FROM MBBA_t_Cust_Entry100003 t1
LEFT JOIN MBBA_t_Cust100002 t2 ON t1.FID = t2.FID
LEFT JOIN V_BD_SALESMAN_L t3 ON t1.FNAME = t3.FID
WHERE YEAR(F_VRYF_DATE_83G)= YEAR(@FSDate) AND t2.FDOCUMENTSTATUS = 'C'
) B ON A.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = B.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> AND B.rn = 1
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD>]<EFBFBD>ֶ<EFBFBD>
UPDATE A
SET A.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD>] = CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>_<EFBFBD><EFBFBD>] = 0 OR [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>_<EFBFBD><EFBFBD>] IS NULL THEN '0%' ELSE CAST(CAST(ISNULL([<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD>ҵ<EFBFBD><EFBFBD>],0)/([<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>_<EFBFBD><EFBFBD>]*10000)*100 AS INT) AS nvarchar(150))+'%' END
FROM YJPHB_GZTH A
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<EFBFBD>ֶ<EFBFBD>
UPDATE A
SET A.[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>_<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>] = CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>] = 0 OR [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>_<EFBFBD><EFBFBD>] IS NULL THEN '0%' ELSE CAST(CAST(ISNULL([<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ۼ<EFBFBD>ҵ<EFBFBD><EFBFBD>],0)/([<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>]*10000)*100 AS INT) AS nvarchar(150))+'%' END
FROM YJPHB_GZTH A
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD>[Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<EFBFBD>ֶ<EFBFBD>
UPDATE A
SET A.[Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>] = ISNULL([<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>],0)-ISNULL([<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD>_<EFBFBD><EFBFBD>],0)
FROM YJPHB_GZTH A
DROP TABLE #TEMP1,#TEMP2,#TEMP3,#BGTEMP1,#YGTEMP1,#DateTEMP3,#SKTEMP1,#SKTKTEMP1,#SixYearEMP1
END;