ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 更改批次状态api

更改批次状态api

原创 Linux操作系统 作者:veyard 时间:2009-05-04 23:09:32 0 删除 编辑

DECLARE
  L_QTY_REC          GMIGAPI.qty_rec_typ;
  L_ic_jrnl_mst_row  ic_jrnl_mst%ROWTYPE;
  L_ic_adjs_jnl_row1 ic_adjs_jnl%ROWTYPE;
  L_ic_adjs_jnl_row2 ic_adjs_jnl%ROWTYPE;
  L_return_status    VARCHAR2(10);
  L_msg_count        NUMBER;
  L_msg_data         VARCHAR2(1000);
  l_dummy_cnt        NUMBER := 0;
  l_loop_cnt         NUMBER := 0;
BEGIN
  --set serveroutput on size 20000;
  dbms_output.enable(20000);
  dbms_application_info.set_client_info(122);
  --fnd_global.APPS_INITIALIZE(1115, 1, 1);--不能执行该语句,否则提示错误,
  L_QTY_REC.trans_type     := 4;
  L_QTY_REC.orgn_code      := 'Z999';
  L_QTY_REC.reason_code    := 'PCZT';
  L_QTY_REC.item_no        := '2101001001';
  L_QTY_REC.lot_no         := '2008110402';
  L_QTY_REC.from_whse_code := 'ZZC';
  L_QTY_REC.from_location  := 'A';
  L_QTY_REC.lot_status     := 'HG';
  L_QTY_REC.trans_qty      := 2;
  L_QTY_REC.co_code        := 'CO';
  L_QTY_REC.item_um        := '箱';
  --L_QTY_REC.trans_date := SYSDATE;
  if gmigutl.Setup('APP_USER') then
    GMIPAPI.Inventory_Posting(p_api_version      => apps.GMIGUTL.API_VERSION, --1.0,
                              p_init_msg_list    => FND_API.G_FALSE,
                              p_commit           => FND_API.G_TRUE,
                              p_validation_level => FND_API.G_VALID_LEVEL_FULL,
                              p_qty_rec          => L_QTY_REC,
                              x_ic_jrnl_mst_row  => L_ic_jrnl_mst_row,
                              x_ic_adjs_jnl_row1 => L_ic_adjs_jnl_row1,
                              x_ic_adjs_jnl_row2 => L_ic_adjs_jnl_row2,
                              x_return_status    => L_return_status,
                              x_msg_count        => L_msg_count,
                              x_msg_data         => L_msg_data);
 
    if L_msg_count > 0 then
      l_loop_cnt := 1;
      loop
        apps.FND_MSG_PUB.Get(p_msg_index     => l_loop_cnt,
                             p_data          => L_msg_data,
                             p_encoded       => apps.FND_API.G_FALSE,
                             p_msg_index_out => l_dummy_cnt);
        DBMS_OUTPUT.PUT_LINE(L_msg_data);
        l_loop_cnt := l_loop_cnt + 1;
        if l_loop_cnt > L_msg_count then
          exit;
        end if;
      end loop;
    end if;
 
    IF L_return_status = 'S' THEN
      DBMS_OUTPUT.put_line('SUCCESS');
      DBMS_OUTPUT.PUT_LINE('message is: ' || l_msg_data);
      DBMS_OUTPUT.PUT_LINE('message index is: ' || l_msg_count);
      COMMIT;
    ELSIF L_return_status = 'E' THEN
      DBMS_OUTPUT.put_line('ERROR');
      DBMS_OUTPUT.PUT_LINE('message is: ' || l_msg_data);
      DBMS_OUTPUT.PUT_LINE('message index is: ' || l_msg_count);
      rollback;
    ELSIF L_return_status = 'U' THEN
      DBMS_OUTPUT.put_line('UNEXPECT');
      DBMS_OUTPUT.PUT_LINE('message is: ' || l_msg_data);
      DBMS_OUTPUT.PUT_LINE('message index is: ' || l_msg_count);
      ROLLBACK;
    ELSE
      DBMS_OUTPUT.put_line('AAAAA');
    END IF;
  ELSE
    DBMS_OUTPUT.put_line('XXX');
  end if;
EXCEPTION
  WHEN OTHERS THEN
    DBMS_OUTPUT.put_line('EXCEPTION:' || L_return_status || '-' || sqlerrm);
END;

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/797362/viewspace-592578/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 自动挑库发放api
请登录后发表评论 登录
全部评论

注册时间:2009-05-04

  • 博文量
    10
  • 访问量
    13753