You are on page 1of 41

Pasta Users Guide

Release 3.0
Last Updated: February 28, 2003

Pasta Users Guide

Contents
CONTENTS ..............................................................................................................................2 OVERVIEW ..............................................................................................................................3 SYSTEM REQUIREMENT...........................................................................................................3 TECHNICAL OVERVIEW ...........................................................................................................3 NEW FEATURES IN 3.0.............................................................................................................4 NEW FEATURES IN 2.5.............................................................................................................6 PRINTER SETUP SIMPLIFICATION.............................................................................................9 IMPORTANT CHANGES BETWEEN PASTA 2.0 AND 2.5............................................................10 Backward Compatibility with IX Library ........................................................................10 Font Settings ....................................................................................................................10 Printer Name Settings ......................................................................................................11 INSTALLING PASTA ...............................................................................................................12 DEFINING PRINTER DRIVERS FOR PRINTING..........................................................................12 Portrait Driver .................................................................................................................13 Landscape Driver.............................................................................................................13 Landwide Driver ..............................................................................................................13 DEFINING A PRINTER TYPE ...................................................................................................13 REGISTER A PRINTER ............................................................................................................14 RESTARTING THE CONCURRENT MANAGER ..........................................................................15 PRT FILES SETUP..................................................................................................................15 Special Settings for Bidi Languages ................................................................................15 Unicode and BiDi Specific Configuration .......................................................................15 BARCODE TRUETYPE FONT SUPPORT ...................................................................................16 INTEGRATION WITH THE COMMON UNIX PRINTING SYSTEM (CUPS) ...................................17 Scenario 1: CUPS is running on the concurrent node ...................................................18 Scenario 2: Multiple CUPS running on the other machine than the concurrent node....19 USING PRINTFORMS ..............................................................................................................20 Preface .............................................................................................................................20 Function Overview...........................................................................................................21 Overview of Creating a PrintForm..................................................................................21 Create the PrintForm.......................................................................................................21 Deploy a PrintForm to Oracle Applications ...................................................................26 CONFIGURATION FILE OPTIONS ............................................................................................27 Generic Options ...............................................................................................................27 Arabic, Hebrew and Thai Options ...................................................................................30 Additional Notes for Specifying TrueType Fonts for Font Parameters...........................30 COMMAND LINE PARAMETERS .............................................................................................31 FONT FILES PROVIDED BY ORACLE.......................................................................................33 SAMPLE CONFIGURATION FILE .............................................................................................34

Pasta Users Guide

Overview
Oracle's business strategy demands multilingual support (or MLS) for global customers. Increasingly customers require products and solutions that support their global business models. The ability to support multiple languages centrally from a single database instance is an essential requirement for the E-Business suite. The use of Unicode greatly simplifies the global data handling that EBusiness requires. Oracle increasingly uses the Unicode Standard in product development. Unicode is the industry's encoding method of choice to support multiple languages using a single character set. UTF8, one of the most commonly used encoding methods of Unicode, has been supported by Oracle E-business Suite 11i as well as other encoding methods. This encoding method has been adopted by most of the global multilingual customers. Pasta technology provides strength in multilingual support in Oracle Ebusiness Suite in particular areas that include printing (Pasta), viewing a report on-line (Vpasta) and generating bitmap reports (IX Library.) Pasta products make a significant contribution to UTF8 support but it also works for any other character set that Oracle supports This document is specific to Pasta printing utility. Pasta printing utility, also known as simply "Pasta", is a program that provides universal solutions for printing in Oracle E-Business Suite by handling multi-lingual text outputs generated by the Concurrent Manager. Any UTF8 customer who possibly has non-English data in the database must use Pasta. English-only customer or a customer who is using other character set than UTF8 can also obtain the benefit from Pasta. This product is provided as a part of Application Object Library.

System Requirement
The Pasta product is a component of the E-Business Suites Application Object Library (FND). Please find the system requirement for Oracle EBusiness Suite in Oracle Applications Installation Manual. This chapter describes requirements that are specific to Pasta only. PostScript Language Support on Printer Printer must support PostScript level 2 or higher. For non-PostScript printers, however, Pasta still can be used with 3rd party utilities such as Ghostscript or Xpdf. Pasta provides an interface to integrate those 3rd party utilities. Please refer to preprocess option in Pasta configuration file options. Unicode Font Pasta supports Unicode map TrueType font only.

Technical Overview
Taking Advantage of PostScript Language Pasta enables multi-lingual handling by taking advantage of PostScript language. Pasta converts an input content from text format to PostScript format to add the multi-lingual support. During the PostScript conversion,

Pasta Users Guide

Pasta includes all the necessary information in addition to the language handling such as paper size, font size and so on. After converting the input, Pasta sends the content to preprocess command if it is set in the preprocess option in the Pasta configuration file before printing. The content is then sent to the printer command that is specified in the printCommand option in the configuration file. Font Embedding Pasta enables printing a text report with language data for which font is not available on the printer by using the font embedding method in PostScript. Pasta creates a set of all the necessary font glyphs from a TrueType font and embeds it in the PostScript so that all the language data can be printed correctly. In addition to the font embedding Pasta also provides an alternative configuration for font setting. If the printer has fonts that can represent all the language data in the text file, customers can use the printer fonts. Please refer to Printer Fonts (Latin 1) Support as well as TrueType Fonts section in chapter of New Features in 2.5. Pass-Through Mode Pasta also supports pass-through mode. Pass-through means that Pasta just bypasses the conversion mechanism and sends input to the preprocess command and then to the printer as it is. This feature is useful because Pasta can handle many formats in addition to text input. By this feature, only one command can handle many input formats. For example, if there are two reports and one of them needs to be processed by Pasta but the other must go directly to the printer, there is no need to create two printer flows. There are some formats that Pasta chooses this pass-through mode automatically because of the nature of the formats. PostScript and PDF are such formats. In PostScript and PDF, all the formatting must have been done so Pasta will not do anything but sends the file to preprocess command and then to the print command. Preprocess Command To support printers that are not compatible with PostScript, Pasta provides a way to integrate with 3rd party tool to convert the document content into other format besides PostScript. For example, if there is a printer that only supports PCL printing language, we can use preprocess option in Pasta configuration file to set a command to convert PostScript to PCL such as Ghostscript. Another example would be that we could use Xpdf command for the preprocess option so that PDF file can be successfully printed if the input is PDF format and the printer does not support PDF to print. Language Handling Pasta also provides many language options that include complete options for bi-directional languages such as Arabic and Hebrew. The attributes related to the bi-directional languages can be configured in Pasta configuration file such as direction, lay outing. Please refer to chapter of Configuration Files Options for more details.

New Features in 3.0


This is a list of the new features implemented in 3.0:

Pasta Users Guide

Oracle PrintForm Barcode TrueType font support PostScript Type42 font support PDF input support

Oracle PrintForm Function PrintForm function provides a capability to add a background image to the output of Pasta. Pasta converts an input file to PostScript internally and this PrintForm function has Pasta read another PostScript file, which contains, in most cases, a graphical image such as a background image, and combines them into one PostScript file. With this new feature, you don't have to edit or modify their original report definition any more to do equivalent. You just need to create a PostScript file with background image and have Pasta read it. The function is called PrintForm function and the PostScript file with background image is called a PrintForm. This new feature satisfies the requirements of easier customization and easier maintenance of the customized reports because the feature eliminates a need of the customizing the original report definition since this process is executed at printing time. The PrintForm also provides the better solution that can replace the pre-printed stationery solution. Because of the fact that stationery can be generated in electronic form, the preprinted stationery is no more required. Pasta utilizes the PostScript technology so there is also no printer specific knowledge is required as long as the printer supports the PostScript language. See Using PrintForms in this document for detail information. Barcode TrueType Font Support Pasta now supports to utilize a barcode TrueType font. To print barcode, you need two steps. Step 1: When creating a report, set the style of the Barcode data field to "bold". Step 2: Set a Barcode TrueType font file name to "Font.Default.Bold" in the configuration file. Usually, the size of the Barcode font is different than the plain font. Pasta 3.0 introduced a new option in the configuration file, "boldfontsize=<font size in points>" and a new command line option -bs<font size in point>. Please set the appropriate size to this option. Currently, Pasta supports only two fonts per report. One is for "Plain", the other is for "Bold". Since Pasta uses this bold setting for barcode support and the font setting is done per configuration file, you cannot use bold style for all the reports that will be printed using the same configuration file.

