Register Login

Smartforms Interview Questions and Answers

SAP ABAP Smartforms Interview FAQ

Q) Define Smart form?

Form Printing in the Internet Age

Smart Forms was initially presented in SAP Basis Release 4.6C primarily as a tool for the creation and maintenance of forms within the SAP solutions, for instance within mySAP Healthcare, mySAP SRM, mySAP CRM, and mySAP SCM and these are being used already by many customers. These Smart Forms offers an easy-to-use graphical user interface which enables the users to perform critical tasks of creating and adjusting forms without the need of any programming skills.

Q) What are the key benefits or advantages of Smart forms?

Some of the key benefits of Smart forms have been listed below:

  • Smart Forms allows the overall implementation cost of SAP solutions to be reduced as the forms can be adjusted in minimum time.
  • The Form Builder along with integrated graphical user interfaces meant for designing pages, table design and text, provides support to the entire process of designing the form and thus leading to the creation of the form logic. To add further, the Form Builder also offers a tree structure meant for navigating through your form description and helps in determining the main processing order. Of Besides these, other functions such as copy-and-paste and drag-and-drop are also included.
  • The Smart Forms generates a function module which condenses the content, layout, as well as form logic by utilizing the form description which is maintained in the Form Builder. Thus avoiding the need to group of function modules for printing of forms.
  • Besides the tool itself SAP also enables the generation of the set of forms meant for central business processes, which even includes forms in Financial Accounting (FI)SAP Customer Relationship Management (CRM) and Human Resources (HR), the SAP R/3 Sales and Distribution (SD), and application components.

Q) How can we build Web forms using Smart Forms?

  • Smart Forms can be generate HTML based on XML output, with the help of the SAP Web Application Server 6.10. This permits the integration of interactive Web Forms in Web applications.
  • The layout of a Web Form is a look alike of the printed version. Printed forms which are already used in a business process are promptly recognized.
  • By turning a switch the existing Smart Forms used for printing can also be reused for Web applications. Without showing them in your printed version, you can add HTML input elements to your Smart Form.
  • For evaluating the user entries on a Web Form, these are required to be integrated in some kind of Web application infrastructure. SAP suggests you to utilize Business Server Pages for doing this.

Q) In which situation u prefer & in which Situation u prefer IDoc?

IDOC is used whn data container used to exchange information between any two processes that can understand the syntax and semantics of the data.

Q) Which Basis Release do I need to use SAP Smart Forms?

As of R/3 Basis Release 4.6C, SAP Smart Forms is available. It cannot be used in Basis Releases before 4.6C as it uses SAP kernel technologies and these do not exist in previous releases. Incase you deploy the appropriate kernel in a, for instance in, 4.6B system its impossible to use Smart Forms as the tools were still under development around that time.

Q) Have heard that Smart Forms replaces SAPscript. What does the term "replace" mean?

Replace does not mean that the SAPscript has been removed from the Basis shipment. Even as of Basis Release 4.6C, SAPscript remains a part of the SAP standard and as of now there are no plans to remove it. In fact, few transactions of SAPscript are reprocessed by SAP Smart Forms (for instance in the graphical or font maintenance). Since Smart Forms is presently the tool for form maintenance for solutions,we will focus on Smart Forms, and not on SAPscript (of course, we will continue to support the existing functionality of SAPscript for the maintenance contracts.) The term "replace" mirrors the hope that you will like Smart Forms as quite a few customers already do and use it instead of SAPscript.

Q) Is it still possible to use SAPscript instead of SAP Smart Forms?

Yes, we encourage our users to begin using SAP Smart Forms especially the new forms however both the products can be used parallely.

Q) Where can the user get documentation on Smart Forms?

Incase you are already working with Basis Release 4.6C or higher, you need to simply call transaction SMARTFORMS and select menu Help->Application Help and proceed directly to the Smart Forms online documentation in the SAP Library. This documentation can also be accessed in the SAP Help Portal. You need to call the online documentation for your release by using the left navigation frame and open the SAP Library. The SAP Smart Forms online documentation can be initiated by selecting:

  • Basis components (as of SAP Web AS 6.10: SAP Web Application Server)
  • Basis Services / Communication Interfaces (BC-SRV)
  • SAP Smart Forms (BC-SRV-SSF)

Q) Where can the user get documentation Web Forms?

