作成 手順を PRO_update_Goods_group_stockがある v_min_stockのNUMBER(10、2 )。 v_gg_stockの NUMBER(10、2 )。 v_goods_no 数; v_sum_cost NUMBER(10、2 )。 始める ために g_goods_no に(選択ggi.goods_no からgoods_group_itemのGGI どこ ggi.is_delete = ' N ' GROUP によるggi.goods_no)ループ SELECT COUNT(* ) INTO v_goods_no からgoods_no_stock GN WHERE gn.goods_no = g_goods_no.goods_no; IF v_goods_noは> 0 そして 続行; エンド IF ; - バウンドサブ項目の組み合わせで割っストックサブGG G製品主項目の最小数とる SELECT 分(TRUNC(g.available_stock / デコード(gg1.group_goods_amount、 0 、 1、 gg1.group_goods_amount)、 0 )) にv_min_stock からgoods_group_item GG1、商品G、商品GG gg1.goods_no = g_goods_no.goods_no と gg1.is_delete = ' N ' と gg.goods_id = gg1.goods_id と gg.is_delete = ' N " と g.goods_id = gg1.GROUP_GOODS_ID。- 计算成本价格GG主商品グラム子商品選択 TRUNC(合計(g.cost_price * gg1.group_goods_amount)、2 ) にv_sum_cost からgoods_group_item GG1、商品G、商品GG gg1.goods_no = g_goods_no.goods_no と gg1.is_delete = ' N ' と gg.goods_id = gg1.goods_id と gg.is_delete = ' N ' そして g.goods_id = gg1.GROUP_GOODS_ID。更新商品が セット available_stock = v_min_stock、COST_PRICE = v_sum_cost ここ goods_no = g_goods_no.goods_no と is_delete = ' N ' 。 コミット; エンドループ; - 下架问题组合码 挿入 にsys_user_message (MESSAGE_ID、 PRODUCT_CODE、 TARGET_MODUL_ID、 MESSAGE_BODY、 MESSAGE_STAGE、 IS_DELETE)が 選択sys_user_message_seq.nextval、 p.product_code、 254 、 ' 商品:' || p.product_code ||' 没有维护组合码' 、 ' 0 ' 、 ' N ' からの積P ない存在(選択1 からgoods_group_item GGI ここ ggi.goods_no = p.product_code) と p.is_delete = ' N ' と p.is_onsale = ' Y 「及び p.product_code など」%' 。更新製品P セット p.is_onsale = ' N ' ここで ない 存在(選択 1 からgoods_group_item GGI ここ ggi.goods_no = p.product_code) と p.is_delete = ' N ' と p.is_onsale = ' Y ' と p.product_code など ' %" ; コミット; エンド; 選択 * からgoods_no_stock GN どこgn.goods_no に (選択ggi.goods_no からgoods_group_item GGI ここ ggi.is_delete = ' N ' GROUP によってggi.goods_no)。 選択 * から商品グラム g.GOODS_NO = 「02から00056 」; 選択* から商品グラムg.GOODS_NO = 「70261507 」; 選択* から商品グラムg.goods_no = ' 70261506 ' ; 選択gn.goods_no からgoods_no_stockのGN;
goods_no_stock:インベントリ同期のブラックリストは、この表のデータは関連していない更新操作