Pasta Users Guide

Please refer to the chapter of Barcode TrueType Font Support for more detailed information. PostScript Type42 Font Support Pasta now supports PostScript Type42 font when embedding font into a Postscript file and introduces a new option in the configuration file, "psEmbeddedFontType=[type3|type42]". PostScript Type3 font is the current type of font that is used for font embedding. If you specify type42, Pasta will use PostScript Type42 when embedding font. Type42 is suitable for displaying as well as printing. Type3 is suitable for printing but not for displaying. If you use Type42 and convert a Postscript file generated by Pasta to a PDF file, the characters in the PDF file will be displayed in better quality. PDF File Support as Input Pasta 2.5 accepted only text and PostScript format as input. Pasta 3.0 now accepts PDF as an input file format as well. If the input file is a PDF file, Pasta will automatically detect the format and pass it to a preprocess command without any modification. The result from the preprocess command will be sent to the print command specified in printCommand option.

New Features in 2.5


Pasta supports the following features in version 2.5: Output Formats Currently, Pasta supports two output formats: Postscript and text. If you have a Postscript Level 2 (or higher) printer, set the outputFormat option to "ps. If the input is a text file, Pasta will convert it to a Postscript file. If the input is already a text output for non-Postscript printers PostScript files as input invocation of additional processes (preprocessing) to convert the output file as desired automatic selection of the appropriate configuration file per printer setting of environment variables in the configuration file language-specific needs definable in the configuration file operating system independent configuration more printing options in the configuration file paper size command line option debug option no print option output file location specifiable error log file location specifiable printer fonts (Latin 1) as well as TrueType Fonts

Pasta Users Guide

Postscript file, Pasta will send it to the printer as is. Whether a file is text or Postscript is automatically detected on input. If you don't have a Postscript printer and want to send a text file to your printer, set this option to "text. You can specify the output character set by the Oracle character set name (e.g. text.WE8ISO8859P1). Alternatively, you can use "auto" as the output character set (e.g. text.auto). In that case, Pasta will convert the data from the original character set to an appropriate one according to the NLS_LANGUAGE setting. In case of text output, some Pasta parameter will not take effect such as fontsize (-s), margin options as well as font options. If you set this option to "text" and want to send printer-specific escape sequences to your printer with text, you must specify the escape sequence settings in the "Initialization" and "Reset" fields in the printer driver. Postscript File as Input If the input file is already a Postscript file, Pasta will simply send it to the printer as-is. Preprocessing the Output File Pasta can use a preprocessing command to invoke any executable that supports an input file and an output file (a filter program). You can use redirection. Pasta will invoke the filter program to preprocess the Pasta output before passing it to the printing command. By using the preprocess option, you can generate output formats other than the formats Pasta currently supports. For example, by invoking Ghostscript, you can generate PCL or PDF output. Easily Customized Configuration Files Refer to Easy customization in New Features in Printer Setup Simplification below. Environment Variables in the Configuration File Any variable that starts with a < (less-than) and ends with a > (greater-than) for font parameters, errorlogfile parameter and outfile parameter in the configuration file will be translated into an environment variable on the operating system. You can specify any environment variable. Pasta/IX will replace the environment variable with the actual value at runtime. Language-Specific Sections in the Configuration File The configuration options are grouped into sections. A section starts with a [ (left square bracket) and ends with a ] (right square bracket). Section names are case insensitive. The [DEFAULT] section is mandatory. The language and territory sections are optional. If you want to override the options in the [DEFAULT] section to meet the special needs of particular languages and territories, you can add multiple language and territory sections.
Pasta Users Guide

Each language section is specified by [{NLS_LANGUAGE}] where {NLS_LANGUAGE} is the Oracle language name. Each territory section is specified by [_{NLS_TERRITORY}] where {NLS_TERRITORY} is the Oracle territory name. If desired, you combine {NLS_LANGUAGE} and {NLS_TERRITORY} into one section: [{NLS_LANGUAGE}_{NLS_TERRITORY}]. One section name can contain multiple languages and/or territories separated by commas. Operating System Independent Configuration File Pasta configuration file is designed to be independent from operating system. You can use one configuration file for all platforms there is no need to create a configuration file for each platform. To make use of one configuration file across platforms, use -pn (printer name) command line option and ntPrintCommand (print command name for NT) options as appropriate. You can use either a / (slash) or a \ (backslash) as a delimiter in a file path, regardless of the platform. Pasta will translate the delimiter in the configuration file to an appropriate delimiter for the platform automatically. New Printing Options in the Configuration File Postscript allows you to embed the number of copies to be printed directly in the Postscript file. By embedding the number of copies, you can eliminate the header page normally printed between reports. If your printer does not accept the embedded value, set this option to "n. Pasta will send the report multiple times up to the number of copies. This option takes the form Embednumcopies=[y|n] You can specify duplexed or single-sided printing. If you specifiy "default," the setting on the printer will be used. This option takes the form Duplex=[y|n|default] Command Line Option for Paper Size The -pw (page width) and -ph (page height) command line options override the pagewidth and pageheight settings in the configuration file. Debug Option Setting the PASTA_DEBUG_LEVEL environment variable to 1, will cause Pasta to generate the following three diagnostic files under $APPLTMP: pasta.log: includes the error log, the configuration file to be used, and the command line options pasta.in: input file to Pasta

Pasta Users Guide

pasta.out: output file from Pasta Output File You can specify the storage location of the output file with the outFile (output file name) option in the configuration file. You can use {inputfile} in the outFile option. Pasta will replace it with the actual input file name (without the path) specified by the -f (input file name) command line option. For example: outFile=<APPLTMP>/{inputfile}.pdf If you want to specify the output file name in the command line, you can use the existing -o (output file name) command line option. No Print Option The noPrint (no print) option in the configuration file and the -np (no print) command line option are useful when you need to generate an output file (such as a PDF file) but you dont need to print it out. Error Log File The errorlogfile (error log file name) option in the configuration file and the -el (error log file name) command line option are useful if you want to store the error log file. The default error output is stderr (standard error), so Pasta errors are logged in the Concurrent Manager log file. Printer Fonts (Latin 1) Support as well as TrueType Fonts Pasta now supports fonts installed on the printer as well as TrueType font file. You can use any TrueType font that resides on your middle tier server. If you specify a TrueType font, Pasta will subset and embed the required characters from the font in the Postscript output file and send it to your Postscript printer. Your printer need not have any fonts installed. Oracle provides Andale fonts (ADUO*.ttf) for printing. If your printer has a font installed that is suitable for the language of your report, you can utilize the printer font. Pasta can support Latin1 characters only for this option at thismoment. WidthScaleRate (-w) option will not take effect when printer font is used.

Printer Setup Simplification


Pasta patch also includes pre-defined printer types and printer drivers as seed data for simplified printer setup on Oracle EBusiness Suite. By using these pre-defined settings, you can configure a printer with very minimal manual step.

Pasta Users Guide

Pre-defined Printer Type The printer type --Pasta Universal Printer has been defined as seed data in Pasta patch. With this printer type, users can print concurrent requests in Portrait, Landscape, Landwide, and Dynamic styles to a PostScript printer with almost no additional setup steps. The printer type is already associated with certain report styles that are associated with corresponding printer drivers. Users can easily set up a printer by associating the printer with the printer type. Pre-defined Printer Drivers Several PASTA printer drivers that work with the print styles PORTRAIT, LANDSCAPE, LANDWIDE and DYNAMIC have been defined as seed data in this release. Users can add any of those printer drivers to the existing printer type by associating them with new print styles. Easy Customization PASTA makes it easy to customize your printing configuration to meet special printing needs. While most printing requirements will be met through the default configuration file, you can now define additional configuration files that are specific to particular printers. PASTA will look for a printer-specific configuration file and, if one exists, use that file rather than the default. For example, if the configuration file pasta.cfg is specified by the f option in the PASTA command line, PASTA tries to find pasta_<printer>.cfg, where <printer> is the printer name. If no configuration file for the specified printer exists, then pasta.cfg is used to print the report. Given this function, users can simply copy the default pasta.cfg to pasta_<printer>.cfg and make printer-specific changes in that file without changing the printer driver definition.

