Oracle Pasta Printer Driver
Oracle Printer configuration was quite a tricky setting especially printing using the pasta printer driver.
Before you define Oracle Printer, the printer has to be setup in Unix level where the Unix system engineer will have to define the printer entry.
1. Login to the Oracle Apps Tier node in Unix and execute the command below to verify the setup of the printer in the OS level.
Example: – Before we add the new printer oracle_printer, execute the command to make sure it was setup correctly.
UNIX> lpstat -v -a | grep oracle_printer device for oracle_printer: /dev/null remote to: oracle_printer on oracle.printer.com oracle_printer accepting requests since Mar 5 00:41 UNIX> lpstat -d oracle_printer no system default destination printer queue for oracle_printer no entries oracle_appsc: oracle_printer: ready and waiting no entries
2. Go into Oracle Applications – System Administrator – Install – Printer – Register. Enter the Printer Name, Type and click Save.
3. Login to the Oracle Apps Tier node in Unix and add the printer entry in uiprint.txt configuration files
UNIX> vi $ORACLE_HOME/guicommon6/tk60/admin/uiprint.txt
The location $ORACLE_HOME/guicommon6/tk60/admin/PPD stores all the required .ppd printer driver files
Once you have set all the configuration for Oracle Pasta Printer Driver as above, you may start the printing from Oracle Applications.
Oracle Pasta Printer Driver Configuration Script
In case there’s problem in your Oracle Printer issue that needs troubleshooting, you may use the SQL script below for investigation: -
SELECT NUMBER_OF_COPIES , NLS_LANGUAGE , NLS_TERRITORY , PRINTER , PRINT_STYLE , COMPLETION_TEXT , OUTPUT_FILE_TYPE , NLS_CODESET ,OUTFILE_NODE_NAME,OUTFILE_NAME FROM FND_CONCURRENT_REQUESTS WHERE REQUEST_ID= '<Request ID>';
SELECT PRINTER_STYLE_NAME ,SRW_DRIVER ,WIDTH , LENGTH , ORIENTATION FROM FND_PRINTER_STYLES WHERE PRINTER_STYLE_NAME= ( SELECT PRINT_STYLE FROM FND_CONCURRENT_REQUESTS WHERE request_id='<Request ID>') ;
SELECT PRINTER_DRIVER_NAME, USER_PRINTER_DRIVER_NAME , PRINTER_DRIVER_METHOD_CODE , SPOOL_FLAG , COMMAND_NAME , ARGUMENTS , INITIALIZATION , RESET FROM FND_PRINTER_DRIVERS WHERE PRINTER_DRIVER_NAME =(SELECT PRINTER_DRIVER FROM FND_PRINTER_INFORMATION WHERE PRINTER_STYLE=( SELECT PRINT_STYLE FROM FND_CONCURRENT_REQUESTS WHERE request_id='<Request ID>') ANDPRINTER_TYPE=( SELECT PRINTER_TYPE FROM FND_PRINTER WHERE PRINTER_NAME=( SELECT PRINTER FROM FND_CONCURRENT_REQUESTS WHERE request_id='<Request ID>' )))
SELECT * FROM FND_ENV_CONTEXT WHERE CONCURRENT_PROCESS_ID =( SELECT CONCURRENT_PROCESS_ID FROM FND_CONCURRENT_PROCESSES A, FND_CONCURRENT_REQUESTS B WHERE B.CONTROLLING_MANAGER=A.CONCURRENT_PROCESS_ID AND B.REQUEST_ID='<Request ID>') AND ( VARIABLE_NAME IN ('XENVIRONMENT','IX_PRINTING','ORACLE_HOME', 'LD_LIBRARY_PATH', 'NLS_LANG','REPORTS60_NO_DUMMY_PRINTER', 'TK6_PRINT_STATUS','TK6_PRINTER', 'TK_PRINTER','PRINTER','DISPLAY','TK_LOCALE', 'PASTA','APPLLCSP', 'ORACLE_PRINTER','TK_PRINT_STATUS') OR VARIABLE_NAME LIKE '%REPORT%' OR VARIABLE_NAME LIKE 'IX_%' )
A tricky part on the Oracle Printer was the output was sent to the printer but the printing doesn’t came out.
Few steps you need to look at on this Oracle Printer issue was: -
a) Try to print manually from Unix by executing lp -d
b) Check the report output format and print option was enabled in System Administrator – Concurrent – Program – Define
c) Check the pasta configuration files on the outputFormat variable. If the outputFormat=ps, try to change it to outputFormat=text and test the printing. If the output can be print from Oracle Printer, that means your printer doesn’t support PostScript printingNote: The default pasta configuration files was stored in $FND_TOP/resource/pasta.cfg and it will be used for the printing. You can create another pasta configuration files for your printer, let say your printer name was oracle, then the pasta configuration file name should be pasta_oracle.cfg which resides in $FND_TOP/resource
- #2
Fusion XI
February 23, 2010 8:58 pmRuben, the Postscript printing command that you shared doesn’t work in HP-UX platform. It should work by using -o instead of -T as below.
For PostScript Printing:
lp -d (printer_name) -o postscript (file_name)
- #3
HP-UX Admin
February 24, 2010 2:08 amThere’s lot feature you can use for the lp command. The -o parameter can be use to specify which printer tray you want to send your output to.
Example: lp -d (printer_name) -o tray2(file_name)
- #4
Joris
March 3, 2010 12:23 amGuys, just want to share with a command to check on Zebra printing details.
SELECT
NUMBER_OF_COPIES,
NLS_LANGUAGE,
NLS_TERRITORY,
PRINTER,
PRINT_STYLE,
COMPLETION_TEXT,
OUTPUT_FILE_TYPE,
NLS_CODESET,
OUTFILE_NODE_NAME,
LOGFILE_NAME,
OUTFILE_NAME
FROM
FND_CONCURRENT_REQUESTS WHERE PRINT_STYLE = ‘ZEBRA’
AND PRINTER = ‘printer_name’


January 24, 2010 9:23 pm
On the Concurrent node, issue the command line as below to test the printer capability.
For Text File Printing:
lp -d (printer_name) (file_name)
For PostScript Printing:
lp -d (printer_name) -T postscript (file_name)