cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

SMARTFORMS - Step by Step Tutorial

Former Member
0 Likes
75,374

Hi All,

I am looking for a step-by-step detail example for Smart Forms. It would be great if it was up-to-date and not including the now extinct COMPLEX STRUCTURE option.

<b><REMOVED BY MODERATOR></b>

Many Thanks,

Dips Naik

SAP Consultant / Project Manager

Message was edited by:

Alvaro Tejada Galindo

Accepted Solutions (0)

Answers (7)

Answers (7)

Former Member
0 Likes

Not working anymore

Former Member
0 Likes

it is crystal-clear you can check and do it by yourself.

Learn making First Smartform Step by Step - ABAP Development - SCN Wiki

Former Member
0 Likes

Smart Forms:

Transaction Code for Create Smarf Forms: SMARTFORMS

Transaction Code for Create Styles (Paragraph Formats, Character Formats, etc.,) Used in Smart Forms: SMARTSTYLES

Steps to be followed while creating Smart Forms:

1. Enter the Form Name (e.x. ZEKKO_EKPO) and Press Create Button.

2. Enter Form Description and Select the “Output options” Tab &#61664; Enter the Page Format (e.x. DINA4) and Style (e.x.SF_STYLE_01).

3. Double click the Form interface Left Sub-tree.

4. Enter the Import Parameters (The values that passed from the Print Program into the Form) (e.x. Company Code)

Parameter name Type assignment Reference type Default value Pass value

COMPANY_CODE TYPE EKKO-BUKRS &#61522;

5. Double click the Global definitions from the Left Sub-tree.

Assume that we are using two tables EKKO and EKPO in this example:

6. Click the “Types” Tab.

7. Enter the Code as following:

TYPES: BEGIN OF WA_EKKO,

EBELN LIKE EKKO-EBELN,

BUKRS LIKE EKKO-BUKRS,

END OF WA_EKKO.

TYPES: BEGIN OF WA_EKPO,

EBELN LIKE EKPO-EBELN,

EBELP LIKE EKPO-EBELP,

MENGE LIKE EKPO-MENGE,

NETPR LIKE EKPO-NETPR,

END OF WA_EKPO.

TYPES: T_EKKO TYPE STANDARD TABLE OF WA_EKKO,

T_EKPO TYPE STANDARD TABLE OF WA_EKPO.

8. Click the “Global data” Tab.

Declare the Internal Tables and Work Areas as follows:

Variable name Type assignment Reference type Default value Constant

I_EKKO TYPE T_EKKO

I_EKPO TYPE T_EKPO

WA_EKKO TYPE WA_EKKO

WA_EKPO TYPE WA_EKPO

9. Double click the “%PAGE1 New Page” in the Left Sub-tree.

10. Change the %PAGE1 to “FIRST” or any name and Enter the Description (e.x. First Page).

11. Select the Next Page as “FIRST”

12. Select the “Output options” Tab and select the format of the page (Portrait or Landscape) and all other print attributes.

13. Select the “Background Picture” Tab, and Enter the Name, Object and Id of the image file. (Before this step, go to SE78 and import the image first) for the Image which has to be appeared in the Background of the Script.

14. If you want to add any LOGO in the First Page of the Script then right click the “FIRST New Page” in the Left Sub-tree from the Menu option “Create” &#61664; select the “Graphic”.

15. Double click the “%Graphic1 New Graphic 1” in the Left Sub-tree.

16. Give the Name and Description (e.x. Graphic = “COMP_LOGO” and Description = “LOGO WINDOW”)for the New Graphic Inserted.

17. Enter Name, Object and ID for the Graphic image and Select the Color grid screen (BCOL) option button in the “General attributes” Tab.

Click - Output options Tab. Set Left and Upper Margins as given:

18. Right click the “FIRST New Page” in the Left Sub-tree and from the Menu option “Create” &#61664; select the “Window”.

19. Double click the “%WINDOW1 New Window1” in the Left Sub-tree and enter the Window name and Description (e.x. Window = “ADD_WIN” and Description = “Address Window”)

Set the Left and Upper margins for the ADD_WIN as follows:

20. Right click “ADD_WIN Address Window” in Left Sub-tree and from the Menu option “Create” &#61664; select the “Program Lines”.

21. Enter the Program Lines name and description (e.x. Program Lines = “ADD_FETCH” and Description = “FETCHING COMPANY ADDRESS”)

