Printing from 9ias

Posted on 2005-04-20
Last Modified: 2013-12-01

We are having 9ias rel2 running on a Sun box. We are trying to enable printing from the client workstations. For this we have installed the ORARRP utility on the client workstations as well. At the same time the mime types have been added in the httpd.conf file as well. While printing from within the application, the print dialog is coming.But when we say print it just doesnt seem to do anything. The printer is connected to the local network and the print dialog is recognising that defalut printer (on the client workstation)

Is there any other thing we need to do on this. As per the Oracle Whitepaper, once the print dialog comes we just have to print.
Question by:anshunay
    LVL 22

    Expert Comment

    Maybe this note:277431.1 from MetaLink will help you:

    The information in this article applies to:
    Oracle Reports Developer - Version: 9.0.2
    Oracle Forms - Version: 9.0.2
    Information in this document applies to any platform.
    ORARRP 1.3.4 (Oracle Reports Remote Printing Utility)

    How to Implement ORARRP with Forms & Reports 9i /10g for Local Printing on Client?

    ORARRP (Oracle Reports Remote Printing Utility) can be downloaded from the OTN website


    The PDF document contained within the file has instructions which appear specific to implementation of ORARRP in an Oracle 9iAS Rel 1 environment. This article aims to provide revised instructions for the implementation of ORARRP in a Oracle 9iAS Rel 2 or Oracle Application Server 10g environment

    Follow the advice below in conjunction with the step by step instructions given in the ORARRP pdf document - orarrp1.3.4.pdf entitled 'Oracle Reports Remote Printing Utility - 1.3.4'

    1. Add the required ORARRP mimetypes to the Oracle HTTP Server configuration.
    (Note: This will be the Oracle HTTP Server belonging to the Oracle 9iAS Rel 2 / Oracle Application Server 10g middle (BI & Forms) tier)

    Do this manually by editing the httpd.conf
    via the Oracle 9iAS Rel 2 EM console / Oracle Application Server 10g AS Console e.g.
    Navigate to the Middle Tier Components Page
    Click on HTTP_Server -> Administration -> MIME Types

    2. Create an aliasmatch in forms90.conf pointing to a physical directory - for this example, directory will be an example test area.
    Do this by manually editing the forms90.conf
    via the Oracle 9iAS Rel 2 EM console / Oracle Application Server 10g AS Console e.g.
    Navigate to the Middle Tier Components Page
    Click on HTTP_Server -> Administration -> Advanced Server Properties -> forms90.conf

    Add a line like :

    AliasMatch ^/forms90/test_area/(..*) "D:\test_area/$1"


    The advantages of making the changes via EM / AS console, rather than editing the files manually, are:

    - the EM / AS console will put the mimetype entries in the correct place
    - the EM / AS console automatically issues a 'dcmctl updateconfig' which synchronises the file changes with the Infrastructure Metadata Repository
    - the EM / AS console will do the required restart of the HTTP Server component

    (Only the HTTP Server needs to be stopped and restarted - other 9iAS Rel 2 / OracleAS 10g components can remain up and running)

    If the changes are made manually then the following commands must be issued after the changes to httpd.conf and forms90.conf have been made.

    $ORACLE_HOME/dcm/bin/dcmctl updateconfig -ct ohs -v -d

    (to synchronise the changes with the Metadata Repository)

    $ORACLE_HOME/dcm/bin/dcmctl stop -ct ohs -v -d
    $ORACLE_HOME/dcm/bin/dcmctl start -ct ohs -v -d

    (to stop and restart the HTTP Server)

    3. Install ORARRP.exe on the client machine as per instructions in the ORARRP pdf document

    4. Check that ORARRP is basically working
    - create orarrp_test.html containing the HTML

    ORARRP Test! Click here to Print:
    <a href="orarrp_test.rrpa">Acrobat Doc</a>

    - Make a copy of the ORARRP pdf document and name it orarrp_test.rrpa

    - Call it directly using a URL like:


    Click on the link - the Acrobat Reader should fire up with a print dialogue

    5. Next create a test form containing the RUN_REPORT_OBJECT code (based on the advice in the ORARRP documentation

    report_id REPORT_OBJECT;
    hTimer TIMER;
    vcFile VARCHAR2(255);
    vcResult VARCHAR2(30);
    /* Generate a pseudo unique filename */


    /* In this example - output will be PDF so adding .rrpa extension */

    vcFile := vcFile||'.rrpa';

    report_id := find_report_object('TEST_ORARRP_REP');


    /* For DESNAME the physical directory on the middle tier has to be specified */


    /* In this example - PDF format is chosen */


    /* Specify the name of the Report Server to be used */


    /* Save the report handle and vcFile to Globals as they are to be referenced in the WHEN-TIMER-EXPIRED trigger */

    :GLOBAL.ReportHandle := RUN_REPORT_OBJECT(report_id);
    :GLOBAL.PrintOutPut := vcFile;

    /* A timer will be used to check whether the Report execution is finished. In this example, the timer will fire 4 times every minute */

    hTimer := CREATE_TIMER ('PRINTER_QUEUE', '15000', REPEAT);


    WHEN_TIMER_EXPIRED trigger contains the code


    vcStatus VARCHAR2(50);
    vcTimerName VARCHAR2(30);
    hTimer TIMER;
    vcTimerName := GET_APPLICATION_PROPERTY(timer_name);

    /* Check whether the report has executed */

    IF vcTimerName = 'PRINTER_QUEUE' THEN
    vcStatus := REPORT_OBJECT_STATUS(:Global.ReportHandle);
    ELSIF vcStatus = 'FINISHED'

    /* The report has been executed and output sent to file under the test area directory, now access it using WEB.SHOW_DOCUMENT */


    /* Clean up the timer */


    /* The Report has failed to run for some reason, throw out a basic failure message */

    message('The Report has failed');
    END IF;
    END IF;

    6. Run the form to test

    NOTE: A print dialogue will always display to the end user when using ORARRP. This is unavoidable. The end user will have to process the print dialogue.

    Expert Comment

    I am currently printing from iAS reports on a unix box to printers attached to my windows clients via the Windows Print Services for unix.

    You may enable remote printing on your Sun Box.
    If your clients' workstations are Win2000/XP, enable LPR printing port on the workstations by installing Print services for Unix
    1. Control Panel -> Add/Remove Programs -> Add/Remove Windows Components
    2. Tick on the "Other Network File and Print Services" (
    3. Then you create your printer in the printers settings. If you want to do just plain ascii printing, you can choose the generic/text driver.
    Otherwise, you would need a printer which can handle postcripts. Most laser printers work fine for me.

    On your sun box, you then create remote printers by specifying the host where you have configured the Unix Printer services.


    Author Comment


    I had done exactly the same what you had mentioned. Infact had tried that before posting this query here. The problem still is the same. The point is when I change the format to PDF, it is able to print but only when I change to Text it is not able to do so. The corresponding mime types have been added in the httpd.conf file.

    LVL 22

    Expert Comment

    I don't know what to do. Maybe the workaround are reports with different outputs (text and PDF).

    Accepted Solution

    PAQed with points refunded (125)

    Community Support Moderator

    Write Comment

    Please enter a first name

    Please enter a last name

    We will never share this with anyone.

    Featured Post

    Better Security Awareness With Threat Intelligence

    See how one of the leading financial services organizations uses Recorded Future as part of a holistic threat intelligence program to promote security awareness and proactively and efficiently identify threats.

    Suggested Solutions

    Configure Web Service (server application) I. Configure security for Web Services methods First, we need to protect Session bean which implements the service: 1. Open EJB deployment descriptor (ejb-jar.xml) in the EJB project that contains you…
    This exercise is about for the following scenario: Dmgr and One node with 2 application server. Each application server contains it owns application. Application server name as follows server1 contains app1 server2 contains app1 Prereq…
    Need more eyes on your posted question? Go ahead and follow the quick steps in this video to learn how to Request Attention to your question. *Log into your Experts Exchange account *Find the question you want to Request Attention for *Go to the e…
    Excel styles will make formatting consistent and let you apply and change formatting faster. In this tutorial, you'll learn how to use Excel's built-in styles, how to modify styles, and how to create your own. You'll also learn how to use your custo…

    761 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    15 Experts available now in Live!

    Get 1:1 Help Now