1
This commit is contained in:
92
05.长园/CYG.Python/SAL_SaleOrder/OperationEventPlugInEx.py
Normal file
92
05.长园/CYG.Python/SAL_SaleOrder/OperationEventPlugInEx.py
Normal file
@@ -0,0 +1,92 @@
|
||||
#<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 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 == 8:
|
||||
for data in e.DataEntitys:
|
||||
documentStatus = data["DocumentStatus"]
|
||||
if documentStatus == "C":
|
||||
# entry = data["SaleOrderEntry"]
|
||||
billId = data["Id"]
|
||||
# formId = data["FFormId"]
|
||||
sqlLList = List[str]();
|
||||
# <20><><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA>
|
||||
sqlLList.Add("""/*dialect*/
|
||||
UPDATE tt SET tt.F_CYG_TEXT1 = STUFF((SELECT distinct ','+ t0e.F_CYG_TEXT4
|
||||
FROM T_SAL_ORDERENTRY t0e --<2D><><EFBFBD>۶<EFBFBD><DBB6><EFBFBD>
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk --<2D><><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>
|
||||
ON t0e.FID = t1e_lk.FSBILLID AND t0e.FENTRYID = t1e_lk.FSID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
WHERE t1e_lk.FENTRYID = tt.FENTRYID --ƴ<>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD>ֶ<EFBFBD>
|
||||
FOR XML PATH('')
|
||||
),1,1,'') --stuff <20><>ת<EFBFBD>к<EFBFBD>ƴ<EFBFBD><C6B4>
|
||||
FROM T_SAL_DELIVERYNOTICEENTRY tt
|
||||
WHERE EXISTS (SELECT 1 FROM T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk WHERE t1e_lk.FSBILLID = {0} AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY' AND t1e_lk.FENTRYID = tt.FENTRYID)
|
||||
""".format(billId))
|
||||
# <20><><EFBFBD>۳<EFBFBD><DBB3>ⵥ
|
||||
sqlLList.Add("""
|
||||
UPDATE tt SET tt.F_CYG_TEXT1 = STUFF((SELECT distinct ','+ t0e.F_CYG_TEXT4
|
||||
FROM T_SAL_ORDERENTRY t0e --<2D><><EFBFBD>۶<EFBFBD><DBB6><EFBFBD>
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk --<2D><><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>
|
||||
ON t0e.FID = t1e_lk.FSBILLID AND t0e.FENTRYID = t1e_lk.FSID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY t1e ON t1e.FENTRYID = t1e_lk.FENTRYID --<2D><><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA>
|
||||
INNER JOIN T_SAL_OUTSTOCKENTRY_LK t2e_lk --<2D><><EFBFBD>۳<EFBFBD><DBB3>ⵥ<EFBFBD><E2B5A5>ϵ<EFBFBD><CFB5>
|
||||
ON t1e.FID = t2e_lk.FSBILLID AND t1e.FENTRYID = t2e_lk.FSID AND t2e_lk.FSTABLENAME = 'T_SAL_DELIVERYNOTICEENTRY'
|
||||
WHERE t2e_lk.FENTRYID = tt.FENTRYID --ƴ<>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD>ֶ<EFBFBD>
|
||||
FOR XML PATH('')
|
||||
),1,1,'') --stuff <20><>ת<EFBFBD>к<EFBFBD>ƴ<EFBFBD><C6B4>
|
||||
FROM T_SAL_OUTSTOCKENTRY tt
|
||||
WHERE EXISTS (
|
||||
SELECT 1 FROM T_SAL_OUTSTOCKENTRY_LK t2e_lk
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY t1e on t2e_lk.FSBILLID = t1e.FID AND t2e_lk.FSID = t1e.FENTRYID
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk on t1e_lk.FENTRYID = t1e.FENTRYID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
WHERE t2e_lk.FENTRYID = tt.FENTRYID AND t2e_lk.FSTABLENAME = 'T_SAL_DELIVERYNOTICEENTRY' AND t1e_lk.FSBILLID = {0})
|
||||
""".format(billId))
|
||||
# Ӧ<>յ<EFBFBD>
|
||||
sqlLList.Add("""
|
||||
UPDATE tt SET tt.F_CYG_TEXT1 = STUFF((SELECT distinct ','+ t0e.F_CYG_TEXT4
|
||||
FROM T_SAL_ORDERENTRY t0e --<2D><><EFBFBD>۶<EFBFBD><DBB6><EFBFBD>
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk --<2D><><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA><EFBFBD><EFBFBD>ϵ<EFBFBD><CFB5>
|
||||
ON t0e.FID = t1e_lk.FSBILLID AND t0e.FENTRYID = t1e_lk.FSID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY t1e ON t1e.FENTRYID = t1e_lk.FENTRYID --<2D><><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA>
|
||||
INNER JOIN T_SAL_OUTSTOCKENTRY_LK t2e_lk --<2D><><EFBFBD>۳<EFBFBD><DBB3>ⵥ<EFBFBD><E2B5A5>ϵ<EFBFBD><CFB5>
|
||||
ON t1e.FID = t2e_lk.FSBILLID AND t1e.FENTRYID = t2e_lk.FSID AND t2e_lk.FSTABLENAME = 'T_SAL_DELIVERYNOTICEENTRY'
|
||||
INNER JOIN T_SAL_OUTSTOCKENTRY t2e on t2e.FENTRYID = t2e_lk.FENTRYID
|
||||
INNER JOIN T_AR_RECEIVABLEENTRY_LK t3e_lk
|
||||
on t2e.FID = t3e_lk.FSBILLID AND t2e.FENTRYID = t3e_lk.FSID AND t3e_lk.FSTABLENAME = 'T_SAL_OUTSTOCKENTRY'
|
||||
WHERE t3e_lk.FENTRYID = tt.FENTRYID --ƴ<>ӹ<EFBFBD><D3B9><EFBFBD><EFBFBD>ֶ<EFBFBD>
|
||||
FOR XML PATH('')
|
||||
),1,1,'') --stuff <20><>ת<EFBFBD>к<EFBFBD>ƴ<EFBFBD><C6B4>
|
||||
FROM T_AR_RECEIVABLEENTRY tt
|
||||
WHERE EXISTS (
|
||||
SELECT 1 FROM T_AR_RECEIVABLEENTRY_LK t3e_lk
|
||||
INNER JOIN T_SAL_OUTSTOCKENTRY t2e on t2e.FID = t3e_lk.FSBILLID AND t2e.FENTRYID = t3e_lk.FSID
|
||||
INNER JOIN T_SAL_OUTSTOCKENTRY_LK t2e_lk on t2e.FENTRYID = t2e_lk.FENTRYID AND t2e_lk.FSTABLENAME = 'T_SAL_DELIVERYNOTICEENTRY'
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY t1e on t2e_lk.FSBILLID = t1e.FID AND t2e_lk.FSID = t1e.FENTRYID
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk on t1e_lk.FENTRYID = t1e.FENTRYID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
WHERE t3e_lk.FENTRYID = tt.FENTRYID AND t3e_lk.FSTABLENAME = 'T_SAL_OUTSTOCKENTRY' AND t1e_lk.FSBILLID = {0})
|
||||
""".format(billId))
|
||||
DBUtils.ExecuteBatch(this.Context,sqlLList,sqlLList.Count);
|
||||
81
05.长园/CYG.Python/SAL_SaleOrder/sql/销售订单保存时更新关联订单信息.sql
Normal file
81
05.长园/CYG.Python/SAL_SaleOrder/sql/销售订单保存时更新关联订单信息.sql
Normal file
@@ -0,0 +1,81 @@
|
||||
--/***********<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD>start*********************/
|
||||
--UPDATE tt SET tt.F_CYG_TEXT1 =
|
||||
SELECT tt.FENTRYID
|
||||
,STUFF((SELECT distinct ','+ t0e.F_CYG_TEXT4
|
||||
FROM T_SAL_ORDERENTRY t0e --<EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD>
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
|
||||
ON t0e.FID = t1e_lk.FSBILLID AND t0e.FENTRYID = t1e_lk.FSID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
WHERE t1e_lk.FENTRYID = tt.FENTRYID --ƴ<EFBFBD>ӹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>
|
||||
FOR XML PATH('')
|
||||
),1,1,'') --stuff <EFBFBD><EFBFBD>ת<EFBFBD>к<EFBFBD>ƴ<EFBFBD><EFBFBD>
|
||||
FROM T_SAL_DELIVERYNOTICEENTRY tt
|
||||
WHERE EXISTS (SELECT 1 FROM T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk WHERE t1e_lk.FSBILLID = 100040 AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY' AND t1e_lk.FENTRYID = tt.FENTRYID)
|
||||
--/***********<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD>end*********************/
|
||||
|
||||
--/***********<EFBFBD><EFBFBD><EFBFBD>۳<EFBFBD><EFBFBD>ⵥstart*********************/
|
||||
--UPDATE tt SET tt.F_CYG_TEXT1 =
|
||||
SELECT tt.FENTRYID
|
||||
,STUFF((SELECT distinct ','+ t0e.F_CYG_TEXT4
|
||||
FROM T_SAL_ORDERENTRY t0e --<EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD>
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
|
||||
ON t0e.FID = t1e_lk.FSBILLID AND t0e.FENTRYID = t1e_lk.FSID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY t1e ON t1e.FENTRYID = t1e_lk.FENTRYID --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD>
|
||||
INNER JOIN T_SAL_OUTSTOCKENTRY_LK t2e_lk --<EFBFBD><EFBFBD><EFBFBD>۳<EFBFBD><EFBFBD>ⵥ<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
|
||||
ON t1e.FID = t2e_lk.FSBILLID AND t1e.FENTRYID = t2e_lk.FSID AND t2e_lk.FSTABLENAME = 'T_SAL_DELIVERYNOTICEENTRY'
|
||||
WHERE t2e_lk.FENTRYID = tt.FENTRYID --ƴ<EFBFBD>ӹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>
|
||||
FOR XML PATH('')
|
||||
),1,1,'') --stuff <EFBFBD><EFBFBD>ת<EFBFBD>к<EFBFBD>ƴ<EFBFBD><EFBFBD>
|
||||
FROM T_SAL_OUTSTOCKENTRY tt
|
||||
WHERE EXISTS (
|
||||
SELECT 1 FROM T_SAL_OUTSTOCKENTRY_LK t2e_lk
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY t1e on t2e_lk.FSBILLID = t1e.FID AND t2e_lk.FSID = t1e.FENTRYID
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk on t1e_lk.FENTRYID = t1e.FENTRYID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
WHERE t2e_lk.FENTRYID = tt.FENTRYID AND t2e_lk.FSTABLENAME = 'T_SAL_DELIVERYNOTICEENTRY' AND t1e_lk.FSBILLID = 100040)
|
||||
--/***********<EFBFBD><EFBFBD><EFBFBD>۳<EFBFBD><EFBFBD>ⵥend*********************/
|
||||
|
||||
--/***********Ӧ<EFBFBD>յ<EFBFBD>start*********************/
|
||||
--UPDATE tt SET tt.F_CYG_TEXT1 =
|
||||
SELECT tt.FENTRYID
|
||||
,STUFF((SELECT distinct ','+ t0e.F_CYG_TEXT4
|
||||
FROM T_SAL_ORDERENTRY t0e --<EFBFBD><EFBFBD><EFBFBD>۶<EFBFBD><EFBFBD><EFBFBD>
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
|
||||
ON t0e.FID = t1e_lk.FSBILLID AND t0e.FENTRYID = t1e_lk.FSID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY t1e ON t1e.FENTRYID = t1e_lk.FENTRYID --<EFBFBD><EFBFBD><EFBFBD><EFBFBD>֪ͨ<EFBFBD><EFBFBD>
|
||||
INNER JOIN T_SAL_OUTSTOCKENTRY_LK t2e_lk --<EFBFBD><EFBFBD><EFBFBD>۳<EFBFBD><EFBFBD>ⵥ<EFBFBD><EFBFBD>ϵ<EFBFBD><EFBFBD>
|
||||
ON t1e.FID = t2e_lk.FSBILLID AND t1e.FENTRYID = t2e_lk.FSID AND t2e_lk.FSTABLENAME = 'T_SAL_DELIVERYNOTICEENTRY'
|
||||
INNER JOIN T_SAL_OUTSTOCKENTRY t2e on t2e.FENTRYID = t2e_lk.FENTRYID
|
||||
INNER JOIN T_AR_RECEIVABLEENTRY_LK t3e_lk
|
||||
on t2e.FID = t3e_lk.FSBILLID AND t2e.FENTRYID = t3e_lk.FSID AND t3e_lk.FSTABLENAME = 'T_SAL_OUTSTOCKENTRY'
|
||||
WHERE t3e_lk.FENTRYID = tt.FENTRYID --ƴ<EFBFBD>ӹ<EFBFBD><EFBFBD><EFBFBD><EFBFBD>ֶ<EFBFBD>
|
||||
FOR XML PATH('')
|
||||
),1,1,'') --stuff <EFBFBD><EFBFBD>ת<EFBFBD>к<EFBFBD>ƴ<EFBFBD><EFBFBD>
|
||||
FROM T_AR_RECEIVABLEENTRY tt
|
||||
WHERE EXISTS (
|
||||
SELECT 1 FROM T_AR_RECEIVABLEENTRY_LK t3e_lk
|
||||
INNER JOIN T_SAL_OUTSTOCKENTRY t2e on t2e.FID = t3e_lk.FSBILLID AND t2e.FENTRYID = t3e_lk.FSID
|
||||
INNER JOIN T_SAL_OUTSTOCKENTRY_LK t2e_lk on t2e.FENTRYID = t2e_lk.FENTRYID AND t2e_lk.FSTABLENAME = 'T_SAL_DELIVERYNOTICEENTRY'
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY t1e on t2e_lk.FSBILLID = t1e.FID AND t2e_lk.FSID = t1e.FENTRYID
|
||||
INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk on t1e_lk.FENTRYID = t1e.FENTRYID AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
WHERE t3e_lk.FENTRYID = tt.FENTRYID AND t3e_lk.FSTABLENAME = 'T_SAL_OUTSTOCKENTRY' AND t1e_lk.FSBILLID = 100040)
|
||||
--/***********Ӧ<EFBFBD>յ<EFBFBD>end*********************/
|
||||
|
||||
|
||||
--SELECT
|
||||
-- t0e.FID
|
||||
-- ,t0e.FENTRYID
|
||||
-- ,t1e.FENTRYID AS '<27><><EFBFBD><EFBFBD>֪ͨ<CDA8><D6AA>ʵ<EFBFBD><CAB5>id'
|
||||
-- ,ISNULL(t2e.FENTRYID, 0) AS '<27><><EFBFBD>۳<EFBFBD><DBB3>ⵥʵ<E2B5A5><CAB5>id'
|
||||
-- ,ISNULL(t3e.FENTRYID, 0) AS 'Ӧ<>յ<EFBFBD>ʵ<EFBFBD><CAB5>id'
|
||||
--FROM T_SAL_ORDERENTRY t0e
|
||||
-- INNER JOIN T_SAL_DELIVERYNOTICEENTRY_LK t1e_lk on t0e.FID = t1e_lk.FSBILLID AND t0e.FENTRYID = t1e_lk.FSID
|
||||
-- AND t1e_lk.FSTABLENAME = 'T_SAL_ORDERENTRY'
|
||||
-- INNER JOIN T_SAL_DELIVERYNOTICEENTRY t1e on t1e.FENTRYID = t1e_lk.FENTRYID
|
||||
-- INNER JOIN T_SAL_OUTSTOCKENTRY_LK t2e_lk on t1e.FID = t2e_lk.FSBILLID AND t1e.FENTRYID = t2e_lk.FSID
|
||||
-- AND t2e_lk.FSTABLENAME = 'T_SAL_DELIVERYNOTICEENTRY'
|
||||
-- INNER JOIN T_SAL_OUTSTOCKENTRY t2e on t2e.FENTRYID = t2e_lk.FENTRYID
|
||||
-- INNER JOIN T_AR_RECEIVABLEENTRY_LK t3e_lk on t2e.FID = t3e_lk.FSBILLID AND t2e.FENTRYID = t3e_lk.FSID
|
||||
-- AND t3e_lk.FSTABLENAME = 'T_SAL_OUTSTOCKENTRY'
|
||||
-- INNER JOIN T_AR_RECEIVABLEENTRY t3e on t3e.FENTRYID = t3e_lk.FENTRYID
|
||||
--WHERE
|
||||
-- t0e.FID = 100007
|
||||
|
||||
Reference in New Issue
Block a user