删除 ZHIRONG.Report.DevelopmentCostDetails.py
This commit is contained in:
@@ -1,165 +0,0 @@
|
||||
#-*- 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 *
|
||||
|
||||
_sql = ""
|
||||
FOrg = ""
|
||||
FGroup = ""
|
||||
|
||||
#<23><>ʼ<EFBFBD><CABC>
|
||||
def Initialize():
|
||||
this.ReportProperty.ReportType = ReportType.REPORTTYPE_NORMAL
|
||||
this.IsCreateTempTableByPlugin = True
|
||||
this.ReportProperty.IsGroupSummary = True
|
||||
|
||||
#<23><><EFBFBD>ñ<EFBFBD><C3B1><EFBFBD>
|
||||
def GetReportTitles(Filter):
|
||||
reportTitles = ReportTitles()
|
||||
customFiler = Filter.FilterParameter.CustomFilter
|
||||
if customFiler:
|
||||
FStartDate = customFiler["FStartDate"]
|
||||
FEndDate = customFiler["FEndDate"]
|
||||
global FGroup
|
||||
reportTitles.AddTitle("FStartDate",str(FStartDate))
|
||||
reportTitles.AddTitle("FEndDate",str(FEndDate))
|
||||
reportTitles.AddTitle("FGroup",FGroup)
|
||||
return reportTitles
|
||||
|
||||
#<23><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
def GetBaseDataNameValue(dyobj):
|
||||
name = ""
|
||||
#raise Exception(str(dir(dyobj)))#<23>׳<EFBFBD><D7B3>쳣<EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
if dyobj is None:
|
||||
return name
|
||||
elif dyobj and dyobj.DynamicObjectType.Properties.Contains("Name"):
|
||||
name = dyobj["Name"].ToString()
|
||||
else:
|
||||
for dynbj in dyobj:
|
||||
if dynbj and dynbj.DynamicObjectType.Properties.Contains("Name") == False:
|
||||
dynbj2 = dynbj[2]
|
||||
name = name + ",'" + dynbj2["Name"] + "'"
|
||||
if name.Length > 0:
|
||||
name = name.Substring(1,name.Length - 1)
|
||||
return name
|
||||
|
||||
#<23><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
def GetAssitantDataNameValue(dyobj):
|
||||
name = ""
|
||||
#raise Exception(str(dir(dyobj)))#<23>׳<EFBFBD><D7B3>쳣<EFBFBD><ECB3A3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
if dyobj is None:
|
||||
return name
|
||||
elif dyobj and dyobj.DynamicObjectType.Properties.Contains("DataValue"):
|
||||
name = dyobj["DataValue"].ToString()
|
||||
else:
|
||||
for dynbj in dyobj:
|
||||
if dynbj and dynbj.DynamicObjectType.Properties.Contains("DataValue") == False:
|
||||
dynbj2 = dynbj[2]
|
||||
name = name + ",'" + dynbj2["DataValue"] + "'"
|
||||
if name.Length > 0:
|
||||
name = name.Substring(1,name.Length - 1)
|
||||
return name
|
||||
|
||||
#<23><><EFBFBD>õ<EFBFBD><C3B5><EFBFBD><EFBFBD><EFBFBD>
|
||||
def GetReportHeaders(Filter):
|
||||
header = ReportHeader()
|
||||
# headerch = ReportHeader()
|
||||
global _sql
|
||||
sql = """/*dialect*/SELECT name AS ColumnName FROM sys.dm_exec_describe_first_result_set(N'{0}', NULL, NULL)""".format(_sql)
|
||||
res = DBUtils.ExecuteDynamicObject(this.Context, sql)
|
||||
|
||||
tempsql = """/*dialect*/SELECT TOP 1 [<5B><>֯],[<5B><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>] FROM T_ReportDataSourceDetail"""
|
||||
data = DBUtils.ExecuteDynamicObject(this.Context, tempsql)
|
||||
global FOrg
|
||||
global FGroup
|
||||
if data.Count>0:
|
||||
FOrg = data[0]["<EFBFBD><EFBFBD>֯"].ToString()
|
||||
FGroup = data[0]["<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"].ToString()
|
||||
# FGroup = String.join(",",set(map(lambda x:str(x["<22><>Ŀ<EFBFBD><C4BF><EFBFBD><EFBFBD>"].ToString()),data)))
|
||||
for row in res:
|
||||
ColumnName = row["ColumnName"].ToString().Replace("&","")
|
||||
if ColumnName in ["<EFBFBD><EFBFBD><EFBFBD><EFBFBD>","ƾ֤<EFBFBD><EFBFBD>","ժҪ","<EFBFBD><EFBFBD>Ŀ","<EFBFBD><EFBFBD>Ŀ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"]:
|
||||
header.AddChild(row["ColumnName"],LocaleValue("<EFBFBD><EFBFBD>λ<EFBFBD><EFBFBD><EFBFBD>ƣ<EFBFBD>"+FOrg+"&"+ColumnName,this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
|
||||
continue
|
||||
if ColumnName in ["ƾ֤<EFBFBD><EFBFBD><EFBFBD><EFBFBD>"]:
|
||||
header.AddChild(row["ColumnName"],LocaleValue(row["ColumnName"],this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
|
||||
continue
|
||||
if(ColumnName.IndexOf("qazxsw/")!=-1 and ColumnName!="qazxsw/"):
|
||||
headerch = header.AddChild(row["ColumnName"],LocaleValue(ColumnName.Substring(0,ColumnName.IndexOf("qazxsw/")),this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
|
||||
headerch.AddChild(row["ColumnName"],LocaleValue(ColumnName.Substring(ColumnName.IndexOf("qazxsw/")+7),this.Context.UserLocale.LCID),SqlStorageType.Sqlvarchar)
|
||||
|
||||
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
|
||||
FGroupID = "" if customFiler["FGroup"] == None else str(customFiler["FGroup"]["Id"])
|
||||
DBUtils.Execute(this.Context, "EXEC P_ReportDataSourceDetail '{0}','{2}',{1},'{3}'".format(str(customFiler["FStartDate"].ToString("yyyy-MM-dd")),str(customFiler["FOrg"]["Id"]),str(customFiler["FEndDate"].ToString("yyyy-MM-dd")),FGroupID))
|
||||
global _sql
|
||||
_sql = """SELECT * FROM T_ReportDataSourceDetail"""
|
||||
sql = String.format("""/*dialect*/
|
||||
SELECT t1.*,{0}
|
||||
INTO {1}
|
||||
FROM (
|
||||
{3}
|
||||
{2}
|
||||
) t1
|
||||
|
||||
""",seqFld,tableName,strFilter,_sql)
|
||||
DBUtils.ExecuteDynamicObject(this.Context, sql)
|
||||
|
||||
#<23><>ȡ<EFBFBD><C8A1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
def GetFilterWhere(Filter):
|
||||
customFiler = Filter.FilterParameter.CustomFilter
|
||||
strwhere = StringBuilder()
|
||||
strwhere.AppendLine("WHERE 1 = 1 ")
|
||||
|
||||
FYEAR = customFiler["FYear"]
|
||||
strFilterFYEAR = String.format(" AND T2.FYEAR = '{0}' ",FYEAR) if not String.IsNullOrWhiteSpace(FYEAR) else " "
|
||||
strwhere.AppendLine(strFilterFYEAR)
|
||||
|
||||
return strwhere.ToString()
|
||||
|
||||
# #<23><><EFBFBD>û<EFBFBD><C3BB><EFBFBD><EFBFBD><EFBFBD>Ϣ
|
||||
# def GetSummaryColumnInfo(Filter):
|
||||
# lstfield = List[SummaryField]()
|
||||
# sField = SummaryField("<22><>λ<EFBFBD>ҽ<EFBFBD><D2BD><EFBFBD>",Core.Enums.BOSEnums.Enu_SummaryType.SUM)
|
||||
# lstfield.Add(sField)
|
||||
# return lstfield
|
||||
|
||||
#<23><><EFBFBD><EFBFBD>
|
||||
def OrderColumn(Filter):
|
||||
OrderBy = ""
|
||||
datasort = Filter.FilterParameter.SortString.ToString()
|
||||
if datasort != "":
|
||||
OrderBy = datasort
|
||||
else:
|
||||
OrderBy = " <20><>Ŀ "
|
||||
return OrderBy
|
||||
|
||||
#<23>ر<EFBFBD><D8B1><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ<EFBFBD><CAB1>
|
||||
def CloseReport():
|
||||
this.DropTempTable()
|
||||
Reference in New Issue
Block a user