更改批次状态api

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/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/797362/viewspace-592578/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值