The Smart Forms online documentation as of SAP Web Application Server 6.10, can be found in the section Web Forms for Internet Application.

Q) Is there are any books on Smart Forms?

Yes, you can easily buy German book on Smart Forms at Galileo Press. You can find out more Information about this book.

Q) Does SAP offers Smart Forms training?

Yes, the training id and title is: BC470 - Form Printing Using SAP Smart Forms. For more details, you can see our On-line Training Event Catalog.

Q) If there is a possibility to migrate an SAPscript form to a Smart Form?

Smart Forms offers a migration tool specifically for this purpose which migrates layout and texts of a SAPscript form to a Smart Form. It does not migrate SAPscript form logic of the print program. This logic is described by the tree structure of the Form Builder Using Smart Forms. The effort involved in migrating solely depends on the complication of the print program. You can also refer to the section Migrating SAPscript forms of the Smart Forms online documentation.

Q) Do we have to migrate all SAPscript forms to Smart Forms?

It is pointless migrating all SAPscript forms which are already in use as the SAPscript can still be used and will be available in the future. Incase you plan to migrate a SAPscript form, then it is suggested that you check whether the benefit is worth the effort involved.

Q) Can I know if there are already standard smart forms for my application? Incase not, then what can do?

SAP Document 430621 provides an overview of the existing standard smart forms which are delivered by SAP Applications. Besides this, SAP Labs also offers preconfigured Smart Forms which are specifically for the US customers. SAP Document 412293 also provides a procedure in case your application has not delivered a standard smart form.

Q) Define XSF?

SAPscript presents a Raw Data Interface (BC-RDI) which permits the usage of 3rd party printing tools, which if meant for passing form content (without layout information) from R/3 to an external product. Smart Forms also provides a data stream called XML for Smart Forms (XSF) only for this purpose. As RDI, XSF does not comprise of any layout information about a Smart Form.

You have the opportunity of becoming a certified partner for the XSF interface (BC-XSF), with the SAP Partner Program. You can refer to the SAP Integration Scenarios / Interfaces for more information about all certifiable SAP interfaces. For details about BC-XSF choose mySAP Technology: Background Processing and Output Management.

Upon using an XSLT program Smart Forms XSF output is also the precondition generating HTML by This program utilizes the layout information from your form (for instance pages, used fonts and window sizes) and the given XML tags of XSF for generating HTML.

Q) What are the differences between SAP Scripts and Smartforms?

  • SAP Scripts are client dependent whereas Smartforms are client independent.
  • SAP Scripts require a driver program to display the output whereas in smartforms the form routines can be written so that it is standalone.
  • An integrated Form Builder helps to design Smartforms more easily than SAP Scripts
  • A Table Painter and Smart styles to assist in building up the smartforms
  • On activation, a function module is generated for Smartforms
  • It is possible to create a Smartform without a main window
  • Smartforms generates XML output which can be viewed through the web
  • Multiple page formats are possible in smartforms

Q) How can I insert symbols in Smartforms?

Select the Text node.
Change Editor (Click the button above Check near the Editor)
Go to menu Include->Characters->SAP Symbols
Choose the SAP symbol that you want to insert.

Q) I have a smartform which works fine in DEV. After transporting it to PROD, there is no Function module generated for this smartform. As a result, my program dumps in PROD?

The Smartform that is created in the Development may not have the same name in the Production server. So it is always advised to use the Function Module SSF_FUNCTION_MODULE_NAME to get the Function Module name by passing the Smartform name.

DATA: fm_name TYPE rs38l_fnam.

formname = 'ZSMARTFORM'
fm_name = fm_name
no_form = 1
no_function_module = 2
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4
IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
ENDIF.How can I make the Smartforms to choose a printer name by default?
In the CALL FUNCTION of the Smartform Function Module, set the output options parameter to set the printer name.

The output options is of the type SSFCOMPOP which contains the field TDDEST. Set the TDDEST field to your default printer name.

Q) How can I make the Smartforms display a print preview by default without displaying the popup for print parameters?

In the SSF_OPEN function module,
Set the OUTPUT OPTIONS parameter TDDEST to your printer name.

Set the CONTROL PARAMETERS and control parameters as shown below,

