11
This commit is contained in:
parent
9ea8a4af86
commit
be31b3f133
@ -799,51 +799,62 @@ else
|
||||
indexi++;
|
||||
#endregion
|
||||
}
|
||||
if (sql_List1.Count > 0)
|
||||
{
|
||||
var kehuName = sql_List1.Where(t=> t["F_000"] !=null && t["F_005"] !=null).Select(t => new { kehu = t["F_005"].ToString(), zhuzhi = t["F_000"].ToString() }).Distinct().ToList();
|
||||
|
||||
var sql_4 = "";
|
||||
sql_4 += string.Format(@"/*dialect*/
|
||||
var sql_4 = "";
|
||||
// sql_4 += string.Format(@"/*dialect*/
|
||||
// Select T1.FPAYORGID As ZZ,T2.FNAME As GHDW,Sum(FRECAMOUNT) As SKJE,Sum(FRECAMOUNT-F_AMOUNT*FEXCHANGERATE) AS DHXJE
|
||||
// From T_AR_RECEIVEBILL T1
|
||||
// Join T_BD_CUSTOMER_L T2 On T1.FCONTACTUNIT = T2.FCUSTID And T2.FLOCALEID = 2052
|
||||
// Join (Select DISTINCT 购货单位,组织ID
|
||||
//From ZRP_YingShouMingXi_yuyubo
|
||||
//Where ([整单正数订单总额]-[累计退货金额(原币)]-[K3整单累计退货金额(本位币)])<>[累计到款金额(原币)]) T3
|
||||
//ON T3.组织ID = T1.FPAYORGID AND t3.购货单位=t2.FNAME
|
||||
// Where 1=1
|
||||
// And FCONTACTUNITTYPE = 'BD_Customer'
|
||||
// ");
|
||||
|
||||
sql_4 += string.Format(@"/*dialect*/
|
||||
Select T1.FPAYORGID As ZZ,T2.FNAME As GHDW,Sum(FRECAMOUNT) As SKJE,Sum(FRECAMOUNT-F_AMOUNT*FEXCHANGERATE) AS DHXJE
|
||||
From T_AR_RECEIVEBILL T1
|
||||
Join T_BD_CUSTOMER_L T2 On T1.FCONTACTUNIT = T2.FCUSTID And T2.FLOCALEID = 2052
|
||||
Join (Select DISTINCT 购货单位,组织ID
|
||||
From ZRP_YingShouMingXi_yuyubo
|
||||
Where ([整单正数订单总额]-[累计退货金额(原币)]-[K3整单累计退货金额(本位币)])<>[累计到款金额(原币)]) T3
|
||||
ON T3.组织ID = T1.FPAYORGID AND t3.购货单位=t2.FNAME
|
||||
Where 1=1
|
||||
Join T_BD_CUSTOMER_L T2 On T1.FCONTACTUNIT = T2.FCUSTID And T2.FLOCALEID = 2052
|
||||
Where 1=1
|
||||
And FCONTACTUNITTYPE = 'BD_Customer'
|
||||
");
|
||||
if (CUST != null)
|
||||
{
|
||||
CustFid = Convert.ToString(CUST["name"]);
|
||||
sql_4 += $@" And t2.FNAME = '{CustFid}'";
|
||||
}
|
||||
if (FSaleOrg != null)
|
||||
{
|
||||
FSaleOrgId = Convert.ToString(FSaleOrg["ID"]);
|
||||
sql_4 += $@" And T1.FPAYORGID ={FSaleOrgId}";
|
||||
}
|
||||
sql_4 += " Group By T1.FPAYORGID,T2.FNAME";
|
||||
var sql_List3 = DBUtils.ExecuteDynamicObject(Context, sql_4);
|
||||
this.View.Model.CreateNewEntryRow("F_MBBA_Entity_qtr");
|
||||
//类型
|
||||
this.View.Model.SetValue("F_009", "类型", indexi);
|
||||
indexi += 1;
|
||||
foreach (var item in sql_List3)
|
||||
{
|
||||
this.View.Model.CreateNewEntryRow("F_MBBA_Entity_qtr");
|
||||
//组织
|
||||
this.View.Model.SetValue("F_zuzhi", item["ZZ"], indexi);
|
||||
//购货单位
|
||||
this.View.Model.SetValue("F_005", item["GHDW"], indexi);
|
||||
//收款金额
|
||||
this.View.Model.SetValue("F_010", item["SKJE"], indexi);
|
||||
//待核销金额
|
||||
this.View.Model.SetValue("FDingDanZongE_YuanBi", item["DHXJE"], indexi);
|
||||
//类型
|
||||
this.View.Model.SetValue("F_009", "收款单", indexi);
|
||||
indexi++;
|
||||
}
|
||||
CustFid = string.Join("','", kehuName.Select(t => t.kehu).Distinct().ToList());
|
||||
sql_4 += $@" And t2.FNAME in ('{CustFid}') ";
|
||||
FSaleOrgId = string.Join(",", kehuName.Select(t => t.zhuzhi).Distinct().ToList());
|
||||
sql_4 += $@" And T1.FPAYORGID in ({FSaleOrgId}) ";
|
||||
|
||||
sql_4 += " Group By T1.FPAYORGID,T2.FNAME";
|
||||
var sql_List3 = DBUtils.ExecuteDynamicObject(Context, sql_4);
|
||||
|
||||
var sumList = (from q in sql_List3
|
||||
join k in kehuName on new { kehu = q["GHDW"].ToString(), zhuzhi = q["ZZ"].ToString() } equals new { k.kehu, k.zhuzhi }
|
||||
select q).ToList();
|
||||
|
||||
this.View.Model.CreateNewEntryRow("F_MBBA_Entity_qtr");
|
||||
//类型
|
||||
this.View.Model.SetValue("F_009", "类型", indexi);
|
||||
indexi += 1;
|
||||
foreach (var item in sumList)
|
||||
{
|
||||
this.View.Model.CreateNewEntryRow("F_MBBA_Entity_qtr");
|
||||
//组织
|
||||
this.View.Model.SetValue("F_zuzhi", item["ZZ"], indexi);
|
||||
//购货单位
|
||||
this.View.Model.SetValue("F_005", item["GHDW"], indexi);
|
||||
//收款金额
|
||||
this.View.Model.SetValue("F_010", item["SKJE"], indexi);
|
||||
//待核销金额
|
||||
this.View.Model.SetValue("FDingDanZongE_YuanBi", item["DHXJE"], indexi);
|
||||
//类型
|
||||
this.View.Model.SetValue("F_009", "收款单", indexi);
|
||||
indexi++;
|
||||
}
|
||||
}
|
||||
this.View.UpdateView("F_MBBA_Entity_qtr");
|
||||
|
||||
}
|
||||
|
||||
@ -282,7 +282,7 @@ INNER JOIN (
|
||||
FROM [oldk3seorder0701]
|
||||
GROUP BY 合同号
|
||||
) T2 ON T1.纸质合同号 = T2.合同号
|
||||
WHERE T1.组织ID = 100302
|
||||
WHERE T1.组织ID = 100302 AND T1.纸质合同号 = T2.合同号
|
||||
|
||||
---更新K3明细字段
|
||||
update [ZRP_YingShouMingXi_yuyubo] set
|
||||
@ -327,33 +327,37 @@ GROUP BY F_PaperNumber, FSALEORGID
|
||||
-- 补充一点,这些字段还要按销售员分摊进行区分,比如订单金额100元,销售员A 30%,销售员B 70%,这些字段就会显示 A显示30元,B显示70元
|
||||
update [ZRP_YingShouMingXi_yuyubo] set
|
||||
[订单总额]=[整单正数订单总额]*[分摊比例]*0.01
|
||||
,[累计发货金额]=[整单累计发货金额]*[分摊比例]*0.01+[K3整单累计发货金额(本位币)]*[分摊比例]*0.01
|
||||
,[累计退货金额]=[整单累计退货金额]*[分摊比例]*0.01+[K3整单累计退货金额(本位币)]*[分摊比例]*0.01
|
||||
,[累计开票金额]=[整单累计开票金额]*[分摊比例]*0.01+[K3整单累计专票金额(本位币)]*[分摊比例]*0.01+[K3整单累计普票金额(本位币)]*[分摊比例]*0.01
|
||||
,[累计发货金额]=[整单累计发货金额]*[分摊比例]*0.01
|
||||
,[累计退货金额]=[整单累计退货金额]*[分摊比例]*0.01
|
||||
,[累计开票金额]=[整单累计开票金额]*[分摊比例]*0.01
|
||||
,[累计到款金额]=[整单累计到款金额]*[分摊比例]*0.01
|
||||
,[收款条件分摊比例]=ISNULL([收款条件分摊比例],100)
|
||||
,[运杂费]=[运杂费]*[分摊比例]*0.01;
|
||||
--UPDATE [ZRP_YingShouMingXi_yuyubo] set [分摊金额]=[订单总额];
|
||||
UPDATE [ZRP_YingShouMingXi_yuyubo] set
|
||||
[应收款合计]=CASE WHEN [整单正数订单总额]>0 then ABS([订单总额])-ABS(([整单累计退货金额]+[K3整单累计退货金额(本位币)]+[整单累计到款金额])*[分摊比例]*0.01) +[运杂费] ELSE 0 end
|
||||
,[未出货总额]=CASE WHEN [整单正数订单总额]>0 then ABS([订单总额])-ABS(([整单累计发货金额]+[K3整单累计退货金额(本位币)])*[分摊比例]*0.01) ELSE 0 end
|
||||
[应收款合计]=CASE WHEN [整单正数订单总额]>0 then ABS([订单总额])-ABS(([整单累计退货金额]+[K3整单累计退货金额(本位币)]/汇率+[整单累计到款金额])*[分摊比例]*0.01) +[运杂费] ELSE 0 end
|
||||
,[未出货总额]=CASE WHEN [整单正数订单总额]>0 then ABS([订单总额])-ABS(([整单累计发货金额]+[K3整单累计退货金额(本位币)]/汇率)*[分摊比例]*0.01) ELSE 0 end
|
||||
|
||||
--,[到期时间]='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([整单累计发货金额]-[整单累计退货金额]-[整单累计到款金额])*[分摊比例]*0.01*ISNULL([收款条件分摊比例],100)*0.01 ELSE 0 END
|
||||
,[实际已出货应收款合计]=CASE WHEN [整单正数订单总额] >0 THEN ([整单累计发货金额]+[K3整单累计发货金额(本位币)]-[整单累计退货金额]-[K3整单累计退货金额(本位币)]- [整单累计到款金额] )*[分摊比例]*0.01 ELSE 0 end
|
||||
,[实际已出货应收款合计]=CASE WHEN [整单正数订单总额] >0 THEN ([整单累计发货金额]+[K3整单累计发货金额(本位币)]-[整单累计退货金额]-[K3整单累计退货金额(本位币)]/汇率- [整单累计到款金额] )*[分摊比例]*0.01 ELSE 0 end
|
||||
,[项目阶段]= CASE 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( [整单累计发货金额],0) = ISNULL([整单正数订单总额],0) THEN '发货完成' WHEN ISNULL([整单正数订单总额],0) > ISNULL( [整单累计发货金额],0) THEN '发货中' END
|
||||
,[运杂费]=[运杂费]*ISNULL([收款条件分摊比例],100)*0.01;
|
||||
|
||||
|
||||
------计算每个客户的[K3累计退货金额(本位币)]-----
|
||||
SELECT sum(a.实际已出货应收款合计) [实际已出货应收款合计] ,客户编码 INTO #temp2 FROM (
|
||||
SELECT AVG([实际已出货应收款合计]) AS [实际已出货应收款合计],销售单主键ID,销售员ID,客户编码 FROM [ZRP_YingShouMingXi_yuyubo]
|
||||
SELECT AVG([实际已出货应收款合计]) AS [实际已出货应收款合计],销售单主键ID,销售员ID,客户编码
|
||||
FROM [ZRP_YingShouMingXi_yuyubo]
|
||||
GROUP BY 销售单主键ID,销售员ID,客户编码) a
|
||||
GROUP BY 客户编码
|
||||
|
||||
-------每个客户的[K3累计退货金额(本位币)]与信用额度对比-----------
|
||||
UPDATE [ZRP_YingShouMingXi_yuyubo] SET [预计到期时间]=ISNULL(ISNULL((SELECT CONVERT(NVARCHAR(10),MAX(SAL.FDATE),23)
|
||||
AS '发货日期' FROM T_SAL_DELIVERYNOTICE SAL WITH(NOLOCK)
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEFIN B WITH(NOLOCK) ON SAL.FID =B.FID
|
||||
@ -372,9 +376,9 @@ WHERE T0.FREDBLUE=0 AND aa1.fid=
|
||||
|
||||
|
||||
update [ZRP_YingShouMingXi_yuyubo] SET [未到期金额]=CASE WHEN ([收款条件] LIKE '货到%' OR [收款条件] LIKE '款到发货%' OR [收款条件] LIKE '协议付款%') AND [订单总额]>0
|
||||
THEN ([整单累计发货金额]-[整单累计退货金额])*[分摊比例]*0.01*[收款条件分摊比例]*0.01 - [收款条件累计核销金额]*[分摊比例]*0.01+[运杂费]+[K3累计发货金额(本位币)]-[K3累计退货金额(本位币)]
|
||||
THEN ([整单累计发货金额]-[整单累计退货金额])*[分摊比例]*0.01*[收款条件分摊比例]*0.01 - [收款条件累计核销金额]*[分摊比例]*0.01+[运杂费]+[K3累计发货金额(本位币)]/汇率-[K3累计退货金额(本位币)]/汇率
|
||||
WHEN [订单总额]>0
|
||||
THEN ([整单正数订单总额]-[整单累计退货金额])*[分摊比例]*0.01*[收款条件分摊比例]*0.01 - [收款条件累计核销金额]*[分摊比例]*0.01 +[运杂费]+[K3累计发货金额(本位币)]-[K3累计退货金额(本位币)] ELSE 0 END ;
|
||||
THEN ([整单正数订单总额]-[整单累计退货金额])*[分摊比例]*0.01*[收款条件分摊比例]*0.01 - [收款条件累计核销金额]*[分摊比例]*0.01 +[运杂费]-[K3累计退货金额(本位币)]/汇率 ELSE 0 END ;
|
||||
|
||||
|
||||
UPDATE [ZRP_YingShouMingXi_yuyubo] SET [预计到期时间]=NULL
|
||||
@ -411,7 +415,7 @@ UPDATE [ZRP_YingShouMingXi_yuyubo] SET
|
||||
,[1-2年]=CASE WHEN [账龄月]>=13 AND [账龄月]<=24 THEN [未到期金额] ELSE 0 END
|
||||
,[2-3年]=CASE WHEN [账龄月]>=25 AND [账龄月]<=36 THEN [未到期金额] ELSE 0 END
|
||||
,[4-5年]=CASE WHEN [账龄月]>=37 AND [账龄月]<=60 THEN [未到期金额] ELSE 0 END
|
||||
,[5年以上]=CASE WHEN [账龄月]> 60 THEN (([整单正数订单总额]-[整单累计退货金额])*[收款条件分摊比例]*0.01 -[收款条件累计核销金额])*[分摊比例]*0.01 +[运杂费]+[K3累计专票金额(本位币)]-[K3累计普票金额(本位币)] ELSE 0 END
|
||||
,[5年以上]=CASE WHEN [账龄月]> 60 THEN (([整单正数订单总额]-[整单累计退货金额]-[K3整单累计退货金额(本位币)]/汇率)*[收款条件分摊比例]*0.01 -[收款条件累计核销金额])*[分摊比例]*0.01 +[运杂费] ELSE 0 END
|
||||
|
||||
update [ZRP_YingShouMingXi_yuyubo] SET [预计到期时间]=CASE WHEN ([到期时间] IS not NULL ) OR ([未到期金额]=0 AND [到期金额]=0) THEN NULL ELSE [预计到期时间] END
|
||||
,[未到期金额]=CASE WHEN [到期时间] IS NOT NULL THEN 0 ELSE [未到期金额] END
|
||||
@ -594,7 +598,7 @@ FROM
|
||||
,[K3累计专票金额(本位币)]
|
||||
,[K3累计普票金额(本位币)]
|
||||
FROM [ZRP_YingShouMingXi_yuyubo] A
|
||||
WHERE ([整单正数订单总额]-[累计退货金额(原币)]-[K3整单累计退货金额(本位币)])<>[累计到款金额(原币)]
|
||||
WHERE ([整单正数订单总额]-[累计退货金额(原币)]-[K3整单累计退货金额(本位币)]/汇率)<>[累计到款金额(原币)]
|
||||
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
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user