Technology Blogs by Members
Explore a vibrant mix of technical expertise, industry insights, and tech buzz in member blogs covering SAP products, technology, and events. Get in the mix!
cancel
Showing results for 
Search instead for 
Did you mean: 
former_member182329
Participant

Hi all,

          This document is about how to bring dynamic variables into a string in adobe forms layout just like in smartforms.One of the common practices in bringing dynamic variables into adobe forms is using a string variable declaration in the Adobe Interface level and concatenate each and every sentence that contains a dynamic variable into the string. This is done in the Coding part of the Interface. But this method has many disadvantages, One of the main problems with this approach is it's a nightmare with adjusting the alignment with other fields or sentences in the adobe form, also the spacing will not be proper if the length of the variables differ for different cases.

         Also creating a required design in adobe form is also very time consuming so in this tutorial i will explain on how to import a layout to adobe form. Although predefined templates are available in the adobe form, it will not be suitable every time. And my solution may or may not apply to your specific requirements am just explaining one alternative to this common practice. In some cases we rely on converting the design to an image and placing it as background in Adobe Forms, But that approach also has many disadvantages and limitations in some cases.

This a full tutorial from creation of adobe forms to importing the dynamic variables. Those who are interested only in the dynamic variable part go to step 4.

Step by step methods to create an adobe form with dynamic variables along with an external layout.

Step 1.

Create an interface first for the adobe form.

Declare some global datas to be used as dynamic variables in the adobe form. In a real scenario these values will be send to the Adobe Form from the driver ABAP program or the Webdynpro application. I am skipping that part since it is already explained in my previous document about Online Adobe Forms section.

Since this Adobe Form is not called by a driver program I am hard coding the values into these variables.

Save and activate the adobe form interface.

Step 2

Now create an adobe form layout.

Drag and drop the global variables of the interface into the context of our adobe form layout.

Change the Lyout Type To ZZCI Layout.

Step 3:

Now import design from an external file. You need to first convert the design file like .doc file into a .pdf file, this is important because adobe form will not accept any other format design. There are so many third party free softwares  are available to convert files to pdf, even online free pdf convertors are available.

To import the pdf file go to Tools->Import->Choose file

Now you can see the imported design layout in the Design View. All the fields are editable. Now we can place our dynamic variables in the layout wherever it is required.

Step 4

Now import the dynamic variables into the layout.

Select the text box you want to add the variable or create a new text window and place it where you want the dynamic variable.

If you want to add the dynamic variable in a position inside a sentence place the cursor on the position of the sentence and right click

Now click on floating field

Now you can see a Text field within a "{ }" symbol has appeared, this is the dynamic variable that will capture the incoming values from the driver program/Webdynpro.

Now go to the binding tab on the right side of the design view in the object pallette.Then click on icon on the right side of the Default Binding field

Since the current floating field doesn't have any relation with the global variable which are passing the values into. We need to update the binding properties of the current Floating Field. So select on the default binding icon and select the global variable you want to place from the list as shown in the below screen shot.

Select on Update the properties and click ok.This will replace the floating variables default binding properties with the properties of our global variable. And from now on the floating field will act as a container to display the values that we are passing to the global variable.

Now the name of the floating variable will also be replaced by the global variable name. This will help us in identifying the several floating fields accordingly.

Do the same for all the required fields where the dynamic values are required.

Now save and activate the adobe form.

Step 5-Output

Execute the adobe form

Now you can see the dynamic variables coming in the Serial number, Vendor Name, Date and Total Value fields.

Hope this tutorial was helpful.

10 Comments
Labels in this area