Showing posts with label SMARTFORMS. Show all posts
Showing posts with label SMARTFORMS. Show all posts

Thursday, May 12, 2022

Details About Smart forms in SAP ABAP

Details About Smart forms in SAP ABAP

Smart forms are used to design the business documents such as purchase order, sales order, 

invoice, Performa etc.

Smart forms are introduced from 4.6c version onwards. It also supports output mode as ‗EMAIL‘.

Components of Smart forms:

1. Smart form layout.

2. Function module.

3. Print layout.

Components of the smart forms layout:

1. Global settings.

2. Pages and windows.

Components of Global settings:

1. Form attributes

2. Form interface

3. Global definition

Form attributes:

Form attributes contain header information i.e.

Form name

Language 

Page format 

Created by…………..

Form interface: this is used to declare the variables, work area and internal tables which we need to 

transfer the data from print program to layout.

Global definition: this is used to declare the variables, work-area and internal table which are used to 

implement the logic in the layout.

PAGES: page is the physical area where we place the window. We can‘t print the text in the page.

WINDOWS: we can place the same window in ‗n‘ number of pages but we can‘t print the data directly 

on the window.

Procedure of Smart Form:

1. Based on the client requirement we design the smart form layout by using SMARTFORMS t-

code.

2. After activating the smart form it generates a function module.

3. Based on the function module we develop the print program.

NOTE: Printing the data on the page window is always through symbols.

There are four types of symbols.

1. Program symbols

2. System symbols

3. Standard symbols

4. Text symbols.

Each symbol starts with ‗&‘ ends with ‗&‘.

Monday, April 25, 2022

SMART FORMS IN SAP ABAP

 SMART FORMS IN SAP ABAP. 

It is enhanced version to SAP scripts. Transaction code is smartforms.


First we discuss about the differences scripts and smart forms.


Scripts are client dependent but smart forms are client independent.

Scripts are not self executable i.e. print program is compulsory, but smart forms are self executable. On executing the smart form system generates function module.

We can not write the logic in scripts but we can write the logic in smart forms.

Main window is compulsory in scripts but it is optional in smart forms.

Background logo is not possible in scripts but it is possible in smart forms.

There are character and paragraph formats in scripts but there are no character and  paragraph formats in smart forms

Labels are present in scripts but no labels in smart forms.


When ever you enter into smartforms under global settings you get three things.

Form attributes

Form interface

Global definitions

FORM ATTRIBUTES:-  It gives the history and technical attributes of smart form


FORM INTERFACE: - The variables that are needed to be populated at run time should be declared here.


GLOBAL DEFINITIONS:-  The variables that are needed in the smart form should be declared here. 

  


Now we discuss about the steps in creation of smart forms.


T-code smartforms

Press create button