22. Enter the Input Parameter as COMPANY_CODE and Export Parameter as V_ADRNR in the “General attributes” Tab and write the select query as following:

SELECT SINGLE ADRNR INTO V_ADRNR

FROM T001 WHERE BUKRS EQ COMPANY_CODE.

(Note: Before writing the select query first declare the Variable V_ADRNR in the Global definitions area as follows:

V_ADRNR TYPE T001-ADRNR.

23. Right click the “ADD_WIN Address Window” in the Left Sub-tree and from the Menu option “Create” &#61664; select the “Address”.

24. Double click the “%ADDRESS1 New address1” and change the Address name and description (e.x. Address = COMP_ADD and Description = “COMPANY ADDRESS”).

25. Select the Type of the address in the “General attributes” Tab. (Since we are retrieving the Organization address, we selected the first radio button) and in the Address number text box pass the V_ADRNR Variable as &V_ADRNR&.

26. Set the Main window attributes like this: (Setting of window co-ordinates)

27. Right click the “MAIN Main Window” in the Left Sub-tree and from the Menu option “Create” &#61664; select the “Program Lines”.

28. Enter the name and description (e.x. Program Lines = “SELECT_RECORD” and Description = “SELECTING RECORDS”).

29. Enter the Input Parameter as COMPANY_CODE and Output Parameter as I_EKKO and I_EKPO in the “General attributes” Tab and write the select query as following:

SELECT EBELN BUKRS

INTO TABLE I_EKKO

FROM EKKO

UP TO 10 ROWS

WHERE BUKRS EQ COMPANY_CODE.

IF SY-SUBRC EQ 0.

SORT I_EKKO BY EBELN.

SELECT EBELN EBELP MENGE NETPR

INTO TABLE I_EKPO

FROM EKPO

FOR ALL ENTRIES IN I_EKKO

WHERE EBELN EQ I_EKKO-EBELN.

IF SY-SUBRC EQ 0.

SORT I_EKPO BY EBELN EBELP.

ENDIF.

ENDIF.

30. Right click “MAIN Main Window” in the Left Sub-tree and from the Menu option “Create” &#61664; select the “Complex Section”.

31. Enter the Section name and description (e.x. Section = “PO_LOOP” and Description = “PURCHASE ORDER NUMBER LOOP”) and check the “Repeat processing” check box and select the “Output type” as Unstructured (i.e. select the Unstructured radio button) in the “General attributes” Tab.

32. Select the “Data” Tab.

33. Enter the Internal Table Name as I_EKKO and Work area name as WA_EKKO and sort by the BUKRS and EBELN fields.

34. Right click “PO_LOOP PURCHASE ORDER NUMBER LOOP” in Left Sub-tree and from the Menu option “Create” &#61664; select the “Text”.

35. Enter the Text name and description (e.x. Text = “PO_NO_DISPLAY” and Description = “PURCHASE ORDER NUMBER DISPLAY”) and enter the values as in the screen shot

Click the Text Editor

Display the values of Company Code and Purchase Order Number as shown below:

Press Back Button, then Press Save and Check Buttons

36. Right click the “PO_LOOP PURCHASE ORDER NUMBER LOOP” in the Left Sub-tree and from the Menu option “Create” &#61664; select the “Template”.

37. Double click on “%TEMPLATE1 New template” and enter the Template name and description (e.x. Template Name = “OI_HEAD” and Description = “ORDER ITEM HEADER”).

Before press save or enter click the “Table Painter Button” which will take you to following screen.

To avoid the “cross line” in the Editor click the “Settings Button”

which will result in the following popup, in which you un-check the “Cross” Check Box and press enter.

38. Split the Cell into Four or into any number of columns you want to display in the script by right clicking the “%C1”.

and press “Back” Button.

39. Select the pattern of the table to be displayed in the script by the clicking “Select pattern” Button

Selected table pattern

40. Inorder to Display the “Column Text“ for the table columns, insert the Text as shown below:

41. Right click the “OI_HEAD ORDER ITEM HEADER” and from the Menu path “Create” &#61664; Select the “Text” .

42. Enter the Text name and description (e.x. Text = “HEAD1” and Description = “COLUMN1”) and enter the values as in the screen shot (i.e. as explained in the point no 34).

43. Inorder to match the Template Column with the insertedText “HEAD1 COLUMN1”, select the “Output options” Tab and Enter the Line Number and Column Number in which the above Text has to be printed in the form

44. Repeat Step No.40 & 41 for all the remaining column headings.

45. The Form is ready with all data upto Table Header. Inorder to populate data under each column header, insert a table.

46. Insert the Table under “PO_LOOP PURCHASE ORDER NUMBER LOOP” by right clicking the same.

47. Enter Table Name and Description (e.x. Table Name = “OI_DISPLAY” and Description = “ORDER ITEM DISPLAY”)

48. Match the column width with the “OI_HEAD ORDER ITEM HEADER” Template (refer step no 38 screet shot no 2) and Select the “Default” radio button and “No page break” check box. Click the “Select pattern” push button to select the table pattern to be displayed.

49. Click the “Data” and populate the Item details by looping the Internal Table I_EKPO into the Work Area WA_EKPO sorted by EBELN and EBELP as shown in the following screen shot

50. Inorder to Display the values for each column, we have to Insert Separate Text for each column under the Table “OI_DISPLAY ORDER ITEM DISPLAY” by Right clicking the same. Enter the Name and Description for the Each Text Inserted under the Table.

Column 1 for Line Item of each Purchase Order – Populate the values for each column as explained in the step no 34.

Inorder to Match the Item values with the Template Header, In the Inserted Text “ORD_ITM_COL COLUMN1” Click the “Output options” and Select the “New line” Check box and Select the “Line type” as “Detail” and also check the “New cell” Check box.

51. Similary add one Text for the remaining columns.

For the Second Column Text You need only to select the “New cell” Check box.

For the Third Column Text also You need only to select the “New cell” Check box.

52. Before Inserting the 4th Text for the 4th Column, we have to calculate the Amount by Multiplying the Quantity and Unit Price and for the same we have to insert “Program Lines” by Right clicking “OI_DISPLAY ORDER ITEM DISPLAY”

53. Similarly calculate the subtotal by adding the totals and calculate the grand total by adding the subtotals.

Before doing the calculations, declare variables for total, subtotal and grand total in Global definitions.

InputParameters: WA_EKPO-MENGE,WA_EKPO-NETPR & OutputParameters: V_TOTAL,V_SUBTOTAL, V_GRDTOTAL.

54. Now add the 4th Text to display the 4th column in the Form.

For the Fourth Column Text also You need only to select the “New cell” Check box.

55. Inorder to display the Subtotals (which has been created earlier i.e. refer to step no 52) of all the Line Items for each Purchase Order, we have to Insert a separate Text Under the Table OI_DISPLAY ORDER ITEM DISPLAY” by right clicking the same.

56. Enter the Name and Description for the Inserted Text (e.x. Text = “SUB_TOTAL_DISPLAY” and Description = “SUB_TOTAL_DISPLAY” and populated the value for subtotal.

57. After each purchase order, the Variable V_SUBTOTAL has to be refreshed, Inorder the clear the subtotal variable we have to insert “Program Lines” by right clicking the “OI_DISPLAY ORDER ITEM DISPLAY”.

58. Enter Name and Description for the Program Lines (%CODE1 New program lines 1) Inserted (e.x. Program lines = “CLR_VAR” and Description = “CLEAR SUBTOTAL VARIABLE”. Input parameters = “V_SUBTOTAL”. Clear the variable as shown below:

59. Now, we have to display the Grand Total (i.e. summation of all the subtotals). Insert “Text” under the “PO_LOOP PURCHASE ORDER NUMBER LOOP” by right clicking the same.

Text “%TEXT1 New text1” gets inserted. Now enter the name and description for the same and also populated the value for grand total

Text = “GRD_TOT_DISP”, Description = “GRAND TOTAL DISPLAY” and Variable V_GRDTOTAL has been populated to display the grand total in the form.

60. Inorder to display the Current Page Number and Total Number of pages in the form we need a separate window and to obtain the same right click the “FIRST First Page” and the insert window.

Window “%WINDOW1 New window 1” get inserted under the first page.

61. Enter the Window name and description (e.x. Window = “PG_WIN” and Description “PAGE NUMBER WINDOW”)

Set the window co-ordinates for page number window “PG_WIN” as given below:

62. Inorder to display the page numbers we have to insert a “Text” by right clicking the “PG_WIN PAGE NUMBER WINDOW”.

Text “%TEXT1 New text 1” gets inserted and now enter the text name and description.

Text = “PG_DISP”, Description = “PAGE NUMBER DISPLAY” and Page Number gets displayed from the Transparent Table “SFSY”.

63. General Screen Shot of Entire Left Sub-tree:

64. Form output:

65. SOME MORE FURTHER MODIFICATIONS / ADDITIONAL OPTIONS IN THE ABOVE CREATED FORM:

Condition-1: Create second page and company logo should get printed only in the first page and not in the second page. Similarly, company address window should get printed only in the last page and not in other pages.

To create the second page right click the “FIRST First Page” in the left sub-tree.

66. Another page gets inserted with name “%PAGE1 New page 1”.

67. Enter Page name and description for the inserted new page (e.x. Page = “SECOND” and Description = “Second Page”) and set the next page as inserted second page and select the mode as increase counter as shown below:

68. Now change the “FIRST First Page”s Next page as “SECOND” and change the mode as Initialize counter.

69. Now copy the Main, Company Address, Page No windows from “FIRST First Page “ to “SECOND Second Page”.

70. Arrange all the windows under the Main window in both first and second page. Inorder to restrict the company logo to be printed only in the first page, go to the first page and double click the “LOGO_WIN LOGO WINDOW” and select the “Conditions” tab and Check the “only on first page” Check Box.

71. Output showing the main window got printed only in the first page and not in the second page and so on ….

First Page: With LOGO

Second Page: Without LOGO

72. Inorder to restrict the Company address to be printed only in the last page and not in the remaining pages, double click the “ADD_WIN ADDRESS WINDOW” in the first page and Check the “only after end of main window” Check Box. Repeat the same process for the second page also.

73. Output showing the address window got printed only in the last page and not in the first page and so on ….

First Page: without company address

Last page (second page): with company address window

74. Condition-2: Purchase order’s whose value is more than 5000 only should get displayed / printed.

Inorder to achieve the same, right click the “PO_LOOP PURCHASE ORDER NUMBER LOOP” and select the “Loop”.

75. “%LOOP1 New loop 1” gets inserted

76. Enter Loop name and description.

77. Select the “Data” Tab Loop the Internal I_EKPO as shown below:

78. Inorder to check the subtotal value for each purchase order (i.e. purchase order value should be more than 5000), Insert a program lines under the new loop inserted.

79. “%CODE1 New program lines 1” gets inserted

80. Enter the name and description for Program lines. Before calculating the subtotal declare two variables one for total and another for subtotal in Global definitions. Calculate the Subtotal as shown below:

Input parameters: “WA_EKPO-MENGE, WA_EKPO-NETPR, V_TOT”; Output Parameters: “V_VALUE”.

81. Now we calculated the subtotal for each purchase order. Inorder to restrict the display of purchase orders whose values are more than 5000, we need to insert “Alternate” and for the same right click the “PO_LOOP PURCHASE ORDER NUMBER LOOP” and from the menu path create &#61664; select the “Alternate”.

82. “%CONDITION1 New alternate 1” gets inserted.

83. Enter Alternate name and description. Select the “General attributes” Tab and Enter the condition of subtotal > 5000 as shown:

84. Now, move “PO_NO_DISPLAY PURCHASE ORDER NUMBER DISPLAY, OI_HEAD ORDER ITEM HEADER, OI_DISPLAY ORDER ITEM DISPLAY, SUB_TOTAL_DISPLAY DISPLAY SUBTOTAL and CLR_VAR New program lines” under the “TRUE” part.

85. In the “FALSE” part (i.e. If subtotal value is less than 5000, then clear the variable), insert program lines and code as shown:

86. Only those purchase order whose value is more than 5000 gets displayed – First Page.

Only those purchase order whose value is more than 5000 gets displayed – Second Page.

87. Condition-3 Each Purchase Order should get printed in a new page. Logo should get printed in the first page along with the first purchase order and similarly, Grand total should get printed in the last page with the last purchase order.

88. Inorder to achieve this, when the first successful purchase order whose value is more than 5000 is found then increase one counter variable by 1 (this is required because the “New page command” should not get triggered in the first page itself”) and for the same we have to insert a “Program lines” under the “TRUE” part of “CHK_COND SUBTOTAL CONDITION”.

Before increasing the counter variable first declare the counter variable in the “Global definitions” part.

Output parameters: V_COUNTER.

89. Inorder to avoid triggering “New page command” in the first page, we have to insert “Command” in the “TRUE” part of “CHK_COND SUBTOTAL CONDITION” by right clicking the same as shown below:

90. “%COMMAND1 New command 1” gets inserted.

91. Enter name and description for the inserted Alternative. Select “General attributes” Tab and check whether for the counter variable is more than 1.

92. If the counter variable is more than 1 means, we got the second successful purchase order whose value is more than 5000. Hence, we can trigger new page command here and for the same right click the “TRUE” part in “NEW_PG NEW PAGE COMMAND” as shown:

“%COMMAND1 New command 1” gets inserted

93. Enter the name and description for Command and select the “General attributes” Tab and Check the “Go to new page” and select the page as “SECOND” as shown below:

94. The following is the output: First Page with company logo and without company address window, first purchase order whose value is more than 5000.

Second page: without company logo and with company address window for the last purchase order whose value is more than 5000.

95. The new PROBLEM we faced when we create the smart form is page number. Total Page Number got displayed as “*” as shown:

96. Inorder to solve the above problem Double Click the “PG_DISP PAGE NUMBER DISPLAY” and Click the Text Editor.

Upon clicking the text editor it will take you to the following screen:

Cut (Ctrl+X) the “SFSY-FORMPAGES” and delete the remaining things as shown.

Go to the menu path Insert &#61664; Symbols &#61664; New as shown

Which will result you in the following popup and fill the popup as shown.

97. It will takes you to the following screen.

98. Now replace &SFSY-FORMPAGES4(4CZ)& as &SFSY-FORMPAGES0(4CZ)&

99. Press back and then check, activate and execute – You can observe that the problem has resolved.

100. Enjoy and try to create more smart forms……..

Reward Points if useful....

Regards,

Sarathy.

former_member196280
Active Contributor
0 Likes

Go through this<a href="https://www.sdn.sap.comhttp://www.sdn.sap.comhttp://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3c5d9ae3-0501-0010-0090-bdfb2d458985">EXAMPLE</a>

Sample steps...

SMART fORM

USING TABLE IN Smart Form

1) Tcode --> SmartForms

2) Form name --> Z_SF_TEST Create

3) Under Global settings