Important Changes between Pasta 2.0 and 2.5


To accommodate the new features introduced in Pasta 2.5, some options have been changed. For backward compatibility, you may still use the old options, but we strongly recommend you use the new ones.

Backward Compatibility with IX Library


IX Library 1.0.0 (Oracle Developer 6i patchset 9 ) and 1.1.0 (Oracle Developer 6i patchset 10) are not compatible with these changes in the Pasta configuration file. Customers who are using either version of Oracle Developer need to use the previous set of parameters for IX Library separate from Pasta.

Font Settings
Pasta 2.5 supports printer fonts as well as TrueType fonts. The new option allows you to specify either a path and font file, or the name of the font on the printer.

Pasta Users Guide

[Pasta 2.0] fontpath=<FND_TOP>/<APPLRSC>/ADUO.ttf boldfontpath=<FND_TOP>/<APPLRSC>/ADUOB.ttf [Pasta 2.5] The form of this option is: Font.<Face>.<Style>=<TrueType font name> Or Font.<Face>.<Style>=printer:<Printer font name> The <Face> must be Default. The <Style> must be either Plain or Bold. Examples: Font.Default.Plain=<FND_TOP>/<APPLRSC>/ADUO.ttf Font.Default.Bold=<FND_TOP>/<APPLRSC>/ADUOB.ttf Or Font.Default.Plain=printer:Courier Font.Default.Plain=printer:Couier-Bold

Printer Name Settings


In order to support an OS independent configuration file, the -pn (printer name) command line option and the ntPrintCommand (print command name for NT) have been added to the configuration file. The -P command line option and the printCommandOptions in the configuration file will be obsoleted in a future release. [Pasta 2.0] Each OS requires a different configuration.
Platform UNIX NT Command line -P-d<printername> -P/D:<printername> pasta.cfg printCommand=lp printCommandOptions=-c printCommand=print printCommandOptions=

[Pasta 2.5] One configuration works for all platforms.


Platform ALL Command line -pn<printername> pasta.cfg printCommand=lp -c -d{printername} ntPrintCommand=print /D:{printername}

Pasta Users Guide

NOTE: {printername} will be replaced by the actual printer name passed through the -pn command line option.

Installing Pasta
Pasta is bundled in Oracle Applications release 11i. However, a patch for correcting problems or providing new features might be available between releases. Please contact Oracle Corporation for the latest information for Pasta product. A Pasta patch is provided as a standard AD patch of Oracle Applications and it needs to be applied on the concurrent processing node.

Defining Printer Drivers for Printing


Several chapters starting from this chapter show how to configure a printer with Pasta in Oracle Applications. If the printer simplification setup can meet your requirement, you dont need the steps described in these chapters. In the explanation, three drivers for the most commonly used styles, which are Portrait, Landscape and Landwide, are used as an example. Another printer driver may also be needed per customers requirement. Please refer to the Printers chapter in the Oracle Applications System Administrators Guide for the concept and the detail steps to setup the printer. Responsibility: System Administrator Menu Path: Install->Printer->Driver Note: Enter only the specified fields and leave other fields as default. Note that all parameters are case-sensitive.

Figure 1: Printer Drivers Definition Form

Pasta Users Guide

Portrait Driver
Driver Name: PASTA_PORTRAIT User Driver: Pasta Portrait Driver SRW Driver: P Driver Method: Program Spool File: Checked Standard Input: Unchecked Program Name: FNDPSTAX Arguments: -pn$PROFILES$.PRINTER c$PROFILES$.CONC_COPIES -f$PROFILES$.FILENAME Note that the arguments must be written in one line.

Landscape Driver
Driver Name: PASTA_LANDSCAPE User Driver: Pasta Landscape Driver SRW Driver: L Driver Method: Program Spool File: Checked Standard Input: Unchecked Program: FNDPSTAX Arguments: -pn$PROFILES$.PRINTER c$PROFILES$CONC_COPIES -1 -f$PROFILES$.FILENAME Note that the arguments must be written in one line.

Landwide Driver
Driver Name: PASTA_LANDWIDE User Driver: Pasta Landwide Driver SRW Driver: W Program Name: FNDPSTAX Arguments: -pn$PROFILES$.PRINTER c$PROFILES$CONC_COPIES -1 -f$PROFILES$.FILENAME Note that the arguments must be written in one line.

Defining a Printer Type


Responsibility: System Administrator Menu Path: Install->Printer->Type Type = Pasta PostScript Description = PASTA printer type for PostScript printer Style -------PORTRAIT LANDSCAPE LANDWIDE Driver Name ---------------PASTA_PORTRAIT PASTA_LANDSCAPE PASTA_LANDWIDE

Pasta Users Guide

Figure 4: Printer Types Definition Form

Register a Printer
At least one printer must be defined prior to this step. Responsibility: System Administrator Menu Path: Install->Printer->Register Printer:(Your operating system printer name) Example: Win32: \\printer_server\SharedPrinter Unix: hp_3rdfloor Type: PASTA PostScript Description: any

Pasta Users Guide

Figure 5: Printer Register Form

Restarting the Concurrent Manager


You need to restart the Concurrent Manager whenever you change any of printer definitions in Oracle Applications. This is important because the Concurrent Manager caches the information of the printer configurations and the changes will not be effected until it is restarted.

PRT Files Setup


Make sure to include the following lines in SRW driver file (prt file) such as P.prt, L.prt or W.prt files under $FND_TOP\reports: code code code code "bold on" esc "[1m" "bold off" esc "[0m" "underline on" esc "[3m" "underline off" esc "[2m"

Special Settings for Bidi Languages


For Bidi languages, which are Hebrew and Arabic, you need additional settings in prt file. For example, you also need to add the following lines to each of the above files for Arabic language: nls nls nls nls locale "arabic" datastorageorder "logical" contextuallayout "no" contextualshaping "yes"

Unicode and BiDi Specific Configuration


Oracle Reports cannot correctly handle a UTF8 report that contains Bidi range characters. Pasta provides a solution.
Pasta Users Guide

If you are using Bidi range characters in UTF8, perform the following steps for Oracle Reports. 1. Add the following escape sequences in .prt files: code "5" code "4" esc "[5m" esc "[4m"

2. Set the following environment variables:


REPORTS60_PRINTER_CODE_BEFORE=&5