To create logo window right click o page create( Graphic

Give the logo name

The variables that are needed to be populated at run time should be declared under form interface

The variables that are needed to be populated at run time should be declared under Global definitions.

To write the select query or logic select the window right click create( flow logic ( program lines

It is mandatory to give input parameters and output parameters

To write loop select the code Right click create( flow logic -( loop

To write the output select  loop Right click Create ( Text

Check for errors

Activate and Execute

Function module will be generated. Execute it

Give printer name LP01 (Default Printer)

Press print preview to see output

Wednesday, October 7, 2020

What Are The Differences Between SAP Scripts & Smartforms in SAP ABAP.

What Are The Differences Between SAP Scripts & Smartforms? Differences between SAP Scripts and Smart Forms are:



 Smart Forms are client independent and SAP Scripts are client dependent.

 Multiple page formats are possible in Smart Forms which is not the case in SAP Scripts.

 It is possible to have a Smart Form without a main window where as you create a SAP Script without a main window.

 Smart Forms generates a function module when activated, which is not the case with SAP Scripts.

 SAP Scripts require a driver program to display the output whereas in Smart Forms the form routines can be written so that it is standalone.

 An integrated Form Builder helps to design Smart Forms more easily than SAP Scripts.

 A Table Painter and Smart Styles to assist in building up the Smart Forms which is not available in SAP Scripts.

 Smart Forms generates XML output which can be viewed through the web.


Thursday, October 1, 2020

What are the ways to debug the Smart Form in SAP ABAP.

 What are the ways to debug the Smart Form?


 Debug the Smart Form in SAP ABAP.

1St Way: - By setting the Session Break point in the Generated Function module.

Ø  The SMARTFORMS can be debug by setting the Session Break points at the required statement line in the system Generated Function module.

Ø  The system generated internal table %TEXT contains the following fields which are filled with the text node contents at Run time to debug text elements.

Field name

Description

TDFORMAT

Tag column of the text elements

TDLINE

Contents of the text element/text node

       2nd Way:-  By setting the Static Break points in the SMARTFORMS.

Ø  The SMARTFORMS can be debug by setting the Static Break points in the required program lines /initialization node under global definitions of the SMARTFORM. The statement BREAK followed by user name can be used.

Main components in Smart Form in SAP ABAP.

 What are the main components in Smart Form?

Main components in Smart Form in SAP ABAP.

Ans: The main components are, 1. Global Settings       2. Pages & Windows

           1. Global Settings: It is used to maintain the global settings, definitions which can be applied          across the mart forms. It is collection of Form Attributes, Form Interface & Global Definition

                      I.        Form Attributes: These are used to maintain the smart form attributes & output such are page format, style name etc. The default style for smart form is ‘SYSTEM’.                                                

                    II.        Form Interface: These are used to declare the variables, work areas & internal tables 

        which are needed to transfer the data from print program to layout. It is the system                       generated function module with all the parameters except changing parameters.

III. Global Definitions: It is used to maintain the global definitions which can be used across        the different Global definitions.

                    a) Global Data: It is used to maintain the global data definitions such are variables, work                                           areas, Internal Tables etc.

     b) Types: It is used to define the types which can be referred to declare internal tables &                    work areas.

     c) Field Symbols: It is used to define the field symbols.

     d) Initialization: It is processed before the smart form pages & windows are processed. It                           is used to extract all the required data from the database table &                                             process the extracted data. Import & Export parameters must be                                        specified before they are used.

     e) Form routines: It is used to define the subroutines which can be called across the                                                           smart form. It is used to define the currency/quantity fields as like the                                             DDIC tables/structures. 

       f) Currency/Quantity Field: It is used to define the Currency/Quantity Fields as like the                                                                 DDIC tables/structures.

            2. Pages & Windows: It is used to design the different page formats & windows. Following                                               are the different nodes in smart forms.

a)    Windows: They are positioned on the pages. Following are different type of windows.

Ø  Main Window: It is used to display the continuous text on the pages. This window is the  default widow. Without main window also we can design Smart forms.

Ø  Secondary window: It is used to print the different contents on each page (similar to variable window in SAP Scripts).

Ø  Copies window: It is used to the print the same document with multiple

                           copies with different headings.

Ø  Final window: This is used to print the total amount after all the lines or line items are printed.

b)    Graphics: It is used to create a graphic node (window) to display the graphics/logos.

c)    Address: It is used to define the address node/window to display/print the organization address/personal address/work place add/ress.

Ø  The address can be determined dynamically also using an option Determine Dynamically.

d)    Text: It is used to display/print the contents of the different symbols/fields.

e)    Table: A table is used to print the multiple entries/dynamic data of an internal table. The Table node can be used as template to display static record by un-checking the checkbox internal table. Line types can be created under Table node.

f)     Template: A Template is used to display the static data (single record). This node does not have the separate header, main area & footer whereas, the table node contains the different sessions such are header, main area & footer. The template node can be used as table by defining it under loop node to display the dynamic data as like the table node.

g)    Flow logic: The flow logic nodes are used to control the nodes & define the program lines in smart forms. Following are the different flow logic nodes.

                                        I.        Loop:  It is used to process the corresponding nodes based on the number of entries of an internal table.

                                      II.        Program lines: It is used to write ABAP source code. Input & Output parameters must be filled with the data variables before they are used.

                                     III.        Alternative: It is used to control the corresponding nodes based on the specified condition. It is used to process the alternative either True/False process blocks based on the SET conditions.

                                    IV.        Command: This node is used to go to a new page based on the specified conditions. This is used to break the page based on the condition.       

Tuesday, February 25, 2020

Smartforms inteview question and answer in SAP ABAP


All smartforms inteview question and answer in SAP ABAP.