control-preview = 'X'.
control-no_open = 'X'.
control-no_close = 'X'.
control-no_dialog = 'X'.
control-device = 'PRINTER'.
control_parameters-no_dialog = 'X'.
control_parameters-no_open = 'X'.
control_parameters-no_close = 'X'.


output_options = output_options
control_parameters = control
user_settings = ' '
formatting_error = 1
internal_error = 2
send_error = 3
user_canceled = 4

IF sy-subrc <> 0.
MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.

Q) How can I display the total number of pages in Smartforms?

  • Use SFSY-FORMPAGES to display the total number of pages in the Smartforms
  • SFSY-PAGE& Current page number
  • SFSY-FORMPAGE& Total number of pages in the currently formatted layout set
  • SFSY-JOBPAGE& Total number of pages in the currently formatted print request
  • SFSY-COPYCOUNT& Original-1,1st copy-2
  • SFSY-DATE& Date
  • SFSY-TIME& Time
  • SFSY-USERNAME& Username

I'm using the variable SFSY-FORMPAGES, I get a star "*" instead of the total number of pages.
There may not be enough space in the window to display the variable, either increase the window dimensions or condense the spaces using &SFSY-FORMPAGES(C)&

Q) What are the various text formatting options in Smartforms?

  • symbol(Z)& Omit Leading Zeros
  • symbol(S)& Omit Leading Sign
  • symbol(<)& Display Leading Sign to the Left
  • symbol(>)& Display Leading Sign to the Right
  • symbol(C)& Compress Spaces
  • symbol(.N)& Display upto N decimal places
  • symbol(T)& Omit thousands separator
  • symbol(R)& Right justified
  • symbol(I)& Suppress output of the initial value

Q) How can I provide a background shading to the table?

In the Table Painter, you can specify the color and shading for the table lines.

Q) Where can I provide the input parameters to the smart form?

  • The input parameters for the smartform can be defined in Global Settings->Form Interface.
  • The Associated Type must be defined in the ABAP Dictionary.

Q) Where can I define my own global types for the smartform?

The global types(within the smartform) can be defined in Global Settings->Global Definitions->Types
The types defined here will be global through the entire smartform.
Also the form routines can be defined Global Settings->Global Definitions->Form Routines

Q) I have defined my own Program Lines, where I have used a global variable G_TEXT. I get an error G_TEXT is not defined?

Whenever using the global variables in the Program Lines, enter the variable name in Input Parameters if you are going to use(read) the variable. If you are going to both read/write the variable value enter the same in Output Parameters.

Q) I have created a table node for display. Where can I check the condition which must satisfy to display the table?

The conditions can be defined in the Conditions tab. In smartforms all the nodes have a condition tab where you can specify the condition to be satisfied to access the node.

Q) How can I define Page Protect in Smartforms?

To define Page Protect for a node go to the Output options and check the Page Protection checkbox.

Q) What is the difference between Template and Table in Smartforms?

  • The Template contains a fixed number of rows and columns, where the output is fixed.
  • The Table can have variable number of rows

Q) Where can I define the paragraph and character format for the smartforms?

The paragraph and character format for the smartforms can be defined in the transaction SMARTSTYLES

Q) How to add watermark to smartform output?

Go to the properties of 'PAGE', tab 'Background Picture'. Add the graphic image name here.

Q) How Can I Print Continous Text in SMARTFORM?

Q) How many split we can do using cl_gui_splitter_contianer? or how max alv grid i can create in a splitter container?


  • 01 Jul 2008 8:03 am Guest
    How to input buttons like pushbutton, Radiobutton will insert in a smartform? Also, where i have to write function codes regarding buttons??
  • 04 Sep 2008 3:49 am Guest
    I don't think we can insert push-buttons into Smartforms. If you want to add those buttons, try with Interactive Forms or PDF forms, which are introduced by SAP as a new-gen forms to replace Smartforms (but I believe that period is still in far future ^.^)

    However, you can insert radio buttons or check boxes into Smartforms (by using Symbols in text editor).

  • 09 Sep 2008 6:16 am lydia
    How to explicitly call a page after a table?
  • 02 Feb 2010 9:53 am Guest
    the ssf_open is not working for me

    it is not able to suppress the window
  • 12 May 2010 9:17 am Guest
    it is not possible to create a Smartform without a main window..
    you are absolutely wrong
  • 23 Dec 2012 2:31 am Guest
    ssf_open never opens to anyone