rronglin 发表于 2015-9-22 13:45:00

EBS-工单导入

  
  数据导入步骤:
  1.根据用户需要字段,创建客户化接口表;
  2.将用户整理好的数据插入客户化接口表中;
  3.对数据进行校验(数据有效性,弹性域值集)
  4.将客户化接口表中的数据写入EBS系统的接口表中
  5.提交标准请求
  工单导入接口表






  接口表


  数据表


  说明






  wip_move_txn_interface


  wip_move_transactions


  移动事务处理;它有可能触发物料事务处理和资源事务处理




  cst_comp_snap_interface


  cst_comp_snapshot


  仅当做WIP装配件完工或退回且组织使用平均成本时使用




  wip_txn_interface_errors


  


  错误信息表




  接口表关键字段






  字段


  说明






  transaction_type


  1 工序移动(缺省)
  2 移动完工入库
  3 移动入库返回




  process_phase


  给1
  1 Move Validation
  2 Move Processing
  3 Operation Backflush Setup




  process_status


  给1
  1 Pending
  2 Running
  3 Error




  wip_entity_name


  任务名称




  organization_id


  Current Inv Organization




  organization_code


  组织代码,这个字段必须给




  transaction_date


  事务日期,必须between Release Date and Sysdate




  transaction_quantity


  移动数量




  transaction_uom


  单位,可以不是主单位




  fm_operation_seq_num


  起始工序号




  fm_intraoperation_step_type


  起始工序内部步骤




  to_operation_seq_num


  终止工序号




  to_intraoperation_step_type


  终止工序内部步骤




  source_code


  随便给,一般用来追踪




  last_updated_by_name


  必须给,比较特殊




  created_by_name


  必须给,比较特殊




  5个who字段


  习惯上都给




  如果不涉及超量完工、如果拉式组件不涉及批次控制等,移动事务处理本身都很简单
  脚本如下:



DECLARE
l_iface_rec      wip.wip_move_txn_interface%ROWTYPE;
l_cur_mfg_org_id   NUMBER := 82; --Current Inv Organization
l_cur_mfg_org_code VARCHAR2(240) := '101';
l_user_id          NUMBER := 0; --User ID, Sysadmin here
l_user_name      VARCHAR2(240) := 'SYSADMIN';
BEGIN
l_iface_rec.last_update_date   := SYSDATE;
l_iface_rec.last_updated_by      := l_user_id;
l_iface_rec.creation_date      := SYSDATE;
l_iface_rec.created_by         := l_user_id;
l_iface_rec.last_update_login    := -1;
l_iface_rec.last_updated_by_name := l_user_name;
l_iface_rec.created_by_name      := l_user_name;
l_iface_rec.transaction_type            := 1;
l_iface_rec.process_phase               := 1;
l_iface_rec.process_status            := 1;
l_iface_rec.wip_entity_name             := 'TEST_JOB_0001';
l_iface_rec.organization_id             := l_cur_mfg_org_id;
l_iface_rec.organization_code         := l_cur_mfg_org_code;
l_iface_rec.transaction_date            := SYSDATE;
l_iface_rec.transaction_quantity      := 234;
l_iface_rec.transaction_uom             := 'Kg';
l_iface_rec.fm_operation_seq_num      := 10;
l_iface_rec.fm_intraoperation_step_type := '1'; --Queue
l_iface_rec.to_operation_seq_num      := 10;
l_iface_rec.to_intraoperation_step_type := 3; --To move
l_iface_rec.source_code               := 'Test Only';
l_iface_rec.source_code               := 'Test Only';
l_iface_rec.source_line_id            := 987654321;
INSERT INTO wip.wip_move_txn_interface VALUES l_iface_rec;
v_request_id := fnd_request.submit_request('WIP',
'WICMLP',
NULL,
NULL,
FALSE,
v_group_id,
0,
1,
chr(0));
IF v_request_id <= 0 OR v_request_id IS NULL THEN
LOG('提交 请求 错误!');
RETURN;
ELSE
COMMIT;
log('已成功提交请求,request_id=' || v_request_id);
END IF;
-- wait request
l_wait_req := fnd_concurrent.wait_for_request(v_request_id,
40,
0,
v_phase,
v_status,
v_dev_phase,
v_dev_status,
v_message);
IF upper(v_status) NOT IN ('NORMAL', '正常') THEN
log(chr(10) || 'Import new wip job failure. ' || v_message);
RETURN;
ELSE
log(chr(10) || '请求正常结束! ');
RETURN;
END IF;
END;
  
  
  
页: [1]
查看完整版本: EBS-工单导入