Smartforms inteview question and answer.


1.  What Are Smart Forms In SAP System?


SAP Smartform is a graphical user interface tool to create and maintain forms. SAP Smart Forms supports printer, fax, e-mail or internet (XML) as its output medium.

SAP Smartform is a tool for the maintenance of forms on which application data from the SAP system can be output. Depending on the application, the number of forms to be printed can be very high, and they might have to be printed in a short period of time, in a mass printing. Examples of mass printing are monthly invoices sent by telecom companies or salary statements.

Transaction Code to create and maintain forms is SMARTFORMS.

2.  What Are The Differences Between SAP Scripts & Smartforms?

Differences between SAP Scripts and Smart Forms are:

               Smart Forms are client independent and SAP Scripts are client dependent.
               Multiple page formats are possible in Smart Forms which is not the case in SAP Scripts.
               It is possible to have a Smart Form without a main window where as you create a SAP Script without a main window.
               Smart Forms generates a function module when activated, which is not the case with SAP Scripts.
               SAP Scripts require a driver program to display the output whereas in Smart Forms the form routines can be written so that it is standalone.
               An integrated Form Builder helps to design Smart Forms more easily than SAP Scripts.
               A Table Painter and Smart Styles to assist in building up the Smart Forms which is not available in SAP Scripts.
               Smart Forms generates XML output which can be viewed through the web.

3.  How Many Main Windows Can We Have In A Smartform?

Unlike SAP Scripts, in Smart Forms you can have only one main window. And that too its width should be same in all the pages whereas height can be varied. Only one main window per smartforms is allowed but you can have 99 sub-windows.

Main Window - Smartforms – Only 1
Main Window – SAP Scripts - 99

4.  Is It Mandatory To Have A Main Window In Smartforms?

It is possible to create Smartforms without a main window also. In case, confirmation of a mail to client or customer is required there is no need of main window, this can be achieved or done through smartforms without main window.


5.  What Are The Types Of Windows Available In Smartforms?

Four Types of windows available in Smart Forms. They are:


               Main Window
               Secondary Window
               Copies Window
               Final Window
6. Explain The Significance Of Main Window?

Basically, we use main window when there is a need to display text or data which can cover several pages. Say there is a requirement to display data of all the rows of a table (a table in which you are not very sure as to how many row it has), in such cases we always use main windows.

As soon as a main window is completely filled with text/data, the system continues to display the text/data in the main window of the next page. It automatically triggers the page break.

Only one window can be defined in a form as main window. The main window can be called in other pages of the form but it must have the same width on each page, but can differ in height.

A page without main window must not call itself as next page, since this would trigger an endless loop. In such a case, the system automatically terminates after three pages.


7.     Explain The Significance Of Secondary Window?

Basically, secondary window is used to display text or data output with a fixed length.

Secondary windows are used when there is a need to display text and data in a predetermined output area. There is no flow text display with page break. 

If we position a secondary window with the same name on several pages, the system displays the contents of this secondary window on each page.

Text & data that do not fit into the secondary window are truncated and not displayed.


8.     Explain The Significance Of Copies Window?

Basically, Copies Window is a special type of secondary window for making pages as copy or original. This window type is used to output data either on original, or on copies, or both.

In simple words, Copies window is to be used when there is a requirement to print copies of the pages.

Copies window is used to define an output area for the print output, whose content you want to appear either only on the copy or only on the original. This allows you to flag copies as copies when the form is printed.


9.     Explain The Significance Of Final Window?

Final window is to be used where there is a requirement to show/display details that has to be processed only at the end of the form processing.

The windows in a page are processed from top to bottom. So the execution first skips all the Final windows and completes the processing of other windows. Once all the non-final windows are processed, the Final windows are processed from top to bottom. 

For example if there is a requirement to display the total value of all the items on the first page but the total value is known only at the end of the form processing, we can use the Final window for displaying the total value. The sum of line items is calculated in the MAIN window.


10.  What Is The Difference Between Tables & Template Node?

Template contains a fixed number of rows and columns, where the output is fixed where as a table can have variable number of rows. Templates are also preferred where there is a need of proper alignment. Templates are used to print tables whose layout and rows are fixed and known before the application program runtime. Example: Tax Forms

