This commit is contained in:
liqionghai 2025-08-25 18:44:53 +08:00
parent c4edc5a0e0
commit 6480727e0d
7 changed files with 512 additions and 335 deletions

View File

@ -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"))) 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")) SKRQE = str(customFiler["F_EDate"].ToString("yyyy-MM-dd"))
if customFiler["F_contractnumber"] != None and customFiler["F_contractnumber"].ToString() != "": 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() != "": if customFiler["F_Currency"] != None and customFiler["F_Currency"].ToString() != "":
strFilter += " AND (币别 = '{0}' OR 分组 IN (3,4) OR '{0}' = '0')".format(BB) strFilter += " AND (币别 = '{0}' OR 分组 IN (3,4) OR '{0}' = '0')".format(BB)
if ZKTSHX: if ZKTSHX:
@ -145,6 +145,10 @@ def BuilderReportSqlAndTempTable(Filter,tableName):
strFilter += " AND 分组 NOT IN (3,4)" strFilter += " AND 分组 NOT IN (3,4)"
if SKDH != "": if SKDH != "":
strFilter += " AND ShouKuanBillNo = '{0}'".format(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*/ sql = String.format("""/*dialect*/

View File

@ -204,6 +204,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivableStatements
sql += string.Format(@" sql += string.Format(@"
SELECT SELECT
ROW_NUMBER() OVER (ORDER BY [FID],OrderAmount desc) AS FIDENTITYID, ROW_NUMBER() OVER (ORDER BY [FID],OrderAmount desc) AS FIDENTITYID,
DENSE_RANK() OVER (ORDER BY [FID] ) AS OUTPUTNUMBER,
* *
INTO {0} INTO {0}
FROM YingShouZhanKuanMX_GZTH FROM YingShouZhanKuanMX_GZTH

View File

@ -223,7 +223,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivable
//将新创建或获取的单元格的值修改 //将新创建或获取的单元格的值修改
cell22.SetCellValue(""); cell22.SetCellValue("");
var YFHpriceSumZW = ToChineseNumber(YFHpriceSum, Context); var YFHpriceSumZW = ToChineseNumber(YFHpriceSum, Context);
cell3.SetCellValue("贵公司截至 " + fDate + " 共欠我公司货款金额为:" + YFHpriceSum + "元【等于已发货欠款总额】(大写:"+ YFHpriceSumZW + ""); cell3.SetCellValue("贵公司截至 " + fDate + " 共欠我公司货款金额为:" + YFHpriceSum + "元(大写:"+ YFHpriceSumZW + "");
//将新创建或获取的单元格的值修改 //将新创建或获取的单元格的值修改
cell.SetCellValue("尊敬的 " + fClient + " 客户您好,我公司已根据合同/订单的要求向贵公司交付相关产品并请验收确认,鉴于我公司对贵公司已通知发货部分的交付义务已完成,"); cell.SetCellValue("尊敬的 " + fClient + " 客户您好,我公司已根据合同/订单的要求向贵公司交付相关产品并请验收确认,鉴于我公司对贵公司已通知发货部分的交付义务已完成,");
cell2.SetCellValue(fClient); cell2.SetCellValue(fClient);
@ -267,16 +267,24 @@ namespace Pilot.Report.Exploitation.AccountsReceivable
//将合计行放到最下方 //将合计行放到最下方
IRow rowi = sheet.CreateRow(j + i); 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() == "合计") if (list[i]["Number"].ToString() == "合计")
{ {
rowi = sheet.CreateRow(j + list.Count-2); c1.SetCellValue(list[i]["Number"].ToString());
j = 12;
} }
else
ICell c1 = rowi.CreateCell(0); c1.SetCellValue(list[i]["Number"].ToString()); c1.CellStyle = cellStyle; {
c1.SetCellValue(list[i]["OUTPUTNUMBER"].ToString());
}
c1.CellStyle = cellStyle;
ICell c2 = rowi.CreateCell(1); c2.SetCellValue(""+date+""); c2.CellStyle = cellStyle2; 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 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 c5 = rowi.CreateCell(4); c5.SetCellValue(list[i]["SizeModel"].ToString()); c5.CellStyle = cellStyle2;
ICell c6 = rowi.CreateCell(5); c6.SetCellValue(""); c6.CellStyle = cellStyle; //数量 ICell c6 = rowi.CreateCell(5); c6.SetCellValue(""); c6.CellStyle = cellStyle; //数量
@ -381,6 +389,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivable
if (GroupCount > 1 || k == 0) if (GroupCount > 1 || k == 0)
{ {
// 创建CellRangeAddress对象 // 创建CellRangeAddress对象
CellRangeAddress cellRangeAddress0 = new CellRangeAddress(GroupIndex, j + i - k, 0, 0);
CellRangeAddress cellRangeAddress = new CellRangeAddress(GroupIndex, j + i - k, 1, 1); CellRangeAddress cellRangeAddress = new CellRangeAddress(GroupIndex, j + i - k, 1, 1);
CellRangeAddress cellRangeAddress2 = new CellRangeAddress(GroupIndex, j + i - k, 2, 2); CellRangeAddress cellRangeAddress2 = new CellRangeAddress(GroupIndex, j + i - k, 2, 2);
CellRangeAddress cellRangeAddress3 = new CellRangeAddress(GroupIndex, j + i - k, 3, 3); 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 cellRangeAddress8 = new CellRangeAddress(GroupIndex, j + i - k, 8, 8);
CellRangeAddress cellRangeAddress9 = new CellRangeAddress(GroupIndex, j + i - k, 9, 9); 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 cellRangeAddress15 = new CellRangeAddress(GroupIndex, j + i - k, 15, 15);
CellRangeAddress cellRangeAddress16 = new CellRangeAddress(GroupIndex, j + i - k, 16, 16); CellRangeAddress cellRangeAddress16 = new CellRangeAddress(GroupIndex, j + i - k, 16, 16);
CellRangeAddress cellRangeAddress17 = new CellRangeAddress(GroupIndex, j + i - k, 17, 17); 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 cellRangeAddress19 = new CellRangeAddress(GroupIndex, j + i - k, 19, 19);
CellRangeAddress cellRangeAddress20 = new CellRangeAddress(GroupIndex, j + i - k, 20, 20); CellRangeAddress cellRangeAddress20 = new CellRangeAddress(GroupIndex, j + i - k, 20, 20);
CellRangeAddress cellRangeAddress21 = new CellRangeAddress(GroupIndex, j + i - k, 21, 21); 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, cellRangeAddress);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress2); RemoveOverlappingMergedRegions(sheet, cellRangeAddress2);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress3); RemoveOverlappingMergedRegions(sheet, cellRangeAddress3);
@ -404,6 +419,10 @@ namespace Pilot.Report.Exploitation.AccountsReceivable
RemoveOverlappingMergedRegions(sheet, cellRangeAddress8); RemoveOverlappingMergedRegions(sheet, cellRangeAddress8);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress9); RemoveOverlappingMergedRegions(sheet, cellRangeAddress9);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress11);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress12);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress14);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress15); RemoveOverlappingMergedRegions(sheet, cellRangeAddress15);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress16); RemoveOverlappingMergedRegions(sheet, cellRangeAddress16);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress17); RemoveOverlappingMergedRegions(sheet, cellRangeAddress17);
@ -411,8 +430,10 @@ namespace Pilot.Report.Exploitation.AccountsReceivable
RemoveOverlappingMergedRegions(sheet, cellRangeAddress19); RemoveOverlappingMergedRegions(sheet, cellRangeAddress19);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress20); RemoveOverlappingMergedRegions(sheet, cellRangeAddress20);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress21); RemoveOverlappingMergedRegions(sheet, cellRangeAddress21);
RemoveOverlappingMergedRegions(sheet, cellRangeAddress22);
// 合并单元格 // 合并单元格
sheet.AddMergedRegion(cellRangeAddress0);
sheet.AddMergedRegion(cellRangeAddress); sheet.AddMergedRegion(cellRangeAddress);
sheet.AddMergedRegion(cellRangeAddress2); sheet.AddMergedRegion(cellRangeAddress2);
sheet.AddMergedRegion(cellRangeAddress3); sheet.AddMergedRegion(cellRangeAddress3);
@ -420,6 +441,10 @@ namespace Pilot.Report.Exploitation.AccountsReceivable
sheet.AddMergedRegion(cellRangeAddress8); sheet.AddMergedRegion(cellRangeAddress8);
sheet.AddMergedRegion(cellRangeAddress9); sheet.AddMergedRegion(cellRangeAddress9);
sheet.AddMergedRegion(cellRangeAddress11);
sheet.AddMergedRegion(cellRangeAddress12);
sheet.AddMergedRegion(cellRangeAddress14);
sheet.AddMergedRegion(cellRangeAddress15); sheet.AddMergedRegion(cellRangeAddress15);
sheet.AddMergedRegion(cellRangeAddress16); sheet.AddMergedRegion(cellRangeAddress16);
sheet.AddMergedRegion(cellRangeAddress17); sheet.AddMergedRegion(cellRangeAddress17);
@ -427,6 +452,7 @@ namespace Pilot.Report.Exploitation.AccountsReceivable
sheet.AddMergedRegion(cellRangeAddress19); sheet.AddMergedRegion(cellRangeAddress19);
sheet.AddMergedRegion(cellRangeAddress20); sheet.AddMergedRegion(cellRangeAddress20);
sheet.AddMergedRegion(cellRangeAddress21); sheet.AddMergedRegion(cellRangeAddress21);
sheet.AddMergedRegion(cellRangeAddress22);
} }
GroupCONTRACTNUMBER = list[i]["CONTRACTNUMBER"].ToString(); GroupCONTRACTNUMBER = list[i]["CONTRACTNUMBER"].ToString();
GroupIndex = j + i; GroupIndex = j + i;

View File

@ -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);
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("华夏云联累计回款额"), 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.Sqlvarchar); header.AddChild("本年达标率_不含往年订单变更_新", new LocaleValue(year + "年达标率(不含往年订单变更)-新"), SqlStorageType.Sqlvarchar);
header.AddChild("本年销售目标_原", new LocaleValue(year + "年销售目标-原"), SqlStorageType.SqlDecimal); header.AddChild("本年销售目标_原", new LocaleValue(year + "年销售目标-原"), SqlStorageType.SqlDecimal);

View File

@ -11,35 +11,19 @@ DECLARE @SixYearsAgoYear INT;
DECLARE @FEDateDate DATE = CAST(@FEDate AS DATE); 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 @Year = YEAR(@FSDate) - 1;
-- 计算六年前的年份 -- 计算六年前的年份
SET @SixYearsAgoYear = @Year - 6; 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' SElECT FID AS 'SalesID'
INTO #SalesIDTable INTO #SalesIDTable
FROM fn_StrSplit(@FSaleOrgId,',') FROM fn_StrSplit(@FSaleOrgId,',')
@ -47,30 +31,55 @@ SET @SixYearsAgoYear = @Year - 6;
-- --
TRUNCATE TABLE YJPHB_GZTH TRUNCATE TABLE YJPHB_GZTH
-- ----
SELECT A.FID AS FID -- SELECT A.FID AS FID
INTO #TEMP3 -- INTO #TEMP3
FROM T_SAL_ORDER A -- 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_L C ON C.FCUSTID= A.FCUSTID AND C.FLOCALEID= 2052
INNER JOIN T_BD_CUSTOMER D ON C.FCUSTID= D.FCUSTID -- 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 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_PerformanceSharing M ON M.FSOURCEBILLNO = A.FBILLNO AND M.FDOCUMENTSTATUS = 'C'
left JOIN T_PerformanceSharingEntry N ON N.FID=M.FID -- left JOIN T_PerformanceSharingEntry N ON N.FID=M.FID
LEFT JOIN V_BD_SALESMAN_L O ON O.fid= N.FSALEID -- 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 ACO ON ACO.名称=O.FNAME
LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=L.FNAME -- LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.名称=L.FNAME
WHERE 1=1 -- WHERE 1=1
--AND A.FSALEORGID = 100302 -- --AND A.FSALEORGID = 100302
AND (ACO. = '碳索智控' -- AND (ACO.区域 = '碳索智控'
OR ACL. = '碳索智控' -- OR ACL.区域 = '碳索智控'
OR C.FNAME IN ('派诺科技(香港)有限公司','武汉派诺科技发展有限公司','客户-样机使用' -- OR C.FNAME IN ('派诺科技(香港)有限公司','武汉派诺科技发展有限公司','客户-样机使用'
,'珠海华夏云联技术有限公司','珠海兴诺能源技术有限公司','广东碳索智控科技有限公司','广东诺瓦数能科技有限公司') -- ,'珠海华夏云联技术有限公司','珠海兴诺能源技术有限公司','广东碳索智控科技有限公司','广东诺瓦数能科技有限公司')
OR (C.FCUSTID = 1150173 AND (ACO. = '决策团队' OR ACL. = '决策团队')) -- OR (C.FCUSTID = 1150173 AND (ACO.区域 = '决策团队' OR ACL.区域 = '决策团队'))
OR L.FNAME = '兴诺总' -- OR L.FNAME = '兴诺总'
OR A.FID IN (110185,207800) -- OR A.FID IN (110185,207800)
OR D.F_correlation = 1) -- OR D.F_correlation = 1)
--AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') > @FSDate) -- --AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') > @FSDate)
--AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd')< @FEDate) -- --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 SELECT
@ -101,16 +110,108 @@ TRUNCATE TABLE YJPHB_GZTH
AND A.FManualClose <> '1' AND A.FManualClose <> '1'
AND B.FManualRowClose <> '1' AND B.FManualRowClose <> '1'
AND A.F_contractnumber NOT LIKE 'Z%' AND A.F_contractnumber NOT LIKE 'Z%'
---- /*2025-08-23 逻辑调整为跟绩效看板一致,原逻辑取消*/
-- SELECT --/*时间段内最后一个版本的变更单,且原单为今年审核 */
-- 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', -- 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 '部门(SBU)',
-- CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.明细区域 ELSE ACO.明细区域 END AS '区域明细', -- 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 ISNULL(O.FNAME,'')='' THEN L.FNAME ELSE O.FNAME END AS '销售员',
-- CASE WHEN n.FSHARERATE IS NULL THEN ROUND(F.FALLAMOUNT_LC,10) -- CASE WHEN n.FSHARERATE IS NULL THEN CAST(ROUND(F.FALLAMOUNT_LC, 2) AS DECIMAL(20,10))
-- ELSE ROUND( F.FALLAMOUNT_LC * (n.FSHARERATE/100) ,10) END as '订单业绩' -- ELSE CAST(ROUND( F.FALLAMOUNT_LC * (n.FSHARERATE/100) ,2) AS DECIMAL(20,10)) END as '订单业绩'
-- INTO #TEMP1 -- --,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 --销售订单表头 -- FROM T_SAL_ORDER A --销售订单表头
-- INNER JOIN T_SAL_orderentry b on a.FID = B.FID --销售订单表体 -- 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_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 T_PerformanceSharingEntry N ON N.FID=M.FID
-- LEFT JOIN V_BD_SALESMAN_L O ON O.fid= N.FSALEID -- 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 ACO ON ACO.名称=O.FNAME AND ISNULL(ACO.明细区域,'') != ''
-- LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.名称=L.FNAME AND ISNULL(ACL.明细区域,'') != '' -- LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.名称=L.FNAME AND ISNULL(ACL.明细区域,'') != ''
-- WHERE 1=1 -- WHERE 1=1
-- AND A.FID NOT IN(SELECT FID FROM #TEMP3) -- 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(@FSaleOrgId = '' Or A.FSALEORGID IN(SELECT SalesID FROM #SalesIDTable))
-- AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= @FSDate) -- AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= @FSDate)
-- AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < @FEDate) -- AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < @FEDate)
-- AND A.FDocumentStatus = 'C' -- AND A.FDocumentStatus = 'C'
-- AND A.FManualClose <> '1' -- AND A.FManualClose <> '1'
-- AND B.FManualRowClose <> '1' -- AND B.FManualRowClose <> '1'
-- AND A.F_contractnumber NOT LIKE 'Z%' -- AND A.F_contractnumber NOT LIKE 'Z%'
-- --单前时间段内无变更后续有变更的订单
-- --查询全组织的订单变更金额 -- UNION ALL
-- SELECT -- SELECT
-- A.FSaleOrgId AS '组织FID' -- 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 '部门(SBU)'
-- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.明细区域 ELSE ACO.明细区域 END AS '区域明细' -- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.明细区域 ELSE ACO.明细区域 END AS '区域明细'
-- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN XS_L.FNAME -- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN XS_L.FNAME
-- ELSE O.FNAME END AS '销售员' -- ELSE O.FNAME END AS '销售员'
-- ,CAST(AN.FBillAllAmount_LC - A.F_Amountstar AS DECIMAL(20, 10)) AS '变更金额' -- ,CASE WHEN n.FSHARERATE IS NULL THEN CAST(ROUND(AN.变更后金额-AN.变更金额, 2) AS DECIMAL(20,10))
-- ,A.F_CONTRACTNUMBER as '纸质合同号' -- ELSE CAST(ROUND((AN.变更后金额-AN.变更金额) * (n.FSHARERATE/100),2) AS DECIMAL(20, 10)) END AS '订单业绩'
-- ,A.fbillno as '销售订单号' -- --,CAST(AN.FBillAllAmount_LC AS DECIMAL(20, 10)) AS '订单业绩'
-- INTO #BGTEMP1 -- ,A.F_CONTRACTNUMBER AS '纸质合同号'
-- FROM T_SAL_ORDER A -- ,A.fbillno AS '销售订单号'
-- LEFT JOIN T_SAL_ORDERFIN AN ON A.FID = AN.FID --关联销售订单财务明细,获取变更后合同金额 -- ,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 XS ON XS.fid = A.FSalerId
-- LEFT JOIN V_BD_SALESMAN_L XS_L ON XS_L.fid = XS.fid --关联销售员数据模型,获取销售员名称 -- 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_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 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 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.明细区域,'') != '' -- 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 -- WHERE 1=1
-- AND A.FID NOT IN(SELECT FID FROM #TEMP3) -- AND AL.FPKIDX NOT IN(SELECT FID FROM #TEMP3)
-- AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) -- AND AL.FPKIDX NOT IN(SELECT FPKIDX FROM #TEMP5)
-- AND (ISNULL(@FSDate,'') = '' OR FORMAT(A.FCHANGEDATE,'yyyy-MM-dd') >= @FSDate) -- AND AL.FID IN(SELECT FID FROM #TEMP6)
-- AND (ISNULL(@FSDate,'') = '' OR FORMAT(A.FCHANGEDATE,'yyyy-MM-dd') < @FEDate) -- AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable))
-- --AND FORMAT(A.FDATE,'yyyy') != FORMAT(A.FCHANGEDATE,'yyyy') -- AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01'))
-- AND A.F_contractnumber NOT LIKE 'Z%' -- AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= @FSDate)
-- AND A.FManualClose <> '1' -- 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 (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
/*时间段内最后一个版本的变更单,且原单为今年审核 */
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 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
SELECT ROW_NUMBER() OVER(PARTITION BY AL.FPKIDX ORDER BY AL.FCHANGEDATE ASC) AS 'rn', -- A.FSaleOrgId AS '组织FID'
AL.FPKIDX,AL.FID, -- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.区域 ELSE ACO.区域 END AS '部门(SBU)'
SUM(CAST(( -- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL.明细区域 ELSE ACO.明细区域 END AS '区域明细'
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) -- ,CASE WHEN ISNULL(O.FNAME,'')='' THEN XS_L.FNAME
+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) -- ELSE O.FNAME END AS '销售员'
-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) -- ,CASE WHEN n.FSHARERATE IS NULL THEN ROUND(AN.变更金额,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 '变更金额' , -- ELSE CAST(AN.变更金额 * (n.FSHARERATE/100) AS DECIMAL(10, 2)) END AS '变更金额'
AN.FBillAllAmount_LC AS '变更后金额' -- ,A.F_CONTRACTNUMBER as '纸质合同号'
INTO #TEMP6 -- ,A.fbillno as '销售订单号'
FROM T_SAL_XORDER AL -- ,A.FID as '销售订单FID'
INNER JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX -- ,AL.FBILLNO AS '变更单号'
INNER JOIN T_SAL_XORDERFIN AN ON AN.FID = AL.FID -- -- INTO #BGTEMP1
INNER JOIN T_SAL_XORDERENTRY AM ON AM.FID = AL.FID -- FROM T_SAL_XORDER AL
INNER JOIN T_SAL_XORDERENTRY_F AB ON AB.FENTRYID = AM.FENTRYID -- --LEFT JOIN T_SAL_ORDERFIN AN ON A.FID = AN.FID --关联销售订单财务明细,获取变更后合同金额
INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- 用户单关联表体,获取变更人人 -- LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX
WHERE 1=1 -- LEFT JOIN #TEMPCHANGEFIN AN ON AL.FID = AN.FID
AND A.FID NOT IN(SELECT FID FROM #TEMP3) -- LEFT JOIN V_BD_SALESMAN XS ON XS.fid = A.FSalerId
AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) -- LEFT JOIN V_BD_SALESMAN_L XS_L ON XS_L.fid = XS.fid --关联销售员数据模型,获取销售员名称
AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= @FEDate) -- left JOIN T_PerformanceSharing M ON M.FSOURCEBILLNO = A.FBILLNO AND M.FDOCUMENTSTATUS = 'C'
AND (ISNULL(@FSDate,'') = '' OR FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) -- left JOIN T_PerformanceSharingEntry N ON N.FID=M.FID --关联业绩分摊单,获取分摊比例
AND (ISNULL(@FEDate,'') = '' OR FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < @FEDate) -- LEFT JOIN V_BD_SALESMAN_L O ON O.fid= N.FSALEID --获取业绩分摊单的销售员,关联销售员表
AND A.F_contractnumber NOT LIKE 'Z%' -- LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO.名称=O.FNAME AND ISNULL(ACO.明细区域,'') != ''
AND A.FManualClose <> '1' -- LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.名称=XS_L.FNAME AND ISNULL(ACL.明细区域,'') != ''
AND AL.FDOCUMENTSTATUS = 'C' -- INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- 用户单关联表体,获取变更人人
AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) -- WHERE 1=1
AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' -- AND A.FID NOT IN(SELECT FID FROM #TEMP3)
GROUP BY AL.FID,AL.FPKIDX,AL.FCHANGEDATE,AN.FBillAllAmount_LC -- 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
-- /*2025-08-23 逻辑调整为跟绩效看板一致*/
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 '区域明细' SELECT
,CASE WHEN ISNULL(O.FNAME,'')='' THEN XS_L.FNAME MAX(t1.FID) ChangeOrderId, -- 变更单ID
ELSE O.FNAME END AS '销售员' t1.FPKIDX
,CASE WHEN n.FSHARERATE IS NULL THEN CAST(ROUND(AN.FBillAllAmount_LC, 2) AS DECIMAL(20,10)) INTO #ThisYearChange
ELSE CAST(ROUND(AN.FBillAllAmount_LC * (n.FSHARERATE/100),2) AS DECIMAL(20, 10)) END AS '订单业绩' FROM
--,CAST(AN.FBillAllAmount_LC AS DECIMAL(20, 10)) AS '订单业绩' T_SAL_XORDER t1
,A.F_CONTRACTNUMBER AS '纸质合同号' INNER JOIN T_SAL_XORDERFIN t1fin ON t1.FID = t1fin.FID
,A.fbillno AS '销售订单号' WHERE
,AL.FPKIDX AS '销售订单FID' 1 = 1
INTO #TEMP4 AND t1fin.FISACTIVE = 'B'
FROM T_SAL_XORDER AL AND(@FSaleOrgId = '' Or t1.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable))
--LEFT JOIN T_SAL_ORDERFIN AN ON A.FID = AN.FID -- AND t1fin.FACTIVEDATE >= @FStartDate
LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX AND t1fin.FACTIVEDATE <= @FEndDate
LEFT JOIN T_SAL_XORDERFIN AN ON AN.FID = AL.FID -- GROUP BY
LEFT JOIN V_BD_SALESMAN XS ON XS.fid = A.FSalerId t1.FPKIDX;
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 -- SELECT
LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO.=O.FNAME AND ISNULL(ACO.,'') != '' MAX(t1.FID) ChangeOrderId, -- 变更单ID
LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=XS_L.FNAME AND ISNULL(ACL.,'') != '' t1.FPKIDX
INNER JOIN T_SEC_USER TU ON A.FChangerId = TU.FUSERID -- 用户单关联表体,获取变更人人 INTO #LastYearChange
WHERE 1=1 FROM
AND AL.FDOCUMENTSTATUS = 'C' T_SAL_XORDER t1
AND AL.FID IN (SELECT FID FROM #TEMP5) 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
/*当年截至结束日期累记变更差额*/ ---- 本次查询需要排除的销售订单
SELECT AL.FID, --SELECT A.FID AS 'FID'--,a.FSALERID,
SUM(CAST(( --INTO #TEMP3
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) --FROM T_SAL_ORDER A --
+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) --INNER JOIN T_ORG_ORGANIZATIONS_L B ON A.FSALEORGID=B.FORGID --
-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) --INNER join T_BD_CUSTOMER CC on a.FCUSTID = cc.FCUSTID
-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 '变更金额' --INNER JOIN T_BD_CUSTOMER_L C ON C.FCUSTID = A.FCUSTID AND C.FLOCALEID = 2052 --
INTO #TEMPCHANGEFIN --LEFT JOIN V_BD_SALESMAN_L L ON L.fid = A.FSALERID
FROM T_SAL_XORDER AL --LEFT JOIN T_PerformanceSharing M ON M.FSOURCEBILLNO = A.FBILLNO AND M.FDOCUMENTSTATUS = 'C' --
LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX --LEFT JOIN T_PerformanceSharingEntry N ON N.FID = M.FID --
LEFT JOIN T_SAL_XORDERFIN AN ON AN.FID = AL.FID -- --LEFT JOIN V_BD_SALESMAN_L O ON O.fid = N.FSALEID
LEFT JOIN T_SAL_XORDERENTRY AM ON AM.FID = AL.FID --LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO. = O.FNAME --
LEFT JOIN T_SAL_XORDERENTRY_F AB ON AB.FENTRYID = AM.FENTRYID --LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL. = L.FNAME --
INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- 用户单关联表体,获取变更人人 --WHERE A.FSALEORGID = 100302 -- 销售组织=珠海派诺
WHERE 1=1 -- AND (
AND A.FID NOT IN(SELECT FID FROM #TEMP3) -- ACO.区域 = '碳索智控'
AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) -- OR ACL.区域 = '碳索智控'
AND (ISNULL(@FSDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) -- OR C.FNAME IN ('派诺科技(香港有限公司)', '武汉派诺科技发展有限公司')
AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) -- OR (C.FCUSTID = 1150173 AND (ACO.区域 = '决策团队' OR ACL.区域 = '决策团队')) --1150173对应的是珠海兴诺能源技术有限公司
AND (ISNULL(@FEDate,'') = '' or FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') < @FEDate) -- OR L.FNAME = '兴诺总'
AND A.FManualClose <> '1' -- OR A.FID IN (110185, 207800) -- 样机订单
AND AL.FDOCUMENTSTATUS = 'C' -- )
AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) -- OR cc.F_correlation = '1'
AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909'
GROUP BY AL.FID
SELECT --()
A.FSaleOrgId AS '组织FID' SELECT
,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL. ELSE ACO. END AS '部门(SBU)' A.FBILLNO,
,CASE WHEN ISNULL(O.FNAME,'')='' THEN ACL. ELSE ACO. END AS '区域明细' A.FSALEORGID AS '组织FID',
,CASE WHEN ISNULL(O.FNAME,'')='' THEN XS_L.FNAME CASE
ELSE O.FNAME END AS '销售员' WHEN ISNULL (O.FNAME, '') = '' THEN ACL.
,CASE WHEN n.FSHARERATE IS NULL THEN ROUND(AN.,2) ELSE ACO.
ELSE CAST(AN. * (n.FSHARERATE/100) AS DECIMAL(10, 2)) END AS '变更金额' END AS '部门(SBU)',
,A.F_CONTRACTNUMBER as '纸质合同号' CASE
,A.fbillno as '销售订单号' WHEN ISNULL (O.FNAME, '') = '' THEN ACL.
,A.FID as '销售订单FID' ELSE ACO.
,AL.FBILLNO AS '变更单号' END AS '区域明细',
INTO #BGTEMP1 CASE
FROM T_SAL_XORDER AL WHEN ISNULL (O.FNAME, '') = '' THEN L.FNAME
--LEFT JOIN T_SAL_ORDERFIN AN ON A.FID = AN.FID -- ELSE O.FNAME
LEFT JOIN T_SAL_ORDER A ON A.FID = AL.FPKIDX END AS '销售员',
LEFT JOIN #TEMPCHANGEFIN AN ON AL.FID = AN.FID CASE
LEFT JOIN V_BD_SALESMAN XS ON XS.fid = A.FSalerId WHEN n.FSHARERATE IS NULL THEN CASE
LEFT JOIN V_BD_SALESMAN_L XS_L ON XS_L.fid = XS.fid -- WHEN t1.ChangeOrderId IS NULL THEN ROUND(A.F_AMOUNTSTAR * HL., 10)
left JOIN T_PerformanceSharing M ON M.FSOURCEBILLNO = A.FBILLNO AND M.FDOCUMENTSTATUS = 'C' ELSE ROUND(t1fen.FBILLALLAMOUNT_LC * HL., 10)
left JOIN T_PerformanceSharingEntry N ON N.FID=M.FID -- END
LEFT JOIN V_BD_SALESMAN_L O ON O.fid= N.FSALEID -- ELSE CASE
LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO ON ACO.=O.FNAME AND ISNULL(ACO.,'') != '' WHEN t1.ChangeOrderId IS NULL THEN ROUND(A.F_AMOUNTSTAR * HL. * (n.FSHARERATE / 100), 10)
LEFT JOIN ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL ON ACL.=XS_L.FNAME AND ISNULL(ACL.,'') != '' ELSE ROUND(
INNER JOIN T_SEC_USER TU ON AL.FCHANGERID = TU.FUSERID -- 用户单关联表体,获取变更人人 t1fen.FBILLALLAMOUNT_LC * HL. * (n.FSHARERATE / 100),
WHERE 1=1 10
AND A.FID NOT IN(SELECT FID FROM #TEMP3) )
AND(@FSaleOrgId = '' Or A.FSALEORGID IN (SELECT SalesID FROM #SalesIDTable)) END
AND (ISNULL(@FEDate,'') = '' or FORMAT(A.FAPPROVEDATE,'yyyy-MM-dd') < FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) END AS '订单业绩'
AND (ISNULL(@FSDate,'') = '' OR FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') >= FORMAT(CAST(@FSDate AS DATE),'yyyy-01-01')) INTO #TEMP1
AND (ISNULL(@FEDate,'') = '' or FORMAT(AL.FCHANGEDATE,'yyyy-MM-dd') < @FEDate) FROM T_SAL_ORDER A --
AND A.FManualClose <> '1' INNER JOIn T_SAL_ORDERFIN A_FIN on A.FID = A_FIN.FID -- 表头财务信息
AND AL.FDOCUMENTSTATUS = 'C' INNER join ZZV_XiaoShouHuiLv HL on a.fid = HL.ID
AND (A.F_HSYJ <> '0' OR FORMAT(A.F_HSRQ,'yyyy') != FORMAT(A.FChangeDate,'yyyy')) LEFT JOIN #ThisYearChange t1 on t1.FPKIDX = A.FID -- 今年变更的销售订单新变更单
AND TU.FNAME NOT LIKE 'ERP%' AND TU.FNAME NOT LIKE '13570668909' 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 <DATEADD(DAY,1,@FEndDate)--
AND A.FDocumentStatus = 'C'
AND A.FManualClose <> '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],[],[],[_含往年订单变更]) 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],[],[],[_含往年订单变更]) INSERT INTO YJPHB_GZTH([_SBU],[],[],[_含往年订单变更])
@ -434,7 +557,11 @@ SUM(CAST((
--() --()
INSERT INTO YJPHB_GZTH([_SBU],[],[],[_含往年订单变更]) 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 --2024
INSERT INTO YJPHB_GZTH([_SBU],[],[],[1]) INSERT INTO YJPHB_GZTH([_SBU],[],[],[1])
@ -552,7 +679,14 @@ SELECT [
--退 --退
INSERT INTO YJPHB_GZTH([_SBU],[],[],[]) INSERT INTO YJPHB_GZTH([_SBU],[],[],[])
SELECT [_SBU],[],[],[退] FROM #SKTKTEMP1 WHERE [销售组织FID] = '533896' 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 FROM
( (
SELECT [_SBU],[],[], SELECT [_SBU],[],[],
SUM([_含往年订单变更]) AS '派诺业绩_含往年订单变更', SUM([_含往年订单变更])/10000 AS '派诺业绩_含往年订单变更',
SUM([_含往年订单变更]) AS '兴诺业绩_含往年订单变更', SUM([_含往年订单变更])/10000 AS '兴诺业绩_含往年订单变更',
SUM([_含往年订单变更]) AS '武汉派诺业绩_含往年订单变更', SUM([_含往年订单变更])/10000 AS '武汉派诺业绩_含往年订单变更',
SUM([广_含往年订单变更]) AS '广东碳索业绩_含往年订单变更', SUM([广_含往年订单变更])/10000 AS '广东碳索业绩_含往年订单变更',
SUM([_含往年订单变更]) AS '香港派诺业绩_含往年订单变更', SUM([_含往年订单变更])/10000 AS '香港派诺业绩_含往年订单变更',
SUM([_含往年订单变更]) AS '华夏云联业绩_含往年订单变更', SUM([_含往年订单变更])/10000 AS '华夏云联业绩_含往年订单变更',
SUM([]) AS '派诺累计回款额', SUM([_含往年订单变更])/10000 AS '诺瓦数能业绩_含往年订单变更',
SUM([]) AS '兴诺累计回款额', SUM([])/10000 AS '派诺累计回款额',
SUM([]) AS '武汉派诺累计回款额', SUM([])/10000 AS '兴诺累计回款额',
SUM([广]) AS '广东碳索累计回款额', SUM([])/10000 AS '武汉派诺累计回款额',
SUM([]) AS '香港派诺累计回款额', SUM([广])/10000 AS '广东碳索累计回款额',
SUM([]) AS '华夏云联累计回款额', SUM([])/10000 AS '香港派诺累计回款额',
SUM([1]) AS '年度销售额1', SUM([])/10000 AS '华夏云联累计回款额',
SUM([2]) AS '年度销售额2', SUM([])/10000 AS '诺瓦数能累计回款额',
SUM([3]) AS '年度销售额3', SUM([1])/10000 AS '年度销售额1',
SUM([4]) AS '年度销售额4', SUM([2])/10000 AS '年度销售额2',
SUM([5]) AS '年度销售额5', SUM([3])/10000 AS '年度销售额3',
SUM([6]) AS '年度销售额6' SUM([4])/10000 AS '年度销售额4',
SUM([5])/10000 AS '年度销售额5',
SUM([6])/10000 AS '年度销售额6'
FROM YJPHB_GZTH FROM YJPHB_GZTH
GROUP BY [_SBU],[],[] GROUP BY [_SBU],[],[]
) AS IDa ) AS IDa
@ -588,27 +724,29 @@ SELECT [
-- --
INSERT INTO YJPHB_GZTH([_SBU],[],[],[_含往年订单变更],[_含往年订单变更], INSERT INTO YJPHB_GZTH([_SBU],[],[],[_含往年订单变更],[_含往年订单变更],
[_含往年订单变更],[广_含往年订单变更],[_含往年订单变更],[_含往年订单变更] [_含往年订单变更],[广_含往年订单变更],[_含往年订单变更],[_含往年订单变更]
,[],[],[],[广],[],[] ,[_含往年订单变更]
,[],[],[],[广],[],[]
,[]
,[1],[2],[3],[4],[5],[6]) ,[1],[2],[3],[4],[5],[6])
SELECT * FROM #TEMP2 SELECT * FROM #TEMP2
-- --
update A update A
SET [] = B.[] SET [] = B.[]/10000
FROM YJPHB_GZTH A FROM YJPHB_GZTH A
INNER JOIN (SELECT [],SUM([]) AS '订单业绩' FROM #TEMP1 GROUP BY [销售员]) B ON A.[姓名] = B.[销售员] INNER JOIN (SELECT [],SUM([]) AS '订单业绩' FROM #TEMP1 GROUP BY [销售员]) B ON A.[姓名] = B.[销售员]
-- --
update A update A
SET [] = B.[] SET [] = B.[]/10000
FROM YJPHB_GZTH A FROM YJPHB_GZTH A
INNER JOIN (SELECT [],SUM([]) AS '变更金额' FROM #BGTEMP1 GROUP BY [销售员]) B ON A.[姓名] = B.[销售员] INNER JOIN (SELECT [],SUM([]) AS '变更金额' FROM #BGTEMP1 GROUP BY [销售员]) B ON A.[姓名] = B.[销售员]
---() ---()
UPDATE YJPHB_GZTH UPDATE YJPHB_GZTH
SET [_已进行集团业绩调整_含往年订单变更] = ISNULL([_含往年订单变更],0) + ISNULL([_含往年订单变更],0) + ISNULL([_含往年订单变更],0) SET [_已进行集团业绩调整_含往年订单变更] = ISNULL([_含往年订单变更],0) + ISNULL([_含往年订单变更],0) + ISNULL([_含往年订单变更],0)
+ISNULL([广_含往年订单变更],0) + ISNULL([_含往年订单变更],0) + ISNULL([_含往年订单变更],0); +ISNULL([广_含往年订单变更],0) + ISNULL([_含往年订单变更],0) + ISNULL([_含往年订单变更],0)+ ISNULL([_含往年订单变更],0);
-- --
UPDATE YJPHB_GZTH UPDATE YJPHB_GZTH
@ -713,5 +851,6 @@ SET A.[Ŀ
FROM YJPHB_GZTH 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; END;

View File

@ -117,7 +117,7 @@ WHERE B.FPLX = 'רƱ' AND A.[
--K3专票日期 --K3专票日期
UPDATE A 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 FROM YingShouZhanKuanMX_GZTH A
INNER JOIN ( INNER JOIN (
SELECT ( SELECT (
@ -210,7 +210,9 @@ WHERE B.
-- --
-- OrderAmount=0,PaymentAmount=0,ShippedDebt=0,InvoicedDebt=0,IsEnded = NULL ,OwedTickets= 0,BillingAmount=0 -- OrderAmount=0,PaymentAmount=0,ShippedDebt=0,InvoicedDebt=0,IsEnded = NULL ,OwedTickets= 0,BillingAmount=0
SELECT 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)) 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(BillingAmount,0))
AND (AVG(ISNULL(OrderAmount,0)) - SUM(ISNULL(ReturnAmount,0))) = AVG(ISNULL(PaymentAmount,0)) AND (AVG(ISNULL(OrderAmount,0)) - SUM(ISNULL(ReturnAmount,0))) = AVG(ISNULL(PaymentAmount,0))
@ -222,15 +224,17 @@ WHERE B.
WHERE A.[K3数据] = 0 WHERE A.[K3数据] = 0
GROUP BY FID GROUP BY FID
UPDATE A --UPDATE A
SET A.ShippedDebt = B.[],-- A.InvoicedDebt = B.[已开票欠款],--A.OwedTickets = B.[欠票], --SET A.ShippedDebt = B.[],-- A.InvoicedDebt = B.[已开票欠款],--A.OwedTickets = B.[欠票],
A.IsEnded = B.[] --A.IsEnded = B.[]
FROM YingShouZhanKuanMX_GZTH A --FROM YingShouZhanKuanMX_GZTH A
INNER JOIN #TEMP4 B ON A.FID = B.FID --INNER JOIN #TEMP4 B ON A.FID = B.FID
WHERE A.[K3数据] = 0 --WHERE A.[K3数据] = 0
--,
UPDATE A UPDATE A
SET A.InvoicedDebt = BillingAmount - PaymentAmount SET A.InvoicedDebt = BillingAmount - PaymentAmount
,ShippedDebt= ShipmentsAmount- PaymentAmount -ReturnAmount
FROM YingShouZhanKuanMX_GZTH A FROM YingShouZhanKuanMX_GZTH A
-- --
@ -275,6 +279,7 @@ WHERE B.
FROM YingShouZhanKuanMX_GZTH GROUP BY FID) B ON A.FID = B.FID FROM YingShouZhanKuanMX_GZTH GROUP BY FID) B ON A.FID = B.FID
WHERE A.[K3数据] = 0 AND A.row_num = 1 WHERE A.[K3数据] = 0 AND A.row_num = 1
DROP TABLE #TEMP3 DROP TABLE #TEMP3
DROP TABLE #TEMP4 DROP TABLE #TEMP4
DROP TABLE #TEMP5 DROP TABLE #TEMP5

View File

@ -105,7 +105,7 @@ BEGIN
,ROW_NUMBER() OVER(ORDER BY A.FID) AS NUMBER ,ROW_NUMBER() OVER(ORDER BY A.FID) AS NUMBER
FROM T_SAL_ORDER A FROM T_SAL_ORDER A
INNER JOIN ( INNER JOIN (
SELECT T1.FID,SUM(T1.FALLAMOUNT) FBillAllAmount SELECT T1.FID,SUM(T1.FALLAMOUNT_LC) FBillAllAmount
FROM T_SAL_ORDERENTRY_F T1 FROM T_SAL_ORDERENTRY_F T1
INNER JOIN T_SAL_ORDERENTRY T2 ON T1.FENTRYID = T2.FENTRYID AND T2.FRETURNTYPE <> 'RETURN' INNER JOIN T_SAL_ORDERENTRY T2 ON T1.FENTRYID = T2.FENTRYID AND T2.FRETURNTYPE <> 'RETURN'
GROUP BY T1.FID GROUP BY T1.FID
@ -251,7 +251,7 @@ INNER JOIN (
--K3发货日期 --K3发货日期
UPDATE A 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 FROM YingShouZhanKuanMX_GZTH A
INNER JOIN T_SAL_ORDERENTRY C ON A.FENTRYID = C.FENTRYID 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 '合并发货日期', INNER JOIN (SELECT ,STUFF((SELECT DISTINCT ','+ FROM oldk3seorder0701 WHERE = a. FOR XML PATH('')),1,1,'') AS '合并发货日期',