更新物料某属性

DECLARE
  l_item_rec      inv_item_grp.item_rec_type;
  x_item_rec      inv_item_grp.item_rec_type;
  l_error_tbl     inv_item_grp.error_tbl_type;
  l_error_msg     VARCHAR2(4000);
  x_return_status VARCHAR2(30);

  CURSOR cur_item IS
    SELECT msib.organization_id,
           msib.inventory_item_id,
           msib.segment1,
           msib.description,
           msib.primary_uom_code
      FROM mtl_system_items_b msib, cux_bq_mapping_all cbm
     WHERE 1 = 1
       AND cbm.new_object_id = msib.organization_id
       AND cbm.mapping_type = 'INV'
       AND msib.allow_item_desc_update_flag = 'N';
BEGIN

  FOR rec_item IN cur_item LOOP
    l_item_rec := inv_item_grp.g_miss_item_rec;
  
    l_item_rec.organization_id             := rec_item.organization_id;
    l_item_rec.inventory_item_id           := rec_item.inventory_item_id;
    l_item_rec.allow_item_desc_update_flag := 'Y';
  
    inv_item_grp.update_item(p_commit        => fnd_api.g_true,
                             p_item_rec      => l_item_rec,
                             x_item_rec      => x_item_rec,
                             x_return_status => x_return_status,
                             x_error_tbl     => l_error_tbl,
                             p_template_id   => NULL);
  
    IF x_return_status <> fnd_api.g_ret_sts_success THEN
    
      /* FOR i IN 1 .. l_error_tbl.last LOOP  
         l_error_msg := substrb(l_error_msg || l_error_tbl(i)  
                                .column_name || ':' || l_error_tbl(i)  
                                .message_text || '#',  
                                1,  
                                200);  
      END LOOP;*/
      dbms_output.put_line(rec_item.segment1 || ' 出错:' || l_error_msg);
    END IF;
  
  END LOOP; --FOR rec_item IN cur_item LOOP  
END;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值