• xml模板提交请求submit_request


    1. 首先调用函数 fnd_request.add_layout 来确定输出文件
    调用方法: result := fnd_request.add_layout(template_appl_name => :template_appl_name,
                           template_code => :template_code,
                           template_language => :template_language,
                           template_territory => :template_territory,
                           output_format => :output_format,
                           nls_language => :nls_language);
    其中 result 为 boolean 类型的变量
    template_appl_name 指请求模板对应的应用简称
    template_code 指请滶模板的简称,一般与请求的简称相同
    template_language 指运行请求时模板的语言,中文为 zh,英文为 us,此参数必需在挂模板时所选的语言范围内
    template_territory 指语言对应的区域,中国为 CN
    output_format 指报表输出时的格式类型,如 PDF,EXCEL等
    nls_language 留空即可
    2. 在 result 返回值为 true 时再调用函数 FND_REQUEST.SUBMIT_REQUEST 来正式提交请求
    调用方法: ln_request_id := fnd_request.submit_request(application => :application,
                                            program => :program,
                                            description => :description,
                                            start_time => :start_time,
                                            sub_request => sub_request,
                                            argument1..100 => :argument1..100);
    其中 ln_request_id 为数值类型的变量
    application 指请求对应的应用简称,必须
    program 指请求的简称,必须
    description 描述,在调用时留空即可
    start_time 指请求开始运行的时间,在调用时留空即可,表求即时执行
    sub_request 指当前请求是否是子请求,一般在调用时赋值 false,必须
    argument1..100 指调用请求时的参数,最多100个,pl/sql中调用时可在最后一个参数后用 chr(0)来表示为最后一个参数,不用写满100个参数,如果form中调用则需要写满100个参数
    3. 2步执行后如果 ln_request_id > 0 表示提交成功,则需要显性执行 commit 才可最终提交成功
    例: procedure CUX_SUBMIT_REQUEST(p_sob_id in number,
                                                           p_com_code in varchar2,
                                                           p_date_f in varchar2,
                                                           p_date_t in varchar2,
                                                             p_je_batch_id in number,
                                                             p_je_header_id in number
                                                                      ) is
      ln_request_id NUMBER;
      exce_occ EXCEPTION;
      b_wait BOOLEAN;
      v_phase VARCHAR2(80);
      v_status VARCHAR2(80);
      v_dev_phase VARCHAR2(80);
      v_dev_status VARCHAR2(80);
      v_message VARCHAR2(80);
    BEGIN
      b_wait := fnd_request.add_layout('CUX','CUX0GLJEPTA4','zh','CN','PDF','');
      if b_wait then
        ln_request_id:= FND_REQUEST.SUBMIT_REQUEST(
                          'CUX', 'CUX0GLJEPTA4', '', '', FALSE,
                          p_sob_id,p_com_code ,p_date_f,p_date_t,'','','','','','','',
                          p_je_batch_id,
                          p_je_header_Id,'','Y','N','','',chr(0),'',
                           '','','','','','','','','','',
                           '','','','','','','','','','',
                           '','','','','','','','','','',
                           '','','','','','','','','','',
                           '','','','','','','','','','',
                           '','','','','','','','','','',
                           '','','','','','','','','','',
                           '','','','','','','','','','');
         IF ln_request_id = 0 then
          fnd_message.debug('您的请求提交失败');
        else
           fnd_message.debug('您的请求已经提交成功,请求编号为: '||ln_request_id);
        end if;
        COMMIT;
      end if;
    end CUX_SUBMIT_REQUEST;


    其中要注意的几个点,
    (1)对于fnd_request.submit_request的前5个人参数,第三个和第四个为空,写出null而不能写做‘’,不然会报错 rusult始终等于0,无法提交。

  • 相关阅读:
    面向对象程序设计寒假作业2
    面向对象程序设计寒假作业1
    自我介绍
    3组-Alpha冲刺-1/6
    3组 需求分析报告
    3组 团队展示
    第一次个人编程作业
    第一次博客作业
    我罗斯方块最终篇
    我罗斯方块设计
  • 原文地址:https://www.cnblogs.com/akami/p/6940777.html
Copyright © 2020-2023  润新知