REPORTS60_PRINTER_CODE_AFTER=&4 These steps cause Oracle Reports to generate a tagged report. In the tagged report, column separator tags separate the columns. For example: ESC[5m(column1)ESC[5m(column2)ESC[5m(column3).. The column separators are used to align tables and columns by Pasta. NOTE: You have to install Developer Patchset 9 or later to have Oracle Reports generate these column boundary tags.

Barcode TrueType Font Support


Pasta supports to display barcode data. This section describes how to configure Pasta for barcode reports as well as the requirements, recommendations for using this feature. If you have a small number of barcode reports in your system, this solution may be appropriate for you. However, if you have a large number of barcode reports with varying layouts, you may want to consider using bitmap. To print using the barcode font is a two-step process: Step 1: Creating a reports with the appropriate font style settings To print a data field as barcode it must be defined as the bold font style. When creating the report, set the style of the barcode data fields to bold (the font name does not matter.) Step 2: Setting in Pasta configuration file for printing In the Pasta configuration file, set the barcode TrueType font file name to Font.Default.Bold Usually, the size of the barcode font is different than the plain font. Pasta 3.0 introduced a new configuration file option that allows you to set the font size for bold style fonts. Use the boldfontsize=<font size in points> option to set the appropriate size for your barcode font. You can also use the equivalent command line option, -bs<font size in point>.

Pasta Users Guide

Because of the nature of character mode reports, and to maintain the simplicity of these reports, Pasta sacrifices the bold font setting to display barcode data for a report. To accommodate this and other limitations of using barcode fonts, consider the followings: Report Layout Recommendations If the barcode data is to be displayed with other normal character data on the same report line (such as in a table style report), it is strongly recommended that you design the report with the barcode data in the right most column. This will maintain the column layout in case the length of the barcode data varies by row. The height of the barcode font may not mach with the height of the regular font, and in most cases the height of the barcode font is higher. Pasta cannot control the height of the barcode font apart from the width. It can only controls the barcode size by the font size, which simultaneously adjusts the height and the width according to a ratio defined in the font file. For these reasons, choose the barcode font for your report carefully, considering both the width and height of the barcode data when designing the report. To ensure that the space between the report lines is sufficient to accommodate the barcode font, you can insert a blank line between the report lines in the original definition. You can also use the -h Pasta command line option to insert an extra space between the lines at runtime. You cannot use the -w Pasta command line option with barcode reports because this option adjusts the space between the glyphs, which may impact the ability of a barcode reader to read the generated output. You therefore must design the reports so that it does not rely on this option at runtime. Print Style and Printer Driver Setup Because Pasta sacrifices this bold font setting to support the barcode font and because the font setting is defined per configuration file, you cannot use bold style for any reports that will be printed using same configuration file. In addition, you can define only one barcode font per Pasta configuration file. If you have two reports that require different barcode fonts, you must define a configuration file for each. It is there fore strongly recommended that you define a new print style and associated printer driver for each type of barcode report. Barcode Font Support As previously described, Pasta cannot adjust the height of the barcode. Therefore one barcode font may not be appropriate for two reports with different layout requirements. In this case, two barcode fonts are required on the system. Reports containing barcode data must be tested thoroughly to ensure the expected results are produced.

Integration with the Common Unix Printing System (CUPS)


Integration with CUPS in Oracle E-Business Suite is easy and proven. Configuration steps are described below in 2 scenarios; 1) when all the printers are connected to CUPS server which resides on E-Business Suite
Pasta Users Guide

concurrent node, and 2) when there are multiple CUPS distributed servers and printers are connected to each CUPS server.

Scenario 1: CUPS is running on the concurrent node


All the printers are connected to CUPS server which resides on E-Business Suite concurrent node.

Figure 1. Scenario 1 Configuration Steps: There will be no special configuration step required if the printer system has been replaced with CUPS on the server. Make sure that the lp command which is set for printCommand parameter in Pasta configuration file is a CUPS lp command. You can specify full path to the command if you maintain both UNIX standard lp command and CUPS lp command. If you maintain both the System V printing system and the CUPS, you need to define a new printer type with required styles and printer drivers. 1. Create a new pasta configuration file in $FND_TOP/resource directory for CUPS printing Example: pasta_cups.cfg Make sure that the lp command which is set for printCommand parameter in Pasta configuration file is a CUPS lp command. You can specify full path to the command if you maintain both UNIX standard lp command and CUPS lp command. Create a set of printer drivers for each printer style with the configuration file created above. Example: Printer Driver Name: PASTA_LANDSCAPE_CUPS Arguments: -pn$PROFILES$.PRINTER -f$PROFILES$.FILENAME c$PROFILES$.CONC_COPIES -l -Fpasta_cups.cfg

2.

3.

Pasta Users Guide

You can refer to the existing printer driver definition created by Oracle such as PASTA_LANDSCAPE, PASTA_PORTRAIT or PASTA_LANDWIDE. 4. Create a printer type for the CUPS printer Example: Pasta printer for CUPS Add required styles associated with the printer drivers to the printer type. Example: Printer Type: Pasta printer for CUPS Printer Style Printer Driver ------------- -------------------LANDSCAPE PASTA_LANDSCAPE_CUPS PORTRAIT PASTA_PORTRAIT_CUPS LANDWIDE PASTA_LANDWIDE_CUPS 5. Register your printer with the printer style created above.

Scenario 2: Multiple CUPS running on the other machine than the concurrent node
There are multiple CUPS distributed servers and printers are connected to each CUPS server. In this scenario, one printer type is required for each server where CUPS process is running with the physical printer.

Figure 2. Scenario 2 Configuration Steps: 1. Create a pasta configuration file in $FND_TOP/resource directory for each server where the CUPS process is running. Example: pasta_cups1.cfg, pasta_cups2.cfg and pasta_cups3.cfg 2. For each configuration file, make change as follows: printCommand=lp -h <cupshost> -d {printername} <cupshost> is replaced with actual server name.

Pasta Users Guide

Make sure that the lp command is a CUPS lp command. You can specify full path to the command if you maintain both System V lp command and CUPS lp command. Leave {printername} as it is. This parameter will be replaced by Pasta at runtime with actual printer name. 3. Create a set of printer drivers for each printer style with the configuration file created above. Example: Printer Driver Name: PASTA_LANDSCAPE_CUPS1 Arguments: -pn$PROFILES$.PRINTER -f$PROFILES$.FILENAME c$PROFILES$.CONC_COPIES -l -Fpasta_cups1.cfg You can refer to the existing printer driver definition created by Oracle such as PASTA_LANDSCAPE, PASTA_PORTRAIT or PASTA_LANDWIDE. 4. Create a printer type for each server in Oracle Applications. Example: Pasta printer CUPS1, Pasta printer CUPS2 and Pasta printer CUPS3 Add required styles associated with the printer drivers to the printer type. Example: Printer Type: Pasta printer for CUPS1 Printer Style Printer Driver ------------- --------------------LANDSCAPE PASTA_LANDSCAPE_CUPS1 PORTRAIT PASTA_PORTRAIT_CUPS1 LANDWIDE PASTA_LANDWIDE_CUPS1 5. Register your printer with the printer style. For example, if printer1 is defined on the server CUPS1 and you have created Pasta printer CUPS1 printer type for the server, register printer1 with Pasta printer CUPS1 printer type.

Using PrintForms
Preface
There has been a requirement in Oracle E-Business Suite to customize the concurrent reports to add a company logo or a background image. For example a customer might need those graphical images to follow the customer's corporate identity standard. It has been very difficult to achieve this type of customization. For example, a customer had to modify every single rdf file of Oracle Reports to add a company logo in which way they had to modify all of about 3,000 rdf files and also they had to repeat the modification every time they apply the patch or upgrade the software. It is true that there are some third party tools to help the customers who have this
Pasta Users Guide

type of requirement but the solutions are not supported by Oracle and requires an additional licensing fee and to hire consultants who are specialized to the third party tools. This has been causing very expensive cost to the customers. There has been another requirement that some customers need to print a concurrent report on top of the pre-printed stationery. This task is very hard because every customer has to arrange the position of the report in the paper by changing margins, pitches, space between the lines...etc for every printer. This requires the knowledge of printer control commands that vary among printers. In addition, to fit the report in the correct position in the paper, the report has to be printed out every time a positional attribute is changed.

Function Overview
Oracle now introduces a new feature in Pasta to combine multiple PostScript files into one file that is called PrintForm. Pasta converts an input file to PostScript internally and this PrintForm function reads another file, which contains a background image for example, and generate one PostScript file. With this new feature, the customers don't have to edit or modify their original report any more. They just need to pass a PostScript file with a background image when they call Pasta. The function is called PrintForm function and the PostScript file with a background image is called the PrintForm.

This new feature satisfies the requirement of easier customization and easier maintenance of the customized reports because the feature eliminates a need of the customizing the original report definition since this process is executed at printing time. The PrintForm also provides the better solution that can replace the pre-printed stationery solution. Because of the fact that stationery can be generated in electronic form by this feature, the pre-printed stationery is no more required. Pasta utilizes the PostScript technology so there is also no printer specific knowledge is required as long as the printer supports the PostScript language.

Overview of Creating a PrintForm


There are two phases to apply PrintForm technology to Oracle Applications. The first phase is to create a PrintForm file that includes creating a PostScript image file by editor software and converting the PostScript file into PrintForm format by Pasta command. The second phase is to deploy the PrintForm to Oracle Applications as a part of the Concurrent Processing mechanism. Note that the way to deploy the PrintForm to Oracle Applications might be changed in the future.

Create the PrintForm

Choose an Editor and conversion mechanism

Pasta Users Guide

Choose an editor that you will be creating the PrintForm image depending on the requirement or skill of the software. The table below lists the editor that PrintForm supports and their characteristics.
Editor Oracle Reports MS Word, Excel, PowerPoint with Adobe PDFMaker Any Windows Application Any Windows Application Any Application which generates PDF Platform UNIX, MS Windows Interim PostScript Format Generation N/A N/A Xpdf pdftops Adobe Generic PostScript driver Color Driver from Oracle Note - Requires PS printer driver on Windows - Need to buy Adobe Acrobat - Can save color information - Cannot save color information - File size will be smaller than colored file. - Can save color information

MS Windows PDF

MS Windows N/A

MS Windows N/A PDF

Xpdf pdftops - Can save color information

The color driver is provided by Oracle. Please contact Oracle support to obtain the file. Setup an environment 1. Install the editor software that you have chosen the step above. Note that Oracle Reports Designer can be run on the same operating system as your Oracle Applications because Oracle Reports is bundled with Oracle Applications. 2. Install the software for conversion of a PostScript file to PrintForm file If you did not choose Oracle Reports as editor, you need to decide either pdftops command by Xpdf or Adobe's generic PostScript printer driver to convert a PostScript file created by the editor into PrintForm format depending on the supported combination and your requirement. Xpdf Download and install Xpdf software from Xpdf web site for your platform. You can use this utility either on the client side where you edit the image file or on the server side where you will run Pasta command to convert the PostScript file to PrintForm and locate the file on. http://www.foolabs.com/xpdf/download.html After installation, make sure pdftops command works fine. If you would like to use Microsoft Office software such as MS Word, WS PowerPoint or MS Excel to create PrintForm and use Xpdf solution to generate PostScript file, you need to have Adobe Acrobat installed on your system. This software adds an option to save a MS Office document in PDF format.

Pasta Users Guide

http://www.adobe.com Adobe Generic PostScript Printer Driver (Windows) Go to Adobe's printer driver installation web page http://www.adobe.com/support/downloads/product.jsp?product=pdrv&plat form=win Download Universal PostScript Windows Driver Installer and run the installer. As the installation proceeding, make sure that you choose "Generic PostScript Printer" in the select printer model window.

Create a image file by an editor Create a file by the editor you have chosen to have a company logo or preprinted stationery. Here is a sample screen shot of MS Word to add an Oracle company logo on upper right corner of the report.

Pasta Users Guide

Please note that a style, a paper size of the document and the size of the margins are very important aspects to fit a PrintForm to a report. Please make sure that those attributes are set to the intended values for your requirement. The following screen shots are the examples from MS Word in letter size paper and in landscape orientation with no margins on the right, left and bottom but a small margin on top. Navigate to this window through the file menu -> page settings.

Pasta Users Guide

Tips: Even if you need only one type of PrintForm such as adding a company logo to all the report, you need to create one PrintForm per printer style such as Portrait, Landscape or Landwide because PrintForm depends on the style of the report. Convert an original file to PostScript format The file created in the step above needs to convert into PostScript format either by pdftops command, by Xpdf or by Adobe Generic PostScript printer driver depending on the requirement. Here are the examples of both method executed with MS Word sample. Xpdf 1. Save the file in PDF format by PDFMaker If you have Adobe Acrobat Reader installed on your system, you should have an icon in the tool bar area of MS Windows. Push this icon and save the document in PDF format.

2.

Convert the PDF file into PostScript format

Pasta Users Guide

Run pdftops command by Xpdf to convert the PDF file to PostScript file. For example: $ pdftops oracle_ls.pdf oracle_ls.ps Adobe Generic PostScript Printer Driver 1. Use Adobes' Generic PostScript Printer to save the file in PostScript format. Go to File -> Print menu in your application 2. In the Print window, make sure printer name is "Generic PostScript Printer" and the check box for Print to file option is checked.

3.

Hitting the OK button will lead you to save the file.

Convert the PostScript file to PrintForm format Run the Pasta command in the command line to convert the PostScript file generated in the previous step. For example: $ FNDPSTAX -pform oracle_ls.ps oracle_ls.pf Note that this program is only available on the computer that Oracle Applications is installed. You need to copy the file and run the command in the command line on the computer where the Oracle Applications instance is running if the machine is different than the one you generated the PostScript file.

Deploy a PrintForm to Oracle Applications


Place PrintForm files in APPL_TOP You can place the PrintForm file anywhere under APPL_TOP in the Concurrent node but Oracle recommends to put the file under FND_TOP/resource/<lang> directory where <lang> is replaced by a language code such as US for English or KO for Korean for maintenance convenience.

Pasta Users Guide

Modify the printer driver definitions in the Printer Driver form Go to Printer Driver form in System Administrator responsibility in Oracle Applications. Modify Arguments field to add an option for PrintForm (pf<print form>) for appropriate printer driver. For example, if you place a PrintForm logo_ls.pf in $FND_TOP/resource/US directory and want to apply the PrintForm to PASTA_LANDSCAPE driver, the arguments field needs to be changed as follows: -pn$PROFILES$.PRINTER -f$PROFILES$.FILENAME c$PROFILES$.CONC_COPIES -l -pf <FND_TOP>/resource/US/oracle_ls.pf <FND_TOP> needs to be replaced with the actual path for your $FND_TOP. Restart Concurrent Manager Restart the Concurrent Manager to reflect the changes in the printer driver definitions.

Configuration File Options


The configuration file "pasta.cfg" governs many printing options. The file is a simple ASCII text file. The options are listed in the following two tables. They are divided into generic options and options for Arabic, Hebrew, and Thai. The Key Name, the Values, the Description, and the Equivalent Command Option (if applicable) are listed for each option. Note: For options that also have command line equivalents, Oracle recommends that you set the value in the configuration file.

Generic Options
An asterisk (*) in the values column indicates the default value. Key Name Value(s) Description Command Line Equivalent -x

outputFormat

ps (*) text.<charset> text.auto

Two output formats are supported: Postscript ("ps") and text ("text"). When the output format is text, you can specify the output character set by the Oracle character set name (for example, text.WE8ISO8859P1). If you use "auto" as the output character set (text.auto), Pasta uses the appropriate character set according to the NLS_LANGUAGE value in the FND_LANGUAGES table.

Pasta Users Guide

TextAutoCharset

Charset

The default value is taken from the FND_LANGUAGES table. You can override the default character value when the outputFormat is set to text.auto. Use this option to convert the output file. Enter a preprocessing command to invoke any executable that supports an input file and an output file (filter program). Pasta will invoke the filter program before passing the file to the printing command. This is the print command for the Unix platform.

N/A

preprocess

Executable name

N/A

printCommand

Print command name (e.g. lp) Print command name (e.g. print) Output file name Y n (*) default (*) y n Y n (*)

N/A

ntPrintCommand

This is the print command for the Windows platform.

N/A

outFile

If you want to save the output file, use this option to define the output file name and its destination on the middle tier. Set this option to y if you do not want Pasta to produce printed output. Specify single or double-sided printing with this option. Values are y, n, or default (uses the printer-side setting). Set this option to y to embed the number of copies to be printed in a Postscript file. Using this option will eliminate the header page normally printed between reports. You can choose to have the copies collated by setting this option to y. Adjusts the space between lines. Adjusts the space between characters. WidthScaleRate (-w) option will not take effect when printer font is used. Adjusts the page width in inches.

-o

noPrint duplex

-np N/A

embednumcopies

N/A

copysort

y (*) n 1.0 (*) 1.0 (*)

N/A

heightScaleRate widthScaleRate

-h -w

pagewidth

8.27 (*)

-pw

pageheight topMargin

11.64 (*) 0.25 (*)

Adjusts the page height in inches. Adjusts the top margin in inches.

-ph N/A

Pasta Users Guide

bottomMargin rightMargin leftMargin Font.<Face>.<Style>

0.25 (*) 0.25 (*) 0.25 (*) Font name

Adjusts the bottom margin in inches. Adjusts the right margin in inches. Adjust the left margin in inches. Specifies the TrueType font file name or printer font name. The <Face> must be either Default or the actual font face name (such as Helvetica). The <Style> must be either Plain, Bold, Italic, or BoldItalic. Font size in points. If this is not set, the font size is calculated automatically.

N/A N/A N/A N/A

fontsize

7.8 (* for landscape) 10.0 (* for portrait) Size in points A value from fontsize parameter (*) type3 (*) type42 8 (*)

-s

boldfontsize

Font size for bold font in points. This option mostly used when Font.Defatul.Bold is used for specifying a barcode font. A type of the font that will be embedded in PostScript. Pasta replaces a tab with the number of spaces specified in this option. Set this option to have Pasta create a log file.

-bs

psEmbeddedFontType

N/A

tabsize

N/A

errorlogfile

(standard error output) (*) Error output file name NLS_LANG

-el

encoding

You can override the NLS_LANG environment variable passed to Pasta by using this option. However, this is usually not necessary. If you override the value incorrectly, Pasta will not function correctly. Note: This option remains for backward compatibility but will be obsolete in future releases. The maximum number of lines per page is controlled by SRW driver files. If Pasta changes the value, the format of a report file will break. Do not use this option.

N/A

lines

Number

N/A

Pasta Users Guide

printCommandOptions

Print command options

You can specify printer options with this setting. Note: This option remains for backward compatibility but will be obsolete in future releases. You can specify the printer options using printCommand and ntPrintCommand instead.

N/A

Arabic, Hebrew and Thai Options


An asterisk (*) in the values column indicates the default value. Key Name Values Description Command Line Equivalent N/A

thai_space_compensation

y n (*)

In the Thai language, some characters are combined into one glyph. If this option is set to y, Pasta will align your report by adding spaces at the end of any string that includes combined characters. If you set this option to unicode, Pasta follows the Unicode BiDi algorithm. Setting the value to oracle will use Oracles algorithm. Options are ltr (left-to-right), rtl (right-to-left), and default (depends on the NLS_LANGUAGE setting). To lay out the text, set this option to y. If no layout is required, set it to n. To shape the text, set this option to y. If no shaping is required, set it to n. This option is for Arabic only. Possible values are arabic for Arabic numerals, hindi for Hindi numerals, or context to use Arabic or Hindi depending on the context. Required for Arabic data only.

bidi_algorithm

oracle (*) unicode

N/A

direction

default (*) ltr rtl y (*) n y (*) n

N/A

dolayout

N/A

doshaping

N/A

numerals

context (*) arabic hindi

N/A

Additional Notes for Specifying TrueType Fonts for Font Parameters.

CJK Ideographs If the TrueType font you specified for the Font.Defalt option contains CJK (Chinese, Japanese, Korean) Ideographs, the European characters must be

Pasta Users Guide

half the width of the CJK characters to align the output. If the font does not contain CJK Ideographs, all characters must have the same width. TrueType Collections If you want to use TrueType collection (.ttc) files, you can specify a index number for each font face, starting with 0. Please contact with the font provider of your font if you need to know an index number of a font face in your ttc file. Example1) Font.Default.plain=c:\fonts\msgothic.ttc(0) In this case, MS Gothic will be used. Example2) Font.Default.plain=c:\fonts\msgothic.ttc(1) In this case, MS P Gothic will be used.