a) Form Interface

Table Tab

ITAB LIKE EKPO

b) GLOBAL Definitions

WA_NETPR LIKE EKPO-NETPR

In smart forms if we want to display quantity and currency fields. We can't directly display currency field and quantity fields

For that we have to create an extra variable in global definitions

Ex: netpr FIELD of EKPO

CREATE program lines and specify WA_NETWR = itab-netpr.

4) RT CLick on main Window

CREATE --> TABLE

Click Table painter

DEFAULT %LTYPE will be Created

a) If you want more like Header footer etc add by rt click on %LTYPE1

Table (Tab)

%LTYPE Radio(SELECT) 5 CM 5 CM 6 CM

CLICK on DATA (Tab)

INTERNAL TABLE ITAB LIKE ITAB

5)RT click on table control and create --> program lines

General attribute (Tab)

INPUT PARAMETER OUTPUT PARAMETER

itab WA_NETPR

Code Area

WA_NETWR = ITAB-NETPR.

6) RT CLcick on table ctl and create 3 text to display the fields

a) % text1 +button(insert field)

FIELD name &itab-ebeln&

Output options (tab)

Check New line LINETYPE %Ltype1

check new cell

b) % text2

& itab-ebelp&

output options

check new cell

c) % text2

& wa_netpr&