Template is a static entity i.e. its dimensions cannot be changed at run time whereas Table is a dynamic entity i.e. its dimensions can be changed at run time. Hence, based on the data, it can last from one page to multiple pages. For line items display, normally table is used because one does not have prior information about the number of line items and no of pages.


Table node has 3 components- HEADER, ITEM and FOOTER

               The Header component will be executed once.
               The Item component can be used to process/display table contents.
               At the end footer will be executed.

Templates can be used to define the following:

               No. of rows and cell
               Height of each row
               Width Of individual cells
               Separators or frames to be displayed or not
               Alignment of the table in the window


Tables are used to print dynamic data which is not known before the application program runtime. Example: Material list Of Purchase orders.

Tables node to be used only in main window and no such fixed height can be set for table rows. 
11.  How To Insert Or Upload Graphics In Smartforms?

Graphics node is used to insert company logos as well as other graphics in any part of the smartform. Before including a logo in a smartform, one must first upload the graphic from the local PC system to SAP system using SE78 transaction. The imported graphic/image must be of *.BMP or *.TIF extension.


12.  Can You Force A Page Break Within Table Loop In Smart Forms? If Yes, How?

Create a loop around the table. Put a Command node before the table in the loop that forces a NEWPAGE on whatever condition you want. Then only loop through a subset of the internal table (based on the conditions in the Command node) of the elements in the Table node. 


13.  How Do You Create & Maintain Font Style & Font Size Used In Smartforms In SAP?

We can use Transaction SMARTSTYLES. Here we can create and maintain Paragraph formats and character formats as per the requirement.

We can use our own custom SMARTSTYLES in our Smart Form. We can mention the Smart Style under the following path.

Global Settings --> Form Attributes -->Output Options tab --> Style.

 

14.  Why SAP Scripts Are Client Dependent & Smartforms Are Client Independent?

Smart Forms create its own function module so it doesn’t need to transport the request through SCC1. As all the Development Object are stored in client independent tables. Whereas SAP Script doesn’t generate any function module while executing so we need to transport the request number through SCC1. Sap Script is stored inside the client dependent table as a
TEXT. So SAP Scripts are client dependent and Smart Forms are client independent.


15.  A SAP R/3 System Has 2 Clients 100 & 110. You Create An SAP Script Z_Script & A Smartform Z_Smartform In Client 100. Will Both Z_Script & Z_Smartform Be Available In Client 110 As Well?

Client 110 will have just the Smartform Z_Smartform and not the SAP Script Z_Script. SAP-Script is client dependent whereas SMARTFORM is client independent. One will have to manually import the SAP Script to 110 through SCC1 transaction in SAP.
16.  How Do You Find The Name Of The Function Module For A Smartform? When Is This Function Module Created?

The function module for Smartform is created when the Smartform is activated. You can find the name of the Function Module for a Smartform by going to Environment --> Function Module Name.


17.  You Have Created A Smartform In Development Server. Then You Transported The Smartform To Production Server. Will The Name Of The Function Module Be Same In Both The Servers?

The Smart Form 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. 

CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'  
EXPORTING 
      formname = 'ZSMARTFORM'  IMPORTING
      fm_name = fm_name  EXCEPTIONS 
      no_form = 1 
      no_function_module = 2 
      others = 3. 

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

CALL FUNCTION fm_name  EXCEPTIONS      formatting_error = 1      internal_error = 2      send_error = 3      user_canceled = 4      others = 5. 

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


Once you transport the Smartform from Development to Production server, a new function module name for the Smartform in generated in the Production server. For a particular Smartform , generated function module names are different in different systems.  


18.  State The Difference Between Form Interface & Global Definitions In Global Settings Of Smartforms?  

Form Interface is where we can declare what must be passed in and out of the smartform (in from the print program to the smartform and out from the smartform to the print program). 

Global Definition is where we declare data to be used within the smartform on a global scope i.e. anything we declare here can be used in any other node in the form.


