---
title: How to Prepare an Interactive PDF Form for SAP
description: See how to get an interactive PDF form for SAP up and running with instructions and ABAP code for running a print program to test the form out.
image: https://blog.sap-press.com/hubfs/How%20to%20Prepare%20an%20Interactive%20PDF%20Form%20for%20SAP.png
---

[![rheinwerk-sappress-logo-header-1](https://blog.sap-press.com/hubfs/rheinwerk-sappress-logo-header-1.svg)](https://blog.sap-press.com/) [Blog](https://blog.sap-press.com)

- Books 
    - Get an overview of our books and courses on every relevant SAP topic. 
          - [Programming](https://sap-press.com/programming/)
          - [Administration](https://sap-press.com/administration/)
          - [BI](https://sap-press.com/business-intelligence/)
          - [Finance](https://sap-press.com/finance-controlling/)
          - [Logistics](https://sap-press.com/logistics/)
          - [HR](https://sap-press.com/human-resources/)
          - [CRM & Sales](https://sap-press.com/marketing-sales/)
          - [HANA](https://sap-press.com/hana/)
          - [Introductions](https://sap-press.com/introductions/)
          - [E-Bites](https://sap-press.com/e-bites/)
          - [Certification Guides](https://www.sap-press.com/certification-guides/)
          - [Rheinwerk Courses](https://www.sap-press.com/online-courses/)
- Book Subscription 
    - Get unlimited access to all SAP PRESS books! 
          - [SAP PRESS Subscription](https://sap-press.com/subscriptions/)

[Programming](https://blog.sap-press.com/tag/programming)

# How to Prepare an Interactive PDF Form for SAP

![SAP PRESS](https://blog.sap-press.com/hubfs/Twitter_profile_pic.svg)  by [SAP PRESS](https://blog.sap-press.com/author/sap-press)

In this blog post, we’ll teach you how to prepare an interactive PDF form for SAP, using SAP Interactive Forms by Adobe.

 

First, prepare a new form object to use in the following instructions. To be able to check this form object quickly, you should use the **Preview PDF**. To do this, create a print program, and then set the preview data for the form. We’ll describe how to do so in the following sections.

## Creation of a New Form

For the first steps with interactive PDF forms you need a very simple interface that has a single table. For this purpose, the table of customers from a flight booking application will be used. Follow these steps to create the interface:

1. Start Transaction SFP, and create a new interface with the name “Z\_IFBA\_BOOK\_ DDIC\_02”. Use the description “Interface for my first interactive form”.
2. Add a parameter to the interface. Set the **Parameter Name** as “CUSTOMERS”, the **Typing** as **TYPE**, and the **Type Name** as “TY\_CUSTOMERS”. The parameter isn’t optional, and no value is passed so no checkboxes need to be selected.
3. Finally, save the interface and activate it. The interface should look that shown below.

![Interface Z_IFBA_BOOK_DDIC_02](https://blog.sap-press.com/hs-fs/hubfs/2242_07_018.png?width=1820&name=2242_07_018.png)

 

Next, create a new form. Follow these steps:

1. In the initial screen of Transaction SFP, create a new form with the name “Z\_IFBA\_BOOK\_FORM\_03”. As **Interface**, select the previously created interface **Z\_IFBA\_BOOK\_DDIC\_02**, and as **Description**, use “A first interactive form”.
2. Add the **CUSTOMERS** interface parameter to the context.
3. Deactivate all fields except **ID** and **NAME**.
4. Switch to the **Layout** tab to create the initial layout for the form.
5. Save and activate the form.**7**

## Print Program for Generating Preview Data

Now you need a print program to test the form in print view or to generate test data. Create the print program for this example as follows:

1. Start Transaction SE38, and create a new program with the name “Z\_IFBA\_BOOK\_ INTERACTIVE”.
2. Use the [ABAP](https://learning.sap-press.com/abap) program code shown below.
3. Save and activate the program.
4. Now create preview data.

At this point, it should be noted that the print program shown below creates a dynamic, interactive PDF form for the preview. For this purpose, the two fields fillable and dynamic are set in docparams. These two lines of code are highlighted in bold.

 

`PROGRAM z_ifba_book_interactive.`

` `

`* Screen definition`

`PARAMETERS:`

`   p_form TYPE fpwbformname DEFAULT 'Z_IFBA_BOOK_FORM_03',`

`   p_langu TYPE spras DEFAULT 'D',`

`   p_ctry TYPE land1 DEFAULT 'DE'.`

` `

`* Data declaration`

`DATA:`

`" variables`

`   gv_fmname TYPE rs38l_fname,`

`   gv_err_string TYPE string,`

`" structures`

`   gs_docparams TYPE sfpdocparams,`

`   gs_outputpar  TYPE sfpoutputparams,`

`" tables`

`   gt_customers TYPE ty_customers,`

`" references`

`   gx_exc_api TYPE REF TO cx_fp_api.`

` `

`* Processing`

`" data determination`

`SELECT *`

`   INTO TABLE gt_customers`

`   FROM scustom`

`   UP TO 10 ROWS`

`   ORDER BY PRIMARY KEY.`

` `

`" Determination of the generated function module`

` `

`TRY.`

` `

`   CALL FUNCTION 'FP_FUNCTION_MODULE_NAME'`

`       EXPORTING`

`           i_name = p_form`

`       IMPORTING`

`           e_funcname = gv_fmname.`

` `

`" Error handling`

`CATCH cx_fp_api_repository " TRY.`

`             cx_fp_api_usage`

`             cx_fp_api_internal`

`   INTO gx_exc_api.`

` `

`gv_err_string = gx_exc_api->get_text( ).`

`MESSAGE gv_err_string TYPE 'E'.`

` `

`ENDTRY. " CATCH cx_fp_api_repository " TRY.`

` `

`" Start printjob`

`gs_outputpar-reqnew = abap_true.`

` `

`CALL FUNCTION 'FP_JOB_OPEN'`

`   CHANGING`

`       ie_outputparams = gs_outputpar`

`   EXCEPTIONS`

`       cancel = 1`

`       usage_error = 2`

`       system_error = 3`

`       internal_error = 4`

`       OTHERS = 5.`

` `

`IF NOT sy-subrc IS INITIAL. "CALL FUNCTION`

`" Error, inform user`

` `

`MESSAGE ID sy-msgid`

`        TYPE sy-msgty`

`        NUMBER sy-msgno`

`        WITH sy-msgv1`

`             sy-msgv2`

`             sy-msgv3`

`             sy-msgv4.`

` `

`ENDIF. "IF NOT sy-subrc IS INITIAL. "CALL FUNCTION`

` `

`" define language and country`

`gs_docparams-langu = p_langu.`

`gs_docparams-country = p_ctry.`

` `

`" define form as interactive`

`gs_docparams-fillable = abap_true.`

`gs_docparams-dynamic = abap_true.`

` `

`" Call the generated function module (form)`

`CALL FUNCTION gv_fmname`

`   EXPORTING`

`       /1bcdwb/docparams = gs_docparams`

`       customers = gt_customers`

`   EXCEPTIONS`

`       usage_error = 1`

`       system_error = 2`

`       internal_error = 3`

`       OTHERS = 4.`

`IF NOT sy-subrc IS INITIAL. " CALL FUNCTION gv_fmname`

`" Error, inform user`

` `

`MESSAGE ID sy-msgid`

`        TYPE sy-msgty`

`        NUMBER sy-msgno`

`        WITH sy-msgv1`

`             sy-msgv2`

`             sy-msgv3`

`             sy-msgv4.`

` `

`ENDIF. " IF NOT sy-subrc IS INITIAL. " CALL FUNCTION gv_fmnam`

` `

`" Close print job`

`CALL FUNCTION 'FP_JOB_CLOSE'`

`   EXCEPTIONS`

`       usage_error = 1`

`       system_error = 2`

`       internal_error = 3`

`       OTHERS = 4.`

`IF NOT sy-subrc IS INITIAL. "CALL FUNCTION`

` `

`" Error, inform user`

` `

`MESSAGE ID sy-msgid`

`        TYPE sy-msgty`

`        NUMBER sy-msgno`

`        WITH sy-msgv1`

`             sy-msgv2`

`             sy-msgv3`

`             sy-msgv4.`

` `

`ENDIF. "IF NOT sy-subrc IS INITIAL. "CALL FUNCTION`

## Prepare Preview PDF

To use the **Preview PDF**, you need to set its properties as the last step of the preparations. To do this, follow these steps:

1. Start Transaction SFP, select the **Z\_IFBA\_BOOK\_FORM\_03** form you just created, and then go to form editing (in change mode).
2. There, switch to the **Layout** tab to view the form in Adobe LiveCycle Designer.
3. Choose **Edit > Form Properties**, and go to the **Preview** page of the dialog that appears.

In the following three steps, you set the properties of the PDF form for preview. Like the print program, the **Preview PDF** should display a dynamic, interactive PDF form. In addition, you define the preview data. The **Form Properties** dialog and the corresponding page are shown in the next figure.

1. Set the **Preview Type** to **Interactive Form**.
2. In the **Preview Adobe XML Form Preview As** field, select **Dynamic XML Form.**
3. Finally, in the **Data File** field, select the file you created in the previous section when generating the preview data.

![Preview Page of the Form Properties Dialog](https://blog.sap-press.com/hs-fs/hubfs/2242_07_019.png?width=1408&name=2242_07_019.png)

 

## Preview PDF of Interactive PDF Forms

When a PDF document is created in Adobe LiveCycle Designer, usage rights aren’t added. Therefore, when using **Preview PDF** to test interactive PDF forms, the warning dialog that inputs can’t be saved appears. You can select the **Don’t Show Again** checkbox to avoid having to confirm the dialog each time you test.

 

Note that due to the lack of usage rights, individual functions may be available in a limited way. In this case, you must create the PDF form using the print program created in this chapter and then use it for testing.

## Copy Form Template to Use in Multiple Examples

You can create a copy of the form you’ve just created at this point. This makes it possible to distribute the following examples over several forms for test purposes. You can create a new form at your discretion, for example, after each section, by copying the empty form.

 

Now create a copy of the Z\_IFBA\_BOOK\_FORM\_03 form and give it the name “Z\_IFBA\_BOOK\_FORM\_03\_LEER”, for example. This completes the preparations.

 

*Editor’s note*: This post has been adapted from a section of the book [*SAP Interactive Forms by Adobe*](https://www.sap-press.com/sap-interactive-forms-by-adobe_5494/?utm_source=sappressblog&utm_medium=referral&utm_campaign=Blog&utm_term=2242_chapter7&utm_content=2242)by Timo Ortiz.

## Recommendation

[![SAP Interactive Forms by Adobe](https://blog.sap-press.com/hs-fs/hubfs/social-suggested-images/2242-2-1-1-1-1.jpg?width=170&name=2242-2-1-1-1-1.jpg)](https://www.sap-press.com/sap-interactive-forms-by-adobe_5494/?utm_source=sappressblog&utm_medium=referral&utm_campaign=Blog&utm_term=2242_chapter7&utm_content=2242)

**SAP Interactive Forms by Adobe**

Learn how to design forms with confidence! Hone your skills from creation to output with this comprehensive guide to SAP Interactive Forms by Adobe. See how to set up the software and configure your system, then start building forms and templates—whether you’re working with Adobe LiveCycle Designer Structure or using more advanced script programs. Get the latest updates, including cloud services, implementation for SAP S/4HANA, and new tools like SAP Forms Service by Adobe. With detailed, step-by-step instructions throughout, this book is the perfect resource for anyone who works with SAP Interactive Forms by Adobe!

[Learn More](https://www.sap-press.com/sap-interactive-forms-by-adobe_5494/?utm_source=sappressblog&utm_medium=referral&utm_campaign=Blog&utm_term=2242_chapter7&utm_content=2242)

![SAP PRESS](https://blog.sap-press.com/hubfs/Twitter_profile_pic.svg)

**by [SAP PRESS](https://blog.sap-press.com/author/sap-press)**

SAP PRESS is the world's leading SAP publisher, with books on ABAP, SAP S/4HANA, SAP IBP, intelligent technologies, SAP Business Technology Platform, and more!

[Programming](https://blog.sap-press.com/tag/programming) [Administration](https://blog.sap-press.com/tag/administration)

[![Share on facebook](https://7528309.fs1.hubspotusercontent-na1.net/hub/7528309/hubfs/raw_assets/public/mV0_d-web-default-modules_hubspot/img/facebook-color.png?width=24&name=facebook-color.png)](https://www.facebook.com/share.php?u=https%3A%2F%2Fblog.sap-press.com%2Fhow-to-prepare-an-interactive-pdf-form-for-sap%3Futm_medium%3Dsocial%26utm_source%3Dfacebook) [![Share on linkedin](https://7528302.fs1.hubspotusercontent-na1.net/hub/7528302/hubfs/raw_assets/public/mV0_d-web-default-modules_hubspot/img/linkedin-color.png?width=24&name=linkedin-color.png)](https://www.linkedin.com/shareArticle?mini=true&url=https%3A%2F%2Fblog.sap-press.com%2Fhow-to-prepare-an-interactive-pdf-form-for-sap%3Futm_medium%3Dsocial%26utm_source%3Dlinkedin) [![Share on twitter](https://7528304.fs1.hubspotusercontent-na1.net/hub/7528304/hubfs/raw_assets/public/mV0_d-web-default-modules_hubspot/img/twitter-color.png?width=24&name=twitter-color.png)](https://twitter.com/intent/tweet?original_referer=https%3A%2F%2Fblog.sap-press.com%2Fhow-to-prepare-an-interactive-pdf-form-for-sap%3Futm_medium%3Dsocial%26utm_source%3Dtwitter&url=https%3A%2F%2Fblog.sap-press.com%2Fhow-to-prepare-an-interactive-pdf-form-for-sap%3Futm_medium%3Dsocial%26utm_source%3Dtwitter&source=tweetbutton&text=) [![Share on email](https://7528311.fs1.hubspotusercontent-na1.net/hub/7528311/hubfs/raw_assets/public/mV0_d-web-default-modules_hubspot/img/email-color.png?width=24&name=email-color.png)](mailto:?subject=Check+out+https%3A%2F%2Fblog.sap-press.com%2Fhow-to-prepare-an-interactive-pdf-form-for-sap%3Futm_medium%3Dsocial%26utm_source%3Demail&body=Check+out+https%3A%2F%2Fblog.sap-press.com%2Fhow-to-prepare-an-interactive-pdf-form-for-sap%3Futm_medium%3Dsocial%26utm_source%3Demail)

### Comments

### Latest Blog Posts

[![Form Templates in SAP S/4HANA](https://blog.sap-press.com/hs-fs/hubfs/Form%20Templates%20in%20SAP%20S4HANA.png?height=600&name=Form%20Templates%20in%20SAP%20S4HANA.png)](https://blog.sap-press.com/form-templates-in-sap-s4hana)

[Programming](https://blog.sap-press.com/tag/programming)

## [Form Templates in SAP S/4HANA](https://blog.sap-press.com/form-templates-in-sap-s4hana)

[Read More](https://blog.sap-press.com/form-templates-in-sap-s4hana)

[![ABAP Continuous Integration: Test Cockpit and Unit Runner](https://blog.sap-press.com/hs-fs/hubfs/ABAP%20and%20Continuous%20Integration%20the%20ABAP%20Test%20Cockpit%20and%20the%20ABAP%20Unit%20Runner.png?height=600&name=ABAP%20and%20Continuous%20Integration%20the%20ABAP%20Test%20Cockpit%20and%20the%20ABAP%20Unit%20Runner.png)](https://blog.sap-press.com/abap-and-continuous-integration-the-abap-test-cockpit-and-the-abap-unit-runner)

[Programming](https://blog.sap-press.com/tag/programming)

## [ABAP Continuous Integration: Test Cockpit and Unit Runner](https://blog.sap-press.com/abap-and-continuous-integration-the-abap-test-cockpit-and-the-abap-unit-runner)

[Read More](https://blog.sap-press.com/abap-and-continuous-integration-the-abap-test-cockpit-and-the-abap-unit-runner)

**Subscribe to our blog!**Get notified about future blog updates.

- <https://www.facebook.com/sappress>
- <https://twitter.com/sappress>
- <https://linkedin.com/company/sap-press>
- <https://www.instagram.com/sap_press/>
- <https://blog.sap-press.com/rss.xml>

### The official SAP PRESS Blog

As the world’s leading SAP publisher, SAP PRESS’ goal is to create resources that will help you accelerate your SAP journey. The SAP PRESS Blog is designed to provide helpful, actionable information on a variety of SAP topics, from SAP ERP to SAP S/4HANA. Explore ABAP, FICO, SAP HANA, and more!

### SAP Blog Topics

- [All Topics](https://blog.sap-press.com)
- [Logistics](https://blog.sap-press.com/tag/logistics)
- [Programming](https://blog.sap-press.com/tag/programming)
- [FICO](https://blog.sap-press.com/tag/fico)
- [Administration](https://blog.sap-press.com/tag/administration)
- [Business Intelligence](https://blog.sap-press.com/tag/business-intelligence)
- [Featured](https://blog.sap-press.com/tag/featured)
- [What Is?](https://blog.sap-press.com/tag/what-is)
- [CRM & Sales](https://blog.sap-press.com/tag/crm-sales)
- [Video](https://blog.sap-press.com/tag/video)
- [Human Resources](https://blog.sap-press.com/tag/human-resources)

### Blog curated by

[![Rheinwerk Publishing & SAP PRESS Logo](https://blog.sap-press.com/hubfs/rheinwerk-sappress-logo-header-1.svg)](https://sap-press.com) [Visit the SAP PRESS Store](https://sap-press.com)

### About

- [Home](https://sap-press.com/)
- [About Us](https://sap-press.com/the-publisher/)
- [Contact](mailto:info@rheinwerk-publishing.com)
- [Legal Notes](https://sap-press.com/legal-notes/)
- [Privacy Policy](https://sap-press.com/privacy/)
- [Terms of Use](https://sap-press.com/terms/)
- [Guest Posting](https://blog.sap-press.com/guest-posting)

© 2026 Rheinwerk Publishing, Inc. | Change Privacy Options

```json
{
  "@context" : "https://schema.org",
  "@type" : "BlogPosting",
  "author" : {
    "@type" : "Person",
    "name" : "SAP PRESS",
    "url" : "https://blog.sap-press.com/author/sap-press"
  },
  "dateModified" : "2024-02-09T14:49:04.371Z",
  "datePublished" : "2022-10-10T13:00:00.000Z",
  "headline" : "How to Prepare an Interactive PDF Form for SAP",
  "image" : [ "https://blog.sap-press.com/hubfs/How%20to%20Prepare%20an%20Interactive%20PDF%20Form%20for%20SAP.png" ],
  "mainEntityOfPage" : {
    "@id" : "https://blog.sap-press.com/how-to-prepare-an-interactive-pdf-form-for-sap",
    "@type" : "WebPage"
  },
  "publisher" : {
    "@type" : "Organization",
    "logo" : {
      "@type" : "ImageObject",
      "url" : "https://blog.sap-press.com/hubfs/Logo-1.jpg"
    },
    "name" : "Rheinwerk Publishing, Inc."
  }
}
```