zoukankan      html  css  js  c++  java
  • PL/SQL调用系统标准的请求实例

    需求:实现供应商的接口导入:

             导入供应商、供应商地址和供应商联系人的信息。

        

    定义变量:

    --提交标准并发请求时的参数
        l_request_id1 NUMBER;
        l_request_id2 NUMBER;
        l_request_id3 NUMBER;
        l_request_id4 NUMBER;
        l_bl_result1  BOOLEAN;
        l_bl_result2  BOOLEAN;
        l_bl_result3  BOOLEAN;

       调用标准的请求,将三个接口表中的数据导入到系统中。

       实现sql如下:

    IF v_supplier_error_flag = 'N' AND v_supplier_site_error_flag = 'N' AND  
           v_supplier_contact_error_flag = 'N' THEN  
      
          --分ou的导入,并且初始化OU  
          FOR l_cur_submit IN cur_submit LOOP  
            v_org_id := NULL; --初始化ou  
            v_org_id := get_org_id(l_cur_submit.org_name);  
            --初始化环境变量  
            set_policy_context(v_org_id);  
            --调用标准的并发请求  
            --调用供应商的并发请求  
            l_request_id1 := fnd_request.submit_request('SQLAP', --应用简称  
                                                        'APXSUIMP', --并发程序  
                                                        '',  
                                                        '',  
                                                        FALSE,  
                                                        'NEW',  --NEW、Reject、ALL
                                                        1000,  --默认1000
                                                        'N',  --只输出错误记录
                                                        'N',  --是否启用调试信息
                                                        'N',  --是否开启Trace
                                                        chr(0));  
            COMMIT;  
            IF l_request_id1 IS NULL OR l_request_id1 = 0 THEN  
              retcode := 2;  
              errbuf  := '供应商接口导入标准表出错!';  
              RETURN;  
            END IF;  
      
            l_bl_result1 := fnd_concurrent.wait_for_request(l_request_id1, --等待的请求  
                                                            1, --间隔时间  
                                                            0, --等待时间  
                                                            v_phase,  
                                                            v_status,  
                                                            v_dev_phase,  
                                                            v_dev_status,  
                                                            v_message);  
      
            IF v_dev_phase = 'COMPLETE' AND v_dev_status = 'NORMAL' THEN  
      
              --调用供应商地点的并发请求  
              l_request_id2 := fnd_request.submit_request('SQLAP', --应用简称  
                                                          'APXSSIMP', --并发程序  
                                                          '',  
                                                          '',  
                                                          FALSE,  
                                                          'NEW',  
                                                          1000,  
                                                          'N',  
                                                          'N',  
                                                          'N',  
                                                          chr(0));  
              COMMIT;  
              IF l_request_id2 IS NULL OR l_request_id2 = 0 THEN  
                retcode := 2;  
                errbuf  := '供应商地点接口导入标准表出错!';  
                RETURN;  
              END IF;  
      
              l_bl_result2 := fnd_concurrent.wait_for_request(l_request_id2, --等待的请求  
                                                              1, --间隔时间  
                                                              0, --等待时间  
                                                              v_phase,  
                                                              v_status,  
                                                              v_dev_phase,  
                                                              v_dev_status,  
                                                              v_message);  
      
              IF v_dev_phase = 'COMPLETE' AND v_dev_status = 'NORMAL' THEN  
                --调用供应商地点联系人的并发请求  
                l_request_id3 := fnd_request.submit_request('SQLAP', --应用简称  
                                                            'APXSCIMP', --并发程序  
                                                            '',  
                                                            '',  
                                                            FALSE,  
                                                            'NEW',  
                                                            1000,  
                                                            'N',  
                                                            'N',  
                                                            'N',  
                                                            chr(0));  
                COMMIT;  
                IF l_request_id3 IS NULL OR l_request_id3 = 0 THEN  
                  retcode := 2;  
                  errbuf  := '供应商地点联系人接口导入标准表出错!';  
                  RETURN;  
                END IF;  
                l_bl_result3 := fnd_concurrent.wait_for_request(l_request_id3, --等待的请求  
                                                                1, --间隔时间  
                                                                0, --等待时间  
                                                                v_phase,  
                                                                v_status,  
                                                                v_dev_phase,  
                                                                v_dev_status,  
                                                                v_message);  
                IF v_dev_phase <> 'COMPLETE' AND v_dev_status <> 'NORMAL' THEN  
                  retcode := 2;  
                  errbuf  := '供应商地点联系人接口导入标准表出错!';  
                  RETURN;  
                END IF;  
              END IF;  
            END IF;  
      
            COMMIT;  
          END LOOP; --结束loop循环  
    END IF;  
  • 相关阅读:
    [Xcode 实际操作]八、网络与多线程-(16)使用网址会话对象URLSession下载图片并显示下载进度
    [Xcode 实际操作]八、网络与多线程-(15)使用网址会话对象URLSession下载图片并存储在沙箱目录中
    leetcode第一刷_Best Time to Buy and Sell Stock II
    Unity 武器拖尾效果
    Android环境搭建 NDK+ADT(免cywgin)
    ros下单目相机校正
    Valid Phone Numbers
    ExtJS4.2.1与Spring MVC实现Session超时控制
    Kafka具体解释二、怎样配置Kafka集群
    OutOfMemoryError: Java heap space和GC overhead limit exceeded在Ant的Build.xml中的通用解决方式
  • 原文地址:https://www.cnblogs.com/Cqiang/p/2991563.html
Copyright © 2011-2022 走看看