在程序中提交XMLP报表

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_formate => :output_format,

nls_language => :nls_language);

其中result为boolean类型的变量

template_appl_name 指请求模版对应的应用简称

template_code 指请求模版的简称,一般与请求的简称相同

template_language 指运行请求时模版的语言,中文为zh,英文为us,此参数必须在挂模版时所选的语言范围内

template_territory 指语言对应的区域,中国为CN

output_formate 指报表输出时的格式类型,如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 才可最终提交成功

举例:

SELECT
        XTV.DEFAULT_LANGUAGE
       ,XTV.DEFAULT_TERRITORY
       ,XTV.TEMPLATE_CODE
    INTO
        lv_default_language
       ,lv_default_territory
       ,lv_template_code
    FROM
        XDO_TEMPLATES_VL XTV
    WHERE
        XTV.APPLICATION_SHORT_NAME = 'XXAR'
    AND XTV.TEMPLATE_CODE = 'CUXARINVP';
    --
    lb_result := FND_REQUEST.ADD_LAYOUT('XXAR',
                                         lv_template_code,
                                         lv_default_language,
                                         lv_default_territory,
                                         'PDF');
    --
    IF lb_result THEN
      ln_request_id := FND_REQUEST.submit_request(
                                        application => 'XXAR',
                                        program     => 'CUXARINVP',
                                        description => NULL,
                                        start_time  => NULL,
                                        sub_request => FALSE,
                                        argument1   => p_reprint_flag,
                                        argument2   => p_batch_source_id,
                                        argument3   => p_cust_trx_type_id,
                                        argument4   => p_cust_account_id,
                                        argument5   => p_invoice_number_from,
                                        argument6   => p_invoice_number_to,
                                        argument7   => p_invoice_date_from,
                                        argument8   => p_invoice_date_to,
                                        argument9   => p_order_number
                                        );
      COMMIT;

      IF NVL(ln_request_id,0) > 0 THEN
          write_log('Successfully submitted with request_id: '||ln_request_id);
      ELSE
          write_log('Failed to launch.');
      END IF;
     --
      COMMIT;
    END IF;

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-10-05 21:37:34

在程序中提交XMLP报表的相关文章

在ASP程序中打印Excel报表的新方法

目前,B/S模式(浏览器/服务器模式)成为企业网上首选的计算模式.由于B/S模式的特殊性,在C/S下相对较易实现的Excel报表打印功能在B/S下却成为一个难点.本人通过研究写了一个基于ASP程序的打印Excel报表的程序.本程序的特点是无须任何组件. Print.asp ------------------------------------------------ <html><title>打印Excel报表</title> <% '控制脚本语言 respon

在DevExpress程序中使用条形码二维码控件,以及进行报表打印处理

在很多业务系统里面,越来越多涉及到条形码.二维码的应用了,不管在Web界面还是WInform界面都需要处理很多物料相关的操作,甚至很多企业为了减少录入错误操作,为每个设备进行条形码.二维码的标签,直接在流程中进行扫描处理,仅仅在界面勾选一些处理选项即可,极大提高工作效率,降低出错的几率.本篇随笔介绍如何在基于WInform的DevExpress程序中对条形码.二维码的处理,包括界面展示,报表打印等常规的处理. 1.DevExpress的条形码操作及报表打印 在15.1以上的DevEpxress版

FastReport教程:如何在单页应用程序Angular 7中使用Web报表

下载FastReport.Net最新版本 如果您在ASP.Net Core应用程序中使用FastReport.Net并希望切换到单页应用程序(SPA),那么本文适合您. 由于Angular和ASP.Net Core的共生,您可以使用您熟悉的MVC应用程序架构. 我们来看看创建SPA应用程序的方法.这对那些刚刚学习Angular的人很有用.要使用Angular,您需要安装Node.js,这是一个在服务器端执行JavaScript代码的平台. 最简单的方法是从开发人员的网站https://nodej

PTA中提交Python3程序的一些套路

0. FAQ while True: raw = input() if raw == '': break print(sum(map(int, raw.split()))) 0.1 提交后提示“答案错误”或者“格式错误” PTA检查答案正确与否是通过字符串匹配实现的.所以可能有以下几种原因: 格式错误:程序的输出要与题目中的样例输出格式一样(输出内容根据运行结果不同而变化),程序输出的结果多一个空格.少一个空格,都不行.比如输出样例为1 + 2 = 3,你的输出却是1+2=3 ,错误原因分析:在

在DevExpress程序中使用GridView直接录入数据的时候,增加列表选择的功能

在我上篇随笔<在DevExpress程序中使用Winform分页控件直接录入数据并保存>中介绍了在GridView以及在其封装的分页控件上做数据的直接录入的处理,介绍情况下数据的保存和校验等操作,不过还没有涉及到数据列表选择的这种方式,而这种在项目应用也是比较广泛的一种输入方式.本篇随笔继续探讨在GridView上直接录入数据,并增加字典选择列表的功能. 1.GridView直接录入数据回顾 在之前整合的数据录入案例里面,我们可以看到可以在列表里面直接录入速度的便捷性,如下所示. 1)直接在G

与应用程序松耦合的报表开发组织

在软件项目中,报表模块经历了一个和其他模块从紧耦合到松耦合的发展过程. 早期的报表,和软件项目的其他功能模块一样,都是由同样的开发工具和语言编写的.从PB.Delphi到asp.php,再到目前的C#.Java.有些小的项目,报表模块和其他功能一起编译在一个exe文件,或者jar包中.这些软件上线运行之后,客户提出的报表的修改,就变成了一个很大的问题.比如说,一张报表的标题发生的了变化,需求提交开发之后,要重新编写代码.重新编译.重新测试打包. 报表工具的出现,使这个现象得到了很大的改观.报表工

在DevExpress程序中使用Winform分页控件直接录入数据并保存

一般情况下,我们都倾向于使用一个组织比较好的独立界面来录入或者展示相关的数据,这样处理比较规范,也方便显示比较复杂的数据.不过在一些情况下,我们也可能需要直接在GridView表格上直接录入或者修改数据,这种对于字段比较少,而且内容相对比较简单的情况下,效率是比较高的一种输入方式.本篇随笔主要介绍在DevExpress程序中使用GridView直接录入数据并保存的实现,以及使用Winform分页控件来进行数据直接录入的实现操作. 1.在GridView上展示数据 在GridView上展示数据,只

Asp.net中动态控制RDLC报表 自定义RDLC

转载自: http://dlwang2002.cnblogs.com/archive/2006/05/27/410499.html 在asp.net程序中,可以选择使用水晶报表,功能确实强大.但是web版的水晶报表好像存在版权的问题.如果所作报表不是复杂的一塌糊涂的话,可以使用微软自带的Rdlc报表.已经有老兄做出了不少诠释:http://www.cnblogs.com/waxdoll/更多资料可以在这里找到:http://www.gotreportviewer.com/Rdlc优点:1:Rdl

关于iOS程序中插入广告的问题

版权所有,转载请注明出处 陈军刚 对于开发面向全球用户的免费软件,插入Google的Admob广告和Apple的iAd是开发者实现盈利的最好选择.那接下来将介绍一些在iOS程序中插入Google的Admob广告的一些步骤. 第一步:加入ADBannerView 首先,在你的工程中引入iAd.framework ScenicViewController.h 1 #import <UIKit/UIKit.h> 2 #import <iAd/iAd.h> 3 4 @interface S