Eyl
3
2015

Teslimata Atanmış Sevk Satırlarının Teslimat Atamasının Kaldırılması

Merhaba,

Bu yazımda teslimata atanmış olan sevk satırlarının teslimattan kaldırılması için gereken örnek bir scripti paylaşacağım.

 
 
/* Formatted on 2015/09/03 09:05 (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_action               VARCHAR2 (30)                        := 'UNASSIGN';
   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
--********************************************************************
   SELECT delivery_id
     INTO l_delivery_id
     FROM wsh_delivery_assignments
    WHERE 1 = 1 AND delivery_detail_id = p_delivery_detail_id;
 
--********************************************************************
   l_tabofdeldets (1) := p_delivery_detail_id;
   p_delivery_id := l_delivery_id;
   p_delivery_name := TO_CHAR (l_delivery_id);
--********************************************************************
   wsh_delivery_details_pub.detail_to_delivery
                            (p_api_version           => 1.0,
                             p_init_msg_list         => fnd_api.g_true,
                             p_commit                => fnd_api.g_false,
                             p_validation_level      => fnd_api.g_valid_level_full,
                             x_return_status         => l_return_status,
                             x_msg_count             => l_msg_count,
                             x_msg_data              => l_msg_data,
                             p_tabofdeldets          => l_tabofdeldets,
                             p_action                => l_action,
                             p_delivery_id           => p_delivery_id,
                             p_delivery_name         => p_delivery_name
                            );
 
--********************************************************************
   IF l_return_status = wsh_util_core.g_ret_sts_success
   THEN
      DBMS_OUTPUT.put_line
            (   p_delivery_detail_id
             || ' id li delivery_detail_id nin teslimattan ataması kaldırıldı !'
            );
   ELSE
      IF l_msg_count > 1
      THEN
         LOOP
            p_count := p_count + 1;
            v_msg_data :=
                        fnd_msg_pub.get (fnd_msg_pub.g_next, fnd_api.g_false);
 
            IF v_msg_data IS NULL
            THEN
               EXIT;
            END IF;
 
            l_msg_data := l_msg_data || ',' || v_msg_data;
         END LOOP;
 
         l_msg_data := LTRIM (l_msg_data, ',');
         DBMS_OUTPUT.put_line
            (   p_delivery_detail_id
             || ' id li delivery_detail_id nin teslimattan ataması kaldırılırken hata : '
             || l_msg_data
            );
      ELSE                                             --> l_msg_count = 1 ise
         DBMS_OUTPUT.put_line
            (   p_delivery_detail_id
             || ' id li delivery_detail_id nin teslimattan ataması kaldırılırken hata : '
             || l_msg_data
            );
      END IF;
   END IF;
--********************************************************************
END;

Mustafa Korkmaz

Oracle Applications Developer at Partnera
2005 yılında Dokuz Eylül Üniversitesi Endüstri Mühendisliğinden Mezun
Oldu, 2011 Yılında Ahmet Yesevi Üniversitesi Bilgisayar Mühendisliğinde
Yüksek Lisansını Tamamlandı,2012 Yılında Doğuş Üniversitesinde Bilgisayar
Mühendisliği Doktora Eğitimine Başladı.10 yılı aşkın bir zamandır Oracle
Ürünleri Uygulama Yazılım Uzmanı Olarak profesyonel kariyerine devam
etmektedir. İlgi alanları Middleware, CI/CD,
Oracle Database , PL/SQL , Java , Makine Öğrenmesi ve Veri Madenciliği alanlarındadır.
2 versiyon Oracle Database ' (10g, 11g) inde OCA(Oracle Certificate Associate) ve
PL/SQL Certificated Professional ünvanları bulunmaktadır.
Mail: mustafakorkmz@gmail.com
Mustafa Korkmaz


Yorum yapın

*