a
This commit is contained in:
80
CY.PRD_MORPT.Python/CY.PRD_MORPT.Python.py
Normal file
80
CY.PRD_MORPT.Python/CY.PRD_MORPT.Python.py
Normal file
@@ -0,0 +1,80 @@
|
||||
#<23><><EFBFBD><EFBFBD>clr<6C><72><EFBFBD>п<EFBFBD>
|
||||
import clr
|
||||
#<23><><EFBFBD>Ӷ<EFBFBD>cloud<75><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
clr.AddReference('System')
|
||||
clr.AddReference('System.Data')
|
||||
clr.AddReference('Kingdee.BOS')
|
||||
clr.AddReference('Kingdee.BOS.Core')
|
||||
clr.AddReference('Kingdee.BOS.App')
|
||||
clr.AddReference('Kingdee.BOS.Contracts')
|
||||
clr.AddReference('Kingdee.BOS.DataEntity')
|
||||
clr.AddReference('Kingdee.BOS.ServiceHelper')
|
||||
#dairycloud<75><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еij<D0B5><C4B3><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F3A3A8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ䵼<D5BC>룬<EFBFBD><EBA3AC><EFBFBD><EFBFBD><EFBFBD>ݹ鵼<DDB9>룩
|
||||
from Kingdee.BOS.Core import *
|
||||
from Kingdee.BOS.Util import *
|
||||
from Kingdee.BOS.Core.Bill import *
|
||||
from Kingdee.BOS.Core.Bill.PlugIn import *
|
||||
from Kingdee.BOS.Orm.DataEntity import *
|
||||
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
|
||||
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
|
||||
from Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel import *
|
||||
from System import *
|
||||
from System.Data import *
|
||||
from Kingdee.BOS.App.Data import *
|
||||
from System.Collections.Generic import List
|
||||
from Kingdee.BOS.ServiceHelper import *
|
||||
|
||||
def OnPreparePropertys(e):
|
||||
e.FieldKeys.Add("F_CYG_Worktype")
|
||||
e.FieldKeys.Add("FFinishQty")
|
||||
e.FieldKeys.Add("FStdManHour")
|
||||
e.FieldKeys.Add("FMaterialId")
|
||||
e.FieldKeys.Add("FHRWORKTIME")
|
||||
|
||||
def EndOperationTransaction(e):
|
||||
# <20><><EFBFBD><EFBFBD>8<EFBFBD>ύ9<E1BDBB><39><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>26
|
||||
if this.FormOperation.OperationId == 1:
|
||||
# sqlList = """"""
|
||||
sqlLList=List[str]();
|
||||
for data in e.DataEntitys:
|
||||
billId = data["Id"]
|
||||
formId = data["FFormId"]
|
||||
for item in data["PRD_MORPTENTRY"]:
|
||||
entryId =item["Id"]
|
||||
entrySeq = item["Seq"]
|
||||
# Ĭ<><C4AC>ȡ<EFBFBD><C8A1><EFBFBD>ε<EFBFBD><CEB5><EFBFBD><EFBFBD><EFBFBD>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ
|
||||
hrWorkTime = item["HrWorkTime"]
|
||||
fitTimeTotal = 0
|
||||
guideTimeTotal = 0
|
||||
workTimeTypeVal = item["F_CYG_Worktype"]
|
||||
workTimeType = (0 if workTimeTypeVal.strip() == '' else int(workTimeTypeVal))
|
||||
# <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> 0.<2E><> 1.<2E><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ 2.ָ<><D6B8><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ 3.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ
|
||||
if (workTimeType) > 0:
|
||||
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
finishQty = item["FinishQty"]
|
||||
# <20><><EFBFBD><D7BC>λʱ<CEBB><CAB1>
|
||||
stdManHour = item["StdManHour"]
|
||||
# 1.<2E><><EFBFBD><D7BC>λʱ<CEBB>䲻Ϊ<E4B2BB><CEAA>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><D7BC>λʱ<CEBB>䣩
|
||||
if stdManHour != 0:
|
||||
hrWorkTime = finishQty * stdManHour
|
||||
if workTimeType != 3:
|
||||
materialId = item["MaterialId"]
|
||||
if workTimeType == 1:
|
||||
fitTime = materialId["F_CYG_FitTime"]
|
||||
fitTimeTotal = fitTime * finishQty
|
||||
# 2.<2E><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ <20><><EFBFBD><D7BC>λʱ<CEBB><CAB1>Ϊ0ʱ <20><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ = <20><><EFBFBD>ε<EFBFBD><CEB5>ݹ<EFBFBD>ʱ
|
||||
if stdManHour == 0:
|
||||
hrWorkTime = hrWorkTime - fitTimeTotal
|
||||
if workTimeType == 2:
|
||||
guideTime = materialId["F_CYG_GuideTime"]
|
||||
guideTimeTotal = guideTime * finishQty
|
||||
# 3.ָ<><D6B8><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ <20><><EFBFBD><D7BC>λʱ<CEBB><CAB1>Ϊ0ʱ <20><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ = <20><><EFBFBD>ε<EFBFBD><CEB5>ݹ<EFBFBD>ʱ
|
||||
if stdManHour == 0:
|
||||
hrWorkTime = hrWorkTime - guideTimeTotal
|
||||
sql = ("""/*dialect*/UPDATE T_CB_WORKHOURSENTRY SET F_CYG_Worktype = '{0}' ,FFitTimeTotal = {1},FguideTimeTotal = {2},FHrWorkTimePart = {3}
|
||||
WHERE FSRCBILLID = {4} AND FSRCENTRYID = {5} AND FSRCSEQ = {6} AND FSRCBILLFORMID = '{7}' ;""").format(workTimeType,fitTimeTotal,guideTimeTotal,hrWorkTime,billId,entryId,entrySeq,formId)
|
||||
# sqlList = sqlList + sql;
|
||||
sqlLList.Add(sql);
|
||||
# DBUtils.Execute(this.Context,sqlList)
|
||||
if(sqlLList.Count > 0):
|
||||
DBUtils.ExecuteBatch(this.Context,sqlLList,sqlLList.Count);
|
||||
42
CY.PRD_MORPT.Python/CY.PRD_MORPT.Python.pyproj
Normal file
42
CY.PRD_MORPT.Python/CY.PRD_MORPT.Python.pyproj
Normal file
@@ -0,0 +1,42 @@
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
|
||||
<PropertyGroup>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>72a852a8-55c5-4c72-95ed-13b3a6e670ef</ProjectGuid>
|
||||
<ProjectHome>.</ProjectHome>
|
||||
<StartupFile>CY.PRD_MORPT.Python.py</StartupFile>
|
||||
<SearchPath>
|
||||
</SearchPath>
|
||||
<WorkingDirectory>.</WorkingDirectory>
|
||||
<OutputPath>.</OutputPath>
|
||||
<Name>CY.PRD_MORPT.Python</Name>
|
||||
<RootNamespace>CY.PRD_MORPT.Python</RootNamespace>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<EnableUnmanagedDebugging>false</EnableUnmanagedDebugging>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="CY.PRD_MORPT.Python.py" />
|
||||
<Compile Include="类1.py" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="SQLServer\" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="SQLServer\实际工时归集关联查询.sql" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\Python Tools\Microsoft.PythonTools.targets" />
|
||||
<!-- Uncomment the CoreCompile target to enable the Build command in
|
||||
Visual Studio and specify your pre- and post-build commands in
|
||||
the BeforeBuild and AfterBuild targets below. -->
|
||||
<!--<Target Name="CoreCompile" />-->
|
||||
<Target Name="BeforeBuild">
|
||||
</Target>
|
||||
<Target Name="AfterBuild">
|
||||
</Target>
|
||||
</Project>
|
||||
72
CY.PRD_MORPT.Python/SQLServer/实际工时归集关联查询.sql
Normal file
72
CY.PRD_MORPT.Python/SQLServer/实际工时归集关联查询.sql
Normal file
@@ -0,0 +1,72 @@
|
||||
SELECT
|
||||
t0.FBILLNO
|
||||
,t0e.FSRCBILLNO
|
||||
,t0e.FENTRYID
|
||||
,t1e.F_CYG_WORKTYPE
|
||||
,t1e.FFINISHQTY
|
||||
,t1e.FSTDMANHOUR
|
||||
,t1e.FHRWORKTIME
|
||||
,t2p.FPERUNITSTANDHOUR
|
||||
,(CASE t1e.F_CYG_WORKTYPE --<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
WHEN '' THEN t1e.FHRWORKTIME --<EFBFBD><EFBFBD>Աʵ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ʱ
|
||||
ELSE (CASE t1e.FSTDMANHOUR
|
||||
WHEN 0 THEN t1e.FHRWORKTIME
|
||||
ELSE t1e.FSTDMANHOUR * t1e.FFINISHQTY
|
||||
END)
|
||||
END) 'NEW_FHRWORKTIME'
|
||||
,t2.F_CYG_FITTIME
|
||||
,CASE t1e.F_CYG_WORKTYPE WHEN '1' THEN t2.F_CYG_FITTIME * t1e.FFINISHQTY ELSE 0 END 'NEW_FITTIME'
|
||||
,t2.F_CYG_GUIDETIME
|
||||
,CASE t1e.F_CYG_WORKTYPE WHEN '2' THEN t2.F_CYG_GUIDETIME * t1e.FFINISHQTY ELSE 0 END 'NEW_GUIDETIME'
|
||||
INTO #temp
|
||||
FROM T_CB_WORKHOURS t0 --ʵ<EFBFBD>ʹ<EFBFBD>ʱ<EFBFBD>鼯<EFBFBD><EFBFBD>ͷ
|
||||
INNER JOIN T_CB_WORKHOURSENTRY t0e on t0.FID = t0e.FID --ʵ<EFBFBD>ʹ<EFBFBD>ʱ<EFBFBD>鼯<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
INNER JOIN T_PRD_MORPTENTRY t1e on t1e.FENTRYID = t0e.FSRCENTRYID --<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㱨<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
AND t1e.FID = t0e.FSRCBILLID AND t1e.FSEQ = t0e.FSRCSEQ AND t0e.FSRCBILLFORMID = 'PRD_MORPT'
|
||||
INNER JOIN T_BD_MATERIAL t2 on t2.FMATERIALID = t1e.FMATERIALID
|
||||
INNER JOIN T_BD_MATERIALPRODUCE t2p on t2p.FMATERIALID = t1e.FMATERIALID
|
||||
|
||||
--<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> ''.<EFBFBD><EFBFBD> 1.<EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD>ʱ 2.ָ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><EFBFBD>ʱ 3.<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>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ
|
||||
|
||||
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㱨.<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> == 1 <EFBFBD><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><EFBFBD><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ - <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><EFBFBD>.<2E><>װ<EFBFBD><D7B0>ʱ#
|
||||
-- <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB><EFBFBD><D7BC>ʱ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <20><>:ʵ<>ʹ<EFBFBD>ʱ<EFBFBD>鼯.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB><EFBFBD><D7BC>ʱ
|
||||
|
||||
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㱨.<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> == 2 <EFBFBD><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><EFBFBD><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ - <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><EFBFBD>.ָ<><D6B8><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ
|
||||
-- <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB><EFBFBD><D7BC>ʱ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <20><>:ʵ<>ʹ<EFBFBD>ʱ<EFBFBD>鼯.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB><EFBFBD><D7BC>ʱ
|
||||
|
||||
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>㱨.<EFBFBD><EFBFBD>ʱ<EFBFBD><EFBFBD><EFBFBD><EFBFBD> == 3 <EFBFBD><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><EFBFBD><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ
|
||||
-- <09><><EFBFBD><EFBFBD> <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB><EFBFBD><D7BC>ʱ <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD> 0 <20><>:ʵ<>ʹ<EFBFBD>ʱ<EFBFBD>鼯.<2E><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ# = <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><EFBFBD><EFBFBD>㱨.<2E><>λ<EFBFBD><CEBB><EFBFBD><D7BC>ʱ
|
||||
|
||||
|
||||
--SELECT
|
||||
-- t0.FBILLNO
|
||||
-- ,t0.FSRCBILLNO
|
||||
-- ,t0.FENTRYID
|
||||
-- ,t0.F_CYG_WORKTYPE
|
||||
-- ,t0.FFINISHQTY
|
||||
-- ,t0.FSTDMANHOUR
|
||||
-- ,t0.FHRWORKTIME
|
||||
-- ,t0.FPERUNITSTANDHOUR
|
||||
-- ,t0.NEW_FHRWORKTIME
|
||||
-- ,t0.F_CYG_FITTIME
|
||||
-- ,t0.NEW_FITTIME
|
||||
-- ,t0.F_CYG_GUIDETIME
|
||||
-- ,t0.NEW_GUIDETIME
|
||||
-- INTO #temp1
|
||||
--FROM #temp t0
|
||||
--WHERE t0.FSTDMANHOUR = 0
|
||||
|
||||
--<EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
--UPDATE t0e
|
||||
--SET t0e.F_CYG_WORKTYPE = t1.F_CYG_WORKTYPE
|
||||
-- ,t0e.FFitTimeTotal =t1.NEW_FITTIME
|
||||
-- ,t0e.FguideTimeTotal = t1.NEW_GUIDETIME
|
||||
-- ,t0e.FHrWorkTimePart = t1.NEW_FHRWORKTIME
|
||||
--FROM T_CB_WORKHOURSENTRY t0e
|
||||
-- INNER JOIN #temp t1 on t0e.FENTRYID = t1.FENTRYID
|
||||
|
||||
SELECT * FROM #temp
|
||||
DROP TABLE #temp
|
||||
--SELECT * FROM #temp1
|
||||
--DROP TABLE #temp1
|
||||
22
CY.PRD_MORPT.Python/SQLServer/长园客户与开票单位数据置换.sql
Normal file
22
CY.PRD_MORPT.Python/SQLServer/长园客户与开票单位数据置换.sql
Normal file
@@ -0,0 +1,22 @@
|
||||
SELECT
|
||||
t0.FBILLNO
|
||||
,t0.FID
|
||||
,t0.F_CYG_BASE AS 'NewCYG_BASE1'
|
||||
,t0.F_CYG_BASE1 AS 'NewCYG_BASE'
|
||||
INTO #TEMP1
|
||||
FROM T_AR_REFUNDBILL t0
|
||||
|
||||
----SELECT * FROM #TEMP1
|
||||
SELECT
|
||||
t0.FID
|
||||
,t0.F_CYG_BASE
|
||||
,tt.NewCYG_BASE
|
||||
,t0.F_CYG_BASE1
|
||||
,tt.NewCYG_BASE1
|
||||
FROM T_AR_REFUNDBILL t0
|
||||
INNER JOIN #TEMP1 tt on t0.FID = tt.FID
|
||||
|
||||
--UPDATE t0 SET t0.F_CYG_BASE =tt.NewCYG_BASE,t0.F_CYG_BASE1 =tt.NewCYG_BASE1
|
||||
--FROM T_AR_REFUNDBILL t0
|
||||
-- INNER JOIN #TEMP1 tt on t0.FID = tt.FID
|
||||
DROP TABLE #TEMP1
|
||||
82
CY.PRD_MORPT.Python/类1.py
Normal file
82
CY.PRD_MORPT.Python/类1.py
Normal file
@@ -0,0 +1,82 @@
|
||||
|
||||
#<23><><EFBFBD><EFBFBD>clr<6C><72><EFBFBD>п<EFBFBD>
|
||||
import clr
|
||||
#<23><><EFBFBD>Ӷ<EFBFBD>cloud<75><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ij<EFBFBD><C4B3><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
clr.AddReference('System')
|
||||
clr.AddReference('System.Data')
|
||||
clr.AddReference('Kingdee.BOS')
|
||||
clr.AddReference('Kingdee.BOS.Core')
|
||||
clr.AddReference('Kingdee.BOS.App')
|
||||
clr.AddReference('Kingdee.BOS.Contracts')
|
||||
clr.AddReference('Kingdee.BOS.DataEntity')
|
||||
clr.AddReference('Kingdee.BOS.ServiceHelper')
|
||||
#dairycloud<75><64><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>еij<D0B5><C4B3><EFBFBD>ʵ<EFBFBD><CAB5><EFBFBD><EFBFBD><EFBFBD><EFBFBD><F3A3A8B7><EFBFBD><EFBFBD><EFBFBD><EFBFBD>ռ䵼<D5BC>룬<EFBFBD><EBA3AC><EFBFBD><EFBFBD><EFBFBD>ݹ鵼<DDB9>룩
|
||||
from Kingdee.BOS.Core import *
|
||||
from Kingdee.BOS.Util import *
|
||||
from Kingdee.BOS.Core.Bill import *
|
||||
from Kingdee.BOS.Core.Bill.PlugIn import *
|
||||
from Kingdee.BOS.Orm.DataEntity import *
|
||||
from Kingdee.BOS.Core.DynamicForm.PlugIn import *
|
||||
from Kingdee.BOS.Core.DynamicForm.PlugIn.Args import *
|
||||
from Kingdee.BOS.Core.DynamicForm.PlugIn.ControlModel import *
|
||||
from System import *
|
||||
from System.Data import *
|
||||
from Kingdee.BOS.App.Data import *
|
||||
from System.Collections.Generic import List
|
||||
from Kingdee.BOS.ServiceHelper import *
|
||||
|
||||
def OnPreparePropertys(e):
|
||||
e.FieldKeys.Add("F_CYG_Worktype")
|
||||
e.FieldKeys.Add("FFinishQty")
|
||||
e.FieldKeys.Add("FStdManHour")
|
||||
e.FieldKeys.Add("FMaterialId")
|
||||
e.FieldKeys.Add("FHRWORKTIME")
|
||||
|
||||
def EndOperationTransaction(e):
|
||||
# <20><><EFBFBD><EFBFBD>8<EFBFBD>ύ9<E1BDBB><39><EFBFBD><EFBFBD>1<EFBFBD><31><EFBFBD><EFBFBD><EFBFBD><EFBFBD>26
|
||||
if this.FormOperation.Operation == "DoUpdateWorkTime":
|
||||
# sqlList = """"""
|
||||
sqlLList=List[str]();
|
||||
for data in e.DataEntitys:
|
||||
billId = data["Id"]
|
||||
formId = data["FFormId"]
|
||||
for item in data["PRD_MORPTENTRY"]:
|
||||
entryId =item["Id"]
|
||||
entrySeq = item["Seq"]
|
||||
# Ĭ<><C4AC>ȡ<EFBFBD><C8A1><EFBFBD>ε<EFBFBD><CEB5><EFBFBD><EFBFBD><EFBFBD>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ
|
||||
hrWorkTime = item["HrWorkTime"]
|
||||
fitTimeTotal = 0
|
||||
guideTimeTotal = 0
|
||||
workTimeTypeVal = item["F_CYG_Worktype"]
|
||||
workTimeType = (0 if workTimeTypeVal.strip() == '' else int(workTimeTypeVal))
|
||||
# <20><>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD> 0.<2E><> 1.<2E><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ 2.ָ<><D6B8><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ 3.<2E><><EFBFBD><EFBFBD><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ
|
||||
if (workTimeType) > 0:
|
||||
# <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD>
|
||||
finishQty = item["FinishQty"]
|
||||
# <20><><EFBFBD><D7BC>λʱ<CEBB><CAB1>
|
||||
stdManHour = item["StdManHour"]
|
||||
# 1.<2E><><EFBFBD><D7BC>λʱ<CEBB>䲻Ϊ<E4B2BB><CEAA>ʱ<EFBFBD><CAB1><EFBFBD><EFBFBD><EFBFBD><EFBFBD>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ = <20><><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD><EFBFBD> * <20><><EFBFBD><D7BC>λʱ<CEBB>䣩
|
||||
if stdManHour != 0:
|
||||
hrWorkTime = finishQty * stdManHour
|
||||
if workTimeType != 3:
|
||||
materialId = item["MaterialId"]
|
||||
if workTimeType == 1:
|
||||
fitTime = materialId["F_CYG_FitTime"]
|
||||
fitTimeTotal = fitTime * finishQty
|
||||
# 2.<2E><><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ <20><><EFBFBD><D7BC>λʱ<CEBB><CAB1>Ϊ0ʱ <20><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ = <20><><EFBFBD>ε<EFBFBD><CEB5>ݹ<EFBFBD>ʱ
|
||||
if stdManHour == 0:
|
||||
hrWorkTime = hrWorkTime - fitTimeTotal
|
||||
if workTimeType == 2:
|
||||
guideTime = materialId["F_CYG_GuideTime"]
|
||||
guideTimeTotal = guideTime * finishQty
|
||||
# 3.ָ<><D6B8><EFBFBD><EFBFBD>װ<EFBFBD><D7B0>ʱ <20><><EFBFBD><D7BC>λʱ<CEBB><CAB1>Ϊ0ʱ <20><>Աʵ<D4B1><CAB5><EFBFBD><EFBFBD>ʱ = <20><><EFBFBD>ε<EFBFBD><CEB5>ݹ<EFBFBD>ʱ
|
||||
if stdManHour == 0:
|
||||
hrWorkTime = hrWorkTime - guideTimeTotal
|
||||
sql = ("""/*dialect*/UPDATE T_CB_WORKHOURSENTRY SET F_CYG_Worktype = '{0}' ,FFitTimeTotal = {1},FguideTimeTotal = {2},FHrWorkTimePart = {3}
|
||||
WHERE FSRCBILLID = {4} AND FSRCENTRYID = {5} AND FSRCSEQ = {6} AND FSRCBILLFORMID = '{7}' ;""").format(workTimeType,fitTimeTotal,guideTimeTotal,hrWorkTime,billId,entryId,entrySeq,formId)
|
||||
# sqlList = sqlList + sql;
|
||||
sqlLList.Add(sql);
|
||||
# DBUtils.Execute(this.Context,sqlList)
|
||||
if(sqlLList.Count > 0):
|
||||
# raise Exception(",".join(sqlLList));
|
||||
DBUtils.ExecuteBatch(this.Context,sqlLList,sqlLList.Count);
|
||||
Reference in New Issue
Block a user