Skip to Content

Adobe Document Services PDF based form printing

h3. Adobe Document Services PDF based form printing h4. Introduction Hello SCN Community, I”m back with another blog, this time on Adobe Document Services PDF based form printing. I’m not going to write another technical guide how to setup or troubleshoot Adobe Document Services (ADS) as enough of those already exist. Instead I would like to zoom in on a few things to help administrators with troubleshooting broken ADS configurations, handling the most common issues I have seen.marble cast puzzlePicture 1.1  *It’s not that difficult* is a serious catch phrase on which I have to make a side note. A marble cast puzzle (level 4) as shown in picture 1.1 can be a challenge but once you know how it’s done you see it’s actually very logical and it becomes so easy that the fun factor fades away.   I have noticed in my own work environment as well as on the SDN forum that ADS is a burning topic in terms of proper configuration and troubleshooting. You can do a lot of things with ADS but the most requested configuration is the basic configuration to be able to print PDF based forms. A few SAP notes for configuration, questions, troubleshooting:  {code:html}Note 894009 – Adobe Document Services: Configuration Guide (SAP NW 7.0){code}    {code:html}Note 894009 – Adobe Document Services: Configuration Guide (SAP NW 7.0){code}    {code:html}Note 944221 – Troubleshooting if problems occur in forms processing{code}   Another good resource with information on ADS configuration and available checks and tests is: [help.sap.com | http://help.sap.com]  I’m not going to run through the whole configuration either as it’s explained fairly well in the configuration guides. *This document does not provide the full configuration* so follow the official configuration guide if you want to set up ADS. The information offered here can be used to better understand how the ADS configuration is done or where it gets broken the most often and possibly how to overcome the issue.  h3. ADS PDF based printing functionality in short  How does ADS work in short: The Adobe Document Services are services available on a Java stack which can enable the possibility to print forms in PDF format (narrowed down to the relevant blog topic). ADS is installed by default on a Java based SAP system. Very often the ADS are broken due to connection problems caused by either bad user/password combinations or incorrect settings in the destinations used by ADS so those are the main focus points in this writing. h3. ADS configuration checks h4. HTTP destination on ABAP side In the ABAP stack where you want to print in PDF format using ADS you have to define a HTTP destination (SM59) which points to the Java stack where your ADS (S = services) are running.  For example:  You have a Java stack XX2 with instance number 05 on server hostnamexx2 (+where XX2 can either be a dual stack ABAP+JAVA SAP system or a single stack JAVA SAP system+) where you have your ADS running.    You have an ABAP stack YY2 with instance number 10 on server hostnameyy2 where you want to print forms in PDF format. Then you would define the target server of your ADS *HTTP connection to external server* (transaction SM59) to point towards XX2.  ABAP HTTP connectionPicture 2.1 You can see in picture 2.1 the name of the HTTP connection is ADS. The target host points to the Java stack (hostnamexx2) where the Adobe Document Services run and the Service No. points to the Java port 500 of the Java stack. The path prefix points to the Adobe Document service path.ABAP HTTP connection authenticationPicture 2.2 In the Logon & Security tab Basic Authentication is set and the User ADSUSER is maintained along with its respective password (see picture 2.2).HTTP returncode 200Picture 2.3  When you perform a connection test, a HTTP return code 200 should be displayed (see picture 2.3). Another test I would advise you to perform is running report *FP_CHECK_DESTINATION_SERVICE* in the ABAP stack YY2.This is one spot where things sometimes go wrong, the save and test button can give another return code than return code 200. To test if your data input is correct you can run report *FP_CHECK_DESTINATION_SERVICE* in the ABAP stack (YY2 in the case of the example). PDF destination check  Picture 3.3  In report *FP_CHECK_DESTINATION_SERVICE* cross the “With Destination Service” option and execute the report (see picture 3.3). The connection should be ADS by default. Bytes transferred  Picture 3.4 You should get an information message box returned with the number of bytes transferred if your destination service connection is working properly (see picture 3.4). To check your authentication make sure the authorizations are correct as mentioned in the configuration and simply logon using ADS_AGENT and its respective password to the ABAP stack YY2 to check if your input is correct. h3. Testing PDF based printing   The report *FP_TEST_00* is available to check the output of a PDF based form on screen to check if the ADS configuration is working properly. PDF print test  Picture 4.1 After executing the report FP_TEST_00 you will first get a page where you can fill in input parameters, keep the default values and press execute (see Picture 4.1).PDF output device  Picture 4.2 In the output device input field fill in or select through F4 a PDF type printer (see picture 4.2). If you don’t have any PDF type printer define one using transaction SPAD. For the other input fields leave the default values in place.Print preview  Picture 4.3 Click the print preview button (see picture 4.3)PDF test output  Picture 4.4  The result should be similar to picture 4.4 when the PDF based form print preview succeeds. *Common misunderstanding*: If you get a *user/password logon screen* when executing this check report *your user/password combination is incorrect*! It is *not normal* behavior when the configuration as described in this blog.   If you do get a logon screen review your destination settings and ensure the correctness of the user/passwords used. h3. Multiple ABAP systems using the same Java ADS service  This brings me to the next topic, what if you want to connect another ABAP system ZZ2 to the same Java ADS XX2.ADS for multiple ABAP stacks  Picture 5.1 Actually it’s not that difficult either (here I go again). You follow the same logic as described above and the effect will be that you see a second HTTP destination in the Visual Administrator destination service of XX2 (see picture 5.1).Simplified architecture
9 Comments
You must be Logged on to comment or reply to a post.
  • Thanks for this kind of detail.  Would you have any idea if ADS can be configured with defaults for document type?  Right now whenever I generate a Broadcast to PDF type the default is some other document size other than the US Standard I need.  So I need to specify this each time.  Thanks for any help
    • Hello Kenneth

      Most likely the format of your PDF printer defined in transaction SPAD or the device type used by the specific printer can set the US Standard size you are looking for.

      Kind regards

      Tom

    • Hello Priya

      The ADSUSER has to exist in the target host user base of the HTTP RFC destination “ADS” in transaction SM59.

      If that target host is your Portal and your Portal uses the Sol Man as its UME, then your ADSUSER should exist in the client on the Sol Man which is assigned as UME for your Portal.

      Kind regards

      Tom

      • Hello Priya

        You can check the configuration guide for some specifics on the ADSUSER (for example the fact that it has to be visible on the group ADSCallers in the visual administrator)

        I would avoid double existance of the ADSUSER (ABAP SU01 existence and Portal UME existence)

        Carefully follow the instructions from the configuration guide (in particular for this question create a user in the SAP Netweaver AS ABAP, Assigning a role in abap and Assigning the Security Role in Java)

        http://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/30a9630b-4f89-2a10-6fab-e311b3ffd9a6

        If it’s too confusing and you keep having problems, you can drop me a mail if you want, my mail address is visible on my business card.

        Kind regards

        Tom

  • I had faced this issue recently for a long time and i had never know whats the reason, just to rely on basis person. But now i know whats going behind the ads error.
    Thank you very much for such a informative blog.
    • Hello

      Thank you for the feedback, you are always welcome to drop me a mail if you would like to see a blog on a specific topic.

      Kind regards

      Tom