修改工单创建组件工序
--2.手工创建任务单(组件、工序和资源)
Declare
--任务单
l_iface_rec wip.wip_job_schedule_interface%rOWTYPE;
--任务单-组件
l_CompRec wip.wip_job_dtls_interface%rOWTYPE;
--任务单-工序
l_opr_rec wip.wip_job_dtls_interface%rOWTYPE;
--任务单-资源
l_ResRec WIP.WIP_JOB_DTLS_INTERFACE%rOWTYPE;
l_GroupId Number := -1001;
l_OrganizationId Number := 122;
l_UserId Number := 0;
v_ReqID Number;
l_phase Varchar(200);
l_status Varchar(200);
l_dev_phase Varchar(200);
l_dev_status Varchar(200);
l_message Varchar(2000);
l_request_status boolean;
x_return_status VARCHAR2(20);
x_msg_data VARCHAR2(200);
Begin
--*****Start任务单装配件*****----
l_iface_rec.last_update_date := SYSDATE;
l_iface_rec.last_updated_by := 10311;
l_iface_rec.creation_date := SYSDATE;
l_iface_rec.created_by := 10311;
l_iface_rec.last_update_login := 0;
l_iface_rec.group_id := l_GroupId;
l_iface_rec.load_type := 3; --1 Create Standard Discrete Job;2 Create Pending Repetitive Schedule;3 Update Standard or Non-Standard Discrete Job;4 Create Non-Standard Discrete Job;
l_iface_rec.process_phase := 2;
l_iface_rec.process_status := 1;
--1为未发放(UnReleased),3为创建任务单以后状态自动已发放(Released)
l_iface_rec.status_type := 3; --1 UnReleased/3 Released 需要开会计期
--默认为Y,若为Y时,则无须把组件、工序和资源等等数据插入接口表WIP.WIP_JOB_SCHEDULE_INTERFACE。
--若为N时,则需要往接口表表WIP.WIP_JOB_SCHEDULE_INTERFACE插入组件、工序和资源等等数据
l_iface_rec.allow_explosion := 'N';
--任务单名称
l_iface_rec.job_name := '106EHZ1F248290001P';
l_iface_rec.scheduling_method := 3; --1 Routing-based;2 Item Lead Time;3 Mannual;
l_iface_rec.source_code := 'CUX_ISC_MID_WIP_JOB'; --任务单来源 自定义
l_iface_rec.wip_entity_id := 1163826;
--组织标识
l_iface_rec.organization_id := 97;
--装配件标识
-- l_iface_rec.primary_item_id := 490680;
--开始数量
-- l_iface_rec.start_quantity := 100;
-- l_iface_rec.class_code := 110212; --工单分类
-- l_iface_rec.net_quantity := 0; --MRP 净值
-- l_iface_rec.schedule_group_id := 238; --计划组
--开始日期
-- l_iface_rec.first_unit_start_date := SYSDATE;
--任务单来源 自定义
-- l_iface_rec.source_code := 'WIPPLAN';
--来源标识 自定义
-- l_iface_rec.source_line_id := 0;
--题头标识 自定义
l_iface_rec.Header_Id := 1163826;
l_iface_rec.first_unit_start_date := to_date('2024-08-29 00:00:00','YYYY-MM-DD HH24:MI:SS'); --开始日期
l_iface_rec.first_unit_completion_date := to_date('2024-08-29 00:00:00','YYYY-MM-DD HH24:MI:SS'); --完成日期
l_iface_rec.last_unit_start_date := l_iface_rec.first_unit_start_date;
l_iface_rec.last_unit_completion_date := l_iface_rec.first_unit_completion_date;
INSERT INTO WIP.WIP_JOB_SCHEDULE_INTERFACE VALUES l_iface_rec;
--*****End 任务单装配件*****----
--*****Start 任务单组件*****---
--可以添加、删除或修改多个组件
--工序 WIP_REQUIREMENT_OPERATIONS.OPERATION_SEQ_NUM
l_CompRec.OPERATION_SEQ_NUM := 20;
l_CompRec.organization_id := l_iface_rec.organization_id;
--旧组件
l_CompRec.INVENTORY_ITEM_ID_OLD := 449069;
--新组件 新增时必输项
l_CompRec.INVENTORY_ITEM_ID_NEW := 449069;
--主要 每个装配件 WIP_REQUIREMENT_OPERATIONS.QUANTITY_PER_ASSEMBLY
l_CompRec.QUANTITY_PER_ASSEMBLY := 1;
l_CompRec.uom_code := 'PCS';
--主要 部门 WIP_REQUIREMENT_OPERATIONS.DEPARTMENT_ID
l_CompRec.DEPARTMENT_ID := 6;
--供应 类型 WIP_REQUIREMENT_OPERATIONS.WIP_SUPPLY_TYPE
l_CompRec.WIP_SUPPLY_TYPE := 1;
--主要 需求日期 WIP_REQUIREMENT_OPERATIONS.DATE_required
l_CompRec.DATE_required := Sysdate;
--供应 子库存 WIP_REQUIREMENT_OPERATIONS.SUPPLY_SUBINVENTORY
--l_CompRec.SUPPLY_SUBINVENTORY := Rs.Supply_Subinventory;
--供应 货位标识 WIP_REQUIREMENT_OPERATIONS.SUPPLY_LOCATOR_ID
--l_CompRec.SUPPLY_LOCATOR_ID := Rs.Supply_Locator_Id;
--是否MRP净需求,默认值为1 WIP_REQUIREMENT_OPERATIONS.MRP_NET_FLAG
l_CompRec.MRP_NET_FLAG := 1;
--主需求计划数量 WIP_REQUIREMENT_OPERATIONS.Mps_required_Quantity
l_CompRec.MPS_required_QUANTITY := 5;
--主需求计划日期 WIP_REQUIREMENT_OPERATIONS.MPS_DATE_required
l_CompRec.MPS_DATE_required := SYSDATE;
--当是组件接口数据时,其值必须为2
l_CompRec.LOAD_TYPE := 2;
--与创建任务单题头的相同:WIP.WIP_JOB_SCHEDULE_INTERFACE.HEADER_ID
l_CompRec.PARENT_HEADER_ID := 1163826;
--组件-备注 WIP_REQUIREMENT_OPERATIONS.COMMENTS
l_CompRec.DESCRIPTION := '测试组件';
l_CompRec.LAST_UPDATE_DATE := Sysdate;
l_CompRec.LAST_UPDATED_BY := 10311;
l_CompRec.CREATION_DATE := Sysdate;
l_CompRec.CREATED_BY := 10311;
l_CompRec.LAST_UPDATE_LOGIN := -1;
l_CompRec.Process_Phase := 2; --默认值
l_CompRec.Process_Status := 1; --默认值
l_CompRec.Group_Id := l_GroupId;
/*
删除:wip_job_details.WIP_DELETE默认为1
新增:wip_job_details.wip_add默认值为2
修改:wip_job_details.WIP_CHANGEl默认值为3*/
l_CompRec.Substitution_Type := wip_job_details.wip_add;
Insert Into WIP.WIP_JOB_DTLS_INTERFACE Values l_CompRec;
--*****End 任务单组件*****---
--*****Start 任务单工序****--
l_opr_rec := NULL;
--l_opr_rec.interface_id := l_iface_rec.interface_id;
l_opr_rec.operation_seq_num := 20; --工序 WIP_OPERATIONS.Operation_Seq_Num
l_opr_rec.organization_id := l_iface_rec.organization_id;
l_opr_rec.department_id := 6; --部门 WIP_OPERATIONS.Department_Id
l_opr_rec.load_type := 3;
-- l_opr_rec.wip_supply_type := l_comp_rec.wip_supply_type;--供应商类型
l_opr_rec.parent_header_id := l_iface_rec.header_id;
l_opr_rec.description := '组装';
l_opr_rec.standard_operation_id := 35; --准标工序标识 WIP_OPERATIONS.Standard_Operation_Id
l_opr_rec.first_unit_start_date := l_iface_rec.first_unit_start_date; --日期 第一个装配件起始日期 WIP_OPERATIONS.FIRST_UNIT_START_DATE
l_opr_rec.first_unit_completion_date := l_iface_rec.first_unit_completion_date; --日期 第一个装配件完成日期 WIP_OPERATIONS.First_Unit_Completion_Date
l_opr_rec.last_unit_start_date := l_iface_rec.last_unit_start_date; --日期 最后一个装配件起始日期 WIP_OPERATIONS.Last_Unit_Start_Date
l_opr_rec.last_unit_completion_date := l_iface_rec.last_unit_completion_date; --日期 最后一个装配件起始日期 WIP_OPERATIONS.Last_Unit_Completion_Date
l_opr_rec.minimum_transfer_quantity := 0; --主要 最小传送量 WIP_OPERATIONS.MINIMUM_TRANSFER_QUANTITY
l_opr_rec.backflush_flag := 1; --主要 倒冲 WIP_OPERATIONS.Backflush_Flag
l_opr_rec.count_point_type := 1; --主要 计数点 WIP_OPERATIONS.Count_Point_Type
l_opr_rec.last_update_date := SYSDATE;
--l_opr_rec.last_updated_by := g_user_id;
l_opr_rec.creation_date := SYSDATE;
--l_opr_rec.created_by := g_user_id;
l_opr_rec.created_by := l_iface_rec.created_by; --Add by cheng on 20230317
l_opr_rec.last_updated_by := l_iface_rec.last_updated_by; --Add by cheng on 20230317
l_opr_rec.last_update_login := -1;
l_opr_rec.Process_Phase := 2; --默认值
l_opr_rec.Process_Status := 1; --默认值
l_opr_rec.group_id := l_GroupId;
/*
删除:wip_job_details.WIP_DELETE默认为1
新增:wip_job_details.wip_add默认值为2
修改:wip_job_details.WIP_CHANGEl默认值为3*/
l_opr_rec.substitution_type := wip_job_details.wip_add;
INSERT INTO wip.wip_job_dtls_interface VALUES l_opr_rec;
--*****End 任务单工序****--
--API接口
Fnd_global.apps_initialize(user_id => 0,
resp_id => 50737,
resp_appl_id => 20006,
security_group_id => 0);
wip_massload_pub.massloadjobs(p_groupid => l_GroupId, -- Group ID
p_validationlevel => 2, -- Validation Level
p_commitflag => 0, -- Commit 1 =Yes , 0 ='No'
x_returnstatus => x_return_status,
x_errormsg => x_msg_data);
END;
浙公网安备 33010602011771号