19.  In A Certain Smartform, For Two Differently Configured Printers, There Seem To Be A Difference In The Output Of Characters Per Inch (The Distance Between Characters Which Gives A Layout Problem - Text In Two Lines Instead Of One.  

It happens when the two printers having different Printer Controls. We can go to SPAD Transaction Menu (Spool Administrator Menu) where we can see the difference in the Printer Control and if we make the Printer control setting for both the printers as same then there would be no difference in the output of characters per inch. Also we will have to check what is the device type used for both the output devices if the issue persist.


20.  How Can You Convert Smartforms Output To PDF?

Following steps needs to be carried out to convert Smart Forms output to PDF:
 

               Print the Smart Form to the spool.
               Note the spool number.
               Download the PDF file version of the spool by running Program RSTXPDFT4 and entering the noted spool number.


Here is one more and probably the easiest way to see PDF output for a Smartform. Type PDF! In the command prompt and hit enter button.


To see the Smartform Print Preview output as list output, Type SLIS in the command prompt and hit enter.

 

21.  How Will You Print On Both Sided Of A Smartform?

At the Page level in Smartforms, you can find something called as Print Mode. Set the Print mode to duplex to print on both sides of the Smartform.

 
22.  How Can One Insert Symbols In Smartforms?  

Select the Text Node --> Change Editor --> Go to Menu Option 'Insert' --> Characters --> SAP Symbols.

Choose the SAP symbol that you want to insert.


23.  How Can I Make The Smartforms To Choose A Printer Name By Default?  

In the CALL FUNCTION of the Smartform Function Module (CALL FUNCTION fm_name ), set the output options parameter to set the printer name. The output option is of the type SSFCOMPOP which contains the field TDDEST. Set the TDDEST field to your default printer name.

For Example:

OUTPUT_OPTIONS-TDDEST = 'Printer Name'.


24.  How Can I Make The Smartforms To Display A Print Preview By Default Without Displaying The Popup For Print Parameters?

In the CALL FUNCTION of the Smartform Function Module (CALL FUNCTION fm_name ), set the Output Options and Control Parameters as mentioned below:

control_options-preview = 'X'. " Print Preview control_options -no_open = 'X'.  control_options -no_close = 'X'.  control_options -no_dialog = 'X'.  control_options -device = 'PRINTER'. 

output_options-TDDEST = 'PRINTER NAME'. "Spool: Output Device output_options-TDNOPRINT = 'X'. "No printing from print preview


CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
   formname = c_formname IMPORTING
   fm_name = lf_fm_name EXCEPTIONS    no_form = 1    no_function_module = 2
OTHERS = 3.

IF sy-subrc <> 0.

CALL FUNCTION LF_FM_NAME
EXPORTING
   CONTROL_PARAMETERS = control_options
   OUTPUT_OPTIONS = output_options
EXCEPTIONS 
   FORMATTING_ERROR = 1
   INTERNAL_ERROR = 2
   SEND_ERROR = 3    USER_CANCELED = 4    OTHERS = 5.


25. 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

26. Sometimes While Using The Variable SFSY-FORMPAGES Or SFSY-PAGE, You Get A Star '*' Instead Of The Total Number Of Pages Or Current Page Number. How To Resolve Such Issues?

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)& or using &SFSY-FORMPAGES(ZC)& or using &SFSY-FORMPAGES(4ZC)&.

Here

               '4' reserves a four character wide output. (It can be set to any value.)      'Z' eliminates the leading zeroes.
               'C' Compress Spaces.


27. What Are The Various Text Formatting Options In Smartforms?  

Various text formatting options available in Smart Forms are:

               &symbol(Z)& : Omit Leading Zeroes
               &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 up to N decimal places
               &symbol(T)& : Omit thousands separator
               &symbol(R)& : Right justified
               &symbol(I)& : Suppress output of the initial value


28. How To Add A Standard Address In A Smart Form?

Address can be printed quickly and smoothly using the address node available in smartforms. This node is based on Central Address Management (CAM). Addresses can be of 3 types:

               Company /Organization address type.
               Workplace address type.
               Personal address type.

In case if you the address number or the person number is already known, then we just we need to maintain the values in the options given in the address node.

 


In case if you are fetching the address number or the person number dynamically or during run time, you can achieve it by passing the variable as shown below:

 


29.  What Is The Concept Of Page Protection In Smart Forms? How Do You Achieve Page Protection In Smart Forms?

Page Protection is used to avoid displaying the broken contents of the page and allow it to display in the new page from the beginning after the previous page. 

