ITPub博客

首页 > 数据库 > Oracle > 详解EBS接口开发之库存事务处理-物料批次导入

详解EBS接口开发之库存事务处理-物料批次导入

Oracle 作者:test_100 时间:2018-10-11 16:46:17 0 删除 编辑

详解EBS接口开发之库存事务处理-物料批次导入

2016年11月24日 17:29:01 阅读数:1333

个人分类: INV 接口

           

转:http://blog.csdn.net/cai_xingyun/article/details/17129243

  1. 库存事务处理-物料批次导入  

  2. --系统批次表   

  3. SELECT  *  FROM  MTL_LOT_NUMBERS T;  

  4. --API创建批次   

  5. inv_lot_api_pub.create_inv_lot(x_return_status    => l_return_status,  

  6.                                      x_msg_count        => l_msg_count,  

  7.                                      x_msg_data         => l_msg_data,  

  8.                                      x_row_id           => l_row_id,  

  9.                                      x_lot_rec          => x_mtl_lot_numbers,  

  10.                                      p_lot_rec          => l_mtl_lot_numbers,  

  11.                                      p_source           => l_source,  

  12.                                      p_api_version      => l_api_version,  

  13.                                      p_init_msg_list    => l_init_msg_list,  

  14.                                      p_commit           => l_commit,  

  15.                                      p_validation_level => l_validation_level,  

  16.                                      p_origin_txn_id    => l_origin_txn_id);  

  17. --API更新批次   

  18. inv_lot_api_pub.update_inv_lot(  

  19.             x_return_status          OUT     NOCOPY VARCHAR2  

  20.           , x_msg_count              OUT     NOCOPY NUMBER  

  21.           , x_msg_data               OUT     NOCOPY VARCHAR2  

  22.           , x_lot_rec                OUT     NOCOPY MTL_LOT_NUMBERS%ROWTYPE  

  23.           , p_lot_rec                IN      MTL_LOT_NUMBERS%ROWTYPE  

  24.           , p_source                 IN      NUMBER  

  25.           , p_api_version            IN      NUMBER  

  26.           , p_init_msg_list          IN      VARCHAR2 := fnd_api.g_false  

  27.           , p_commit                 IN      VARCHAR2 := fnd_api.g_false);  

  28.             

  29. --验证批次唯一性   

  30. inv_lot_api_pub.validate_unique_lot(  

  31.     p_org_id             IN             NUMBER  

  32.   , p_inventory_item_id  IN             NUMBER  

  33.   , p_lot_uniqueness     IN             NUMBER  

  34.   , p_auto_lot_number    IN             VARCHAR2  

  35.   , p_check_same_item    IN             VARCHAR2  

  36.   , x_is_unique          OUT  NOCOPY    VARCHAR2  

  37.   );  

  38.     

  39. --物料批次数量验证   

  40. -----------------------------------------------------------------------   

  41. -- Name : validate_quantities   

  42. -- Desc : This procedure is used to validate transaction quantity2   

  43. --   

  44. -- I/P Params :   

  45. --     All the relevant transaction details :   

  46. --        - organization id   

  47. --        - item_id   

  48. --        - lot, revision, subinventory   

  49. --        - transaction quantities   

  50. -- O/P Params :   

  51. --     x_rerturn_status.   

  52. -- RETURN VALUE :   

  53. --   TRUE : IF the transaction is valid regarding Quantity2 and lot indivisible   

  54. --   FALSE : IF the transaction is NOT valid regarding Quantity2 and lot indivisible   

  55. --   

  56. -----------------------------------------------------------------------   

  57. inv_lot_api_pub.validate_quantities(  

  58.   p_api_version           IN   NUMBER  

  59. , p_init_msg_list         IN   VARCHAR2 := FND_API.G_FALSE  

  60. , p_transaction_type_id   IN   NUMBER  

  61. , p_organization_id       IN   NUMBER  

  62. , p_inventory_item_id     IN   NUMBER  

  63. , p_revision              IN   VARCHAR2  

  64. , p_subinventory_code     IN   VARCHAR2  

  65. , p_locator_id            IN   NUMBER  

  66. , p_lot_number            IN   VARCHAR2  

  67. , p_transaction_quantity  IN   OUT   NOCOPY NUMBER  

  68. , p_transaction_uom_code  IN   VARCHAR2  

  69. , p_primary_quantity      IN   OUT  NOCOPY NUMBER  

  70. , p_primary_uom_code      OUT  NOCOPY VARCHAR2  

  71. , p_secondary_quantity    IN   OUT  NOCOPY NUMBER  

  72. , p_secondary_uom_code    IN   OUT  NOCOPY VARCHAR2  

  73. , x_return_status         OUT  NOCOPY VARCHAR2  

  74. , x_msg_count             OUT  NOCOPY NUMBER  

  75. , x_msg_data              OUT  NOCOPY VARCHAR2);  

  76.   

  77. --简单参考例子   

  78. /**==================================================  

  79.    Procedure   Name  :  

  80.       create_inv_lot  

  81.   Description:  

  82.       This  procedure   is  concurrent entry, perform:  

  83.       库存事务处理批号生成   api   

  84.   Argument:  

  85.      p_inventory_item_id   库存物料id,  

  86.      p_organization_id     组织id,  

  87.      p_lot_number          批号:   

  88.   History:   

  89.       1.00  2013-10-29  cxy  Creation  

  90.   ==================================================*/  

  91.    PROCEDURE  create_inv_lot(p_init_msg_list      IN  VARCHAR2  DEFAULT  fnd_api.g_false,  

  92.                            p_commit             IN  VARCHAR2  DEFAULT  fnd_api.g_false,  

  93.                            x_return_status      OUT  NOCOPY VARCHAR2,  

  94.                            x_msg_count          OUT  NOCOPY NUMBER,  

  95.                            x_msg_data           OUT  NOCOPY VARCHAR2,  

  96.                            p_inventory_item_id  IN  NUMBER,  

  97.                            p_organization_id    IN  NUMBER,  

  98.                            p_lot_number        VARCHAR2)  IS   

  99.     l_api_name CONSTANT VARCHAR2(30) :=  'create_inv_lot' ;  

  100.     

  101.       

  102.     l_count           NUMBER;  

  103.     x_mtl_lot_numbers mtl_lot_numbers%ROWTYPE;  

  104.     l_mtl_lot_numbers mtl_lot_numbers%ROWTYPE;  

  105.      /* Defined new variables  for  overloaded API call */  

  106.     

  107.     l_api_version      NUMBER := 1.0;  

  108.     l_init_msg_list    VARCHAR2(100) := fnd_api.g_false;  -- bug 7513308;   

  109.     l_commit           VARCHAR2(100) := fnd_api.g_false;  

  110.     l_validation_level NUMBER := fnd_api.g_valid_level_full;  

  111.     l_origin_txn_id    NUMBER :=  NULL ;  

  112.     l_source           NUMBER := 2;  

  113.     l_return_status    VARCHAR2(1);  

  114.     l_msg_data         VARCHAR2(3000);  

  115.     l_msg_count        NUMBER;  

  116.     l_row_id           ROWID;  

  117.     

  118.    BEGIN   

  119.     SAVEPOINT inv_lot_1;  

  120.      -- start activity to create savepoint, check compatibility   

  121.      -- and initialize message list, include debug message hint to enter api   

  122.      SELECT   COUNT (1)  

  123.        INTO  l_count  

  124.        FROM  cux_inv_lot_number  

  125.       WHERE  lot_number = p_lot_number;  

  126.     

  127.     IF l_count = 0  THEN   

  128.       fnd_message.set_name( 'INV' ,  

  129.                             '在系统中不存在此批号:CUX_INV_LOT_NUMBER.lot_number' );  

  130.       fnd_message.set_token( 'LOT_NUMBER' , to_char(p_lot_number));  

  131.       fnd_msg_pub. add ;  

  132.       RAISE fnd_api.g_exc_error;  

  133.      END  IF;  

  134.     

  135.      FOR  rec_inv_lot  IN  cur_inv_lot LOOP  

  136.       

  137.       l_mtl_lot_numbers.inventory_item_id      := p_inventory_item_id;  

  138.       l_mtl_lot_numbers.organization_id        := p_organization_id;  

  139.       l_mtl_lot_numbers.lot_number             := p_lot_number;  

  140.       l_mtl_lot_numbers.last_update_date       := SYSDATE;  

  141.       l_mtl_lot_numbers.last_updated_by        := g_user_id;  

  142.       l_mtl_lot_numbers.creation_date          := rec_inv_lot.lot_date;  

  143.       l_mtl_lot_numbers.created_by             := rec_inv_lot.created_by;  

  144.       l_mtl_lot_numbers.last_update_login      := g_login_id;  

  145.       l_mtl_lot_numbers.program_application_id := g_prog_appl_id;  

  146.       l_mtl_lot_numbers.program_id             := g_conc_program_id;  

  147.       l_mtl_lot_numbers.program_update_date    := SYSDATE;  

  148.       l_mtl_lot_numbers.expiration_date        :=  NULL ;  

  149.       l_mtl_lot_numbers.disable_flag           :=  NULL ;  

  150.       l_mtl_lot_numbers.attribute_category     :=  NULL ;  

  151.       l_mtl_lot_numbers.attribute1             :=  NULL ;  

  152.       l_mtl_lot_numbers.attribute2             :=  NULL ;  

  153.       l_mtl_lot_numbers.attribute3             :=  NULL ;  

  154.       l_mtl_lot_numbers.attribute4             :=  NULL ;  

  155.       l_mtl_lot_numbers.attribute5             :=  NULL ;  

  156.       l_mtl_lot_numbers.attribute6             :=  NULL ;  

  157.       l_mtl_lot_numbers.attribute7             :=  NULL ;  

  158.       l_mtl_lot_numbers.attribute8             :=  NULL ;  

  159.       l_mtl_lot_numbers.attribute9             :=  NULL ;  

  160.       l_mtl_lot_numbers.attribute10            :=  NULL ;  

  161.       l_mtl_lot_numbers.attribute11            :=  NULL ;  

  162.       l_mtl_lot_numbers.attribute12            :=  NULL ;  

  163.       l_mtl_lot_numbers.attribute13            :=  NULL ;  

  164.       l_mtl_lot_numbers.attribute14            :=  NULL ;  

  165.       l_mtl_lot_numbers.attribute15            :=  NULL ;  

  166.       l_mtl_lot_numbers.request_id             :=  NULL ;   

  167.       l_mtl_lot_numbers.gen_object_id          :=  NULL ;  

  168.       l_mtl_lot_numbers.description            :=  NULL ;  

  169.       l_mtl_lot_numbers.vendor_name            :=  NULL ;  

  170.       l_mtl_lot_numbers.supplier_lot_number    :=  NULL ;  

  171.       l_mtl_lot_numbers.country_of_origin      :=  NULL ;  

  172.       l_mtl_lot_numbers.grade_code             :=  NULL ;  

  173.       l_mtl_lot_numbers.origination_date       :=  NULL ;  

  174.       l_mtl_lot_numbers.date_code              :=  NULL ;  

  175.       l_mtl_lot_numbers.status_id              :=  NULL ;  

  176.       l_mtl_lot_numbers.change_date            :=  NULL ;  

  177.       l_mtl_lot_numbers.age                    :=  NULL ;  

  178.       l_mtl_lot_numbers.retest_date            :=  NULL ;  

  179.       l_mtl_lot_numbers.maturity_date          :=  NULL ;  

  180.       l_mtl_lot_numbers.lot_attribute_category :=  NULL ;  

  181.       l_mtl_lot_numbers.item_size              :=  NULL ;  

  182.       l_mtl_lot_numbers.color                  :=  NULL ;  

  183.       l_mtl_lot_numbers.volume                 :=  NULL ;  

  184.       l_mtl_lot_numbers.volume_uom             :=  NULL ;  

  185.       l_mtl_lot_numbers.place_of_origin        :=  NULL ;  

  186.       l_mtl_lot_numbers.kill_date              :=  NULL ;  

  187.       l_mtl_lot_numbers.best_by_date           :=  NULL ;  

  188.       l_mtl_lot_numbers.length                 :=  NULL ;  

  189.       l_mtl_lot_numbers.length_uom             :=  NULL ;  

  190.       l_mtl_lot_numbers.recycled_content       :=  NULL ;  

  191.       l_mtl_lot_numbers.thickness              :=  NULL ;  

  192.       l_mtl_lot_numbers.thickness_uom          :=  NULL ;  

  193.       l_mtl_lot_numbers.width                  :=  NULL ;  

  194.       l_mtl_lot_numbers.width_uom              :=  NULL ;  

  195.       l_mtl_lot_numbers.curl_wrinkle_fold      :=  NULL ;  

  196.       l_mtl_lot_numbers.c_attribute1           :=  NULL ;  

  197.       l_mtl_lot_numbers.c_attribute2           :=  NULL ;  

  198.       l_mtl_lot_numbers.c_attribute3           :=  NULL ;  

  199.       l_mtl_lot_numbers.c_attribute4           :=  NULL ;  

  200.       l_mtl_lot_numbers.c_attribute5           :=  NULL ;  

  201.       l_mtl_lot_numbers.c_attribute6           :=  NULL ;  

  202.       l_mtl_lot_numbers.c_attribute7           :=  NULL ;  

  203.       l_mtl_lot_numbers.c_attribute8           :=  NULL ;  

  204.       l_mtl_lot_numbers.c_attribute9           :=  NULL ;  

  205.       l_mtl_lot_numbers.c_attribute10          :=  NULL ;  

  206.       l_mtl_lot_numbers.c_attribute11          :=  NULL ;  

  207.       l_mtl_lot_numbers.c_attribute12          :=  NULL ;  

  208.       l_mtl_lot_numbers.c_attribute13          :=  NULL ;  

  209.       l_mtl_lot_numbers.c_attribute14          :=  NULL ;  

  210.       l_mtl_lot_numbers.c_attribute15          :=  NULL ;  

  211.       l_mtl_lot_numbers.c_attribute16          :=  NULL ;  

  212.       l_mtl_lot_numbers.c_attribute17          :=  NULL ;  

  213.       l_mtl_lot_numbers.c_attribute18          :=  NULL ;  

  214.       l_mtl_lot_numbers.c_attribute19          :=  NULL ;  

  215.       l_mtl_lot_numbers.c_attribute20          :=  NULL ;  

  216.       l_mtl_lot_numbers.c_attribute21          :=  NULL ;  

  217.       l_mtl_lot_numbers.c_attribute22          :=  NULL ;  

  218.       l_mtl_lot_numbers.c_attribute23          :=  NULL ;  

  219.       l_mtl_lot_numbers.c_attribute24          :=  NULL ;  

  220.       l_mtl_lot_numbers.c_attribute25          :=  NULL ;  

  221.       l_mtl_lot_numbers.c_attribute26          :=  NULL ;  

  222.       l_mtl_lot_numbers.c_attribute27          :=  NULL ;  

  223.       l_mtl_lot_numbers.c_attribute28          :=  NULL ;  

  224.       l_mtl_lot_numbers.c_attribute29          :=  NULL ;  

  225.       l_mtl_lot_numbers.c_attribute30          :=  NULL ;  

  226.       l_mtl_lot_numbers.d_attribute1           :=  NULL ;  

  227.       l_mtl_lot_numbers.d_attribute2           :=  NULL ;  

  228.       l_mtl_lot_numbers.d_attribute3           :=  NULL ;  

  229.       l_mtl_lot_numbers.d_attribute4           :=  NULL ;  

  230.       l_mtl_lot_numbers.d_attribute5           :=  NULL ;  

  231.       l_mtl_lot_numbers.d_attribute6           :=  NULL ;  

  232.       l_mtl_lot_numbers.d_attribute7           :=  NULL ;  

  233.       l_mtl_lot_numbers.d_attribute8           :=  NULL ;  

  234.       l_mtl_lot_numbers.d_attribute9           :=  NULL ;  

  235.       l_mtl_lot_numbers.d_attribute10          :=  NULL ;  

  236.       l_mtl_lot_numbers.d_attribute11          :=  NULL ;  

  237.       l_mtl_lot_numbers.d_attribute12          :=  NULL ;  

  238.       l_mtl_lot_numbers.d_attribute13          :=  NULL ;  

  239.       l_mtl_lot_numbers.d_attribute14          :=  NULL ;  

  240.       l_mtl_lot_numbers.d_attribute15          :=  NULL ;  

  241.       l_mtl_lot_numbers.d_attribute16          :=  NULL ;  

  242.       l_mtl_lot_numbers.d_attribute17          :=  NULL ;  

  243.       l_mtl_lot_numbers.d_attribute18          :=  NULL ;  

  244.       l_mtl_lot_numbers.d_attribute19          :=  NULL ;  

  245.       l_mtl_lot_numbers.d_attribute20          :=  NULL ;  

  246.       l_mtl_lot_numbers.n_attribute1           :=  NULL ;  

  247.       l_mtl_lot_numbers.n_attribute2           :=  NULL ;  

  248.       l_mtl_lot_numbers.n_attribute3           :=  NULL ;  

  249.       l_mtl_lot_numbers.n_attribute4           :=  NULL ;  

  250.       l_mtl_lot_numbers.n_attribute5           :=  NULL ;  

  251.       l_mtl_lot_numbers.n_attribute6           :=  NULL ;  

  252.       l_mtl_lot_numbers.n_attribute7           :=  NULL ;  

  253.       l_mtl_lot_numbers.n_attribute8           :=  NULL ;  

  254.       l_mtl_lot_numbers.n_attribute9           :=  NULL ;  

  255.       l_mtl_lot_numbers.n_attribute10          :=  NULL ;  

  256.       l_mtl_lot_numbers.n_attribute11          :=  NULL ;  

  257.       l_mtl_lot_numbers.n_attribute12          :=  NULL ;  

  258.       l_mtl_lot_numbers.n_attribute13          :=  NULL ;  

  259.       l_mtl_lot_numbers.n_attribute14          :=  NULL ;  

  260.       l_mtl_lot_numbers.n_attribute15          :=  NULL ;  

  261.       l_mtl_lot_numbers.n_attribute16          :=  NULL ;  

  262.       l_mtl_lot_numbers.n_attribute17          :=  NULL ;  

  263.       l_mtl_lot_numbers.n_attribute18          :=  NULL ;  

  264.       l_mtl_lot_numbers.n_attribute19          :=  NULL ;  

  265.       l_mtl_lot_numbers.n_attribute20          :=  NULL ;  

  266.       l_mtl_lot_numbers.n_attribute21          :=  NULL ;  

  267.       l_mtl_lot_numbers.n_attribute22          :=  NULL ;  

  268.       l_mtl_lot_numbers.n_attribute23          :=  NULL ;  

  269.       l_mtl_lot_numbers.n_attribute24          :=  NULL ;  

  270.       l_mtl_lot_numbers.n_attribute25          :=  NULL ;  

  271.       l_mtl_lot_numbers.n_attribute26          :=  NULL ;  

  272.       l_mtl_lot_numbers.n_attribute27          :=  NULL ;  

  273.       l_mtl_lot_numbers.n_attribute28          :=  NULL ;  

  274.       l_mtl_lot_numbers.n_attribute29          :=  NULL ;  

  275.       l_mtl_lot_numbers.n_attribute30          :=  NULL ;  

  276.       l_mtl_lot_numbers.vendor_id              :=  NULL ;  

  277.       l_mtl_lot_numbers.territory_code         :=  NULL ;  

  278.       l_mtl_lot_numbers.parent_lot_number      :=  NULL ;  

  279.       l_mtl_lot_numbers.origination_type       :=  NULL ;  

  280.       l_mtl_lot_numbers.availability_type      :=  NULL ;  

  281.       l_mtl_lot_numbers.expiration_action_code :=  NULL ;  

  282.       l_mtl_lot_numbers.expiration_action_date :=  NULL ;  

  283.       l_mtl_lot_numbers.hold_date              :=  NULL ;  

  284.       l_mtl_lot_numbers.inventory_atp_code     :=  NULL ;  

  285.       l_mtl_lot_numbers.reservable_type        :=  NULL ;  

  286.       l_mtl_lot_numbers.sampling_event_id      :=  NULL ;  

  287.       

  288.       inv_lot_api_pub.create_inv_lot(x_return_status    => l_return_status,  

  289.                                      x_msg_count        => l_msg_count,  

  290.                                      x_msg_data         => l_msg_data,  

  291.                                      x_row_id           => l_row_id,  

  292.                                      x_lot_rec          => x_mtl_lot_numbers,  

  293.                                      p_lot_rec          => l_mtl_lot_numbers,  

  294.                                      p_source           => l_source,  

  295.                                      p_api_version      => l_api_version,  

  296.                                      p_init_msg_list    => l_init_msg_list,  

  297.                                      p_commit           => l_commit,  

  298.                                      p_validation_level => l_validation_level,  

  299.                                      p_origin_txn_id    => l_origin_txn_id);  

  300.       

  301.       IF l_return_status = g_ret_sts_success  THEN   

  302.          UPDATE  cux_inv_lot_number h  

  303.             SET  h.process_status     =  'COMPLETE' ,  

  304.                h.process_date       = SYSDATE,  

  305.                h.process_message    =  NULL ,  

  306.                h.row_version_number = h.row_version_number + 1,  

  307.                h.last_updated_by    = g_user_id,  

  308.                h.last_update_date   = SYSDATE,  

  309.                h.last_update_login  = g_login_id  

  310.           WHERE  h.id = rec_inv_lot.id;  

  311.        ELSE   

  312.          UPDATE  cux_inv_lot_number h  

  313.             SET  h.process_status     =  'ERROR' ,  

  314.                h.process_date       = SYSDATE,  

  315.                h.process_message    =  '创建批次失败-'  || l_msg_data,  

  316.                h.row_version_number = h.row_version_number + 1,  

  317.                h.last_updated_by    = g_user_id,  

  318.                h.last_update_date   = SYSDATE,  

  319.                h.last_update_login  = g_login_id  

  320.           WHERE  h.id = rec_inv_lot.id;  

  321.         IF l_return_status = g_ret_sts_error  THEN   

  322.           

  323.           RAISE g_exc_error;  

  324.         ELSIF l_return_status = g_ret_sts_unexp_error  THEN   

  325.           

  326.           fnd_message.set_name( 'INV' 'INV_PROGRAM_ERROR' );  

  327.           fnd_message.set_token( 'PROG_NAME' ,  

  328.                                  'inv_lot_api_pub.Create_Inv_lot' );  

  329.           fnd_msg_pub. add ;  

  330.           RAISE g_exc_unexpected_error;  

  331.          END  IF;  

  332.        END  IF;  

  333.      END  LOOP;  

  334.     

  335.      -- API end body   

  336.      -- end activity, include debug message hint to exit api   

  337.      

  338.   EXCEPTION  

  339.     

  340.      WHEN  no_data_found  THEN   

  341.       x_return_status := g_ret_sts_error;  

  342.        ROLLBACK   TO  inv_lot_1;  

  343.       fnd_msg_pub.count_and_get(p_encoded => fnd_api.g_false,  

  344.                                 p_count   => x_msg_count,  

  345.                                 p_data    => x_msg_data);  

  346.       IF (x_msg_count > 1)  THEN   

  347.         x_msg_data := fnd_msg_pub.get(x_msg_count, fnd_api.g_false);  

  348.        END  IF;  

  349.        -- print_debug('In No data found Create_Inv_Lot ' || SQLERRM, 9);   

  350.      WHEN  g_exc_error  THEN   

  351.       x_return_status := g_ret_sts_error;  

  352.        ROLLBACK   TO  inv_lot_1;  

  353.       fnd_msg_pub.count_and_get(p_encoded => fnd_api.g_false,  

  354.                                 p_count   => x_msg_count,  

  355.                                 p_data    => x_msg_data);  

  356.       IF (x_msg_count > 1)  THEN   

  357.         x_msg_data := fnd_msg_pub.get(x_msg_count, fnd_api.g_false);  

  358.        END  IF;  

  359.        --print_debug('In g_exc_error Create_Inv_Lot ' || SQLERRM, 9);   

  360.      WHEN  g_exc_unexpected_error  THEN   

  361.       x_return_status := g_ret_sts_unexp_error;  

  362.        ROLLBACK   TO  inv_lot_1;  

  363.       fnd_msg_pub.count_and_get(p_encoded => fnd_api.g_false,  

  364.                                 p_count   => x_msg_count,  

  365.                                 p_data    => x_msg_data);  

  366.       IF (x_msg_count > 1)  THEN   

  367.         x_msg_data := fnd_msg_pub.get(x_msg_count, fnd_api.g_false);  

  368.        END  IF;  

  369.      WHEN  OTHERS  THEN   

  370.       x_return_status := g_ret_sts_unexp_error;  

  371.        ROLLBACK   TO  inv_lot_1;  

  372.       fnd_msg_pub.count_and_get(p_encoded => fnd_api.g_false,  

  373.                                 p_count   => x_msg_count,  

  374.                                 p_data    => x_msg_data);  

  375.       IF (x_msg_count > 1)  THEN   

  376.         x_msg_data := fnd_msg_pub.get(x_msg_count, fnd_api.g_false);  

  377.        END  IF;  

  378.       

  379.    END  create_inv_lot;  



来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/7580948/viewspace-2216065/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论

注册时间:2011-10-30

  • 博文量
    29
  • 访问量
    19105