When you create forms for an application, you want to include application data into the form. The architecture of SAP Smart Forms separates application data retrieval from the actual definition of the form:

In a Smart Form you describe:

  • The layout of your form (element positions on a page)
  • Individual elements you want to display (text, graphics, addresses, tables, and so on)
  • the form logic you use, for example, to read application data from internal tables, to introduce conditions, and to control process flows (see also: Form Logic: Introduction)
  • a form interface to transfer application data to the form definition

When you activate the Smart Form, the system generates a function module that encapsulates all attributes of the Smart Form. As soon as the application program calls the function module, the Smart Form uses the module's interface (which corresponds to the form interface) to transfer any table data previously selected and to print the form according to the form description. This is also referred to as 'calling a Smart Form for printing'.

The form description can also contain statements that select further data during form processing. However, you should not use this method of data retrieval. Especially if you print mass forms, performance will deteriorate considerably.

A special characteristic of SAP Smart Forms is that application data can be merged with the form. Independent of the amount of data, you can print data as tables on the form. Thus, one Smart Form describes a set of forms that are created through calls with different application data. One call of a Smart Form always corresponds to printing one form.