Page Protection attribute is to be used to determine whether or not to display a paragraph completely on one page. Mark it if you want to avoid that a paragraph is split up by a page break. If on the current page (only in the main window) there is not enough space left for the paragraph, the entire paragraph appears on the next page.

While one can use the PROTECT ..... ENDPROTECT command for SAP-Scripts, for Smart Forms the Page-Protection checkbox can be used to ensure page protection.

Note: You have Page-protection property only for Text Elements in the Main Window.


30.  Can You Move A Smartform From One SAP System To Another Without Using Transports?

Yes, this can be achieved using the Upload/Download feature for Smartforms. One can download the Smartform from one system and save it as an XML file. Once that is done, the XML file can be used to upload the Smartform in another system.

 

31.  Why Pages & Windows Node Are Required Or Mandatory While Creating A Smart Form?

The Page represents the layout of the Page that is printed on and the items to be printed on the Page are contained in Windows. The page together with the windows defined on the page determines how the print will appear and the contents of the print.


32.  How Can You Find The Generated Function Module Name For A Smart Form?

First activate the Smart Form. Go to Environment -> Function Module Name and get the automatically generated function module for the Smart Form.


33.  How Do You Debug A Smart Form?

By Putting a break point on the generated function module of the Smartform, one can debug it. For more information, Refer the link mentioned below.

34.  What Are The Different Auxiliary Nodes Available In Smart Form?

Auxiliary nodes help to control and format the print but do not print any contents by themselves. Following are the different auxiliary nodes available in Smart Form:

               Table: Output of a table containing application/dynamic data.
               Template: output of a table containing static data.
               Program Lines: Executes ABAP Code.
               Folder: Combines successor nodes to logical groups.
               Loop: Processes successor nodes repeatedly.
               Alternative: Branches depending on conditions.
               Command: Executes Special Commands.


35. What are the Text Types available in Smart Form?

There are 4 different types of Text available in Smart Forms. They are:

               Text Element
               Text Module
               Include Text
               Dynamic Text


36. What Are Text Modules In Smart Forms? What Are The Advantages Of Using Text Module?

A Text Module acts as some sort of container of text, which makes reuse of text easier. There are texts that frequently appear in different forms. Text Modules can be used to store these texts centrally in the system. This detaches text maintenance from form maintenance, with the result that there will be no need to call the Form Builder to edit individual texts.

Text modules can be maintained using smartforms transaction. The text module is maintained exactly like the Text element. Text literals as well as fields can be written in the text module. Fields of the Text module take values from the Smart Form from which it is called. Since a Text Module is a separate entity, it has its own Management (Attributes) screen.

The main advantages of using a Text module are:

               Central storage and maintenance of texts: Commonly used texts like Terms and
Conditions, Address line on footer, etc. do not have to be typed and maintained on every Smart Form being made. Also, changes made to the text at one place can be cascaded to all Forms where it is used if the Copy option is not used.
               Language specific maintenance: Text modules can be maintained in different languages. Thus, by referring to the same Text module name, Smart Forms in different languages pick up the text of the corresponding language.
               Client independence: This is an advantage over Include texts that are client dependent.
               Can be assigned to CTS: An advantage over Standard Texts that are not assigned to a Transport System by default.
               Can be translated to other languages through the transaction SE63.

31.  Why Pages & Windows Node Are Required Or Mandatory While Creating A Smart Form?

The Page represents the layout of the Page that is printed on and the items to be printed on the Page are contained in Windows. The page together with the windows defined on the page determines how the print will appear and the contents of the print.


32.  How Can You Find The Generated Function Module Name For A Smart Form?

First activate the Smart Form. Go to Environment -> Function Module Name and get the automatically generated function module for the Smart Form.


33.  How Do You Debug A Smart Form?

By Putting a break point on the generated function module of the Smartform, one can debug it. For more information, Refer the link mentioned below.



34.  What Are The Different Auxiliary Nodes Available In Smart Form?

Auxiliary nodes help to control and format the print but do not print any contents by themselves. Following are the different auxiliary nodes available in Smart Form:

               Table: Output of a table containing application/dynamic data.
               Template: output of a table containing static data.
               Program Lines: Executes ABAP Code.
               Folder: Combines successor nodes to logical groups.
               Loop: Processes successor nodes repeatedly.
               Alternative: Branches depending on conditions.
               Command: Executes Special Commands.


