In this article, he will explain the steps to implement XML Publisher reports for Pre-Printed Stationary in Oracle eBusiness Suite.
Many thanks to Darshan for sharing this knowledge.
This article from Darshan will help a lot of technical consultants in implementing similar solutions for their respective clients.
The article below is from Mr Darshan Bhavsar.
The Sample Template and Data file can be downloaded from the end of this article.
Abstract
I was inspired to come up with this because I feel that lots of people want this solution and they are struggling to implement this.
In this whitepaper, I am going to explain the approach which I used for developing pre-printed stationary reports by XML publisher’s RTF method. This approach I used for 2 customers and it works absolutely fine. They are very happy. Example Pre-Printed stationary reports which I worked on are following ‘AP Check Printing(Bank)’ ,’AR invoice Printing’,’PO purchase Order Printing’ …. etc….
Background
I have a customer who wants to convert their 40+ Oracle Apps reports to ‘XML publisher’ Reports. These reports are fall in categories of AR invoice report, check printing report and PO print report which they are printing on pre-printed (pre-defined) stationary.
Just a little background of pre-printed stationary report’s layout where there is a fix Header section and fix Detail Section Table. Detail section table should always have fix table height, in the sense it should always have fix number of rows in the table no matter how many rows returned by actual report run. For example Invoice stationary has fix 30 rows in line detail table, and Actual report run is returning only 5 rows then rest 25 blank rows should be generatedprogrammatically.
Â
So far there are solutions available which are talking about fixing table height for the 1st pages onwards not for the first page itself, i.e. where actual report run is returning lines which are less than lines_fixed_per_page. For example Invoice run is returning only 5 rows where as pre-printed stationary has fixed 30 lines per page.I struggled a lot to get this solution and now I got this and sharing it in this whitepaper.
Â
So far it has not been discovered because of the limitation of for-loop in XSL-FO (XML Technology).Limitation I mean is ,we can not write loop like ‘ for (i=10;i<15;i++)’ in XML. In XML ‘for’ loop will always iterate till it gets data, if we want to go beyond that then we can not go. I mean we can write for loop based on data value.
To overcome this problem, I have used Sub-template concept which I am calling recursively.
Â
Detail Solution
 I am giving this solution for Standard Check Printing Report. Tree structure of data (Sample XML data is as follow).
<LIST_G_CHECKS>
   <G_CHECKS> -- Top Most root -- Header
     <C_CHECK_NUMBER>21897</C_CHECK_NUMBER>
     <C_VENDOR_NUMBER>2205</C_VENDOR_NUMBER>
     <LIST_G_INVOICES>
       <G_INVOICES> -- Inner loop - Line Section
         <C_PAYMENT_NUMBER>1</C_PAYMENT_NUMBER>
         <C_INVOICE_NUMBER>ERS-20-SEP-06-243</C_INVOICE_NUMBER>
       </G_INVOICES>
       <G_INVOICES> -- Inner loop - Line Section
         <C_PAYMENT_NUMBER>2</C_PAYMENT_NUMBER>
         <C_INVOICE_NUMBER>ERS-20-SEP-06-244</C_INVOICE_NUMBER>
       </G_INVOICES>
     </LIST_G_INVOICES>
   </G_CHECKS>
</LIST_G_CHECKS>
Â
Below is the step-step guide which I follow.
Â
1) Open the Outermost for loop --Â G_CHECKS
<?for-each@section:G_CHECKS?>
Â
2) Declare Global Variable called ‘no_of_lines_per_page’  -- In this case I have fixed 40 lines per page.
<xsl:variable name="no_of_lines_per_page" select="number(40)"/>
Â
3) Declare incontext variable for inner group (G_INVOICES), variable is called ‘inner_group’
<xsl:variable xdofo:ctx="incontext" name="inner_group†select=".//G_INVOICES"/>
Â
4) Open the Inner Loop
  <?for-each:$inner_group?>
Â
5) Before putting any elements with the help of current record pointer 'position()’, I am checking if the current position is modulizing with the no_of_lines_per_page equals zero or not. If it reaches the first record after modulizing then I will create local variable 'first_rec' and initialize it with '0'.
<?if:(position()-1) mod $no_of_lines_per_page=0?><xsl:variable name="first_rec" xdofo:ctx="incontext" select="position()"/>
Â
Note : -- Above 3 steps ( 3,4,5) are created under ‘V_inner_group_And_V_First_rec’ form-field. Here there is limitation of Microsoft-word. We can enter upto 138 characters only in ‘Status’ field of ‘Add help text’ button.If you want to add more , you can do this by clicking on ‘Help Key’ which is adjacent to ‘Status’ tab.
Â
6) If above condition holds true then we will iterate the inner loop.
<?for-each:$inner_group?>
Â
7) I will check with the help of current record pointer 'position()' that the current record position is either greater than 'first_rec' i.e. the first record or less the 'no_of_lines_per_page' value set up earlier. If it is then show the record otherwise not otherwise it will not go in loop.
  <?if:position()>=$first_rec and position()<$first_rec+$no_of_lines_per_page?>
Â
8) Here I am closing the inner for loop and if condition
  <?end if?><?end for-each?>
