May
28
2015

Eklerin Kopyalanması (Attachment)

Aşağıda yer alanı scripti kullanarak satınalma siparişlerinin, satış siparişlerinin, kalemlerin v.b. üzerinde yer alan ekleri başka bir sipariş veya kalemin üzerine kopyalayabilirsiniz.

Not:Aşağıdaki örnek satış siparişleri için yapılmıştır. l_category_id ve l_pk1_value gibi alanlar değiştirilerek kalemler ve satınalma siparişleri içinde kullanılabilir.

 

 
DECLARE
   l_rowid                  ROWID;
   l_attached_document_id   NUMBER;
   l_document_id            NUMBER;
   l_media_id               NUMBER;
   l_category_id            NUMBER                                 := 1000503;
                                                          -- OE_ORDER_HEADERS
   l_pk1_value              fnd_attached_documents.pk1_value%TYPE
                                                                 := '3517131';
   l_description            fnd_documents_tl.description%TYPE       := NULL;
   l_filename               fnd_documents_tl.file_name%TYPE
                             := 'RM010-FONKSIYONEL ANALIZ-YPYM Talepler.docx';
   l_seq_num                NUMBER;
   l_blob_data              BLOB;
   l_blob                   BLOB;
   l_bfile                  BFILE;
   l_byte                   NUMBER;
BEGIN
   fnd_global.apps_initialize (0, 21623, 660);
 
   SELECT fnd_documents_s.NEXTVAL
     INTO l_document_id
     FROM DUAL;
 
   SELECT fnd_attached_documents_s.NEXTVAL
     INTO l_attached_document_id
     FROM DUAL;
 
   SELECT NVL (MAX (seq_num), 0) + 10
     INTO l_seq_num
     FROM fnd_attached_documents
    WHERE pk1_value = l_pk1_value AND entity_name = 'OE_ORDER_HEADERS';
 
   fnd_documents_pkg.insert_row
             (x_rowid                  => l_rowid,
              x_document_id            => l_document_id,
              x_creation_date          => SYSDATE,
              x_created_by             => 0    -- fnd_profile.value('USER_ID')
                                           ,
              x_last_update_date       => SYSDATE,
              x_last_updated_by        => 0    -- fnd_profile.value('USER_ID')
                                           ,
              x_last_update_login      => 21478918
                                              -- fnd_profile.value('LOGIN_ID')
                                                  ,
              x_datatype_id            => 6                            -- FILE
                                           ,
              x_category_id            => l_category_id,
              x_security_type          => 4,
              x_publish_flag           => 'Y',
              x_usage_type             => 'O',
              x_language               => 'TR',
              x_description            => l_description,
              x_file_name              => l_filename,
              x_media_id               => l_media_id
             );
   COMMIT;
 
   INSERT INTO fnd_lobs
               (file_id, file_name,
                file_content_type, upload_date, expiration_date,
                program_name, program_tag, file_data, LANGUAGE,
                oracle_charset, file_format
               )
        VALUES (l_media_id, 'RM010-FONKSIYONEL ANALIZ-YPYM Talepler.docx',
                'application/octet-stream', SYSDATE, NULL,
                'FNDATTCH', NULL, EMPTY_BLOB (),                --l_blob_data,
                                                'TR',
                'WE8ISO8859P9', 'IGNORE'
               )
     RETURNING file_data
          INTO l_blob;
 
-- DBMS_LOB.createtemporary (l_blob, TRUE);
-- l_bfile := BFILENAME ('TEMP_DIR', 'RM010-FONKSIYONEL ANALIZ-YPYM Talepler.docx');
-- l_byte := DBMS_LOB.getlength (l_bfile);
-- DBMS_OUTPUT.put_line ('size is ' || l_byte);
-- DBMS_LOB.fileopen (l_bfile);
-- DBMS_LOB.loadfromfile (l_blob, l_bfile, l_byte);
-- DBMS_LOB.fileclose (l_bfile);
-- DBMS_OUTPUT.put_line ('document id is ' || l_document_id);
   fnd_documents_pkg.insert_tl_row
                        (x_document_id            => l_document_id,
                         x_creation_date          => SYSDATE,
                         x_created_by             => fnd_profile.VALUE
                                                                    ('USER_ID'),
                         x_last_update_date       => SYSDATE,
                         x_last_updated_by        => fnd_profile.VALUE
                                                                    ('USER_ID'),
                         x_last_update_login      => fnd_profile.VALUE
                                                                   ('LOGIN_ID'),
                         x_language               => 'TR',
                         x_description            => l_description,
                         x_file_name              => l_filename,
                         x_media_id               => l_media_id
                        );
   COMMIT;
   fnd_attached_documents_pkg.insert_row
                        (x_rowid                         => l_rowid,
                         x_attached_document_id          => l_attached_document_id,
                         x_document_id                   => l_document_id,
                         x_creation_date                 => SYSDATE,
                         x_created_by                    => fnd_profile.VALUE
                                                                    ('USER_ID'),
                         x_last_update_date              => SYSDATE,
                         x_last_updated_by               => fnd_profile.VALUE
                                                                    ('USER_ID'),
                         x_last_update_login             => fnd_profile.VALUE
                                                                   ('LOGIN_ID'),
                         x_seq_num                       => l_seq_num,
                         x_entity_name                   => 'OE_ORDER_HEADERS',
                         x_column1                       => NULL,
                         x_pk1_value                     => '3517133',
                         x_pk2_value                     => NULL,
                         x_pk3_value                     => NULL,
                         x_pk4_value                     => NULL,
                         x_pk5_value                     => NULL,
                         x_automatically_added_flag      => 'N',
                         x_datatype_id                   => 6,
                         x_category_id                   => l_category_id,
                         x_security_type                 => 4,
                         x_publish_flag                  => 'Y',
                         x_language                      => 'US',
                         x_description                   => l_description,
                         x_file_name                     => l_filename,
                         x_media_id                      => l_media_id
                        );
   COMMIT;
   DBMS_OUTPUT.put_line ('MEDIA ID CREATED IS ' || l_media_id);
END;

Mert Ağbaba


Yorum yapın

*