Command Line Parameters


When using the Pasta utility from the command line, you can use the options below. FNDPSTAX [options]
-c<number> -el<logfile> <number> specifies the number of copies to print. Specifies the error log files path and name. The path is the absolute path to the error log file. <filename> specifies the input file name. Example: -fmyfile.txt Specifies the configuration files path and name. Adjusts the space between lines. The default value is 1.0. If <rate> is larger than 1.0, the space between lines will be larger. Adjusts the space between characters. The default value is 1.0. If <rate> is larger than 1.0, the space between characters will be larger. Note: This option does not work when using printer fonts. Print in landscape mode. (The default is portrait.) <filename> specifies the output file name. Overrides the fontsize option in pasta.cfg.

-f<filename>

-F<cfgfile> -h<rate>

-w<rate>

-l -o<filename> -s<size>

Pasta Users Guide

-bs<size>

Overrides the font size in -s and fontsize for bold font The no print option prevents the report from being sent to the printer. <height> specifies the paper height in inches. <width> specifies the paper width in inches. Converts a PostScript file <ps file> to a PrintForm file <pf file>. <pf file> specifies a PrintForm file to be merged in a Pasta output at runtime. <printername> specifies the printer name. Banner option for use with the Unix lp command. <banner title> is passed to the lp command with the -t lp command option. Displays the Pasta version number. Specifies the output format. Two output formats are supported: Postscript (ps) and text (text). When the output format is text, you can specify the output character set by the Oracle character set name (for example, text.WE8ISO8859P1). If you useauto as the output character set (text.auto), Pasta uses the appropriate character set according to the NLS_LANGUAGE value in the FND_LANGUAGES table. Here are the default character set values taken from the FND_LANGUAGES table.
NLS_LANGUAGE Character set ---------------------------------------ARABIC AR8ISO8859P6 BULGARIAN CL8ISO8859P5 CATALAN WE8ISO8859P1 CZECH EE8ISO8859P2 GERMAN WE8ISO8859P1 DANISH WE8ISO8859P1 SPANISH WE8ISO8859P1 EGYPTIAN AR8ISO8859P6 GREEK EL8ISO8859P7 LATIN AMERICAN SPANISH WE8ISO8859P1 FRENCH WE8ISO8859P1 CANADIAN FRENCH WE8ISO8859P1 ENGLISH WE8ISO8859P1 CROATIAN EE8ISO8859P2 HUNGARIAN EE8ISO8859P2 ITALIAN WE8ISO8859P1 ICELANDIC WE8ISO8859P1