Â
9) Here I am checking if no_of_lines of invoice is modulizing with the no_of_lines_per_page equals to zero or not ,and the same time I am checking if $first_rec+$no_of_lines_per_page is greater than no_of_lines of invoice or not. This is important step for filling the blank rows.
<?if:not(count($inner_group) mod $no_of_lines_per_page=0) and ($first_rec+$no_of_lines_per_page>count($inner_group))?>
Â
Â
10) Now I am calling sub-template recursively for filling the blank rows. While calling this template I am passing one parameter which is having value of no_of_rows to fill. Sub-template will have just one row table.
<xsl:call-template xdofo:ctx="inline" name="countdown"><xsl:with-param name="countdown" select="$no_of_lines_per_page - (count($inner_group) mod $no_of_lines_per_page)"/></xsl:call-template>
Â
11) Sub-template declaration
  <xsl:template name="countdown">
  <xsl:param name="countdown"/><xsl:if test="$countdown"><xsl:call-template  Â
  name="countdown"><xsl:with-param name="countdown" select="$countdown - 1"/> Â
  </xsl:call-template></xsl:if>
  </xsl:template>
Â
12) I have created page break after the fixed number of rows have been displayed.
  <xsl:if xdofo:ctx="inblock" test="$first_rec+$no_of_lines_per_page<=count($inner_group)">
     <xsl:attribute name="break-before">page</xsl:attribute>
  </xsl:if>
Â
13) Finally closing outer if and inner for loop and outer for loop.
  <?end if?><?end for-each?><?end for-each?>
