ORACLストレージ機能は、インベントリを更新します

作成 手順を PRO_update_Goods_group_stockがある
  v_min_stockのNUMBER102 )。
  v_gg_stockの   NUMBER102 )。
  v_goods_no   ; 
  v_sum_cost   NUMBER102 )。
始める
  ために 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:インベントリ同期のブラックリストは、この表のデータは関連していない更新操作
 

 

おすすめ

転載: www.cnblogs.com/wangchuanfu/p/10981193.html