Eyl
3
2015

Sevk Satırlarını Yeni Oluşturulan Teslimata Atamak

Merhaba,

Bu yazımda işlemler ekranından yapılan seçilen satırları teslimata atama işlemini public api kullanılarak yapılmasını örnek scriptini paylaşacağım.

 
 
 
 
/* Formatted on 2015/09/03 09:15 (Formatter Plus v4.8.8) */
DECLARE
   p_delivery_detail_id   NUMBER                               := 52145214;
   --> delivery_detail_id verilmelidir !
   l_tabofdeldets         wsh_delivery_details_pub.id_tab_type;
   l_validation_level     NUMBER; 
   l_msg_details          VARCHAR2 (2400);
   l_msg_summary          VARCHAR2 (2400);
   l_delivery_id          NUMBER;
   p_count                NUMBER;
   l_line_rows            wsh_util_core.id_tab_type;
   l_del_rows             wsh_util_core.id_tab_type;
   v_error_msg            VARCHAR2 (2400);
   v_msg_data             VARCHAR2 (2400);
   l_return_status        VARCHAR2 (1);
   l_msg_count            NUMBER;
   l_msg_data             VARCHAR2 (2400);
   p_delivery_id          NUMBER;
   p_delivery_name        VARCHAR2 (30);
BEGIN
--********************************************************************
   l_line_rows (1) := p_delivery_detail_id;
   wsh_delivery_details_pub.autocreate_deliveries
                                         (p_api_version_number      => 1.0,
                                          p_init_msg_list           => fnd_api.g_true,
                                          p_commit                  => fnd_api.g_false,
                                          x_return_status           => l_return_status,
                                          x_msg_count               => l_msg_count,
                                          x_msg_data                => v_error_msg,
                                          p_line_rows               => l_line_rows,
                                          x_del_rows                => l_del_rows
                                         );
 
--********************************************************************
   IF (l_return_status <> wsh_util_core.g_ret_sts_success)
   THEN
      wsh_util_core.get_messages ('Y',
                                  l_msg_summary,
                                  l_msg_details,
                                  l_msg_count
                                 );
      DBMS_OUTPUT.put_line ('l_msg_count:' || l_msg_count);
 
      IF l_msg_count > 1
      THEN
         v_error_msg := l_msg_summary || l_msg_details;
      ELSE
         v_error_msg := l_msg_summary || l_msg_details;
      END IF;
 
      DBMS_OUTPUT.put_line
         (   p_delivery_detail_id
          || ' id li delivery_detail_id nin teslimata atama işlemi sırasında hata alındı : '
          || v_error_msg
         );
   ELSE
      DBMS_OUTPUT.put_line
                          (   p_delivery_detail_id
                           || ' id li delivery_detail_id nin teslimata atandı: '
                          );
 
      SELECT delivery_id
        INTO l_delivery_id
        FROM wsh_delivery_assignments
       WHERE 1 = 1 AND delivery_detail_id = p_delivery_detail_id;
 
      DBMS_OUTPUT.put_line ('Delivery_ID :' || l_delivery_id);
   END IF;
--********************************************************************
END;
Mustafa Korkmaz


Yorum yapın

*