output options

check new cell

Report ac

Tables ekpo.

Data: itab1 like ekpo occurs 0 with header line.

select * into table itab1 from ekpo.

Call function module

Regards,

SaiRam

Former Member
0 Likes

Hi are there any examples involving getting data from more then one table?

Thanks.

Former Member
0 Likes

Hi Dipesh,

Please find below the tutorial.

A Simple Smartform Tutorial

SAP Smartforms can be used for creating and maintaining forms for mass printing in SAP Systems. The output medium for Smartforms support printer, fax, e-mail, or the Internet (by using the generated XML output).

According to SAP, you need neither have any programming knowledge nor use a Script language to adapt standard forms. However, basic ABAP programming skills are required only in special cases (for example, to call a function module you created or for complex and extensive conditions).

1. Create a new smartforms

Transaction code SMARTFORMS

Create new smartforms call ZSMART

2. Define looping process for internal table

Pages and windows

First Page -> Header Window (Cursor at First Page then click Edit -> Node -> Create)

Here, you can specify your title and page numbering

&SFSY-PAGE& (Page 1) of &SFSY-FORMPAGES(Z4.0)& (Total Page)

Main windows -> TABLE -> DATA

In the Loop section, tick Internal table and fill in

ITAB1 (table in ABAP SMARTFORM calling function) INTO ITAB2

