Wednesday, February 9, 2011

Achieving Control Levels functionality in Adobe Forms

In this document we discuss the how to achieve the control levels in the Adobe Form (both using Table and Subform).

Step1: Go to transaction SFP and create interface by providing interface name.

A pop up window appears where we need to provide the description of the interface and save it.

Step2: Define the user defined data types Types definition under Global Definitions as shown below.

Step3: Define Global data under Global Definitions,

Step4: In the code initialization,

Save and activate the interface. Come back to the initial screen of adobe form.

Step5: Now create the form as shown below.

A pop up window would appear where we need to assign the interface name to form and also the description of the form. Press Save button.

The following screen appears.

In the above screen, we have internal table IT_VBAP under Global Data, which is under Interface.

Context area is a bridge between Interface and form. Whatever the information (data) we need to place in the form is to be placed in the context area.

Step6: Now drag and drop this internal table IT_VBAP into context area. Then only we can use the internal table in the form.

Provide the description of the internal table under properties tab below the context area.

Step7: Now go to Control Levels tab as shown in above screenshot and provide the field name on which sort to be done. Control levels were introduced in SAP Net weaver 2004s.

Now the internal table splits into two parts where sorted fields are in one part and remaining all fields are grouped under GROUP internal table.

Step8: Drag the static text from the library into the form and provide the descriptions of the fields (Acts as a header).

And also drag the internal table into the form (Here I deleted the default heading).

Save and activate the form.

Step9: Execute the form. The output is as shown below:

We can also create the table using subforms if we need the output alignment differently.

In the above scenario, we directly drag and dropped the internal table into the form. But in this scenario, we use subforms to achieve the same.

Step10: Now, create a subform as shown below.

Renamed it as ‘Body’.

Step11: From the Data View, drag and drop the fields individually into the form as shown below.

Step12: Wrap the field ‘VBELN’ into the form as shown below.

And similarly wrap the remaining two fields into another subform ‘DATA’ which intern wrap into the subform ‘Group’. The final view of the Hierarchy is as shown below.

All the pink shades are subforms.

Step13: Place the cursor on sub form Body and

Go to palettes--à Object. There select ‘Subform’ tab.

Here, Initially Content is ‘Position’.

Change the Content field in the all sub forms ‘Body, Vbeln, Data’ from ‘Position’ to Flowed under subform tab as shown below.

Now, select the ‘Binding’ tab.

Here, Default binding is ‘Normal’ for sub form Body

But select the Default binding as shown.

Now, default binding for subform Body becomes as shown below:

And the binding of subform ‘Vbeln’ is

The binding of the sub form ‘Group’ is

The binding of the sub form ‘Data’ is

The binding of field ‘VBELN’ is

The binding of field ‘POSNR’ is

Step14: The final layout looks as shown below

Step15: Execute the form, the output is

You can observe that there is no page header when there is a page overflow.

Now let us extend the scenario to have the page header whenever there is a page overflow.

Step16: We can achieve this as shown below.

Place the cursor on the subform ‘Body’.

Go to Palettes-àObject.

Here, in the Pagination tab under Object, select Overflow leader as ‘Header’ subform.

Activate the form.

Step17: Execute the form and the output of the second page is as shown below.

No comments:

Tutorials on SAP-ABAP

Adobe Interactive Forms Tutorials

Business Server Pages (BSP)


Web Dynpro for ABAP (Step by step procedure for web dynpro,Tutorials on Web Dynpro,)

ALV Tutorials

Blog Archive