• Oracle EBS OPM close batch


    	
    --close_batch
    --created by jenrry 
    DECLARE
       x_message_count   NUMBER;
       x_message_list    VARCHAR2 (4000);
       x_return_status   VARCHAR2 (2000);
       p_batch_header    gme_batch_header%ROWTYPE;
       x_batch_header    gme_batch_header%ROWTYPE; 
       l_user_name       VARCHAR2 (80);
       l_user_id         NUMBER;
    
       CURSOR get_user_id (v_user_name IN VARCHAR2)
       IS
          SELECT user_id
            FROM fnd_user
           WHERE user_name = v_user_name;
    
       PROCEDURE display_messages (p_msg_count IN NUMBER)
       IS
          MESSAGE               VARCHAR2 (2000);
          dummy                 NUMBER;
          l_api_name   CONSTANT VARCHAR2 (30)   := 'DISPLAY_MESSAGES';
       BEGIN
          FOR i IN 1 .. p_msg_count
          LOOP
             fnd_msg_pub.get (p_msg_index          => i,
                              p_data               => MESSAGE,
                              p_encoded            => 'F',
                              p_msg_index_out      => dummy
                             );
             DBMS_OUTPUT.put_line ('Message ' || TO_CHAR (i) || ' ' || MESSAGE);
          END LOOP;
       EXCEPTION
          WHEN OTHERS
          THEN
             fnd_msg_pub.add_exc_msg ('wrapper for Close_batch', l_api_name);
       END display_messages;
    BEGIN 
       DBMS_OUTPUT.ENABLE (20000); 
       l_user_name := 'PROCESS_OPS';
    
       OPEN get_user_id (l_user_name);
    
       FETCH get_user_id
        INTO l_user_id;
    
       IF get_user_id%NOTFOUND
       THEN
          DBMS_OUTPUT.put_line ('Invalid User ' || l_user_name);
    
          CLOSE get_user_id;
    
          RAISE NO_DATA_FOUND;
       END IF;
    
       CLOSE get_user_id;
    
       fnd_profile.initialize (l_user_id); 
       fnd_global.apps_initialize (user_id           => l_user_id,
                                   resp_id           => NULL,
                                   resp_appl_id      => NULL
                                  ); 
       p_batch_header.batch_id := 217713;
       p_batch_header.plant_code := NULL;
       p_batch_header.batch_no := NULL;
       p_batch_header.batch_type := NULL;
       -- p_batch_header.batch_close_date := TO_DATE('31-JAN-2004 23:00:00','DD-MON-YYYY HH24:MI:SS');
       DBMS_OUTPUT.put_line ('Calling gme_api_pub.close_batch ... '); 
       gme_api_pub.close_batch (p_api_version           => 2,
                                p_validation_level      => 100,
                                p_init_msg_list         => 'T',
                                p_commit                => 'F',
                                x_message_count         => x_message_count,
                                x_message_list          => x_message_list,
                                x_return_status         => x_return_status,
                                p_batch_header_rec      => p_batch_header,
                                x_batch_header_rec      => x_batch_header,
                                p_org_code              => NULL
                               );
       DBMS_OUTPUT.put_line
                (   'After Calling gme_api_pub.close_batch ... x_return_status = '
                 || x_return_status
                ); 
       DBMS_OUTPUT.put_line ('x_message_count = ' || TO_CHAR (x_message_count));
       DBMS_OUTPUT.put_line ('x_message_list = ' || x_message_list);
       DBMS_OUTPUT.put_line ('x_return_status = ' || x_return_status);
       DBMS_OUTPUT.put_line (   'x_batch_header.batch_id = '
                             || TO_CHAR (x_batch_header.batch_id)
                            );
       DBMS_OUTPUT.put_line (   'x_batch_header.plant_code = '
                             || x_batch_header.plant_code
                            );
       DBMS_OUTPUT.put_line (   'x_batch_header.batch_no = '
                             || x_batch_header.batch_no
                            );
       DBMS_OUTPUT.put_line (   'x_batch_header.batch_type = '
                             || TO_CHAR (x_batch_header.batch_type)
                            );
       DBMS_OUTPUT.put_line (   'x_batch_header.batch_status = '
                             || TO_CHAR (x_batch_header.batch_status)
                            );
       DBMS_OUTPUT.put_line (   'x_batch_header.batch_close_date = '
                             || TO_CHAR (x_batch_header.batch_close_date)
                            );
    
       IF x_message_count > 1
       THEN
          display_messages (x_message_count);
       END IF;
    EXCEPTION
       WHEN OTHERS
       THEN
          DBMS_OUTPUT.put_line ('Error ' || TO_CHAR (SQLCODE) || ': ' || SQLERRM);
          RAISE;
    END;
    /
    

      

    土豆君
  • 相关阅读:
    线程 定时任务 实现思路
    Days Floating In ShenZhen(1)
    由于未能找到具有自动生成的控件来引发回发事件,导致发生错误
    在ASP.NET中使用AJAX.NET (转译自MSDN)(二)
    Every Time I Wake up I want sleep more
    漂泊在深圳的日子2
    512今日历程
    流金岁月
    对自己的思考
    关于绑定自动生成的下拉式菜单的错误
  • 原文地址:https://www.cnblogs.com/jenrry/p/10021186.html
Copyright © 2020-2023  润新知