• PLSQL提交带有模板的报表的方法


    使用fnd_request可以实现在PLSQL代码中提交并发请求。
    但是如果请求设置模板,代码提交请求是带不出来模板的,需要添加代码来为请求指定模板。代码如下
    复制代码
    PROCEDURE submit_concurrent_program
    (
        x_request_id     OUT 
    NUMBER,
        x_return_msg     OUT 
    VARCHAR2,
        p_conc_prog_code 
    VARCHAR2,
        p_group_id       
    NUMBER,
        p_doc_seq_num    
    VARCHAR2
    IS
        l_layout      BOOLEAN;
        l_output_type 
    VARCHAR2(30);
    BEGIN
        
    BEGIN
            
    SELECT xt.default_output_type
              
    INTO l_output_type
              
    FROM xdo_templates_vl xt
             
    WHERE xt.application_short_name = 'CUX'
               
    AND xt.template_code = p_conc_prog_code;
        EXCEPTION
            
    WHEN OTHERS THEN
                l_output_type :
    = NULL;
        
    END;
        
    --
        l_layout := fnd_request.add_layout('CUX',
                                           p_conc_prog_code,
                                           
    NULL,
                                           
    NULL,
                                           l_output_type);
        
    --
        IF l_layout AND l_output_type IS NOT NULL THEN
            x_request_id :
    = fnd_request.submit_request('CUX',
                                                       p_conc_prog_code,
                                                       
    NULL,
                                                       
    NULL,
                                                       FALSE,
                                                       p_doc_seq_num,
                                                       p_group_id);
            
    IF x_request_id = 0 THEN
                x_return_msg :
    = '提交并发请求失败,请联系系统管理员.';
                
    RETURN;
            
    ELSE
                
    COMMIT;
            
    END IF;
        
    ELSE
            x_return_msg :
    = '获取默认输出格式失败,请联系系统管理员检查设置.';
        
    END IF;
    EXCEPTION
        
    WHEN OTHERS THEN
            x_request_id :
    = NULL;
            x_return_msg :
    = SQLCODE || ':' || SQLERRM;
    END submit_concurrent_program;
    复制代码
     

    主要是加入这段代码

    l_layout := fnd_request.add_layout('CUX',
    p_conc_prog_code,
    --这里的并发请求简称,和模板简称相同
    NULL,
    NULL,
    l_output_type);
    参数依次为应用简称,模板简称,语言,国家,默认输出方式(PDF,EXCEL等)。
  • 相关阅读:
    [SCM]源码管理 perforce的权限管理
    [BuildRelease]产品和文件版本号
    删除所有的.svn 文件
    [SCM]源码管理 perforce快速入门
    6个Linux chkconfig命令实例 增加,删除,查看和修改services的自动启动选项
    [SCM]源码管理 perforce管理员需要知道的命令
    [SCM]源码管理 perforce与分布式团队的开发
    [SCM]源码管理 perforce命令行高级
    PHP aes加密 mcrypt转openssl问题;
    《Excel与VBA程序设计》第四章更新
  • 原文地址:https://www.cnblogs.com/liuweicong39/p/2530678.html
Copyright © 2020-2023  润新知