-np

-ph<height> -pw<width> -pform <ps file> <pf file>

-pf<pf file>

-pn<printername> -t<banner title>

-v -x<ps| text[.charset|Auto]>

Pasta Users Guide

HEBREW JAPANESE KOREAN LITHUANIAN NORWEGIAN DUTCH POLISH PORTUGUESE BRAZILIAN PORTUGUESE ROMANIAN RUSSIAN SWEDISH FINNISH SLOVAK SLOVENIAN THAI TURKISH AMERICAN SIMPLIFIED CHINESE TRADITIONAL CHINESE Other than above

IW8ISO8859P8 JA16EUC KO16KSC5601 NEE8ISO8859P4 WE8ISO8859P1 WE8ISO8859P1 EE8ISO8859P2 WE8ISO8859P1 WE8ISO8859P1 EE8ISO8859P2 CL8ISO8859P5 WE8ISO8859P1 WE8ISO8859P1 EE8ISO8859P2 EE8ISO8859P2 TH8TISASCII WE8ISO8859P9 US7ASCII ZHS16CGB231280 ZHT16BIG5 WE8ISO8859P1

You can override these default values by using the textAutoCharset option in pasta.cfg. -C<number> <number> specifies the maximum number of columns. Note: This option remains for backward compatibility but will be obsolete in future releases. The maximum number of columns is controlled by SRW driver files. If Pasta changes the value, the format of the report file will break. Do not use this option. <printer options> specifies the printer name and options. Note: This option remains for backward compatibility but will be obsolete in future releases. Use the new -pn option instead.

-P<printer options>

Examples: 1) To check the version number > FNDPSTAX -v 2) To generate myfile.ps from myfile.txt > FNDPSTAX -fmyfile.txt omyfile.ps -np 3) To print a report with font size 10 > FNDPSTAX -fmyfile.txt -s10

Font Files Provided by Oracle


This is a list of ten files that are bundled with Pasta patch.

Pasta Users Guide

Font name ADUO.ttf ADUOB.ttf ADUOJ.ttf ADUOJB.ttf ADUOK.ttf ADUOKB.ttf ADUOSC.ttf

Description "single-byte" characters only (PLAIN) "single-byte" characters only (BOLD) Unicode font with Japanese Han Ideographs (PLAIN) Unicode font with Japanese Han Ideographs (BOLD) Unicode font with Korean Han Ideographs (PLAIN) Unicode font with Korean Han Ideographs (BOLD) Unicode font with Simplified Chinese Han Ideographs (PLAIN) Unicode font with Simplified Chinese Han Ideographs (BOLD) Unicode font with Traditional Chinese Han Ideographs (PLAIN) Unicode font with Traditional Chinese Han Ideographs (BOLD)

