diff --git a/Pilot.Report.Exploitation/Receivables/ReceivablesDetails.cs b/Pilot.Report.Exploitation/Receivables/ReceivablesDetails.cs index f1bb30f..bcc400b 100644 --- a/Pilot.Report.Exploitation/Receivables/ReceivablesDetails.cs +++ b/Pilot.Report.Exploitation/Receivables/ReceivablesDetails.cs @@ -295,13 +295,28 @@ else GCXMFid = Convert.ToString(GCXM["NAME"]); wheresql += $@" and [F_009] = '{GCXMFid}'"; } + + //获取合同号 + var HeTongHao = Convert.ToString(dyObj["F_HeTongHao"]); + if (!string.IsNullOrWhiteSpace(HeTongHao)) + { + wheresql += $@" and [F_008] = '{HeTongHao}'"; + } + //获取SBU + var F_SBU = Convert.ToString(dyObj["F_SBU"]); + if (!string.IsNullOrWhiteSpace(F_SBU)) + { + wheresql += $@" and [F_003] like '%{F_SBU}%'"; + } + this.View.Model.DeleteEntryData("F_MBBA_Entity_qtr"); //获取表1 var sql_1 = ""; sql_1 += string.Format($@"/*dialect*/Select * From (Select [FId],[F_001],[F_002],[F_003],[F_004],[F_005],[F_006],[F_007],[F_008],[F_009],[F_010],[F_011],[F_012],[F_013],[F_014],[F_015],[F_016],[F_017],[F_018],[F_019],[F_020],[F_021],[F_022],[F_023],[F_024],[F_025],[F_026],[F_027],[F_028],[F_029],[F_030],[F_031],[F_032],[F_033],[F_034],[F_035],[F_036],[F_037],[F_038],[F_039],[F_040],[F_041],[F_042],[F_043],[F_044],[F_045],[F_046],[F_047],[F_048],[F_049],[F_050],[F_051],[F_052],[F_053],[F_054],[F_055],[F_056],[F_057],[F_058],[F_059],[F_000],[F_060],[F_061],[F_062],[F_063],[销售单主键ID],[销售员ID],[收款条件主键ID],[EditTime],[IfManualEdit],[F_064],[F_065],[F_066],[F_067],[F_068],[BiBie],[HuiLv],[DingDanZongE_YuanBi],[ZeRenRen],[XinYongEDu],[客户编码],[DaoKuanJinE_YuanBi],[YingShouHeJi_YuanBi],[YunZaFei],[LeiJiTuiHuoJinE_YuanBi] - ,[F_025]*[HuiLv] as F_SJYCHYSKHJ_BWB, [F_024]*[HuiLv] as F_WDQJE_BWB, [F_027]*[HuiLv] F_DQJE_BWB ,[F_000] AS F_zuzhi From [ReceivablesDetailsTable] where {wheresql} + ,[F_025]*[HuiLv] as F_SJYCHYSKHJ_BWB, [F_024]*[HuiLv] as F_WDQJE_BWB, [F_027]*[HuiLv] F_DQJE_BWB ,[F_000] AS F_zuzhi + ,Month([F_012]) as F_Month , DATEPART(week, [F_012]) AS F_week from [ReceivablesDetailsTable] where {wheresql} Union ALL (Select null,null,'合计:',null,null,null,null,null,null,null,SUM(F_010), @@ -317,11 +332,11 @@ else FROM [ReceivablesDetailsTable] hh where {wheresql} ) a ) ,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,0,0,0,null,0 , null, null, null, null, null,'',1 [HuiLv],SUM([DingDanZongE_YuanBi]),'' [ZeRenRen],0 [XinYongEDu],'' [客户编码],SUM([DaoKuanJinE_YuanBi]) ,SUM([YingShouHeJi_YuanBi]),SUM([YunZaFei]),SUM([LeiJiTuiHuoJinE_YuanBi]) - ,SUM([F_SJYCHYSKHJ_BWB]) , null, null,null AS F_zuzhi + ,SUM([F_SJYCHYSKHJ_BWB]) ,sum(F_WDQJE_BWB) F_WDQJE_BWB,sum(F_DQJE_BWB) F_DQJE_BWB,null AS F_zuzhi,NULL,NULL From (select distinct [销售单主键ID],[销售员ID],[F_010],F_017,F_018,F_019,F_020,F_021,F_022 ,0 as F_024 ,F_025, 0 as F_027,0 F_036 ,[BiBie] ,[DingDanZongE_YuanBi] ,[DaoKuanJinE_YuanBi] ,[YingShouHeJi_YuanBi] ,[YunZaFei], [LeiJiTuiHuoJinE_YuanBi] - ,[F_025]*[HuiLv] as F_SJYCHYSKHJ_BWB, 0 as F_WDQJE_BWB,0 F_DQJE_BWB from + ,[F_025]*[HuiLv] as F_SJYCHYSKHJ_BWB, [F_024]*[HuiLv] as F_WDQJE_BWB, [F_027]*[HuiLv] F_DQJE_BWB from [ReceivablesDetailsTable] where {wheresql} ) a )) W Order by W.F_001"); @@ -671,6 +686,26 @@ else //到期金额(本位币) this.View.Model.SetValue("F_DQJE_BWB", item["F_DQJE_BWB"], indexi); + //月 + this.View.Model.SetValue("F_Month", item["F_Month"], indexi); + //周 + this.View.Model.SetValue("F_week", item["F_week"], indexi); + + if(item["F_038"]!=null) + this.View.Model.SetValue("F_10060",decimal.Parse(item["F_038"]?.ToString()) * decimal.Parse(item["HuiLv"]?.ToString()), indexi); + if (item["F_039"] != null) + this.View.Model.SetValue("F_70012", decimal.Parse(item["F_039"]?.ToString()) * decimal.Parse(item["HuiLv"]?.ToString()), indexi); + if (item["F_064"] != null) + this.View.Model.SetValue("F_10020", decimal.Parse(item["F_064"]?.ToString()) * decimal.Parse(item["HuiLv"]?.ToString()), indexi); + if (item["F_065"] != null) + this.View.Model.SetValue("F_20030", decimal.Parse(item["F_065"]?.ToString()) * decimal.Parse(item["HuiLv"]?.ToString()), indexi); + if (item["F_066"] != null) + this.View.Model.SetValue("F_30040", decimal.Parse(item["F_066"]?.ToString()) * decimal.Parse(item["HuiLv"]?.ToString()), indexi); + if (item["F_067"] != null) + this.View.Model.SetValue("F_40050", decimal.Parse(item["F_067"]?.ToString()) * decimal.Parse(item["HuiLv"]?.ToString()), indexi); + if (item["F_068"] != null) + this.View.Model.SetValue("F_50000", decimal.Parse(item["F_068"]?.ToString()) * decimal.Parse(item["HuiLv"]?.ToString()), indexi); + //【订单总额、累计发货金额、累计退货金额、累计开票金额、累计到款金额、应收款合计、未出货总额、实际已出货应收款合计、】的明细需要去重 if (dicList.ContainsKey(item["销售单主键ID"].ToString() + "-" + item["销售员ID"].ToString())) { @@ -682,6 +717,10 @@ else this.View.Model.SetValue("F_021", null, indexi); this.View.Model.SetValue("F_022", null, indexi); this.View.Model.SetValue("F_025", null, indexi); + //月 + this.View.Model.SetValue("F_Month", null, indexi); + //周 + this.View.Model.SetValue("F_week", null, indexi); this.View.Model.SetValue("FLeiJiTuiHuoJinE_YuanBi", null, indexi); this.View.Model.SetValue("FDaoKuanJinE_YuanBi", null, indexi); this.View.Model.SetValue("FYingShouHeJi_YuanBi", null, indexi); diff --git a/应收明细SQL.sql b/应收明细SQL.sql index 0467e78..17df272 100644 --- a/应收明细SQL.sql +++ b/应收明细SQL.sql @@ -24,7 +24,7 @@ BEGIN [Ա],[÷],[ȡֵ],[Ƿ],[ǷԤ],[Ƿ񼯲Ŀ],[ͬ],[ǷѴ],[ܶ],[Ӧձ],[ۼƷ] ,[ۼ˻],[ۼƿƱ],[Ӧտϼ],[δܶ],[δڽ],[ʱ],[ڽ],[ʵѳӦտϼ],[Ŀ׶],[տ],[ۼƵ], [1-6],[7-12],[13-18],[19],[1],[-׶],[],[֯ID],[],[۶],[տ̯],[տ̯],[ܶ],[տۼƺ] - ,[ұ],[ұID],[],[ͻö],[ͻ],[ۼƵ(ԭ)],[Ӧտϼ(ԭ)] ,[ӷ],[] ) + ,[ұ],[ұID],[],[ͻö],[ͻ],[ۼƵ(ԭ)],[Ӧտϼ(ԭ)] ,[ӷ],[] ,[]) SELECT [۵ID],[ԱID],[տID],[տ],[F_RecConditionId],[ܶ],[Ա],[̯],[̯],[SBU] ,[ϸ],[λ],[˾],[ͻ],[ֽʺͬ],[Ŀ],[ǩ],[],[],[ۼƷ],[Ʊ], @@ -33,7 +33,7 @@ SELECT [Ա],[÷],[ȡֵ],[Ƿ],[ǷԤ],[Ƿ񼯲Ŀ],[ͬ],[ǷѴ],0 [ܶ],[Ӧձ], 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],[],[۶],[տ̯],[տ̯],[ܶ] -,[տۼƺ] ,[ұ],[ұID],[],[ͻö],[ͻ],[ۼƵ(ԭ)],[Ӧտϼ(ԭ)],[ӷ],[] +,[տۼƺ] ,[ұ],[ұID],[],[ͻö],[ͻ],[ۼƵ(ԭ)],[Ӧտϼ(ԭ)],[ӷ],[] ,[] FROM ( SELECT A.FID [۵ID] ,ISNULL(O.fid,l.fid) [ԱID] @@ -41,7 +41,7 @@ SELECT A.FID [ ,(SELECT SUM(FBillAllAmount) FROM T_SAL_ORDERFIN FF WITH(NOLOCK) WHERE FF.FID = A.FID ) AS [ܶ],w.FRECADVANCEAMOUNT [տ̯],ISNULL(w.FRECADVANCERATE,100) [տ̯] ,ISNULL(O.FNAME,L.FNAME) AS [Ա],CONVERT(DECIMAL(18,2),ISNULL(n.FSHARERATE,100)) AS [̯] ,CONVERT(DECIMAL(18,6),fin.FBillAllAmount*ISNULL(n.FSHARERATE,100)*0.01 ) [̯] - ,ISNULL(ACO2.,ACO.) AS [SBU] , ISNULL (ACO2.[ϸ] , ACO.ϸ) AS [ϸ],c.FNAME AS [λ] ,ISNULL(K.FDATAVALUE,'') AS [˾] + ,ISNULL(ACO.,ACL.) AS [SBU] , ISNULL (ACO.[ϸ] , ACL.ϸ) AS [ϸ],c.FNAME AS [λ] ,ISNULL(K.FDATAVALUE,'') AS [˾] ,P.FDATAVALUE AS [ͻ],A.F_contractnumber AS [ֽʺͬ] , G.FNAME AS [Ŀ] ,CONVERT( NVARCHAR(10), YEAR(A.FAPPROVEDATE)) AS [ǩ],CONVERT(VARCHAR(10), A.FAPPROVEDATE,23) AS [] --,[]=ISNULL((SELECT (CONVERT(NVARCHAR(10),MAX(SAL.FDATE),23)) AS '' FROM T_SAL_DELIVERYNOTICE SAL WITH(NOLOCK) @@ -64,8 +64,8 @@ SELECT A.FID [ --,[Ʊ]=T.Ʊ ,[ۼ˻]=ISNULL(( SELECT SUM(B.FBillAllAmount) AS 'ۼ˻' - FROM T_SAL_DELIVERYNOTICE AA WITH(NOLOCK) - INNER JOIN T_SAL_DELIVERYNOTICEFIN B WITH(NOLOCK) ON AA.FID =B.FID + FROM T_SAL_RETURNNOTICE AA WITH(NOLOCK) + INNER JOIN T_SAL_RETURNNOTICEFIN B WITH(NOLOCK) ON AA.FID =B.FID WHERE AA.FDOCUMENTSTATUS= 'C' AND aa.FSALEORGID = a.FSALEORGID AND (( AA.F_Papercontract LIKE CONCAT(A.F_contractnumber, '-%') AND AA.F_Papercontract NOT LIKE CONCAT(A.F_contractnumber, '-%-%') ) OR ( AA.F_Papercontract LIKE CONCAT(A.F_contractnumber, 'HH%') AND AA.F_Papercontract NOT LIKE CONCAT(A.F_contractnumber, 'HH%HH%') ) ) @@ -166,7 +166,7 @@ WHERE aa.FCreditStatus='A' AND aa.FRowAuditStatus='A' AND bb.FNUMBER=Cccc.FNUMBE ,Cccc.FNUMBER AS [ͻ] ,0 [ۼƵ(ԭ)],0 [Ӧտϼ(ԭ)] ,ISNULL(a.F_expenses,0) [ӷ] - ,A.F_zerenren [] + ,A.F_responsible [],w.[] -----------------from -------- FROM T_SAL_ORDER A WITH(NOLOCK) @@ -191,9 +191,6 @@ WHERE aa.FCreditStatus='A' AND aa.FRowAuditStatus='A' AND bb.FNUMBER=Cccc.FNUMBE ON ACO.=O.FNAME AND ISNULL(ACO.ϸ,'') != '' LEFT JOIN (SELECT DISTINCT ACL22.,ACL22.ϸ ,ACL22. FROM ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACL22 ) ACL ON ACL.=L.FNAME AND ISNULL(ACL.ϸ,'') != '' - LEFT JOIN (SELECT DISTINCT ACO22.,ACO22.ϸ,ACO22. FROM ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO22 ) ACO2 - ON ACO2.=a.F_zerenren AND ISNULL(ACO2.ϸ,'') != '' - LEFT JOIN T_SAL_ORDERFIN fin WITH(NOLOCK) ON a.FID=fin.FID LEFT JOIN T_BD_CUSTOMER I WITH(NOLOCK) ON I .FCUSTID = A.FCUSTID LEFT JOIN V_ASSISTANTDATA K WITH(NOLOCK) ON K.FENTRYID = i.FCompanyNature @@ -256,8 +253,16 @@ GROUP BY F_PaperNumber, FSALEORGID WHERE [ܶ]<>0 AND SUBSTRING([ֽʺͬ],1,1) != 'Z' ORDER BY A.[۵ID],[ԱID],[տID]; + + -- LEFT JOIN (SELECT DISTINCT ACO22.,ACO22.ϸ,ACO22. FROM ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO22 ) ACO2 + --ON ACO2.=a.F_responsible AND ISNULL(ACO2.ϸ,'') != '' + UPDATE [ZRP_YingShouMingXi_yuyubo] SET []= [Ա] - WHERE [] IS NULL OR [] LIKE '% %' + WHERE ISNULL([],'')='' OR [] LIKE ' %' + + UPDATE [ZRP_YingShouMingXi_yuyubo] SET SBU=b.,[ϸ]=b.ϸ + FROM (SELECT DISTINCT ACO22.,ACO22.ϸ,ACO22. FROM ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO22 ) b + WHERE []=b. UPDATE [ZRP_YingShouMingXi_yuyubo] SET [2]=ISNULL((SELECT STRING_AGG(CONVERT(NVARCHAR(10),SAL.FDATE,23) +'---'+FORMAT( ISNULL(B.FBillAllAmount_LC,0),'0.00')+'Ԫ' @@ -304,15 +309,16 @@ UPDATE [ZRP_YingShouMingXi_yuyubo] set --,[ڽ]=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 []>12 THEN 'תӦרС' ELSE [Ա] END +,[տ]=CASE WHEN []>12 THEN 'תӦտרС' ELSE [] 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 -; +,[ӷ]=[ӷ]*ISNULL([տ̯],100)*0.01; +UPDATE [ZRP_YingShouMingXi_yuyubo] SET []='ӦտרС',SBU='ӦտרС',[ϸ]='ӦտרС' +WHERE []>12; SELECT sum(a.ʵѳӦտϼ) [ʵѳӦտϼ] ,ͻ INTO #temp2 FROM ( SELECT AVG([ʵѳӦտϼ]) AS [ʵѳӦտϼ],۵ID,ԱID,ͻ FROM [ZRP_YingShouMingXi_yuyubo] @@ -333,6 +339,9 @@ WHERE T0.FREDBLUE=0 AND aa1.fid= AND b.[ʵѳӦտϼ]*[] > [ͻö]*0.9 DROP TABLE #temp2 + UPDATE [ZRP_YingShouMingXi_yuyubo] SET [ԤƵʱ]=[] + WHERE [] IS NOT null + update [ZRP_YingShouMingXi_yuyubo] SET [δڽ]=CASE WHEN ([տ] LIKE '%' OR [տ] LIKE '%' OR [տ] LIKE 'Э鸶%') AND [ܶ]>0 THEN ([ۼƷ]-[ۼ˻])*[̯]*0.01*[տ̯]*0.01 - [տۼƺ]*[̯]*0.01+[ӷ]