Â
If you want more information then please contact me on This e-mail address is being protected from spambots. You need JavaScript enabled to view it
Â
Thanks
Darshan
Samples available for Download
Sample XML Data File
Sample Payables Check Printing RTF File
written by Dhaval Rathod , June 09, 2007
Great Job...
I am pleased to work with you.
This document is wonderful.... it will really help to all of us.
Regards,
Dhaval Rathod
written by Anil Passi , June 15, 2007
To learn XML visit www.w3schools.com
I learnt my XML from that site.
Thanks
Anil Passi
written by uma , June 18, 2007
Thanks for your Information. We need to develop same thing for my client. very nice...
Thanks tonn..
written by Baji , June 25, 2007
i am new to XML Publisher, can u tell me the steps that r to be followed when create a report using XML Publisher.
Regards
Baji
written by Anil Passi , June 25, 2007
http://oracle.anilpassi.com/xm...xmlp.html
thanks
anil
written by Jay , June 27, 2007
Can i put reference of your articles on my page?
Thanks,
Jay
written by Anil Passi , June 27, 2007
Of course you can give links onto here
Its all about sharing the knowledge
cheers
anil
written by Anil Passi , July 02, 2007
Possibly Oracle thinks that you are still running your report via XMLP.
Assuming all that you need is new XML Output, I suggest you do this:-
1. Query the concurrent program
2. Use copy concurrent program into xx temp xmlp, with parameters
3. Include this in record group
4. Run this cocurrent program
5. Pick XML
6. Modify template and attach that to EBS
7. Disable xx temp xmlp
8. re-enable your template
9. run your original program
Thanks
Anil Passi
written by cma , July 03, 2007
My requirement almost similar.But the output should be in RTF format.When I am trying with this.I am getting blank pages in the middle of the report.Can you please help me.
Regards,
cma
written by cma , July 04, 2007
Different first page is unchecked.But still I am facing this problem.Pdf layout is coming but its creating problem when the output type is RTF.Also added to this,when I run this in oracle the request is ending in completed warning.When I checked the OPP log the following is the log
[7/3/07 10:50:25 AM] [UNEXPECTED] [1131929:RT18857336] java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:585)
at oracle.apps.xdo.common.xml.XSLT10gR1.invokeProcessXSL(XSLT10gR1.java:580)
at oracle.apps.xdo.common.xml.XSLT10gR1.transform(XSLT10gR1.java:37
at oracle.apps.xdo.common.xml.XSLT10gR1.transform(XSLT10gR1.java:197)
at oracle.apps.xdo.common.xml.XSLTWrapper.transform(XSLTWrapper.java:156)
at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:916)
at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:869)
at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:204)
at oracle.apps.xdo.template.FOProcessor.createFO(FOProcessor.java:1535)
at oracle.apps.xdo.template.FOProcessor.generate(FOProcessor.java:925)
at oracle.apps.xdo.oa.schema.server.TemplateHelper.runProcessTemplate(TemplateHelper.java:210
at oracle.apps.xdo.oa.schema.server.TemplateHelper.processTemplate(TemplateHelper.java:136
at oracle.apps.fnd.cp.opp.XMLPublisherProcessor.process(XMLPublisherProcessor.java:245)
at oracle.apps.fnd.cp.opp.OPPRequestThread.run(OPPRequestThread.java:153)
Caused by: oracle.xdo.parser.v2.XPathException: Variable not defined: 'inner_group'.
at oracle.xdo.parser.v2.XSLStylesheet.flushErrors(XSLStylesheet.java:1526)
at oracle.xdo.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:517)
at oracle.xdo.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:485)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:264)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:150)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:187)
... 17 more
Regards,
CMA
written by narain , July 10, 2007
I have a very basic question about generating xml output for Check printing. In the check print setup i found we are using executable APXPBFEG. Now I have made a copy if this program and set the output to xml. I will assign it to the format payment program. I am not clear after this step. Can you please suggest something?
Thanks
narain
written by APassi , July 10, 2007
I think to begin with you need to get familiar with basics of XMLP.
This can be found on link http://oracle.anilpassi.com/xm...-xmlp.html
Thanks,
Anil
written by narain , July 10, 2007
Sorry i dint phrase that question correctly. I was running the format program directly from sysadmin to get the XML output. I just realised I have to submit the check(from payables) and then the XML gets generated. Thanks for you patience
Narain
written by kishore Ryali , July 11, 2007
thnx a lot for a very useful article.
i will try to run the template with sample data and try some variations in it.
but presently i couldnt get the preview from XML Template Builder, which used to work prefectly before. I tried re-installing it, but in vain. When i press Preview from the menu, nothing happens.
Regards
Kishore
written by kishore Ryali , July 11, 2007
Preview is working after i installed the latest version of XML Template Builder from http://edelivery.oracle.com
Regards
Kishore
written by Joy , August 02, 2007
I think a simpler approach would be to use hidden tables in the rtf template
written by pp , August 07, 2007
thats whats written in the above article please tell me what if the code does'nt even fit there?????????? where can i add more code????
written by madhavi , August 10, 2007
i am a technical consultant working on r12 xml publisher.
created xml file and rtf template.
my issue is have to create concurrent program to register & run a report.how to do that can u pls help me out if permits with necessary screenshots.
thax in advance.struggling alot.
thx
madhavi
written by Ashi0407 , August 13, 2007
I need the sql used to generate the Xml availbale here for download. If it is .rdf then please provide me the same as well
written by Yuvaraj , August 13, 2007
i am learning apps from your site and your site really helps
with respect to this article i would like to know the basics of XML programming , if you can provide some basic examples or link for that
written by vsrao , August 13, 2007
I am unable to display the barcodes.Initially I am able to display the barcode using Code128 font but I am trying to encoding the barcode by using the blog http://blogs.oracle.com/xmlpub...Reader$281 , even barcodes are also not displaying. So please help in this regard.
Thanks,
SubbaRao
written by NaveenK , August 14, 2007
This article is awsome. Really helped me a lot. I need little more on this template.
Could you please tell me how to add page totals, and if there are more than one page I want to print check on every page with "VOID ON THAT" and print signature only on last check page.
I appriciate you response
Thanks
Naveen
This e-mail address is being protected from spambots. You need JavaScript enabled to view it
written by NaveenK , August 17, 2007
Nice artilce,
I want the subsequent copies of the check to print VOID on them. How can I do this?
Thanks in Advance
Naveen
This e-mail address is being protected from spambots. You need JavaScript enabled to view it
written by Anupama C , August 21, 2007
I am writing the RTF template for XMLP Report. And i have a situation that i am displaying the total of Adjustment and payment made on each invoice and lines level.
And like this i may have several invoices under one Customer. So when i am running the total for Invoice level payment and Invlice level adjustment on the customer level. It is not showing me the proper total.
I wants to use the Variable in my RTF template. Can u tell me how to do that.
written by Madhukar , August 27, 2007
I am workin gon Print Po Report, i have a requirement that i have to display the Buyer signature (sign.gif) file based on the buyer parameter at run time. for this im using url:{concat('${OA_MEDIA}','/',IMAGE_FILE)} method here sign.gif
written by Madhukar , August 27, 2007
I am workin gon Print Po Report, i have a requirement that i have to display the Buyer signature (sign.gif) file based on the buyer parameter at run time. for this im using url:{concat('${OA_MEDIA}','/',IMAGE_FILE)} method here sign.gif
written by krishna kishore , August 27, 2007
I am working on the AP check print report using xml publisher.I am using standrd report Format Payments (Everygreen,form feed)-APXPBFEF for printing the checks and I am running the report from the payment->entry>payment btaches.My probelm is when we submit the request the from the payment btaches,its printing only the xml tags ,it did not bring the xml templates?Can you help me out how to bting xml layouts from the payment batches?
thanks in advance
krishna kishore
kumar
written by shank , August 28, 2007
I am trying to convert Invoice report to XML. I find an article 'Converting Reports from Oracle Reports to Oracle BI Publisher' using BIPBatchConversion, in download.oracle.com where they have given steps for converting reports to XML. You have any opinion on it. Have you tried it?
written by Madhukar , August 30, 2007
Its a Great article, helping to many people.i learned many things from this.I have some issues in my Print PO Report could you pls clarify, i appriciate u r response..thanku.
My client was using Oracle Apps reports and Optio Reports (for Printing the Layouts), now my client wants to convert Oracle Apps reports to ‘XML publisher’ Reports .Now i am working on "Print PO report" my reuirement are :
1. Dispalying the Image (james.gif) signature file dynamically based on the 'Buyer' (parameter), im getting the buyer (james) name and buyer email add***s( This e-mail address is being protected from spambots. You need JavaScript enabled to view it ) in XML file and in the $OA_MEDIA directory the related file is james.gif
how to get the james.gif file from the $OA_MEDIA directory in to Oracle Reports (in to RDF) or if this is possible in the RTF Templates how to handle this in RTF templates?
2.for the above report i hve to email/fax to perticular supplier based on email add***s/fax number.
3. running the Batch Reports: for the above report im getting the pDF output for perticular PO number = 1001, where as in the Batch processing (running the Ten PO's in a batch) how to handle all the Po's output in the same/different RTF Template ? and after getting the OutPut i have to email/fax to different suppliers based on the PO NUMBER ( for suppose out of PO#1001 to PO#1010 PO's i have to semail/fax PO#1001 to supplier A, and PO#1002 to supplier B .Where as previously this was handling by Optio Reports im not sure abt Optio reports but as per my KT i came to know this.
4.Suppose in the report if i have 10 lines, 8 lines printed on the first page and 2 on the second page.. immediately im displaying the total with some NOTE, and email dd***s..
here my requirement is, In the second page if i get the less number of lines in the second page i have to display the TOTAL and EMAIL ADd***s and NOTE at the bottom of the page.
5. How to develop multilanguage RDF Templates and how to set the Multilanguage Templates (different templates) at run time based on the OPER.UNIT and SUPPLIER COUNTRY my requirement is ..based on the oper.unit and supplier country i have to select the RTF template (English,spanish and Portuguese languages)at run time and email/fax/print the report?
I Appriciate your response.
Thanks in Advance.
Madhu
written by shank , August 31, 2007
I am converting invoice rdf report to XML. Do anyone have any idea on how we can use format triggers in XML report?
Thanks in advance,
Shankar
written by raj naik , September 02, 2007
I am having issue with the Invoice on pre-printed stationary....
I have used darshans template, but mine is bit complex i am having two sub groups below Main group.. Isssue is, i am able to fix the length for the first sub group but for second sub group i am unable to do so. Besides that my second group resets it self and start from the first record.Uploading the rtf template and xml file.Appriciate your help..
--Raj
written by Amitav , September 10, 2007
Currently the description field is limited to 30 char only. When the description exceeds 30 chars and we have to show the full description, then the template seems to be not working, the count($inner_group) only counts the printed no. of rows for the group.It does not take into account the extra lines due to wrapped up data.
Can anyone suggest how to handle such situations?
Thanx
Amitav
written by Diane , September 12, 2007
This is the best site that I have found to get help with XML Publisher. Your example in this article is exactly what I needed to create our check forms with XML publisher. I could have never figured this out on my own without this article.
I am having on minor problem with my template and I was wondering if you had any advice. The layout of our check forms has the check portion at the bottom of the page. The top of the page is the stub with the repeating lines. I'm finding that the more lines of output that I have on the stub, the farther down the page the end of the stub box floats. I'm using courier new font and it should be fixed width and height, but something is causing the repeating area to grow and this is pushing the check portion of the layout off the end of the page. Any suggestions would be greatly appreciated!!
Thanks,
Diane
written by Madhukar , September 13, 2007
pls answer this issue.
How can I retrieve additional data from tables using the XML Publisher. We are using XML Publisher 5.6.2 v. What we are trying to do is to display additional data that is not a part of the standard oracle seeded report output.
We have seeded reports in Oracle apps. Lets take an example of a purchase order report. Say the seeded out-of-the-box report has the following information:
PO number, PO details
I can go ahead and use the template builder and create a nice looking report with that information.
Now, lets say that I want to display the supplier name in my purchase order report. Since the seeeded purchase order report does not have the supplier name (it is not there in the xml generated by the standard out-of-the-box report), the only way I can display the supplier name on the report is by querying up the supplier table and getting that information. I know that I can go ahead and modify the existing out-of-the-box report, but I do not want to do that. I do not have control over the XML that is generated since the XML is generated when the report is run. Is there any way to retrieve the extra information (the supplier name in this example) AFTER the xml has been generated and BEFORE the template is applied ?
I really appriciate your response.
Thanks,
Madhu
written by Geetha24 , September 14, 2007
I'm working on R12. Can you tell me which the standard report that I need to use for the check printing in R12?
Thanks
Geetha
written by we , September 24, 2007
This site is doing great. Thanks for all your work.
Thanks,
Sd
written by kumar v , September 24, 2007
I am having issues with the consolidated Invoice on pre-printed stationary...
I need to fix the number of lines in the first page. I am using the Invoice template we have in the current system. But Here i am having two sub groups below the main group and i couldn't able to fix the number of lines. I couldn't able to attch my template here, let me know how can i sent that to you.
Thanks in advance,
Kumar
written by Mohammad Rafi.Shaik , November 07, 2007
I have a requirement as Multiple Layouts in a single RTF and each layout in the RTF opening in a new or Seperate PDF or EXCEL
Can you eloborate on the solution
Thanx In advance
Mohammad Rafi.Shaik
written by Kalyani , November 08, 2007
I have been working on XML Publisher since past few months and couls successfully implement XML Publisher functionality called "Bursting Engine". I have prepared a white paper on this and would like to share with all through the medium of this site. Please let me know how would you like me to go ahead with this task.
Thanks and regards,
Kalyani
written by punit , November 12, 2007
Request you to pls guide me how to go abt this.
written by JaxDan , November 13, 2007
I have few problems in page breaks in the XML publisher
1) I have two detail blocks for a master. How to do the page break if the information is not fitting in one page.
2) How to check the page number and do the page break accoringly, say if the output is having 2 pages, I would like to move certain information to the second page.
Thanks
written by Veena Shetty , November 15, 2007
I am working on the AP check print report using xml publisher.I am using standrd report Format Payments (Everygreen,form feed)-APXPBFEF for printing the checks and I am running the report from the payment->entry>payment btaches.My probelm is when we submit therequest the from the payment btaches,its printing only the xml tags ,it did not bring the xml templates?Can you help me out how to bting xml layouts from the payment batches?
i am planning to use the solution to call FND_REQUEST.SET_PRINT_OPTIONS)
and calling template using fnd_submit (FND_REQUEST.SUBMIT_REQUEST) XDOREPPB. is this a practical solution.
Please advice
written by prabu , November 22, 2007
I am new to XMLP and developing RTF for AR Invoice Report.
When i try to view the output in pdf format.In the Invoice lines details there is more gap between the lines,For e.g if i have five lines for single invoice, many gaps between the lines and also for each line it shows in indiviual rows.
please help on this where to correct to get the line details one after another.
with regards
prabu
written by Sumit , November 22, 2007
I ma writing you first time and hoping for good solution!
I have developed number of reports in XML publisher but all were based on
XML output file from RDF.
Now my requirement is to make Data template to make XML report,We dont have RDF for the report.
Please suggets me the steps!
Regards,
Sumit Mittal
written by jagadish , November 28, 2007
i am working on invoice report, on the top i have customer details, and on below i have invoice totals etc, in between these two my invoice lines will start, i have created table in RTF template for invoice lines, my problem is Suppose in the report have 10 lines, 6 lines printed on the first page and 3 goes to the second page, i am not getting table end line on first page, its printing only after end of all the records.
one more thing is i dont want line in between each record.
Please suggest me.
Regards,
Jagadish
written by srinivas , November 30, 2007
I would like to print page totals in my a xml report
please tellme the steps i shou;ld follow to get the page totals.
written by Wazid , December 04, 2007
1. How to handle blank pages .Iam getting blank page after main details.For eg you have project which have assembly details.After printing the first assembly details it is printing blank page then starting with second assembly details.
2. How do we handle duplicate rows in XMLP?
Iam giving the eg of xml data.It consists of 4 groups.Lets say
G1-project-11
G2- main assembly-22
G3- shortages-Purchase Order
G4- Po Number-44
G1- It will have project details
G2- will have main assebly details for that project
G3- Shortages for the main assembly
G4- Shortages details such as purchase order details
When you run the template you will have duplicate rows ie above group data repeating two times ie.
1st receord
project-11
main assembly-22
shortages-Purchase Order
Po Number-44
2nd record
project-11
main assembly-22
shortages-Purchase Order
Po Number-44
Can you help in this how do i restrict single record.
written by Arun Kumar , December 23, 2007
hi i want XML reports tutorial notes from scrach onwords
ok
thanks
written by Mani , December 28, 2007
This site is very informative and simple to understand. Need your help...
I'm trying to convert the Oracle Reports to XML Publisher. The Steps I have followed are,
1) Open the report in Report Designer and convert to .xml using file conversion menu.
2) Transfered the .xml file into $JAVA_TOP
3) using RTFTemplateGenerator class, created the .RTF file. During this process another logfile which holds the Format trigger information also created.
4) Created the datadefinition using XML Publisher Responsibility and the code I have given the same as the short name of the concurrent program.
5) Created the Template and attached the datadefinition created in step 4.
6) Attached the .RTF file created in step 3 with the template.
7) Open the concurrent program definition using System administrator responsibility and the output type as 'XML'.
When I executed the program, the lexical parameters used in the .RDF and the format triggers are not handled in the conversion.
Could you please advice how to handle the lexical parameters and the format triggers used in the .RDF files. If possible, please give me an example.
Thanks in advance for your help.
Regards,
Mani
written by Navneet , January 14, 2008
I am working on same thing.I need to print void on checks if the number of invoices overflow to the second page.I tried using ur steps but was not able to get the same.Can u help me out.
Thanks,
Navneet
written by Navneet , January 14, 2008
I am working on same thing.I need to print void on checks if the number of invoices overflow to the second page.I tried using ur steps but was not able to get the same.Can u help me out.
Thanks,
Navneet
written by SureshV , February 06, 2008
I am working on one of the pre printed stationary report. They have comments column in the report. This comment can take maximum of 4 lines in the stationary. But the column which stores the data is of 4000 chars and hence user can enter good amount of data.
The requirement is that when column has data that is not fitting in 4 lines.. the row expands until it displays all the data. This causes all tables and rows below that to move down. I have set the row property to 2 inches exactly but this is not helping. The catch here is that by doing this if we manually key in the value for the row in the .rtf file only first 4 lines are visible and rest are not displayed as the row does not expand, but the same behaviour is not with the actual data when previewed with xml.
Please let us know if there is a way to tackle this.
Thanks,
Suresh
written by navneet , February 13, 2008
I Am facing an issue.In my report,the length of aline is not fixed,it varies with data.so the no of lines per page cannot be fixed.Is there some other method by which i can keep the lentgth of table constant??
Its urgent.Please hep me out.
Thanks,
Navneet
written by Sultan , February 15, 2008
Great work.. I have tried similar implementation in our office and works real great ..
I have used PDF template for preprinted sttionary thou..
I am having problems with routing to printers when submitting a report from Applications.We wanted to automate the process of invoice printing .. but he hurdle is to route to a printer..
Any thoughts or an article..
Thanks
written by Manuami , February 18, 2008
I need few drops from your sea of knowledge..
Dutch and US have diffrent requirements for layout. I've created two RTF and attached them to single Template(Created one and than Add File). But when I submit the program , asyou know it submits it for Multiple LAnguage and than in turn the invoice print program. But it always picks US layout(Default language AMERICA).
Could you please throw some light on it or anyone.
Thanks
Manu - This e-mail address is being protected from spambots. You need JavaScript enabled to view it '> This e-mail address is being protected from spambots. You need JavaScript enabled to view it
written by Manuami , February 18, 2008
I would highly appreciate any direction on this, can't ignore to mention ur's is a Great website.
Thanks
Manu
written by Jesus Castillo , February 20, 2008
I am creating a template to print AR Invoices in which I need to print a detachable part of it at the last page of each invoice. I am following the steps that Anil recommended using sub-templates, but for some reason it is not working. Below you will find the error I am getting.
Font Dir: C:Program FilesOracleXML Publisher DesktopTemplate Builder for Wordonts
Run XDO Start
RTFProcessor setLocale: en-us
FOProcessor setData: U:XMLP ReportsReceivablesOpen AR Invoices.xml
FOProcessor setLocale: en-us
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at oracle.apps.xdo.common.xml.XSLT10gR1.invokeProcessXSL(XSLT10gR1.java:586)
at oracle.apps.xdo.common.xml.XSLT10gR1.transform(XSLT10gR1.java:383)
at oracle.apps.xdo.common.xml.XSLT10gR1.transform(XSLT10gR1.java:201)
at oracle.apps.xdo.common.xml.XSLTWrapper.transform(XSLTWrapper.java:161)
at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:1015)
at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:96
at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(FOUtility.java:209)
at oracle.apps.xdo.template.FOProcessor.createFO(FOProcessor.java:1561)
at oracle.apps.xdo.template.FOProcessor.generate(FOProcessor.java:951)
at RTF2PDF.runRTFto(RTF2PDF.java:626)
at RTF2PDF.runXDO(RTF2PDF.java:460)
at RTF2PDF.main(RTF2PDF.java:251)
Caused by: oracle.xdo.parser.v2.XPathException: Variable not defined: '_MR'.
at oracle.xdo.parser.v2.XSLStylesheet.flushErrors(XSLStylesheet.java:1526)
at oracle.xdo.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:517)
at oracle.xdo.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:485)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:264)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:150)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:187)
Any help you can provide me would be greatly appreciated.
Thanks in advance,
written by Peter , March 03, 2008
I am using XML Publisher version 5.6. I have build a template the same way you did yours using the template builder. I loaded a data source and than test the template. Everything looks good. I am getting correct page number. Than i created a data definition and upload my template in oracle Apps R11 XML publisher Module. After running the request, i am getting wrong ouptut for the page numbering .( in my template, i am using to reset the page number for every customer
satement). Now if a customer have multiple invoices that needs to be print on 4 pages, i am getting the error - for example on the last page : page 4 of 1 when i run it from apps.
Please i need to know why i am getting a false output for the page number when running
the template from oracle apps requests.
Please Anil i need you to reply ASAP... because it is urgent.
Thanks for you support!
written by Ramkumar , March 12, 2008
how to design template as the above example you are provided.
regards
ram
written by vandsuri , April 16, 2008
I did understand that we can get the XML is generated by Oracle Application Concurrent Program (for Oracle Reports).
My question is what if we want to develop a new (custom report) report from scratch in XML Publisher? I mean developing a RDF, converting data in XML format and then using the XML Publisher is a two way process right. How do we develop a new custom report in XML Publisher from scratch? (with all those features, formula columns, summary columns..etc we use in reports 6i for developing an RDF. How do we do the same using XML Publisher)
Thanks
Suri
written by TUAN , May 13, 2008
How do I send a output type of RTF from XML Publisher to the printer? We are currently send the out put of the check as PDF Publisher but I want to to send it to the printer (Troy Printer) and let the printer use its format to print.
written by Gudipudi , June 29, 2008
I have a situation in One PO template. I am creating a Template in RTF mode and when I am looking in Preview in pdf the detailed section of the lines are moving to next page. I am not sure how can I fit to page wise. Also if the no of lines is more than a page then Immediate page should start with Header and it is not coming. I Defined Heder loop too but still it is not coming. Any Ideas ? Any customized word RTF template please share.
Thanks,
written by siddhartha doshi , July 28, 2008
I am working on check printing report but not able to set page numbering can u tell me.
This is rtf report and i have done follwing things go to insert--> Page numbers -- > It is setting the page number but it gets reset at each every change record check group.
Is there is any way to see all pages with count 1,2,3..
Thanks in advance
Regards,
Siddhartha
written by anuradha , August 28, 2008
In the RTF template I should print a section on the last page that to at the end of the page. I've tried using tags but its not working.
Can you please let me know how can this be chieved?
Regards,
Anuradha
written by Chandra Matta , April 17, 2009
I need your help.
I have similar requirement that you mentioned in your demo, but check needs to printed only in the first page. Not on every page.
Problem description Points
1. User selects multiple invoices for payment and pay them using a single check.
2. Till #17 invoices, my template work properly.. but when it exceeds no. records as 17, then the record data is printing in check area(Stationary).
3. So to avoid this, I need to reserve the area as it is.. no records should come into that area..
4. User idea is.. if there are more invoices to print, he feed printed stationary(check attached at the bottom of this page) as a first page and rest of the papers are blank ones(no check).
Please help.
written by Paresh , July 17, 2009
I'm stuck at one point and would appreciate any help/suggestion/pointer
I'm trying to preivew a report from BI Desktop Publisher, I've imported the same data xml file, but on trying to preview I get the following error:
ConfFile: D:SiebelBI Publisher DesktopTemplate Builder for Wordconfigxdoconfig.xml
Font Dir: D:SiebelBI Publisher DesktopTemplate Builder for Wordonts
Run XDO Start
Template: D:SiebelBI_DEMOaclist.rtf
RTFProcessor setLocale: en-us
FOProcessor setData: D:SiebelBI_DEMOBIP Accounts - Current Query.xml
FOProcessor setLocale: en-us
java.lang.reflect.InvocationTargetException
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at oracle.apps.xdo.common.xml.XSLT10gR1.invokeProcessXSL(Unknown Source)
at oracle.apps.xdo.common.xml.XSLT10gR1.transform(Unknown Source)
at oracle.apps.xdo.common.xml.XSLT10gR1.transform(Unknown Source)
at oracle.apps.xdo.common.xml.XSLTWrapper.transform(Unknown Source)
at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(Unknown Source)
at oracle.apps.xdo.template.fo.util.FOUtility.generateFO(Unknown Source)
at oracle.apps.xdo.template.FOProcessor.createFO(Unknown Source)
at oracle.apps.xdo.template.FOProcessor.generate(Unknown Source)
at RTF2PDF.runRTFto(RTF2PDF.java:629)
at RTF2PDF.runXDO(RTF2PDF.java:454)
at RTF2PDF.main(RTF2PDF.java:289)
Caused by: oracle.xdo.parser.v2.XPathException: Extension function error: Class not found 'com.siebel.xmlpublisher.reports.XSLFunctions'
at oracle.xdo.parser.v2.XSLStylesheet.flushErrors(XSLStylesheet.java:1534)
at oracle.xdo.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:521)
at oracle.xdo.parser.v2.XSLStylesheet.execute(XSLStylesheet.java:489)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:271)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:155)
at oracle.xdo.parser.v2.XSLProcessor.processXSL(XSLProcessor.java:192)
... 15 more
I've placed the XSLFunctions.jar file in the BI_Publisheroc4j_bij2eehomeapplicationsxmlpserver xmlpserverWEB-INFlib folder.
Do you have any idea how to get around this issue?
Thanks
Paresh
written by Chithambaram Perumal , August 03, 2009
I am having problem with : Last Page only Content with Section Break 'Continuous'...It doesn't work properly...
In thatIi have designed seperatly for last page and I have added the XML tag ""
and before that I have added 'Section break as Continuous' It shows 4 pages instead of 2 pages...It creates double of required
pages..plz help to solve this problem....urgent
Thanx in Advance
Chithambaram Perumal
written by Abdulrahman Mohammed , September 06, 2009
i m a huge fan of Apps2fusion. i m proud to say our team implemented many solutions successfully after going through your site Namely
Bursting Solution From Prasad , we implemented for pay slip
WEBADI Solution for inventory Receipts.
Oracle Collections for custom requirement.
thanks for the wonderful article, you guys are doing great service, May Almighty increase your tribe.
i have a silly issue with an RDF report for Pay Slip, the report output goes to Dot Matrix Printer for Pre Printed Stationary.
now i am not a great fan of RDF( after xml publisher came) so i want to change my template to xml publisher.
Question is whether i should use ETEXT (b'cos it is going to Dot Matrix Printer)
or should i use the above solution for pre pre printed stationary , please comment .
Many thanks and god bless
your happy Fan
Abdulrahman
written by Neelima82 , October 06, 2009
I have an issue with my XML Publisher report.
My template has 5 pages. The 5th page has the following condition:
Finished Printing for Batch
Now there are two scenarios:
1. If the batch passed is not null, the 5th page prints "Finished Printing for Batch"
2. If the batch passed is null, Do not print anything.
Now, for the second scenario, when the batch passed is null, I am getting a blank page. But I do not want this page to be printed at all for the second scenario.
Please let me know how I can get around this.
written by Neelima82 , October 06, 2009
Finished Printing for Batch
written by Neelima82 , October 06, 2009
if:BATCH_PASSED!='X' Finished Printing for batch End-if
written by Nasser Sharief , December 04, 2009
Thanks for sharing the knowledge
I have a question
I am working with 11.5.10
I am wondering if I can add code to my template to allow the pdf output to print at ‘UP100’ printer and tray number 3 by default is going to tray 2. Is something can be done at the template level? I am this code in AfterReport trigger but is not working.
function AfterReport return boolean is
v_success := fnd_request.set_print_options('UP100', l_print_style,1,TRUE,'N','SKIP');
BEGIN
srw.set_printer_tray('Tray 2');
srw.message(9999, 'Set Printer Tray Tray 2' );
END;
l_req_id := fnd_request.submit_request('XDO','XDOREPPB',NULL,NULL,FALSE, :p_conc_request_id, l_app_id, l_progran_name, 'en-US', 'N','RTF','PDF')
Can you help?
Thanks
Nasser
This e-mail address is being protected from spambots. You need JavaScript enabled to view it
written by ike , April 13, 2010
written by Prajakta , October 21, 2010
I've created new check format for check printing in R12, registered its concurrent, data definition & template in XML. Also created payment format & profile in Payments. When I use this new check format in payments its giving me error "This file cannot be opened because it has no pages", where as when I run query in data definition through back end, it fetches data. I am not getting what is wrong in my template.
Can you plz help me.
written by nagendra , November 17, 2010
THANKS for sharing
I am new to this forum
I would like to share with u about no of lines per page restriction in XML
here giving a example to print 10 lines per page
declare a variable
start the loop in which it has to work(for loop)
Declare a variable inside the loop which will handle the position of the record in the loop
At the end of the row checking for page break
page
if the code is not enough in addtext place remaining in help
close the for loop
its working fine
if any mistakes please ignore guys
written by nagendra , November 17, 2010
THANKS for sharing
I am new to this forum
I would like to share with u about no of lines per page restriction in XML
here giving a example to print 10 lines per page
declare a variable
 Â
start the loop in which it has to work(for loop)
 Â
Declare a variable inside the loop which will handle the position of the record in the loop
 page
Â
At the end of the row checking for page break
 Â
if the code is not enough in addtext place remaining in help
close the for loop
 Â
its working fine
if any mistakes please ignore guys
written by Srikanth99 , January 05, 2011
we have used the check printing template provided in this site for pre printed stationary. Specified to print 30 invoices per page. It prints fine if the invoice lines are more or less then 30. If the invoice lines is exatly 30 the MIRC font is printing in the next page. Any help would be greatly appriceated.
Thanks,
Sri
written by judid , May 11, 2011
written by Vijay , May 13, 2011
This is Vijay kumar. This is very good solution on how to print invoice lines and check info from BI publisher. Recently we got a project to work on BI publisher reports.Since we do not have enough knowledge on BI Publisher reports we started developing small reports got some exposure.We have one requirement specific to AP Pay check report and When I am searching the forums found the rtf template you have been using with XML source attached.
I am able to modify the template with minor alignment and field changes with respect to our XML source. The only problem I had with the requirement is client want to print the check information details for the Vendor only on the FIRST PAGE.
The rtf template taken from here is printing the check details after all the detail lines are printed.
For example if I have 60 detail lines, 40(number fixed in the code) lines are printing in the first page. The next 20 lines are printing on the second page along with details. The check number 4738 is the reference.
It should print first 40 lines with check details in the FIRST PAGE and rest 20 lines in the second page or third and fourth page if we have more number of detail lines.
Can any one help with this requirement.
Vijay Vattiprolu
written by Vijay , May 13, 2011
written by Prahallad Mohanty , June 08, 2011
The sample template and the XML file are no longer valid in R12.1.3 . The XML Document that is generated has the repeating groups like OutboundPayment, DocumentPayable etc. Do you have any sample templates for R12.1.3?
Please let me know.
Thanks,
- Prahallad
written by alekha , July 15, 2011
i am new in xml publisher reports i have a requirement i got po_num:xxx it is haven 18 records i restrict the each page is 10 records my requiremnt is xxx po_num first will be have 1page and remaining 8 records are 2 page and all page numbers start with 1 page how could u help to me.....
written by Prabhu Barathi , November 03, 2011
written by Kara , November 16, 2011
for G_Checks --- ( lets say we have only 1 check then ..this loop will run for only 1 time )
for G_Invoices ---- ( lets say we have 100 invoices in one check ..will this loop run 100 times ??? )
if position()-1mod 40 =0 then
first_rec=psition(); ----( at first time it will be =1, )
for G_invoices ---- ( again will this loop run 100 times as we have 100 invoices in one check
----- ??.... looks like it will run 100* number of times ( position()-1 mod 40=0)
---- holds true )
---- ( if it is the case , then it will have too many iteration in case of limit per page is
---- even less than 40 ..lets say it if it is 7 per page ..then ther would be around
----- 14*100 iteration ...which is bad )
if position()>=first_rec AND position()
written by Priya_ambo , December 15, 2011
I have a template to be build as like below:
Page1
-- If the content of Body 1 goes beyond first page, I have to repeat the and . Once that is completed
-- If the content of body 2 goes beyond that page, I have to repeat the and . Once that is completed. go further
/(in case body 3 goes beyond this page)
RTF template:
-> Repeat as row checked
On next page
, I need to print another header, but which is not to be printed on my last page. My last page header should be same as first one.
also if first page data goes on next page, it should show me header 1 only.
Please advise
written by J. Lim , February 07, 2012
I would like to ask for some insight regarding this. I would like to apply this code but this time for a matrix report.
I am trying to create a Purchase Order report that shows the distribution of the items in different branches and I need it to go into page break for every 10 items in the report.
I have followed the code stated in this entry: http://apps2fusion.com/at/64-k...-publisher to create a matrix report.
I need the header to be copied in as well since the header has the branches where the items will be distributed (this is dynamic)
I have tried to incorporate the code from this entry, but so far, I have not been able to make it work. I hope you can give me some insights regarding this.
| < Prev | Next > |
|---|





Thanks for sharing the knowledge
i am learning apps your site really helps
with respect to this article i would like to know the basics of XML programming , if you can provide some basic exaples or link for that
regards