35. What are the Text Types available in Smart Form?

There are 4 different types of Text available in Smart Forms. They are:

               Text Element
               Text Module
               Include Text
               Dynamic Text


36. What Are Text Modules In Smart Forms? What Are The Advantages Of Using Text Module?

A Text Module acts as some sort of container of text, which makes reuse of text easier. There are texts that frequently appear in different forms. Text Modules can be used to store these texts centrally in the system. This detaches text maintenance from form maintenance, with the result that there will be no need to call the Form Builder to edit individual texts.

Text modules can be maintained using smartforms transaction. The text module is maintained exactly like the Text element. Text literals as well as fields can be written in the text module. Fields of the Text module take values from the Smart Form from which it is called. Since a Text Module is a separate entity, it has its own Management (Attributes) screen.

The main advantages of using a Text module are:

               Central storage and maintenance of texts: Commonly used texts like Terms and
Conditions, Address line on footer, etc. do not have to be typed and maintained on every Smart Form being made. Also, changes made to the text at one place can be cascaded to all Forms where it is used if the Copy option is not used.
               Language specific maintenance: Text modules can be maintained in different languages. Thus, by referring to the same Text module name, Smart Forms in different languages pick up the text of the corresponding language.
               Client independence: This is an advantage over Include texts that are client dependent.
               Can be assigned to CTS: An advantage over Standard Texts that are not assigned to a Transport System by default.
               Can be translated to other languages through the transaction SE63.
37.  What Is The Use Of Command Node In Smart Form?

Command Nodes can be used to achieve page break. By using Command Node, one can manually control the numbers of records to be displayed per page based on some condition. 


38.  Can One Restrict The Translations Of Smart form To Specific Languages?

Yes, one can restrict the translations of Smart forms to specific languages by creating a super set of languages for which you want to allow the translations. Go to form Attributes --> General Attributes --> Language Attributes --> Into Selected Language.

Select all the languages for which you want the translation to happen.


39.  How Can You Translate A Smart Form From One Language To Another?

In smart forms, if you want a user to see the text in other languages (other than language in which smart form is created) , in Global settings ,we need to select radio button Into Selected languages and maintain the Translations in that particular language using SE63.

There is no other way to automate this process but to maintain translations with human intervention for selected languages.

In SE63 transaction, Use path Translations -> ABAP objects -> Other Long Text. Click on Forms and Styles & Select Forms.

Please give object name in CAPITALS. Also select Source and target language from F4 help.

For more information, refer the link mentioned below:


40.  How Do You Assign Transport Request To Translations For Smart Forms?

Once you are done with your translation and you want to push the translation to your target system, you need a transport request. Run the transaction code SLXT or program RS_LXE_RECORD_TORDERfor creation of transport request. 

For more information, refer the link mentioned below:

41.  What Is The Use Of Folder Node In Smart Form?

Folder option is useful for placing all the contents into a single place which we call as logical grouping. If we want to put a condition on a group of text elements or templates we can place them in a folder and apply the condition once to the folder. 

Folder option allows you to place all the contents into a single place. This is basically useful when you have number of windows and with each window you have different graphics, texts, tables, templates used. So to differentiate between 2 windows we generally go for folders and place all contents of one window in a folder and wise versa.

Page Protection property of Folder control will be used in order to display text in the same page without separating it into two different pages. If there is not enough space for a text node, or a group of text nodes, a group of table rows, etc. the items will be displayed as a group on the next page with maintaining the integrity of these items. 

In SAP Smartforms documents frequently it is a requirement to print data in same page. For example in a Smart Form table, some of the table rows are required to print in same page together. If the empty space is not enough it is preferred to print those table rows in following page together. In such cases Smartforms Folder control helps ABAP developers creating SAP Smartforms documents. Folder control is the key for page protection in Smartforms.


SAP Smartform Folder control has the Page Protection attribute which can be used by SAP Smart Form developers as a switch for keeping items in the same page.


42. How Do You Use Barcode in Smart Form?


First go to SE73 SAP Script Font Maintenance to create or display the system bar codes.

Then go to SMARTSTYLES transaction, create a new character format and assign the barcode name that you have created in it. Then you can use the character format in your Smartform wherever you want the barcode to be displayed.