批量更改Item的属性

用户需求:需要更改1200个Item的Lead_time_lot_size的值。

1. 用dataload是一种办法,但是比较费时间。

2. 后面用临时表+Update直接改mtl_system_items_b表。

 

DECLARE
    -- 共1143行
     CURSOR cur_upd_data  IS
         SELECT segment1,
                 LEAD_TIME_LOT_SIZE
           FROM inv.ascp_inv_item_temp;
BEGIN
   
     FOR rec_upd_data  IN cur_upd_data
    LOOP
         UPDATE apps.mtl_system_items_b t
             SET lead_time_lot_size  = rec_upd_data.LEAD_TIME_LOT_SIZE
          WHERE t.organization_id  = &org_id
             AND T.ITEM_TYPE  =  ' FG '
             AND t.inventory_item_status_code  =  ' Active '
             AND t.segment1  = rec_upd_data.segment1;
     END LOOP;
   
    COMMIT;
END;

 

3. 当然也可以用临时表+标准的API修改ITEM相关属性。

DECLARE
    l_item_rec      inv_item_grp.item_rec_type;
    l_error_tbl     inv_item_grp.error_tbl_type;
    x_item_rec      inv_item_grp.item_rec_type;
    l_return_status  VARCHAR2( 40);
BEGIN
    inv_globals.set_org_id(&org_id );
    fnd_global.apps_initialize( 1284350749401);--userid,resposi_id,app_id
    l_item_rec.inventory_item_id   : =  423007;
    l_item_rec.organization_id     : = &org_id-- You master organization
    l_item_rec.lead_time_lot_size : =  100000;
    inv_item_grp.update_item(p_commit            => fnd_api.g_false,
                                     p_lock_rows         => fnd_api.g_true,
                                     p_validation_level  => fnd_api.g_valid_level_full,
                                     p_item_rec          => l_item_rec,
                                     x_item_rec          => x_item_rec,
                                     x_return_status     => l_return_status,
                                     x_error_tbl         => l_error_tbl);
    DBMS_OUTPUT.put_line(l_return_status);

     IF l_error_tbl. COUNT()  >  0  THEN
         FOR i  IN  1 .. l_error_tbl. COUNT
        LOOP
            DBMS_OUTPUT.put_line(l_error_tbl.MESSAGE_TEXT);
            DBMS_OUTPUT.put_line(l_error_tbl.message_name);
         END LOOP;
     END  IF;
    COMMIT;
END;

 

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值