3. Define table in smartforms

Global settings :

Form interface

Variable name Type assignment Reference type

ITAB1 TYPE Table Structure

Global definitions

Variable name Type assignment Reference type

ITAB2 TYPE Table Structure

4. To display the data in the form

Make used of the Table Painter and declare the Line Type in Tabstrips Table

e.g. HD_GEN for printing header details,

IT_GEN for printing data details.

You have to specify the Line Type in your Text elements in the Tabstrips Output options.

Tick the New Line and specify the Line Type for outputting the data.

Declare your output fields in Text elements

Tabstrips - Output Options

For different fonts use this Style : IDWTCERTSTYLE

For Quantity or Amout you can used this variable &GS_ITAB-AMOUNT(12.2)&

5. Calling SMARTFORMS from your ABAP program

REPORT ZSMARTFORM.

  • Calling SMARTFORMS from your ABAP program.

  • Collecting all the table data in your program, and pass once to SMARTFORMS

  • SMARTFORMS

  • Declare your table type in :-

  • Global Settings -> Form Interface

  • Global Definintions -> Global Data

  • Main Window -> Table -> DATA

  • Written by : SAP Hints and Tips on Configuration and ABAP/4 Programming

  • http://sapr3.tripod.com

TABLES: MKPF.

DATA: FM_NAME TYPE RS38L_FNAM.