ADUOSCB.ttf

ADUOTC.ttf

ADUOTCB.ttf

These fonts are installed under $FND_TOP/$APPLRSC.

Sample Configuration File


This is a sample of pasta configuration file for multi-lingual environment. Please refer to the bug 2671556 for varieties of the configuration.
%% %% pasta.cfg -- Pasta configuration file %% % This is the main Pasta/IX configuration file. % % If this is the first time you have modified this file, read the % notes at the end of this file first. %%%% ========== Default settings ========================== %%%% %% The options in this default section can be overridden by the options %% in the language and territory sections below. [DEFAULT] %% ========== Output Format ========================== %% % Output Format [ps|text.<charset|auto>] % % Currently, Pasta supports two output formats: Postscript and % text. If you have a Postscript Level 2 (or higher) printer, % please set this option to "ps". If the input is a text file, % Pasta will convert it to a Postscript file. If the input is % already a Postscript file, Pasta will send it to a printer as Pasta Users Guide

% is. Whether a file is Text or PS is automatically sensed on % input. % % If you don't have a Postscript printer and want to send a % text file to your printer, please set this option to "text". % You can specify the output character set by the Oracle % character set name (e.g. text.WE8ISO8859P1). You can use % "auto" as the output character set (e.g. text.auto). In that % case, Pasta will convert the data from the original character % set to an appropriate one according to the NLS_LANGUAGE setting. % % In the case of text output, only the thai_space_compensation % and preprocess options are effective. Other options are ignored. % % If you set this option to "text" and want to send printer% specific escape sequences to your printer with text, you % must keep the escape sequence settings in "Initialization" % and "Reset" in the printer driver. outputFormat=ps %% ========== Preprocessing Command ================== %% % Pasta can use a preprocessing command to invoke any executable % that supports an input file and an output file (a filter program). % You can use redirection. Pasta will invoke the filter program % to preprocess the Pasta output before passing it to the printing % command. By using the preprocess option, you can generate output % formats other than the formats Pasta currently supports. For % example, you can generate PCL output. % You can use {infile} and {outfile} in this option. % {infile} is the output file generated by Pasta. You can use % it as input for the preprocessing command. It is a temporary % file and will be deleted after being passed to the % preprocessing command. {outfile} is the output file generated % by the preprocessing command. Pasta names it temporarily and % it will be deleted after being passed to the printing command. % If you want to keep it, you can name it by using the '-o' % command line option. Pasta will copy {outfile} to the file you % specify. % Preprocess for PCL printing % This is an example for PCL printing. In this example, "gs" is % Ghostscript and "pxlmono" is a device used with HP black and % white PCL XL printers (LaserJet 5 and 6 family). % Ghostscript is a tool that can convert a Postscript file to % a PCL file. % You can get the latest version of Ghostscript at: % www.ghostscript.com. % % You can get a list of output devices available in Ghostscript % at: % http://www.gnu.org/software/ghostscript/devices.html ; preprocess=gs -q -dNOPAUSE -dBATCH -sDEVICE=pxlmono -sOutputFile={outfile} {infile} % Preprocess for PDF output % This is an example for PDF output. ps2pdf is a shell script % bundled with Ghostscript. ps2pdf can convert a Postscript % file to a PDF file. In most cases, you cannot send a PDF % file to the printer command because the printer command % cannot understand PDF. Set the noPrint option to "y" or use % the '-np' (no print) command line option if you do not want

Pasta Users Guide

% to have Pasta send the PDF file to a printer. Use the outFile % option or the '-o' (output file name) command line option to % store the output file wherever you like. You can use {inputfile} % in the outFile option. Pasta will replace it with the actual % input file name (without the path) specified by the '-f' % (input file) command line option. ; preprocess=ps2pdf {infile} {outfile} ; noPrint=y ; outFile=<APPLTMP>/{inputfile}.pdf %% ============== Paper Size (in inches) =================== %% % You can specify the paper (page) size in inches. Pagewidth % specifies width and pageheight specifies height. If you want % to use a different paper size for a particular language or % territory, please override this value in the language and/or % territory sections. % [A4] pagewidth=8.27 pageheight=11.64 % [Letter] % If you want to use Letter as the default paper size, comment % the A4 settings above and uncomment the following lines: ; pagewidth=8.5 ; pageheight=11 %% ============== Space Size ========================= %% % You can increase the space between characters by increasing % the value of widthScaleRate and between lines by increasing % the value of heightScaleRate. widthScaleRate=1.0.0 heightScaleRate=1.0.0 %% ============== Margins (in inches) =================== %% % These settings should be changed to suitable values for your % printer. topMargin=0.25 leftMargin=0.25 rightMargin=0.25 bottomMargin=0.25 %% ============== Tab Size (in spaces) =================== %% % Pasta replaces a tab with a specified number of spaces. You % can alter the number of spaces using this option. tabsize=8 %% ============== Font Size (in points) =================== %% % This value affects all of the fonts you use in your reports. % You can specify any number (e.g. 10.5). fontsize=9 %% ============== Font Name ========================= %% % You can use any TrueType fonts on your middle tier server. % If you specify a TrueType font, Pasta/IX will subset and embed % the font in the Postscript output file and send it to your % Postscript printer. Your printer does not need to have any % fonts installed. Oracle provides Andale fonts (ADUO*.ttf) % for printing. Also, if your printer has a font installed that % is suitable for the language of your report, you can utilize

Pasta Users Guide

% the printer font. % % The form of this option is: % Font.<Face>.<Style>=<TrueType font file name> % or % Font.<Face>.<Style>=printer:<Printer font name> % % The <Face> must be either "Default" or the actual font face % name, such as "Helvetica", used in your report. "Default" % works for text reports and bitmap reports. Actual font face % names work only for bitmap reports. % %The <Style> must be either "Plain", % "Bold", "Italic" or "BoldItalic". "Plain" and "Bold" work % for text reports and bitmap reports. "Italic" and "BoldItalic" % work only for bitmap reports. Font.Default.Plain=<FND_TOP>/<APPLRSC>/ADUO.ttf Font.Default.Bold=<FND_TOP>/<APPLRSC>/ADUOB.ttf % Uncomment the following if you want to use printer fonts as a % default. All printers have the Courier font installed by default. % Courier has glyphs for Western European characters. ; Font.Default.Plain = printer:Courier ; Font.Default.Bold = printer:Courier-Bold %% ============== Printing Command ==================== %% % You can specify the printing command and options you want % to use to print your report. Pasta will pass the final output % to this command. {printername} will be replaced by the % actual printer name passed through the command line option % (-pn), so in most cases you don't have to change these % options. % for UNIX platform printCommand=lp -c -d{printername} % for Windows platform ntPrintCommand=print /D:{printername} %% ============== Printing Options ===================== %% % Embed number of copies [y|n] % % You can embed the number of copies to be printed in a % Postscript file. However, some other printers do not support % the command. In that case, please set this option to "n". % Pasta will send the report multiple times up to the number of % copies. By embedding the number of copies, you can eliminate % the header page normally printed between reports. embednumcopies=y % Collate [y|n] % % If you set "embednumcopies" to "y" above, you can choose to % have the copies collated (e.g. 123123) or uncollated % (e.g. 112233) by setting the "copysort" option. If you set % "embednumcopies" to "n", the order is always 123123. % For example, if you want to print two copies of a report % that has 3 pages, the output will be: % % | embednumcopies

Pasta Users Guide

