业务背景
由于同事误删除委外任务单的“Pending Move Transactions”和“Pending Resource Transactions”,导致月结时,“材料采购”科目不平。委外任务单采购采购接收入库以后,已经产生会计分料,无法回退操作。因此,外任务单的“Pending Move Transactions”和“Pending Resource Transactions”只能数据修复操作。
Pending Resource Transactions
WIP_MOVE_TXN_INTERFACE表相关字段说明:
Field |
Description |
LAST_UPDATE_DATE |
Who Columns |
LAST_UPDATED_BY |
|
LAST_UPDATED_BY_NAME |
|
CREATION_DATE |
|
CREATED_BY |
|
CREATED_BY_NAME |
|
LAST_UPDATE_LOGIN |
|
SOURCE_CODE |
来源代码,委外任务单是RCV |
SOURCE_LINE_ID |
来源行,委外任务RCV_TRANSACTIONS.INTERFACE_TRANSACTION_ID |
PROCESS_PHASE |
赋值1。1 Move Validation, 2 Move Processing,3 Operation Backflush Setup |
PROCESS_STATUS |
赋值1。1 Pending,2 Running,3 Error |
ORGANIZATION_ID |
Current Inv Organization |
ORGANIZATION_CODE |
必须字段 组织代码 |
WIP_ENTITY_ID |
任务单标识 |
WIP_ENTITY_NAME |
任务单名称 |
ENTITY_TYPE |
任务单类型 |
PRIMARY_ITEM_ID |
任务单的装配件标识 |
TRANSACTION_DATE |
事务处理日期,必须between Release Date and Sysdate |
FM_OPERATION_SEQ_NUM |
起始工序号 |
FM_DEPARTMENT_ID |
起始部门标识 |
FM_DEPARTMENT_CODE |
起始部门代码 |
FM_INTRAOPERATION_STEP_TYPE |
起始步骤类型:1为排队,3为排队 |
TO_OPERATION_SEQ_NUM |
终止工序号 |
TO_DEPARTMENT_ID |
终止部门标识 |
TO_DEPARTMENT_CODE |
终止部门代码 |
TO_INTRAOPERATION_STEP_TYPE |
终止步骤类型:1为排队,3为排队 |
TRANSACTION_QUANTITY |
移动数量 |
TRANSACTION_UOM |
移动单位 |
PRIMARY_QUANTITY |
主移动数量 |
PRIMARY_UOM |
主移动单位 |
待定移动事务处理修复代码如下:
Insert Into WIP_MOVE_TXN_INTERFACE
(LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATED_BY_NAME,
CREATION_DATE,
CREATED_BY,
CREATED_BY_NAME,
LAST_UPDATE_LOGIN,
REQUEST_ID,
SOURCE_CODE,
SOURCE_LINE_ID,
PROCESS_PHASE,
PROCESS_STATUS,
TRANSACTION_TYPE,
ORGANIZATION_ID,
ORGANIZATION_CODE,
WIP_ENTITY_ID,
WIP_ENTITY_NAME,
ENTITY_TYPE,
PRIMARY_ITEM_ID,
TRANSACTION_DATE,
FM_OPERATION_SEQ_NUM,
FM_DEPARTMENT_ID,
FM_DEPARTMENT_CODE,
FM_INTRAOPERATION_STEP_TYPE,
TO_OPERATION_SEQ_NUM,
TO_DEPARTMENT_ID,
TO_DEPARTMENT_CODE,
TO_INTRAOPERATION_STEP_TYPE,
TRANSACTION_QUANTITY,
TRANSACTION_UOM,
PRIMARY_QUANTITY,
PRIMARY_UOM)
Select RCT.LAST_UPDATE_DATE + 3 / (60 * 60 * 24) LAST_UPDATE_DATE,
0 LAST_UPDATED_BY,
'' LAST_UPDATED_BY_NAME,
RCT.LAST_UPDATE_DATE + 3 / (60 * 60 * 24) CREATION_DATE,
0 CREATED_BY,
'' CREATED_BY_NAME,
Null LAST_UPDATE_LOGIN,
RCT.REQUEST_ID,
RCT.INTERFACE_SOURCE_CODE SOURCE_CODE,
RCT.INTERFACE_TRANSACTION_ID SOURCE_LINE_ID,
/*1 Move Validation
2 Move Processing
3 Operation Backflush Setup*/
1 PROCESS_PHASE,
/*1 Pending
2 Running
3 Error*/
1 PROCESS_STATUS,
/*
1 工序移动(缺省)
2 移动完工入库
3 移动入库返回*/
2 TRANSACTION_TYPE,
RCT.ORGANIZATION_ID,
ORG.ORGANIZATION_CODE,
RCT.WIP_ENTITY_ID,
WE.WIP_ENTITY_NAME,
WE.ENTITY_TYPE,
WE.PRIMARY_ITEM_ID,
RCT.TRANSACTION_DATE + 3 / (60 * 60 * 24) TRANSACTION_DATE,
/*起始工序*/
WO.OPERATION_SEQ_NUM FM_OPERATION_SEQ_NUM,
WO.DEPARTMENT_ID FM_DEPARTMENT_ID,
WO.DEPARTMENT_CODE FM_DEPARTMENT_CODE,
1 FM_INTRAOPERATION_STEP_TYPE, --排队
/*终止工序*/
WO.OPERATION_SEQ_NUM TO_OPERATION_SEQ_NUM,
WO.DEPARTMENT_ID TO_DEPARTMENT_ID,
WO.DEPARTMENT_CODE TO_DEPARTMENT_CODE,
3 TO_INTRAOPERATION_STEP_TYPE, --移动
RCT.QUANTITY TRANSACTION_QUANTITY,
RCT.UOM_CODE TRANSACTION_UOM,
RCT.PRIMARY_QUANTITY PRIMARY_QUANTITY,
MUOM.UOM_CODE PRIMARY_UOM
From RCV_TRANSACTIONS RCT,
PO_HEADERS_ALL PHA,
WIP_ENTITIES WE,
RCV_SHIPMENT_HEADERS RSH,
WIP_OPERATIONS_V WO,
MTL_ORGANIZATIONS ORG,
MTL_UNITS_OF_MEASURE_VL MUOM
Where RCT.PO_HEADER_ID = PHA.PO_HEADER_ID
And RCT.WIP_ENTITY_ID = WE.WIP_ENTITY_ID
And RCT.SHIPMENT_HEADER_ID = RSH.SHIPMENT_HEADER_ID
And WE.WIP_ENTITY_ID = WO.wip_entity_id
And RCT.ORGANIZATION_ID = ORG.ORGANIZATION_ID
And RCT.PRIMARY_UNIT_OF_MEASURE = MUOM.UNIT_OF_MEASURE_TL
And PHA.SEGMENT1 = 'A150301407' --标准采购订单
And RSH.RECEIPT_NUM = '110000172943' --采购接收编号
And WE.WIP_ENTITY_NAME = 'XC72780327001' --任务单
And RCT.TRANSACTION_TYPE = 'DELIVER';
由于本案例BOM清单的工艺路线比较简单,委外加工只有一道工序。因此,对于某一些多道工序时,可能需求要根据实际情况修改部分代码。
Pending Resource Transactions
WIP_COST_TXN_INTERFACE表相关字段说明
Field |
Description |
LAST_UPDATE_DATE |
Who Columns |
LAST_UPDATED_BY |
|
LAST_UPDATED_BY_NAME |
|
CREATION_DATE |
|
CREATED_BY |
|
CREATED_BY_NAME |
|
LAST_UPDATE_LOGIN |
|
SOURCE_CODE |
来源代码,委外任务单是RCV |
SOURCE_LINE_ID |
来源行,委外任务RCV_TRANSACTIONS.INTERFACE_TRANSACTION_ID |
PROCESS_PHASE |
赋值1。1 Move Validation,2 Move Processing,3 Operation Backflush Setup |
PROCESS_STATUS |
赋值1。1 Pending,2 Running,3 Error |
TRANSACTION_TYPE |
1 工序移动(缺省),2 移动完工入库,3 移动入库返回 |
ORGANIZATION_ID |
Current Inv Organization |
ORGANIZATION_CODE |
必须字段 组织代码 |
WIP_ENTITY_ID |
任务单标识 |
WIP_ENTITY_NAME |
任务单名称 |
ENTITY_TYPE |
任务单类型 |
PRIMARY_ITEM_ID |
任务单的装配件标识 |
TRANSACTION_DATE |
事务处理日期,必须between Release Date and Sysdate |
DEPARTMENT_ID |
部门标识 |
OPERATION_SEQ_NUM |
工序号 |
RESOURCE_SEQ_NUM |
资源序号 |
RESOURCE_ID |
资源标识 |
AUTOCHARGE_TYPE |
自动计费类型 |
STANDARD_RATE_FLAG |
终止部门标识 |
USAGE_RATE_OR_AMOUNT |
终止部门代码 |
BASIS_TYPE |
基准 |
ACTUAL_RESOURCE_RATE |
实际资源费用,委外加工费:PO_LINES_ALL.UNIT_PRICE |
CURRENCY_CODE |
币种 |
CURRENCY_CONVERSION_DATE |
币种转称日期 |
PO_HEADER_ID |
采购订单题头标识 |
PO_LINE_ID |
采购订单行标识 |
RCV_TRANSACTION_ID |
接收事务处理标识,事务处理类型:RCV_TRANSACTIONS.TRANSACTION_TYPE='DELIVER' |
TRANSACTION_QUANTITY |
事务处理数量 |
TRANSACTION_UOM |
事务处理单位为资源的单位 |
PRIMARY_QUANTITY |
主要事务处理数量 |
PRIMARY_UOM |
主事务处理单位为资源的单位 |
待定资源事务处理数据修复代码如下:
Insert Into WIP_COST_TXN_INTERFACE
(LAST_UPDATE_DATE,
LAST_UPDATED_BY,
LAST_UPDATED_BY_NAME,
CREATION_DATE,
CREATED_BY,
CREATED_BY_NAME,
LAST_UPDATE_LOGIN,
REQUEST_ID,
SOURCE_CODE,
Source_Line_Id,
PROCESS_PHASE,
PROCESS_STATUS,
TRANSACTION_TYPE,
ORGANIZATION_ID,
ORGANIZATION_CODE,
WIP_ENTITY_ID,
WIP_ENTITY_NAME,
ENTITY_TYPE,
PRIMARY_ITEM_ID,
TRANSACTION_DATE,
DEPARTMENT_ID,
OPERATION_SEQ_NUM,
RESOURCE_SEQ_NUM,
RESOURCE_ID,
AUTOCHARGE_TYPE,
STANDARD_RATE_FLAG,
USAGE_RATE_OR_AMOUNT,
BASIS_TYPE,
ACTUAL_RESOURCE_RATE,
CURRENCY_CODE,
CURRENCY_CONVERSION_DATE,
PO_HEADER_ID,
PO_LINE_ID,
RCV_TRANSACTION_ID,
TRANSACTION_QUANTITY,
TRANSACTION_UOM,
PRIMARY_QUANTITY,
PRIMARY_UOM)
Select RCT.LAST_UPDATE_DATE + 12 / (60 * 60 * 24) LAST_UPDATE_DATE,
RCT.LAST_UPDATED_BY,
FUSR.USER_NAME LAST_UPDATED_BY_NAME,
RCT.LAST_UPDATE_DATE + 12 / (60 * 60 * 24) CREATION_DATE,
RCT.LAST_UPDATED_BY CREATED_BY,
FUSR.USER_NAME CREATED_BY_NAME,
Null LAST_UPDATE_LOGIN,
RCT.REQUEST_ID,
RCT.INTERFACE_SOURCE_CODE SOURCE_CODE,
RCT.INTERFACE_TRANSACTION_ID SOURCE_LINE_ID,
1 PROCESS_PHASE,
1 PROCESS_STATUS,
3 TRANSACTION_TYPE,
RCT.ORGANIZATION_ID,
ORG.ORGANIZATION_CODE,
RCT.WIP_ENTITY_ID,
WE.WIP_ENTITY_NAME,
WE.ENTITY_TYPE,
WE.PRIMARY_ITEM_ID,
RCT.TRANSACTION_DATE,
WO.department_id,
WO.operation_seq_num,
WOR.resource_seq_num,
WOR.resource_id,
WOR.AUTOCHARGE_TYPE,
WOR.standard_rate_flag,
WOR.usage_rate_or_amount,
WOR.basis_type,
PLA.UNIT_PRICE ACTUAL_RESOURCE_RATE,
BRS.unit_of_measure CURRENCY_CODE,
Trunc(RCT.TRANSACTION_DATE) CURRENCY_CONVERSION_DATE,
RCT.PO_HEADER_ID,
RCT.PO_LINE_ID,
RCT.TRANSACTION_ID RCV_TRANSACTION_ID,
RCT.QUANTITY TRANSACTION_QUANTITY,
BRS.UNIT_OF_MEASURE TRANSACTION_UOM,
RCT.PRIMARY_QUANTITY PRIMARY_QUANTITY,
BRS.UNIT_OF_MEASURE PRIMARY_UOM
From RCV_TRANSACTIONS RCT,
PO_HEADERS_ALL PHA,
PO_LINES_ALL PLA,
WIP_ENTITIES WE,
MTL_ORGANIZATIONS ORG,
RCV_SHIPMENT_HEADERS RSH,
WIP_OPERATIONS_V WO,
FND_USER FUSR,
WIP_OPERATION_RESOURCES_V WOR,
BOM_RESOURCES_V BRS
Where RCT.PO_HEADER_ID = PHA.PO_HEADER_ID
And RCT.PO_LINE_ID = PLA.PO_LINE_ID
And RCT.WIP_ENTITY_ID = WE.WIP_ENTITY_ID
And RCT.ORGANIZATION_ID = ORG.ORGANIZATION_ID
And RCT.SHIPMENT_HEADER_ID = RSH.SHIPMENT_HEADER_ID
And WE.WIP_ENTITY_ID = WO.wip_entity_id
And WO.wip_entity_id = WOR.wip_entity_id
And WO.operation_seq_num = WOR.operation_seq_num
And WOR.resource_id = BRS.resource_id
And RCT.LAST_UPDATED_BY = FUSR.USER_ID
And PHA.SEGMENT1 = 'A150301407'
And RSH.RECEIPT_NUM = '110000172943'
And WE.WIP_ENTITY_NAME = 'XC72780327001'
And RCT.TRANSACTION_TYPE = 'DELIVER';