2
This commit is contained in:
83
05.长园/CYG.Python/PRD_MORPT/OperationEventPlugInEx.py
Normal file
83
05.长园/CYG.Python/PRD_MORPT/OperationEventPlugInEx.py
Normal file
@@ -0,0 +1,83 @@
|
||||
#<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ɾ<36><C9BE>3
|
||||
if this.FormOperation.OperationId == 1:
|
||||
Audit2DoUpdMoRptInfo(e)
|
||||
|
||||
def Audit2DoUpdMoRptInfo(e):
|
||||
# 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);
|
||||
72
05.长园/CYG.Python/PRD_MORPT/SQLServer/实际工时归集关联查询.sql
Normal file
72
05.长园/CYG.Python/PRD_MORPT/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
05.长园/CYG.Python/PRD_MORPT/SQLServer/长园客户与开票单位数据置换.sql
Normal file
22
05.长园/CYG.Python/PRD_MORPT/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
|
||||
Reference in New Issue
Block a user