% |y n % -----------------------------% copysort y | H123123 H123H123 % copysort n | H112233 H123H123 % % where "H" stands for a header and "123" stands for 1st page, % 2nd page and 3rd page. copysort=y % Duplex printing [y|n|default] % % You can specify duplex or not. "default" means that it depends % on the printer-side setting. duplex=default %% ============== BiDi Specific Options ================= %% % The following options work only for Bi-Directionallanguages % such as Arabic or Hebrew. % Global direction [ltr|rtl|default] % % ltr: Left-To-Right % rtl: Right-To-Left % default: It depends on NLS_LANGUAGE. If NLS_LANGUAGE is % Arabic or Hebrew, it is rtl. Otherwise, it is ltr. direction=default % Do string layout [y|n] dolayout=y % Do Arabic shaping [y|n] doshaping=y % numerals [arabic|hindi|context] % % arabic: To always use Arabic numerals % hindi: To always use Hindi numerals % context: To use Arabic or Hindi depending on the context numerals=context % Bidi layouting algorithm [oracle|unicode] % % If you set this option to "unicode", Pasta/IX follows the % Unicode BiDi algorithm. For information about the Unicode BiDi % algorithm, please refer to the following site. % http://www.unicode.org/unicode/reports/tr9/index.html % % For backward compatibility, Pasta/IX still supports Oracle's % original algorithm. If you want to use it, please set % this option to "oracle". bidi_algorithm=unicode %% ============== Thai Specific Options ==================== %% % Space compensation for Thai [y|n] % % In the Thai language, some characters are combined into one % glyph. If thai_space_compensation is set to "y", Pasta will % align your report by adding spaces at the end of any string % that includes combined characters. This option works only for % Thai characters. Pasta can automatically detect Thai characters,

Pasta Users Guide

% so it is safe to set this option to "y" for languages other % than Thai. However, it may affect performance because Pasta % checks whether space compensation is necessary or not for all % characters. In this configuration file, this option is set to % "y" only in the Thai section below, which overrides the setting % here. thai_space_compensation=n %% ============== Error Log File ======================== %% % This tells Pasta to create a log file. The default error % output is stderr. ;errorlogfile=pasta.log %%%% ============== Language Specific Settings ============= %%%% %%%% Each language section is specified by [{NLS_LANGUAGE}] where %%%% {NLS_LANGUAGE} is the Oracle language name. %%%% One section name can contain multiple languages separated by %%%% commas. %% For Western European (Latin-1) languages [AMERICAN,CATALAN,GERMAN,DANISH,SPANISH,LATIN AMERICAN SPANISH,FRENCH,CANADIAN FRENCH,ENGLISH,ITALIAN,ICELANDIC,NORWEGIAN,DUTCH,PORTUGUESE,BRAZILIAN PORTUGUESE,SWEDISH,FINNISH] Font.Default.Plain Font.Default.Bold = printer:Courier = printer:Courier-Bold

% The following settings are necessary for bitmap reports only. % --- Start of the settings for bitmap reports --Font.Default.Italic = printer:Courier-Oblique Font.Default.BoldItalic = printer:Courier-BoldOblique Font.Courier.Plain = printer:Courier Font.Courier.Bold = printer:Courier-Bold Font.Courier.Italic = printer:Courier-Oblique Font.Courier.BoldItalic = printer:Courier-BoldOblique Font.Helvetica.Plain = printer:Helvetica Font.Helvetica.Bold = printer:Helvetica-Bold Font.Helvetica.Italic = printer:Helvetica-Oblique Font.Helvetica.BoldItalic = printer:Helvetica-BoldOblique Font.Symbol.Plain = printer:Symbol Font.Symbol.Bold = printer:Symbol Font.Symbol.Italic = printer:Symbol Font.Symbol.BoldItalic = printer:Symbol Font.Times.Plain = printer:Times-Roman Font.Times.Bold = printer:Times-Bold Font.Times.Italic = printer:Times-Italic Font.Times.BoldItalic = printer:Times-BoldItalic % --- End of the settings for bitmap reports --%% For Simplified Chinese [SIMPLIFIED CHINESE] Font.Default.Plain=<FND_TOP>/<APPLRSC>/ADUOSC.ttf Font.Default.Bold=<FND_TOP>/<APPLRSC>/ADUOSCB.ttf

Pasta Users Guide

%% For Traditional Chinese [TRADITIONAL CHINESE] Font.Default.Plain=<FND_TOP>/<APPLRSC>/ADUOTC.ttf Font.Default.Bold=<FND_TOP>/<APPLRSC>/ADUOTCB.ttf %% For Japanese [JAPANESE] Font.Default.Plain=<FND_TOP>/<APPLRSC>/ADUOJ.ttf Font.Default.Bold=<FND_TOP>/<APPLRSC>/ADUOJB.ttf %% For Korean [KOREAN] Font.Default.Plain=<FND_TOP>/<APPLRSC>/ADUOK.ttf Font.Default.Bold=<FND_TOP>/<APPLRSC>/ADUOKB.ttf %% For Thai [THAI] thai_space_compensation=y % If you need text output for Thai, please uncomment the % following line. ; outputFormat=text.TH8TISASCII %%%% =============== Territory Specific Settings ============ %%%% %%%% Each territory section is specified by [_{NLS_TERRITORY}] where %%%% {NLS_TERRITORY} is the Oracle territory name. %%%% One section name can contain multiple territories separated by %%%% commas. %% For America and Canada regions [_AMERICA,_CANADA] % [Letter] pagewidth=8.5 pageheight=11 %%%% ================= Notes ======================== %%%% % Pasta is a product that is part of the E-Business Suite's Application % Object Library (FND). It is provided as an executable named FNDPSTAX % and enables you to print a text report that contains any characters % from any languages. IX consists of the engines that drive Pasta. It % includes a font handling engine, a language handling engine and so on. % The Pasta executable includes IX and utilizes its features. % % IX is also released as part of a library (IX Library) with Developer % 6i Patchsets since Patchset 9. It works with Oracle Reports/Toolkit % and enables you to print a bitmap (Postscript) report that contains % any characters from any languages. The term "IX" refers to the engines, % which are included in both Pasta and the IX Library. % % This file is for Pasta 2.5 (or later) and IX 1.2 (or later). Pasta % 2.5 includes IX 1.2. Also, Developer 6i Patchset 11 includes % IX Library 1.2. You can use the same configuration file for both

Pasta Users Guide

% Pasta and IX Library, or you can use separate ones. % % Any line that starts with a % (percent) or a ; (semi-colon) is a % comment and is ignored. In this sample file we are using a % for % commentary and a ; for options that you may want to enable. % % Any variable that starts with a < (less-than) and ends with a > % (greater-than) is an environment variable. You can specify any % environment variable. Pasta/IX will replace the environment variable % with the actual value at runtime. % % You can use either a / (slash) or a \ (backslash) as the delimiter in % a file path, regardless of the platform. Pasta/IX will use an % appropriate delimiter automatically according to platform. % % The configuration options are grouped into sections. A section % starts with a [ (left square bracket) and ends with a ] (right square % bracket). Section names are case insensitive. The [DEFAULT] section % is mandatory. The language and territory sections are optional. If you % want to override the options in the [DEFAULT] section according to % languages and territories, you can add multiple language and territory % sections. Each language section is specified by [{NLS_LANGUAGE}] where % {NLS_LANGUAGE} is the Oracle language name. Each territory section is % specified by [_{NLS_TERRITORY}] where {NLS_TERRITORY} is Oracle % territory name. Also, you can specify both {NLS_LANGUAGE} and % {NLS_TERRITORY} at the same time as [{NLS_LANGUAGE}_{NLS_TERRITORY}]. % One section name can contain multiple languages and/or territories % separated by commas. % %% The following notes apply only to Pasta, not to the IX Library. % % If you have multiple printers registered and you need a specific setup % for each printer, it is very easy to have a specific configuration file % for each printer. This is an example for supporting a PCL printer. % % 1. Copy $FND_TOP/resource/pasta.cfg to % $FND_TOP/resource/pasta_<yourprinter>.cfg where <yourprinter> % will be the printer name you define on the operating system and % in the E-Business Suite (both should be the same name). % % 2. Edit the configuration file to meet your requirement. % For example, if you need to print in PCL then uncomment the % preprocess option for PCL printing and make necessary changes % for the parameters of Ghostscript if needed. % Regarding Ghostscript, please refer to http://www.ghostscipt.com. % % 3. PASTA will try to read $FND_TOP/resource/pasta_<yourprinter>.cfg % first and if the file is not found then will try to read % $FND_TOP/resource/pasta.cfg. % % The default name of the configuration file is "pasta.cfg". You can % override it by using the '-F' (configuration file) command line option. % For example, if you specify "-Fpcl.cfg" in the command line, Pasta % will search for the file named "pcl_<your printer>.cfg" first and then % search for "pcl.cfg".

Pasta Users Guide

You might also like