Compare commits
No commits in common. "768733881513301a82fc167ae6e0d9621a6054de" and "2c276299bedefdda462aceac37e4eed965b25be4" have entirely different histories.
7687338815
...
2c276299be
50
应收明细SQL.sql
50
应收明细SQL.sql
@ -23,7 +23,7 @@ BEGIN
|
|||||||
[项目验收时间],[质保金到期时间],[是否提前验收],[账龄月],[结算类别],[结算类型],[转专责小组时间],[是否超账龄转出],[超账龄是否申请归还大区],
|
[项目验收时间],[质保金到期时间],[是否提前验收],[账龄月],[结算类别],[结算类型],[转专责小组时间],[是否超账龄转出],[超账龄是否申请归还大区],
|
||||||
[反馈表商务人员引用],[反馈表引用分组],[取值销售],[是否坏账],[是否预发货],[是否集采项目],[合同类型],[是否已存在],[订单总额],[应收比例],[累计发货金额]
|
[反馈表商务人员引用],[反馈表引用分组],[取值销售],[是否坏账],[是否预发货],[是否集采项目],[合同类型],[是否已存在],[订单总额],[应收比例],[累计发货金额]
|
||||||
,[累计退货金额],[累计开票金额],[应收款合计],[未出货总额],[未到期金额],[到期时间],[到期金额],[实际已出货应收款合计],[项目阶段],[收款人],[累计到款金额],
|
,[累计退货金额],[累计开票金额],[应收款合计],[未出货总额],[未到期金额],[到期时间],[到期金额],[实际已出货应收款合计],[项目阶段],[收款人],[累计到款金额],
|
||||||
[1-6个月],[7-12个月],[13-18个月],[19个月以上],[1年以上],[账龄-阶段],[风险评估级别],[组织ID],[天数],[销售订单编号],[收款条件分摊金额],[收款条件分摊比例],[整单正数订单总额],[收款条件累计核销金额])
|
[1-6个月],[7-12个月],[13-18个月],[19个月以上],[1年以上],[账龄-阶段],[风险评估级别],[组织ID],[天数],[销售订单编号],[收款条件分摊金额],[收款条件分摊比例])
|
||||||
SELECT
|
SELECT
|
||||||
[销售单主键ID],[销售员ID],[收款条件主键ID],[收款条件],[F_RecConditionId],[整单订单总额],[销售员],[分摊比例],[分摊金额],[SBU]
|
[销售单主键ID],[销售员ID],[收款条件主键ID],[收款条件],[F_RecConditionId],[整单订单总额],[销售员],[分摊比例],[分摊金额],[SBU]
|
||||||
,[明细区域],[购货单位],[公司性质],[客户信用],[纸质合同号],[项目名称],[签订年份],[订单日期],[发货日期],[整单累计发货金额],[开票日期],
|
,[明细区域],[购货单位],[公司性质],[客户信用],[纸质合同号],[项目名称],[签订年份],[订单日期],[发货日期],[整单累计发货金额],[开票日期],
|
||||||
@ -31,8 +31,7 @@ SELECT
|
|||||||
[项目验收时间],[质保金到期时间],[是否提前验收],[账龄月],[结算类别],[结算类型],[转专责小组时间],[是否超账龄转出],[超账龄是否申请归还大区],
|
[项目验收时间],[质保金到期时间],[是否提前验收],[账龄月],[结算类别],[结算类型],[转专责小组时间],[是否超账龄转出],[超账龄是否申请归还大区],
|
||||||
[反馈表商务人员引用],[反馈表引用分组],[取值销售],[是否坏账],[是否预发货],[是否集采项目],[合同类型],[是否已存在],0 [订单总额],[应收比例], 0 [累计发货金额]
|
[反馈表商务人员引用],[反馈表引用分组],[取值销售],[是否坏账],[是否预发货],[是否集采项目],[合同类型],[是否已存在],0 [订单总额],[应收比例], 0 [累计发货金额]
|
||||||
,0 [累计退货金额],0 [累计开票金额],0 [应收款合计],0 [未出货总额],0 [未到期金额],NULL [到期时间],0 [到期金额],0 [实际已出货应收款合计],NULL [项目阶段],NULL [收款人],0 [累计到款金额],
|
,0 [累计退货金额],0 [累计开票金额],0 [应收款合计],0 [未出货总额],0 [未到期金额],NULL [到期时间],0 [到期金额],0 [实际已出货应收款合计],NULL [项目阶段],NULL [收款人],0 [累计到款金额],
|
||||||
NULL [1-6个月],NULL [7-12个月],NULL [13-18个月],NULL [19个月以上],NULL [1年以上],NULL [账龄-阶段],NULL [风险评估级别],[组织ID],[天数],[销售订单编号],[收款条件分摊金额],[收款条件分摊比例],[整单正数订单总额]
|
NULL [1-6个月],NULL [7-12个月],NULL [13-18个月],NULL [19个月以上],NULL [1年以上],NULL [账龄-阶段],NULL [风险评估级别],[组织ID],[天数],[销售订单编号],[收款条件分摊金额],[收款条件分摊比例]
|
||||||
,[收款条件累计核销金额]
|
|
||||||
FROM (
|
FROM (
|
||||||
SELECT A.FID [销售单主键ID]
|
SELECT A.FID [销售单主键ID]
|
||||||
,ISNULL(O.fid,l.fid) [销售员ID]
|
,ISNULL(O.fid,l.fid) [销售员ID]
|
||||||
@ -63,8 +62,7 @@ SELECT A.FID [
|
|||||||
SELECT SUM(B.FBillAllAmount_LC) AS '累计退货金额'
|
SELECT SUM(B.FBillAllAmount_LC) AS '累计退货金额'
|
||||||
FROM T_SAL_RETURNSTOCK AA WITH(NOLOCK)
|
FROM T_SAL_RETURNSTOCK AA WITH(NOLOCK)
|
||||||
INNER JOIN T_SAL_RETURNSTOCKFIN B WITH(NOLOCK) ON AA.FID =B.FID
|
INNER JOIN T_SAL_RETURNSTOCKFIN B WITH(NOLOCK) ON AA.FID =B.FID
|
||||||
WHERE AA.FDOCUMENTSTATUS= 'C' AND aa.FSALEORGID = a.FSALEORGID
|
WHERE AA.FDOCUMENTSTATUS= 'C' AND AA.F_contractnumber LIKE A.F_contractnumber+'%' ),0)
|
||||||
AND AA.F_contractnumber LIKE CONCAT(A.F_contractnumber, '-%') AND AA.F_contractnumber NOT LIKE CONCAT(A.F_contractnumber, '-%-%') ),0)
|
|
||||||
|
|
||||||
,[整单累计开票金额] =AD.发票总金额
|
,[整单累计开票金额] =AD.发票总金额
|
||||||
,[整单累计到款金额]=ISNULL(a.F_Amount,0)
|
,[整单累计到款金额]=ISNULL(a.F_Amount,0)
|
||||||
@ -147,15 +145,13 @@ SELECT A.FID [
|
|||||||
,A.FSALEORGID AS '组织ID'
|
,A.FSALEORGID AS '组织ID'
|
||||||
,W.F_DAY AS '天数'
|
,W.F_DAY AS '天数'
|
||||||
,a.FBILLNO [销售订单编号]
|
,a.FBILLNO [销售订单编号]
|
||||||
,[整单正数订单总额]=ISNULL((SELECT SUM(FAllAmount_LC) FROM T_SAL_ORDERENTRY_F aa WHERE aa.FID=a.FID AND aa.FAllAmount_LC>0),0)
|
|
||||||
,[收款条件累计核销金额]=w.F_MBBA_DECIMAL_UKY
|
|
||||||
-----------------from 表--------
|
-----------------from 表--------
|
||||||
|
|
||||||
FROM T_SAL_ORDER A WITH(NOLOCK)
|
FROM T_SAL_ORDER A WITH(NOLOCK)
|
||||||
LEFT JOIN (
|
LEFT JOIN (
|
||||||
SELECT DISTINCT x.FNAME +'--'+CONVERT(NVARCHAR(50), CONVERT(INT, w.F_DAY))+'天--'+CONVERT(NVARCHAR(50),CONVERT(DECIMAL(18,2), w.FRECADVANCERATE))+'%' AS FNAME
|
SELECT DISTINCT x.FNAME +'--'+CONVERT(NVARCHAR(50), CONVERT(INT, w.F_DAY))+'天--'+CONVERT(NVARCHAR(50),CONVERT(DECIMAL(18,2), w.FRECADVANCERATE))+'%' AS FNAME
|
||||||
,w.FID,w.F_PMSDate
|
,w.FID,w.F_PMSDate
|
||||||
,W.FRECADVANCEAMOUNT,w.F_DAY ,w.F_MBBA_DECIMAL_UKY
|
,W.FRECADVANCEAMOUNT,w.F_DAY
|
||||||
,w.FENTRYID, W.F_RecConditionId ,w.FRECADVANCERATE ,x.FNAME AS fname2
|
,w.FENTRYID, W.F_RecConditionId ,w.FRECADVANCERATE ,x.FNAME AS fname2
|
||||||
FROM T_SAL_ORDERPLAN w WITH(NOLOCK)
|
FROM T_SAL_ORDERPLAN w WITH(NOLOCK)
|
||||||
LEFT JOIN T_BD_RecCondition_L X ON X.FID = W.F_RecConditionId
|
LEFT JOIN T_BD_RecCondition_L X ON X.FID = W.F_RecConditionId
|
||||||
@ -230,7 +226,7 @@ GROUP BY F_PaperNumber, FSALEORGID
|
|||||||
--where [分摊比例]< 100
|
--where [分摊比例]< 100
|
||||||
--where [预计到期时间] !=''
|
--where [预计到期时间] !=''
|
||||||
WHERE [整单订单总额]<>0 AND SUBSTRING([纸质合同号],1,1) != 'Z'
|
WHERE [整单订单总额]<>0 AND SUBSTRING([纸质合同号],1,1) != 'Z'
|
||||||
ORDER BY A.[销售单主键ID],[销售员ID],[收款条件主键ID];
|
ORDER BY A.[销售单主键ID],[销售员ID];
|
||||||
|
|
||||||
|
|
||||||
UPDATE [ZRP_YingShouMingXi_yuyubo] SET [发货日期2]=ISNULL((SELECT STRING_AGG(CONVERT(NVARCHAR(10),SAL.FDATE,23)
|
UPDATE [ZRP_YingShouMingXi_yuyubo] SET [发货日期2]=ISNULL((SELECT STRING_AGG(CONVERT(NVARCHAR(10),SAL.FDATE,23)
|
||||||
@ -260,35 +256,31 @@ GROUP BY F_PaperNumber, FSALEORGID
|
|||||||
|
|
||||||
|
|
||||||
update [ZRP_YingShouMingXi_yuyubo] set
|
update [ZRP_YingShouMingXi_yuyubo] set
|
||||||
[订单总额]=[整单正数订单总额]*[分摊比例]*0.01,[累计发货金额]=[整单累计发货金额]*[分摊比例]*0.01
|
[订单总额]=[整单订单总额]*[分摊比例]*0.01,[累计发货金额]=[整单累计发货金额]*[分摊比例]*0.01
|
||||||
,[收款条件累计核销金额]=[收款条件累计核销金额]*[分摊比例]*0.01
|
|
||||||
,[累计退货金额]=[整单累计退货金额]*[分摊比例]*0.01
|
,[累计退货金额]=[整单累计退货金额]*[分摊比例]*0.01
|
||||||
,[累计开票金额]=[整单累计开票金额]*[分摊比例]*0.01
|
,[累计开票金额]=[整单累计开票金额]*[分摊比例]*0.01
|
||||||
,[累计到款金额]=[整单累计到款金额]*[分摊比例]*0.01
|
,[累计到款金额]=[整单累计到款金额]*[分摊比例]*0.01
|
||||||
|
,[应收款合计]=CASE WHEN [整单订单总额]>0 then ABS([分摊金额])-ABS(([整单累计退货金额]+[整单累计到款金额])*[分摊比例]*0.01) ELSE 0 end
|
||||||
UPDATE [ZRP_YingShouMingXi_yuyubo] set [分摊金额]=[订单总额];
|
,[未出货总额]=CASE WHEN [整单订单总额]>0 then ABS([分摊金额])-ABS([整单累计发货金额]*[分摊比例]*0.01)ELSE 0 end
|
||||||
UPDATE [ZRP_YingShouMingXi_yuyubo] set
|
|
||||||
[应收款合计]=CASE WHEN [整单正数订单总额]>0 then ABS([分摊金额])-ABS(([整单累计退货金额]+[整单累计到款金额])*[分摊比例]*0.01) ELSE 0 end
|
|
||||||
,[未出货总额]=CASE WHEN [整单正数订单总额]>0 then ABS([分摊金额])-ABS([整单累计发货金额]*[分摊比例]*0.01)ELSE 0 end
|
|
||||||
|
|
||||||
--,[到期时间]='2022-01-01'
|
--,[到期时间]='2022-01-01'
|
||||||
--,[到期时间]=CASE WHEN [预计到期时间] IS NOT NULL AND [预计到期时间] <= GETDATE() AND [预计到期时间] >'1990-01-01' AND [订单总额]>0 THEN [预计到期时间] ELSE NULL END
|
--,[到期时间]=CASE WHEN [预计到期时间] IS NOT NULL AND [预计到期时间] <= GETDATE() AND [预计到期时间] >'1990-01-01' AND [订单总额]>0 THEN [预计到期时间] ELSE NULL END
|
||||||
|
|
||||||
--,[到期金额]=CASE WHEN [预计到期时间] IS NOT NULL AND [预计到期时间] <= GETDATE() AND [预计到期时间] >'1990-01-01' AND [订单总额]>0 THEN([整单累计发货金额]-[整单累计退货金额]-[整单累计到款金额])*[分摊比例]*0.01*ISNULL([收款条件分摊比例],100)*0.01 ELSE 0 END
|
--,[到期金额]=CASE WHEN [预计到期时间] IS NOT NULL AND [预计到期时间] <= GETDATE() AND [预计到期时间] >'1990-01-01' AND [订单总额]>0 THEN([整单累计发货金额]-[整单累计退货金额]-[整单累计到款金额])*[分摊比例]*0.01*ISNULL([收款条件分摊比例],100)*0.01 ELSE 0 END
|
||||||
,[实际已出货应收款合计]=CASE WHEN [整单正数订单总额] >0 THEN ([整单累计发货金额]-[整单累计退货金额]- [整单累计到款金额] )*[分摊比例]*0.01 ELSE 0 end
|
,[实际已出货应收款合计]=CASE WHEN [整单订单总额]>0 THEN ([整单累计发货金额]-[整单累计退货金额]- [整单累计到款金额] )*[分摊比例]*0.01 ELSE 0 end
|
||||||
,[收款人]=CASE WHEN [账龄月]>12 THEN '转应收专责小组' ELSE [销售员] END
|
,[收款人]=CASE WHEN [账龄月]>12 THEN '转应收专责小组' ELSE [销售员] END
|
||||||
|
|
||||||
,[项目阶段]= CASE WHEN [项目验收时间]>='1990-01-01' AND [项目验收时间] IS NOT NULL THEN '验收完成'
|
,[项目阶段]= CASE WHEN [项目验收时间]>='1990-01-01' AND [项目验收时间] IS NOT NULL THEN '验收完成'
|
||||||
WHEN [项目调试时间]>='1990-01-01' AND [项目调试时间] IS NOT NULL THEN '调试完成'
|
WHEN [项目调试时间]>='1990-01-01' AND [项目调试时间] IS NOT NULL THEN '调试完成'
|
||||||
WHEN ISNULL([项目进度],'') <> '' THEN [项目进度] WHEN ISNULL([整单累计发货金额],0) = 0 THEN '未启动'
|
WHEN ISNULL([项目进度],'') <> '' THEN [项目进度] WHEN ISNULL([整单累计发货金额],0) = 0 THEN '未启动'
|
||||||
WHEN ISNULL( [整单累计发货金额],0) = ISNULL([整单正数订单总额],0) THEN '发货完成' WHEN ISNULL([整单正数订单总额],0) > ISNULL( [整单累计发货金额],0) THEN '发货中' END ;
|
WHEN ISNULL( [整单累计发货金额],0) = ISNULL([整单订单总额],0) THEN '发货完成' WHEN ISNULL([整单订单总额],0) > ISNULL( [整单累计发货金额],0) THEN '发货中' END ;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
update [ZRP_YingShouMingXi_yuyubo] set
|
update [ZRP_YingShouMingXi_yuyubo] set
|
||||||
[到期时间]=CASE WHEN [预计到期时间] IS NOT NULL AND [预计到期时间] <= GETDATE() AND [预计到期时间] >'1990-01-01' AND [订单总额]>0 THEN [预计到期时间] ELSE NULL END
|
[到期时间]=CASE WHEN [预计到期时间] IS NOT NULL AND [预计到期时间] <= GETDATE() AND [预计到期时间] >'1990-01-01' AND [订单总额]>0 THEN [预计到期时间] ELSE NULL END
|
||||||
,[到期金额]=CASE WHEN [预计到期时间] IS NOT NULL AND [预计到期时间] <= GETDATE() AND [预计到期时间] >'1990-01-01' AND [订单总额]>0
|
,[到期金额]=CASE WHEN [预计到期时间] IS NOT NULL AND [预计到期时间] <= GETDATE() AND [预计到期时间] >'1990-01-01' AND [订单总额]>0
|
||||||
THEN([整单累计发货金额]-[整单累计退货金额])*[分摊比例]*0.01-[收款条件累计核销金额] ELSE 0 END;
|
THEN([整单累计发货金额]-[整单累计退货金额]-[整单累计到款金额])*[分摊比例]*0.01*ISNULL([收款条件分摊比例],100)*0.01 ELSE 0 END;
|
||||||
|
|
||||||
--WHERE [销售单主键ID]=110181;
|
--WHERE [销售单主键ID]=110181;
|
||||||
|
|
||||||
@ -308,16 +300,15 @@ UPDATE [ZRP_YingShouMingXi_yuyubo] SET
|
|||||||
THEN '1-2年' WHEN [账龄月]>=25 AND [账龄月]<=36 THEN '2-3年' WHEN [账龄月]>=37 AND [账龄月]<=48 THEN '3-4年' WHEN [账龄月]>=49 THEN '5年以上' ELSE '' END
|
THEN '1-2年' WHEN [账龄月]>=25 AND [账龄月]<=36 THEN '2-3年' WHEN [账龄月]>=37 AND [账龄月]<=48 THEN '3-4年' WHEN [账龄月]>=49 THEN '5年以上' ELSE '' END
|
||||||
--,[风险评估级别]=CASE WHEN [账龄月]>=1 AND [账龄月]<=6 THEN '正常' WHEN [账龄月]>=7 AND [账龄月]<=12 THEN '催款函' WHEN [账龄月]>=13 AND [账龄月]<=18
|
--,[风险评估级别]=CASE WHEN [账龄月]>=1 AND [账龄月]<=6 THEN '正常' WHEN [账龄月]>=7 AND [账龄月]<=12 THEN '催款函' WHEN [账龄月]>=13 AND [账龄月]<=18
|
||||||
--THEN '律师' WHEN [账龄月]>=19 THEN '诉讼' ELSE '' END
|
--THEN '律师' WHEN [账龄月]>=19 THEN '诉讼' ELSE '' END
|
||||||
,[1-6个月]=CASE WHEN [账龄月]>=1 AND [账龄月]<=6 THEN [分摊金额]-([整单累计退货金额])*[分摊比例]*0.01-[收款条件累计核销金额] ELSE 0 END
|
,[1-6个月]=CASE WHEN [账龄月]>=1 AND [账龄月]<=6 THEN [分摊金额]-([整单累计退货金额]+[整单累计到款金额])*[分摊比例]*0.01 ELSE 0 END
|
||||||
,[7-12个月]=CASE WHEN [账龄月]>=7 AND [账龄月]<=12 THEN [分摊金额]-([整单累计退货金额])*[分摊比例]*0.01-[收款条件累计核销金额] ELSE 0 END
|
,[7-12个月]=CASE WHEN [账龄月]>=7 AND [账龄月]<=12 THEN [分摊金额]-([整单累计退货金额]+[整单累计到款金额])*[分摊比例]*0.01 ELSE 0 END
|
||||||
,[1-2年]=CASE WHEN [账龄月]>=13 AND [账龄月]<=24 THEN [分摊金额]-([整单累计退货金额])*[分摊比例]*0.01-[收款条件累计核销金额] ELSE 0 END
|
,[1-2年]=CASE WHEN [账龄月]>=13 AND [账龄月]<=24 THEN [分摊金额]-([整单累计退货金额]+[整单累计到款金额])*[分摊比例]*0.01 ELSE 0 END
|
||||||
,[2-3年]=CASE WHEN [账龄月]>=25 AND [账龄月]<=36 THEN [分摊金额]-([整单累计退货金额])*[分摊比例]*0.01-[收款条件累计核销金额] ELSE 0 END
|
,[2-3年]=CASE WHEN [账龄月]>=25 AND [账龄月]<=36 THEN [分摊金额]-([整单累计退货金额]+[整单累计到款金额])*[分摊比例]*0.01 ELSE 0 END
|
||||||
,[4-5年]=CASE WHEN [账龄月]>=37 AND [账龄月]<=60 THEN [分摊金额]-([整单累计退货金额])*[分摊比例]*0.01-[收款条件累计核销金额] ELSE 0 END
|
,[4-5年]=CASE WHEN [账龄月]>=37 AND [账龄月]<=60 THEN [分摊金额]-([整单累计退货金额]+[整单累计到款金额])*[分摊比例]*0.01 ELSE 0 END
|
||||||
,[5年以上]=CASE WHEN [账龄月]> 60 THEN [分摊金额]-([整单累计退货金额]+[整单累计到款金额])*[分摊比例]*0.01 ELSE 0 END
|
,[5年以上]=CASE WHEN [账龄月]> 60 THEN [分摊金额]-([整单累计退货金额]+[整单累计到款金额])*[分摊比例]*0.01 ELSE 0 END
|
||||||
|
|
||||||
update [ZRP_YingShouMingXi_yuyubo] SET [预计到期时间]=CASE WHEN [预计到期时间] > '1990-01-01' AND [预计到期时间] >GETDATE() THEN [预计到期时间] ELSE NULL END
|
update [ZRP_YingShouMingXi_yuyubo] SET [预计到期时间]=CASE WHEN [预计到期时间] > '1990-01-01' AND [预计到期时间] >GETDATE() THEN [预计到期时间] ELSE NULL END
|
||||||
,[未到期金额]=CASE WHEN (([预计到期时间] <'1990-01-01'OR ([预计到期时间] IS NULL AND [到期时间] IS null)) OR [预计到期时间] > GETDATE()) AND [订单总额]>0
|
,[未到期金额]=CASE WHEN (([预计到期时间] <'1990-01-01'OR ([预计到期时间] IS NULL AND [到期时间] IS null)) OR [预计到期时间] > GETDATE()) AND [订单总额]>0 THEN ([整单累计发货金额]-[整单累计退货金额]-[整单累计到款金额])*[分摊比例]*0.01*ISNULL([收款条件分摊比例],100)*0.01 ELSE 0 END
|
||||||
THEN ([整单累计发货金额]-[整单累计退货金额])*[分摊比例]*0.01*ISNULL([收款条件分摊比例],100)*0.01-[收款条件累计核销金额] ELSE 0 END
|
|
||||||
,[是否超账龄转出]=CASE WHEN [账龄月] > 12 THEN '是' ELSE '否' END ;
|
,[是否超账龄转出]=CASE WHEN [账龄月] > 12 THEN '是' ELSE '否' END ;
|
||||||
|
|
||||||
|
|
||||||
@ -385,9 +376,8 @@ UPDATE [ZRP_YingShouMingXi_yuyubo] SET
|
|||||||
,[1年以上],[风险评估级别],[结算类别],[结算类型],CONVERT(NVARCHAR(20),[转专责小组时间],23),[是否超账龄转出],[超账龄是否申请归还大区],[创建人],[反馈表引用分组],[取值销售],[是否坏账],[是否预发货]
|
,[1年以上],[风险评估级别],[结算类别],[结算类型],CONVERT(NVARCHAR(20),[转专责小组时间],23),[是否超账龄转出],[超账龄是否申请归还大区],[创建人],[反馈表引用分组],[取值销售],[是否坏账],[是否预发货]
|
||||||
,[合同类型] ,[组织ID],[是否集采项目],[天数]
|
,[合同类型] ,[组织ID],[是否集采项目],[天数]
|
||||||
,[销售单主键ID],[销售员ID],[收款条件主键ID],GETDATE(),0,[1-2年],[2-3年],[3-4年],[4-5年],[5年以上]
|
,[销售单主键ID],[销售员ID],[收款条件主键ID],GETDATE(),0,[1-2年],[2-3年],[3-4年],[4-5年],[5年以上]
|
||||||
FROM [ZRP_YingShouMingXi_yuyubo] A
|
FROM [ZRP_YingShouMingXi_yuyubo]
|
||||||
WHERE ([整单正数订单总额]-[累计退货金额])>[累计到款金额]
|
WHERE ISNULL([是否已存在],0)=0
|
||||||
ORDER BY A.[销售单主键ID],[销售员ID],[收款条件主键ID];
|
|
||||||
|
|
||||||
update ReceivablesDetailsTable set F_061=B.F_061, F_054=B.F_054 ,F_055=B.F_055,F_056=B.F_056
|
update ReceivablesDetailsTable set F_061=B.F_061, F_054=B.F_054 ,F_055=B.F_055,F_056=B.F_056
|
||||||
,F_060=B.F_060,F_057=B.F_057,F_058=B.F_058
|
,F_060=B.F_060,F_057=B.F_057,F_058=B.F_058
|
||||||
@ -405,7 +395,7 @@ GO
|
|||||||
|
|
||||||
|
|
||||||
--TRUNCATE TABLE dbo.ReceivablesDetailsTable;
|
--TRUNCATE TABLE dbo.ReceivablesDetailsTable;
|
||||||
--EXEC PR_YingShouMingXi_yuyubo
|
EXEC PR_YingShouMingXi_yuyubo
|
||||||
|
|
||||||
|
|
||||||
--SELECT TOP 10 * FROM ReceivablesDetailsTable
|
--SELECT TOP 10 * FROM ReceivablesDetailsTable
|
||||||
|
@ -1,74 +0,0 @@
|
|||||||
-- 检查存储过程是否存在,存在则删除 P202502080013
|
|
||||||
IF OBJECT_ID('dbo.[PR_ResetSALORDERPLAN_MBBA_yuyubo]', 'P') IS NOT NULL
|
|
||||||
BEGIN
|
|
||||||
DROP PROCEDURE dbo.PR_ResetSALORDERPLAN_MBBA_yuyubo;
|
|
||||||
PRINT '存储过程 dbo.[PR_ResetSALORDERPLAN_MBBA_yuyubo] 已删除';
|
|
||||||
END
|
|
||||||
GO
|
|
||||||
|
|
||||||
-- 创建新的存储过程
|
|
||||||
CREATE PROCEDURE dbo.PR_ResetSALORDERPLAN_MBBA_yuyubo
|
|
||||||
@saleOrderId INT=0
|
|
||||||
AS
|
|
||||||
BEGIN
|
|
||||||
-- 1. 声明游标
|
|
||||||
DECLARE cursor_name CURSOR
|
|
||||||
FOR
|
|
||||||
SELECT a.F_Amount,b.F_MBBA_Decimal_uky,a.FBILLNO,a.FSALEORGID,a.F_contractnumber,a.fid,b.FENTRYID AS wfid ,b.FRECADVANCEAMOUNT
|
|
||||||
FROM dbo.T_SAL_ORDER a WITH(NOLOCK) LEFT JOIN dbo.T_SAL_ORDERPLAN b WITH(NOLOCK) ON a.FID=b.FID
|
|
||||||
INNER JOIN (SELECT DISTINCT [销售单主键ID],[整单累计退货金额],[整单正数订单总额] from [ZRP_YingShouMingXi_yuyubo] WHERE [整单正数订单总额]>0) cc ON [销售单主键ID]=a.FID
|
|
||||||
WHERE (ISNULL(a.F_Amount,0) > 0 AND [整单正数订单总额]-ISNULL(a.F_Amount,0) -[整单累计退货金额]>0) AND (a.FID=@saleOrderId OR @saleOrderId=0)
|
|
||||||
AND b.F_MBBA_DECIMAL_UKY<a.F_Amount
|
|
||||||
ORDER BY a.fid,wfid
|
|
||||||
|
|
||||||
-- 2. 打开游标
|
|
||||||
OPEN cursor_name;
|
|
||||||
DECLARE @rowId INT=0,@amount DECIMAL(18,4)=0
|
|
||||||
-- 3. 循环获取数据
|
|
||||||
DECLARE @F_AMOUNT DECIMAL(18,2), @F_MBBA_Decimal_uky DECIMAL(18,2),@FBILLNO NVARCHAR(200),@FSALEORGID INT ,@F_contractnumber NVARCHAR(500) ,@fid INT ,@wfid INT,@FRecAdvanceAmount DECIMAL(18,2);
|
|
||||||
FETCH NEXT FROM cursor_name INTO @F_AMOUNT, @F_MBBA_Decimal_uky,@FBILLNO,@FSALEORGID,@F_contractnumber,@fid,@wfid,@FRecAdvanceAmount;
|
|
||||||
|
|
||||||
WHILE @@FETCH_STATUS = 0
|
|
||||||
BEGIN
|
|
||||||
-- 数据处理逻辑(示例输出)
|
|
||||||
--PRINT 'Column1: ' + CAST(@var1 AS VARCHAR) + ', Column2: ' + @var2;
|
|
||||||
-- 处理收款核销金额
|
|
||||||
IF(@rowId !=@fid)
|
|
||||||
BEGIN
|
|
||||||
SELECT @rowId=@fid,@amount=@F_AMOUNT;
|
|
||||||
END
|
|
||||||
|
|
||||||
IF(@amount>=@FRecAdvanceAmount)
|
|
||||||
BEGIN
|
|
||||||
UPDATE T_SAL_ORDERPLAN SET F_MBBA_Decimal_uky=@FRecAdvanceAmount
|
|
||||||
WHERE FENTRYID=@wfid;
|
|
||||||
SELECT @amount=@amount-@FRecAdvanceAmount;
|
|
||||||
END
|
|
||||||
ELSE
|
|
||||||
BEGIN
|
|
||||||
IF(@amount>0)
|
|
||||||
BEGIN
|
|
||||||
UPDATE T_SAL_ORDERPLAN SET F_MBBA_Decimal_uky=@amount
|
|
||||||
WHERE FENTRYID=@wfid;
|
|
||||||
SELECT @amount=0;
|
|
||||||
END
|
|
||||||
END
|
|
||||||
|
|
||||||
-- 获取下一条记录
|
|
||||||
FETCH NEXT FROM cursor_name INTO @F_AMOUNT, @F_MBBA_Decimal_uky,@FBILLNO,@FSALEORGID,@F_contractnumber,@fid,@wfid,@FRecAdvanceAmount;
|
|
||||||
END;
|
|
||||||
|
|
||||||
-- 4. 关闭游标
|
|
||||||
CLOSE cursor_name;
|
|
||||||
|
|
||||||
-- 5. 释放游标资源
|
|
||||||
DEALLOCATE cursor_name;
|
|
||||||
|
|
||||||
|
|
||||||
END
|
|
||||||
|
|
||||||
|
|
||||||
--EXEC dbo.PR_ResetSALORDERPLAN_MBBA_yuyubo @saleOrderId = 0 -- int
|
|
||||||
|
|
||||||
|
|
||||||
--UPDATE T_SAL_ORDERPLAN SET F_MBBA_Decimal_uky=0
|
|
Loading…
x
Reference in New Issue
Block a user