DATA: BEGIN OF INT_MKPF OCCURS 0.

INCLUDE STRUCTURE MKPF.

DATA: END OF INT_MKPF.

SELECT-OPTIONS S_MBLNR FOR MKPF-MBLNR MEMORY ID 001.

SELECT * FROM MKPF WHERE MBLNR IN S_MBLNR.

MOVE-CORRESPONDING MKPF TO INT_MKPF.

APPEND INT_MKPF.

ENDSELECT.

  • At the end of your program.

  • Passing data to SMARTFORMS

call function 'SSF_FUNCTION_MODULE_NAME'

exporting

formname = 'ZSMARTFORM'

  • VARIANT = ' '

  • DIRECT_CALL = ' '

IMPORTING

FM_NAME = FM_NAME

EXCEPTIONS

NO_FORM = 1

NO_FUNCTION_MODULE = 2

OTHERS = 3.

if sy-subrc <> 0.

WRITE: / 'ERROR 1'.

  • MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO

  • WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.

endif.

call function FM_NAME

  • EXPORTING

  • ARCHIVE_INDEX =

  • ARCHIVE_INDEX_TAB =

  • ARCHIVE_PARAMETERS =

  • CONTROL_PARAMETERS =

  • MAIL_APPL_OBJ =

  • MAIL_RECIPIENT =

  • MAIL_SENDER =

  • OUTPUT_OPTIONS =

  • USER_SETTINGS = 'X'

  • IMPORTING

  • DOCUMENT_OUTPUT_INFO =

  • JOB_OUTPUT_INFO =

  • JOB_OUTPUT_OPTIONS =

TABLES

GS_MKPF = INT_MKPF

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.

-


Additional Fonts for your SMARTFORMS

You can create additional fonts and style with transaction SMARTSTYLES

This can then be define in the paragraph and character formats, which you can then be assign to texts and fields in the Smart Form.

The character formats includes effects such as superscript, subscript, barcode and font attributes.

Also, you can refer to the below link for the explanation:

http://help.sap.com/saphelp_46c/helpdata/en/4b/83fb42df8f11d3969700a0c930660b/frameset.htm

In case you have any further clarifications,do let me know.

Regards,

Puneet Jhari.

Former Member
0 Likes

hi thanks for all the help thus far but I am still struggling. I really need a step-by-step tutorial with screenshots if possible.... many thanks thus far

Former Member
0 Likes

hi ,

if u pls send me u r email_id . surely i will hekp u, i have a no. of docus on smart forms with examples .pls send me u r email_id to me now.

Former Member
0 Likes

Hi Dipesh,

Check out the following link which has a step by step example:

http://smoschid.tripod.com/How_to_do_things_in_SAP/How_To_Build_SMARTFORMS/How_To_Build_SMARTFORMS.h...

Regards,

Narendra

Reward points if helpful!!!

Piyushmatrixs
Participant
0 Likes

Hello Mam,

    Could you send me example Doc related to SMARTFORMS at piyushmatrixs@gmail.com

Thanks