PiolotTH_ReportFrom/HKBaoBiao/回款报表服务器插件.py

435 lines
19 KiB
Python
Raw Normal View History

2025-08-19 09:32:59 +08:00
#-*- encoding:utf-8 -*-
import clr
clr.AddReference("System")
clr.AddReference("Kingdee.BOS")
clr.AddReference("Kingdee.BOS.Core")
clr.AddReference("Kingdee.BOS.DataEntity")
clr.AddReference("Kingdee.BOS.App")
clr.AddReference("Kingdee.BOS.Contracts")
from Kingdee.BOS import *
from Kingdee.BOS.Contracts import *
from Kingdee.BOS.Contracts.Report import *
from Kingdee.BOS.Core import *
from Kingdee.BOS.Core.Metadata import *
from Kingdee.BOS.Core.Report import *
from Kingdee.BOS.Core.SqlBuilder import *
from Kingdee.BOS.App.Data import *
from Kingdee.BOS.Orm.DataEntity import *
from System import *
from System.ComponentModel import *
from System.Collections.Generic import *
from System.Text import *
from System.Threading.Tasks import *
#<23><>ʼ<EFBFBD><CABC>
def Initialize():
this.ReportProperty.ReportName = LocaleValue("<EFBFBD>ؿ<EFBFBD><EFBFBD>#", this.Context.UserLocale.LCID)
this.ReportProperty.ReportType = ReportType.REPORTTYPE_NORMAL
this.IsCreateTempTableByPlugin = True
this.ReportProperty.IsGroupSummary = True
this.ReportProperty.SimpleAllCols = False
#<23><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>
def GetReportTitles(Filter):
reportTitles = ReportTitles()
customFiler = Filter.FilterParameter.CustomFilter
if customFiler:
F_YWZZ = customFiler["F_YWZZ"]
FStartDate = customFiler["F_SDate"]
FEndDate = customFiler["F_EDate"]
FCust = customFiler["FCust"]
FZZHTH = customFiler["F_contractnumber"]
if FStartDate != None and FStartDate.ToString() != "":
reportTitles.AddTitle("FSDate",str(FStartDate.ToString("yyyy-MM-dd")))
if FEndDate != None and FEndDate.ToString() != "":
reportTitles.AddTitle("FEDate",str(FEndDate.ToString("yyyy-MM-dd")))
if FCust != None:
reportTitles.AddTitle("FCust",str(FCust["Name"].ToString()))
reportTitles.AddTitle("FZZHTH",FZZHTH)
return reportTitles
#<23><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>
def GetReportHeaders(Filter):
header = ReportHeader()
# headerch = ReportHeader()
header.AddChild("ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
#header.AddChild("<22>տ<EFBFBD><D5BF><EFBFBD>ϸ",LocaleValue("<22>տ<EFBFBD><D5BF><EFBFBD>ϸ",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("ShouKuanBillNo",LocaleValue("<EFBFBD>տ<EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ң<EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
header.AddChild("<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>λ<EFBFBD>ң<EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա",LocaleValue("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("SBU",LocaleValue("SBU",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("<EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("<EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("<EFBFBD><EFBFBD>ע",LocaleValue("<EFBFBD><EFBFBD>ע",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
header.AddChild("һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("1-6<><36><EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("7-12<31><32><EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
header.AddChild("һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("1-2<><32>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("2-3<><33>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("3-4<><34>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("4-5<><35>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("5<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>׶<EFBFBD>",LocaleValue("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F>׶<EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>/<2F><>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
header.AddChild("<EFBFBD>ұ<EFBFBD>",LocaleValue("<EFBFBD>ұ<EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
header.AddChild("<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",LocaleValue("<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",this.Context.UserLocale.LCID),SqlStorageType.SqlDecimal)
return header
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD>
def BuilderReportSqlAndTempTable(Filter,tableName):
# strFilter = GetFilterWhere(Filter)
strFilter = ""
seqFld = String.format(this.KSQL_SEQ,OrderColumn(Filter))
customFiler = Filter.FilterParameter.CustomFilter
#<23><>֯ID
ZZID = "0" if customFiler["F_YWZZ"] == None else str(customFiler["F_YWZZ"]["Id"])
#<23>ͻ<EFBFBD>ID
KHID = "0" if customFiler["FCust"] == None else str(customFiler["FCust"]["Id"])
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
RQLX = str(customFiler["F_DateType"])
#<23>ұ<EFBFBD>
BB = "0" if customFiler["F_Currency"] == None else str(customFiler["F_Currency"]["Name"])
<><D6BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
# raise Exception(BB)
ZKTSHX = customFiler["F_ZKTSHX"]
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
BKTSHX = customFiler["F_BKTSHX"]
#<23>տ<D5BF><EEB5A5>
SKDH = "" if customFiler["F_RECEIVEBILLNO"] == None else str(customFiler["F_RECEIVEBILLNO"])
#<23>տʼ/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
SKRQS = ""
SKRQE = ""
#<23><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʼ/<2F><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
HXRQS = ""
HXRQE = ""
tempsql = "SELECT * FROM #TEMP3 WHERE 1 = 1"
if customFiler["F_SDate"] != None and customFiler["F_SDate"].ToString() != "":
if RQLX == "1":
2025-08-20 15:51:52 +08:00
HXRQS = str(customFiler["F_SDate"].ToString("yyyy-MM-dd"))
2025-08-19 09:32:59 +08:00
strFilter += " AND (ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> >= '{0}' OR ISNULL(ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'') = '' OR <20><><EFBFBD><EFBFBD> IN (3,4))".format(str(customFiler["F_SDate"].ToString("yyyy-MM-dd")))
if RQLX == "2":
strFilter += " AND (<28><><EFBFBD><EFBFBD> >= '{0}' OR ISNULL(<28><><EFBFBD><EFBFBD>,'') = '' OR <20><><EFBFBD><EFBFBD> IN (3,4))".format(str(customFiler["F_SDate"].ToString("yyyy-MM-dd")))
2025-08-20 15:51:52 +08:00
SKRQS = str(customFiler["F_SDate"].ToString("yyyy-MM-dd"))
2025-08-19 09:32:59 +08:00
if customFiler["F_EDate"] != None and customFiler["F_EDate"].ToString() != "":
if RQLX == "1":
strFilter += " AND (ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <= '{0}' OR ISNULL(ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'') = '' OR <20><><EFBFBD><EFBFBD> IN (3,4))".format(str(customFiler["F_EDate"].ToString("yyyy-MM-dd")))
2025-08-20 15:51:52 +08:00
HXRQE = str(customFiler["F_EDate"].ToString("yyyy-MM-dd"))
2025-08-19 09:32:59 +08:00
if RQLX == "2":
strFilter += " AND (<28><><EFBFBD><EFBFBD> <= '{0}' OR ISNULL(<28><><EFBFBD><EFBFBD>,'') = '' OR <20><><EFBFBD><EFBFBD> IN (3,4))".format(str(customFiler["F_EDate"].ToString("yyyy-MM-dd")))
2025-08-20 15:51:52 +08:00
SKRQE = str(customFiler["F_EDate"].ToString("yyyy-MM-dd"))
2025-08-19 09:32:59 +08:00
if customFiler["F_contractnumber"] != None and customFiler["F_contractnumber"].ToString() != "":
2025-08-25 18:44:53 +08:00
strFilter += " AND <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> LIKE '%{0}%'".format(str(customFiler["F_contractnumber"].ToString()))
2025-08-19 09:32:59 +08:00
if customFiler["F_Currency"] != None and customFiler["F_Currency"].ToString() != "":
strFilter += " AND (<28>ұ<EFBFBD> = '{0}' OR <20><><EFBFBD><EFBFBD> IN (3,4) OR '{0}' = '0')".format(BB)
if ZKTSHX:
strFilter += " AND <20><><EFBFBD><EFBFBD> IN (3,4)"
if BKTSHX:
strFilter += " AND <20><><EFBFBD><EFBFBD> NOT IN (3,4)"
if SKDH != "":
strFilter += " AND ShouKuanBillNo = '{0}'".format(SKDH)
2025-08-25 18:44:53 +08:00
if customFiler["FSaler"] != None and customFiler["FSaler"].ToString() != "":
strFilter += " AND (ISNULL('{0}','') = '' OR <20><><EFBFBD><EFBFBD>Ա LIKE '%{0}%' OR ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>')".format(str(customFiler["FSaler"].ToString()))
if customFiler["FSBU"] != None and customFiler["FSBU"].ToString() != "":
strFilter += " AND (ISNULL('{0}','') = '' OR SBU LIKE '%{0}%' OR ҵ<><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>')".format(str(customFiler["FSBU"].ToString()))
2025-08-19 09:32:59 +08:00
sql = String.format("""/*dialect*/
/*ץȡ<EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
SELECT T1.FID,T1.F_CONTRACTNUMBER AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',CASE ISNULL(T3.F_RES,'') WHEN '' THEN ISNULL(T5.FNAME,CASE ISNULL(T1.F_RESPONSIBLE,'') WHEN '' THEN T4.FNAME ELSE T1.F_RESPONSIBLE END) ELSE F_RES END AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա'
,FSHARERATE AS '<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',FEXCHANGERATE AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>',T7.FNAME AS '<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
INTO #TEMP1
FROM T_SAL_ORDER T1
LEFT JOIN T_PerformanceSharing_LK T2 ON T2.FSID = T1.FID
LEFT JOIN T_PerformanceSharingEntry T3 ON T2.FID = T3.FID
LEFT JOIN V_BD_SALESMAN_L T4 ON T4.FID = T1.FSALERID AND T4.FLOCALEID = 2052
LEFT JOIN V_BD_SALESMAN_L T5 ON T5.FID = T3.FSALEID AND T5.FLOCALEID = 2052
LEFT JOIN T_SAL_ORDERFIN T6 ON T1.FID = T6.FID
LEFT JOIN T_BD_CUSTOMER_L T7 ON T1.FCUSTID = T7.FCUSTID AND T7.FLOCALEID = 2052
WHERE T1.FID IN (SELECT XiaoShouFid FROM ZZZ_HeXiaoBook)
AND T1.FDOCUMENTSTATUS = 'C'
--AND (T1.FSALEORGID = {4} OR {4} = 0)
2025-08-20 15:51:52 +08:00
AND (T1.FCUSTID = {5} OR {5} = 0)
2025-08-19 09:32:59 +08:00
/*ץȡ<EFBFBD>տ<EFBFBD><EFBFBD>Ӧ<EFBFBD><EFBFBD>Ʊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
SELECT T1.FID,FORMAT(T1.FDATE,'yyyy-MM-dd') AS '<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>',T1.FRECAMOUNT AS '<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,T3.FNAME AS '<EFBFBD><EFBFBD><EFBFBD>λ',T4.FNAME AS '<EFBFBD><EFBFBD><EFBFBD>ʽ',FORMAT(T6.FDUEDATE,'yyyy-MM-dd') AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
INTO #TEMP2
FROM T_AR_RECEIVEBILL T1
LEFT JOIN T_AR_RECEIVEBILLENTRY T2 ON T1.FID = T2.FID
LEFT JOIN T_BD_CUSTOMER_L T3 ON T1.FPAYUNITTYPE = 'BD_Customer' AND T1.FPAYUNIT = T3.FCUSTID AND T3.FLOCALEID = 2052
LEFT JOIN T_BD_SETTLETYPE_L T4 ON T2.FSETTLETYPEID = T4.FID AND T4.FLOCALEID = 2052
LEFT JOIN T_AR_RECEIVEBILLREC T5 ON T5.FID = T2.FID
LEFT JOIN T_CN_BILLRECEIVABLE T6 ON T5.FBILLID = T6.FID
WHERE 1=1
--AND T1.FID IN (SELECT ShouKuanFid FROM ZZZ_HeXiaoBook)
AND T1.FDOCUMENTSTATUS = 'C'
AND (T1.FPAYORGID = {4} OR {4} = 0)
AND (T1.FPAYUNIT = {5} OR {5} = 0)
--AND (T1.FDATE >= '{6}' OR '{6}' = '')
--AND (T1.FDATE <= '{7}' OR '{7}' = '')
/*ץȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD>м<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
SELECT
T1.Fid,T1.XiaoShouFid,T1.ShouKuanFid,T1.ShouKuanBillNo
,CAST(ISNULL(T2.<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0)AS decimal(10,2)) AS '<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
2025-09-18 10:15:46 +08:00
,ROW_NUMBER() OVER(PARTITION BY T1.ShouKuanFid ORDER BY T1.ShouKuanFid,ShouKuanFDate,XiaoShouFid) AS '<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
2025-08-19 09:32:59 +08:00
,FORMAT(T1.ShouKuanFDate,'yyyy-MM-dd') AS 'ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST('' AS VARCHAR(500)) AS '<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD>ϸ'
,CAST('' AS VARCHAR(500)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST('' AS VARCHAR(500)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ISNULL(T2.<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'') AS '<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST(0 AS decimal(10,2)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST((ISNULL(T2.<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,100)/100 * T1.BenCiHeXiao * T2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) AS decimal(10,2)) AS '<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,T2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ISNULL(T2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա,'') AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա'
,CAST('' AS VARCHAR(500)) AS 'SBU'
,CAST('' AS VARCHAR(500)) AS '<EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,T1.Remark AS '<EFBFBD><EFBFBD>ע'
,CAST('' AS VARCHAR(500)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST(0 AS decimal(10,2)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST(0 AS decimal(10,2)) AS 'һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST(0 AS decimal(10,2)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST(0 AS decimal(10,2)) AS 'һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST(0 AS decimal(10,2)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST(0 AS decimal(10,2)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST(0 AS decimal(10,2)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST(0 AS decimal(10,2)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST('' AS VARCHAR(500)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>׶<EFBFBD>'
,T1.ZhangLing AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST('' AS VARCHAR(500)) AS '<EFBFBD>ұ<EFBFBD>'
,1 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
INTO #TEMP3
FROM ZZZ_HeXiaoBook T1
INNER JOIN #TEMP1 T2 ON T1.XiaoShouFid = T2.FID
WHERE T1.ShouKuanType = 0
AND (T1.FSaleOrgId = {4} OR {4} = 0)
AND (FORMAT(T1.ShouKuanFDate,'yyyy-MM-dd') >= '{8}' OR '{8}' = '')
AND (FORMAT(T1.ShouKuanFDate,'yyyy-MM-dd') <= '{9}' OR '{9}' = '')
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
INSERT INTO #TEMP3 (Fid,ShouKuanFid,ShouKuanBillNo,<2C><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>Ա,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>,<2C><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>,<2C><EFBFBD><EEB5BD><EFBFBD><EFBFBD>,һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>ʮ<EFBFBD><CAAE><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,һ<><D2BB><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD>׶<EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>)
SELECT DISTINCT
'99999999' AS 'Fid'
,T1.FID
,T1.FBILLNO
,'99999999' AS '<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,FORMAT(T1.FDATE,'yyyy-MM-dd') AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,'' AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա'
,'<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,0 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ISNULL(T1.FRECAMOUNT,0)-(ISNULL(T1.F_AMOUNT,0)*ISNULL(T1.FEXCHANGERATE,0)) AS '<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,'' AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
2025-09-18 10:15:46 +08:00
,ISNULL(T3.FNAME,'') AS '<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
2025-08-19 09:32:59 +08:00
,0 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,0 AS 'һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,0 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,0 AS 'һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,0 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,0 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,0 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,0 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST('' AS VARCHAR(500)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>׶<EFBFBD>'
,0
,1 AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
FROM T_AR_RECEIVEBILL T1
--INNER JOIN #TEMP3 T2 ON T1.FID = T2.ShouKuanFid
LEFT JOIN T_BD_CUSTOMER_L T3 ON T1.FPAYUNITTYPE = 'BD_Customer' AND T1.FPAYUNIT = T3.FCUSTID AND T3.FLOCALEID = 2052
WHERE ISNULL(T1.FRECAMOUNTFOR,0)-ISNULL(T1.F_AMOUNT,0) > 0
AND T1.FDOCUMENTSTATUS = 'C'
AND (T1.FPAYORGID = {4} OR {4} = 0)
AND ((T1.FPAYUNIT = {5} AND T1.FPAYUNITTYPE = 'BD_Customer') OR {5} = 0)
AND (T1.FDATE >= '{6}' OR '{6}' = '')
AND (T1.FDATE <= '{7}' OR '{7}' = '')
/*ץȡ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ˮ<EFBFBD>м<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
INSERT INTO #TEMP3 (Fid,XiaoShouFid,ShouKuanFid,ShouKuanBillNo,<2C><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD>,<2C><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD><><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><>ͬ<EFBFBD><CDAC><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>,<2C><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C><><EFBFBD><EFBFBD>Ա,<2C><>ע,<2C><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,<2C>ұ<EFBFBD>,<2C><><EFBFBD><EFBFBD>)
SELECT a.* FROM(
SELECT 0 Fid,0 XiaoShouFid,0 ShouKuanFid,'' ShouKuanBillNo,0 <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0 <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'' <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'' <EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0 <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'' <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'' <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա,'' <EFBFBD><EFBFBD>ע,0 <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'' <EFBFBD>ұ<EFBFBD>,3 <EFBFBD><EFBFBD><EFBFBD><EFBFBD>
UNION ALL
SELECT
T1.Fid,T1.XiaoShouFid,T1.ShouKuanFid,T1.ShouKuanBillNo
,CAST(ISNULL(T2.<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0)AS decimal(10,2)) AS '<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ROW_NUMBER() OVER(PARTITION BY T1.ShouKuanFid ORDER BY T1.ShouKuanFDate) AS '<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,FORMAT(T1.ShouKuanFDate,'yyyy-MM-dd') AS 'ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ISNULL(T2.<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'') AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ISNULL(T2.<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'') AS '<EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST((ISNULL(T2.<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,100)/100 * T1.BenCiHeXiao * T2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) AS decimal(10,2)) AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST((ISNULL(T2.<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,100)/100 * T1.BenCiHeXiao * T2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) AS decimal(10,2)) AS '<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,T2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,ISNULL(T2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա,'') AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա'
,T1.Remark AS '<EFBFBD><EFBFBD>ע'
,T1.ZhangLing AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,CAST('' AS VARCHAR(500)) AS '<EFBFBD>ұ<EFBFBD>'
2025-08-20 15:51:52 +08:00
--,CASE T1.ShouKuanType WHEN 1 THEN 3 WHEN 2 THEN 4 END AS '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
,3 '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
2025-08-19 09:32:59 +08:00
FROM ZZZ_HeXiaoBook T1
INNER JOIN #TEMP1 T2 ON T1.XiaoShouFid = T2.FID
WHERE T1.ShouKuanType IN (1,2)
AND (T1.FSaleOrgId = {4} OR {4} = 0)
AND (FORMAT(T1.ShouKuanFDate,'yyyy-MM-dd') >= '{8}' OR '{8}' = '')
AND (FORMAT(T1.ShouKuanFDate,'yyyy-MM-dd') <= '{9}' OR '{9}' = '')
)a
/*<EFBFBD>޸Ĵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
SELECT *, ROW_NUMBER() OVER(PARTITION BY ShouKuanFid ORDER BY ShouKuanFid,<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>) rownumber
INTO #TEMP4
FROM #TEMP3
UPDATE T1 SET <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> =T2.rownumber FROM #TEMP3 T1
INNER JOIN #TEMP4 T2 ON T1.Fid = T2.Fid
AND T1.ShouKuanFid = T2.ShouKuanFid
AND T1.<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = T2.<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
/*<EFBFBD><EFBFBD><EFBFBD>±<EFBFBD>ע<EFBFBD>ֶ<EFBFBD>*/
UPDATE T1 SET <EFBFBD><EFBFBD>ע = T2.<EFBFBD><EFBFBD><EFBFBD>㷽ʽ +<EFBFBD><EFBFBD>ע FROM #TEMP3 T1
INNER JOIN #TEMP2 T2 ON T1.ShouKuanFid = T2.FID
WHERE T2.<EFBFBD><EFBFBD><EFBFBD>㷽ʽ <> '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
UPDATE T1 SET <EFBFBD><EFBFBD><EFBFBD><EFBFBD> = T2.<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FROM #TEMP3 T1
INNER JOIN #TEMP2 T2 ON T1.ShouKuanFid = T2.FID
/*<EFBFBD><EFBFBD><EFBFBD>¸<EFBFBD><EFBFBD>λ<EFBFBD>ֶ<EFBFBD>*/
UPDATE A SET <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = T2.<EFBFBD><EFBFBD><EFBFBD>λ FROM #TEMP3 A
INNER JOIN (SELECT A.FID
,CASE WHEN REPLACE(F_OTHER,' ','') <> '' AND F_OTHER IS NOT NULL THEN F_OTHER ELSE C.FNAME END AS '<EFBFBD><EFBFBD><EFBFBD>λ'
FROM T_AR_RECEIVEBILL A
LEFT JOIN T_AR_RECEIVEBILLENTRY B ON A.FID = B.FID
LEFT JOIN T_BD_CUSTOMER_L C ON A.FPAYUNITTYPE = 'BD_Customer' AND A.FPAYUNIT = C.FCUSTID AND C.FLOCALEID = 2052
) T2 ON A.ShouKuanFid = T2.FID
WHERE <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = 1
/*<EFBFBD><EFBFBD><EFBFBD>±ұ<EFBFBD><EFBFBD>ֶ<EFBFBD>*/
UPDATE A SET <EFBFBD>ұ<EFBFBD> = T2.<EFBFBD>ұ<EFBFBD> FROM #TEMP3 A
INNER JOIN (SELECT A.FID
,D.FNAME AS '<EFBFBD>ұ<EFBFBD>'
FROM T_AR_RECEIVEBILL A
LEFT JOIN T_AR_RECEIVEBILLENTRY B ON A.FID = B.FID
LEFT JOIN T_BD_CURRENCY_L D ON D.FCURRENCYID = A.FCURRENCYID AND D.FLOCALEID = 2052
) T2 ON A.ShouKuanFid = T2.FID
--/*<EFBFBD><EFBFBD><EFBFBD>´<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>*/
--UPDATE A SET <EFBFBD><EFBFBD>ͬ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = ISNULL(<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>,'') FROM #TEMP3 A
--WHERE <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' AND <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = 1
/*ֻ<EFBFBD><EFBFBD><EFBFBD>·<EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ϊ1<EFBFBD><EFBFBD><EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>*/
UPDATE T1 SET <EFBFBD><EFBFBD><EFBFBD><EFBFBD> = T2.<EFBFBD>տ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FROM #TEMP3 T1
INNER JOIN #TEMP2 T2 ON T1.ShouKuanFid = T2.FID
WHERE T1.<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = 1
/*<EFBFBD><EFBFBD><EFBFBD>µ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ڣ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>У<EFBFBD><EFBFBD>ֶ<EFBFBD>*/
UPDATE T1 SET <EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> = T2.<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> FROM #TEMP3 T1
INNER JOIN #TEMP2 T2 ON T1.ShouKuanFid = T2.FID
WHERE T2.<EFBFBD><EFBFBD><EFBFBD>㷽ʽ IN ('<EFBFBD><EFBFBD><EFBFBD>гжһ<EFBFBD>Ʊ','<EFBFBD><EFBFBD>ҵ<EFBFBD>жһ<EFBFBD>Ʊ')
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD>SBU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>*/
UPDATE #TEMP3 SET SBU=b.<2E><><EFBFBD><EFBFBD>,[<5B><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>]=b.<2E><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>
FROM (SELECT DISTINCT ACO22.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,ACO22.<EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,ACO22.<EFBFBD><EFBFBD><EFBFBD><EFBFBD> FROM ERPTOHR.HYHRV3.dbo.v_erp_empinfo ACO22 ) b
WHERE <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա=b.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
2025-08-21 16:54:17 +08:00
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա'Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>'ʱ<EFBFBD><EFBFBD>SBU<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϸ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>'*/
UPDATE #TEMP3 SET SBU=<3D><><EFBFBD><EFBFBD>Ա,[<5B><>ϸ<EFBFBD><CFB8><EFBFBD><EFBFBD>]=<3D><><EFBFBD><EFBFBD>Ա
WHERE <EFBFBD><EFBFBD><EFBFBD><EFBFBD>Ա='Ӧ<EFBFBD>տ<EFBFBD>ר<EFBFBD><EFBFBD>С<EFBFBD><EFBFBD>'
2025-08-19 09:32:59 +08:00
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>β<EFBFBD><EFBFBD>*/
UPDATE T1 SET <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = ISNULL(T1.<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0)+(ISNULL(T1.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0)-ISNULL(T2.<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0)) FROM #TEMP3 T1
INNER JOIN(SELECT ShouKuanFid,SUM(ISNULL(<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>,0)) <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> FROM #TEMP3 GROUP BY ShouKuanFid) T2 ON T1.ShouKuanFid = T2.ShouKuanFid
WHERE T1.<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> = 1 AND T1.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>>0
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>*/
UPDATE #TEMP3 SET
[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>׶<EFBFBD>]=CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=1 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=6 THEN '1-6<><36><EFBFBD><EFBFBD>' WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=7 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=12 THEN '7-12<31><32><EFBFBD><EFBFBD>' WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=13 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=24
THEN '1-2<><32>' WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=25 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=36 THEN '2-3<><33>' WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=37 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=48 THEN '3-4<><34>' WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=49 THEN '5<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' ELSE '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>' END
--,[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]=CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=1 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=6 THEN '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=7 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=12 THEN '<EFBFBD>߿' WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=13 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=18
--THEN '<EFBFBD><EFBFBD>ʦ' WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=19 THEN '<EFBFBD><EFBFBD><EFBFBD><EFBFBD>' ELSE '' END
,[һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]=CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=1 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=6 THEN <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE 0 END
,[<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]=CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=7 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=12 THEN <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE 0 END
,[һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]=CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=13 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=24 THEN <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE 0 END
,[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]=CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=25 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=36 THEN <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE 0 END
,[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]=CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=37 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=48 THEN <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE 0 END
,[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]=CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]>=49 AND [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<=60 THEN <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE 0 END
,[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]=CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]> 60 THEN <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE 0 END
,[<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]=CASE WHEN [<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>]<= 0 THEN <EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ELSE 0 END
WHERE ҵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> <> '<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>'
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ͷ*/
IF (SELECT COUNT(*) FROM #TEMP3 WHERE <20><><EFBFBD><EFBFBD> IN (3,4)) = 1
BEGIN
DELETE FROM #TEMP3 WHERE <20><><EFBFBD><EFBFBD> IN (3,4)
END
UPDATE #TEMP3 SET <20><><EFBFBD><EFBFBD> = CASE WHEN Fid = '99999999' AND <20><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD> = 1 THEN 2 ELSE 1 END WHERE <20><><EFBFBD><EFBFBD> NOT IN (3,4)
/*<EFBFBD><EFBFBD><EFBFBD><EFBFBD>1Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>2Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>3,4Ϊ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>*/
SELECT t1.*,{0}
INTO {1}
FROM (
{3}
{2}
) t1
DROP TABLE #TEMP1,#TEMP2,#TEMP3,#TEMP4
""",seqFld,tableName,strFilter,tempsql,ZZID,KHID,SKRQS,SKRQE,HXRQS,HXRQE)
DBUtils.ExecuteDynamicObject(this.Context, sql)
#<23><><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>Ϣ
def GetSummaryColumnInfo(Filter):
lstfield = List[SummaryField]()
sField1 = SummaryField("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",Core.Enums.BOSEnums.Enu_SummaryType.SUM)
sField2 = SummaryField("<EFBFBD><EFBFBD>̯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>",Core.Enums.BOSEnums.Enu_SummaryType.SUM)
sField3 = SummaryField("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",Core.Enums.BOSEnums.Enu_SummaryType.SUM)
sField4 = SummaryField("һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",Core.Enums.BOSEnums.Enu_SummaryType.SUM)
sField5 = SummaryField("<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʮ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",Core.Enums.BOSEnums.Enu_SummaryType.SUM)
sField6 = SummaryField("һ<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",Core.Enums.BOSEnums.Enu_SummaryType.SUM)
sField7 = SummaryField("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",Core.Enums.BOSEnums.Enu_SummaryType.SUM)
sField8 = SummaryField("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",Core.Enums.BOSEnums.Enu_SummaryType.SUM)
sField9 = SummaryField("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",Core.Enums.BOSEnums.Enu_SummaryType.SUM)
sField10 = SummaryField("<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>",Core.Enums.BOSEnums.Enu_SummaryType.SUM)
lstfield.Add(sField1)
lstfield.Add(sField2)
lstfield.Add(sField3)
lstfield.Add(sField4)
lstfield.Add(sField5)
lstfield.Add(sField6)
lstfield.Add(sField7)
lstfield.Add(sField8)
lstfield.Add(sField9)
lstfield.Add(sField10)
return lstfield
#<23><><EFBFBD><EFBFBD>
def OrderColumn(Filter):
OrderBy = ""
datasort = Filter.FilterParameter.SortString.ToString()
if datasort != "":
OrderBy = datasort
else:
OrderBy = " <20><><EFBFBD><EFBFBD>,ShouKuanFid,<2C><>̯<EFBFBD><CCAF><EFBFBD><EFBFBD><><D2B5><EFBFBD><EFBFBD><EFBFBD><EFBFBD> "
return OrderBy
#<23>ر<EFBFBD><D8B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
def CloseReport():
this.DropTempTable()