Step by Step procedure to create Smart forms

Hi Group,
Can any body please provide the good document or Link on Step by Step procedure to Create the Smartforms.

Hi,
Check these links and reward points if it helps.
http://www.sap-basis-abap.com/sapsf001.htm
http://www.sap-press.com/downloads/h955_preview.pdf
http://www.ossincorp.com/Black_Box/Black_Box_2.htm
http://www.sap-img.com/smartforms/sap-smart-forms.htm
http://www.sap-img.com/smartforms/smartform-tutorial.htm
http://www.sapgenie.com/abap/smartforms.htm
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/uuid/ccab6730-0501-0010-ee84-de050a6cc287
https://sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/uuid/8fd773b3-0301-0010-eabe-82149bcc292e
https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/uuid/3c5d9ae3-0501-0010-0090-bdfb2d458985

Similar Messages

  • While creating smart form parameters error.

    hi.
    i am  Developing a smart form ..
    based on the given parameter the values are coming..(Sorry i am not able to explain the whole scenario bcz i am new to abap)
    plz have a look on below image.
    Se11 and  error..
    for creating the parameter options i open the se11  (se11 -image) but i am getting the Error at the time  of  Check the program..
    May i know what is the reason...

    hi. thanks for your reply..
    yes i am using vm ware i was installed in external hard disc,,
    from my system i am connecting to the external  hard disc..
    Coming to first screen shot there is no error its just a warning.
    Yes, i also think same but i has to check it...
    i will update u once i check it.
    plz give me some time.. i will check it...

  • Create Smart form for Pick list

    Hi,
    How do i start for creating a smart form for pick list.
    Regards
    Ajay

    hi
    refer this
    http://www.****************/Tutorials/Smartforms/PO/page1.htm
    Edited by: Swetha on Jul 10, 2008 6:15 PM

  • CAN PLS ANYBODY TELL ME THE PROCEDURE TO MAKE SMART FORMS

    PLS LEMME KNOW

    Transaction - SMARTFORMS
    after u make it, make an abap program with the following
    DATA FMNAME TYPE RS38L_FNAM.
    DATA ZITAB LIKE mara OCCURS 0 WITH HEADER LINE.
    SELECT * FROM mara INTO CORRESPONDING FIELDS OF TABLE ZITAB.
    CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
      EXPORTING
        FORMNAME = 'ZKRISSF1'
      IMPORTING
        FM_NAME  = FMNAME.
    CALL FUNCTION FMNAME
      TABLES
        ITAB = ZITAB.

  • SMARTFORMS - Step by Step Tutorial

    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

    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.

  • Steps to create adobe form in WD

    hi
    could any body send me the step by  step procedure to create Adobe Form generation using RFC (BAPI) in Web Dynpros
    regards
    mmukesh

    Hi,
    Go to the following link
    https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/bfbcd790-0201-0010-679d-e36a3c6b89fa
    Regards
    Suresh

  • Creating adobe forms in ABAP

    hi,
    I am new to adobe forms in ABAP.can anybody please tell me the pre-requisites for the set up and step by step procedure to create Adobe Forms in ABAP?
    Thanks,
    Parama.

    Did you make an effort of searching on SDN, if not please do that.
    Chintan

  • Smart Forms : problem with Float Variable

    Hi  Expert,
       I have a probelm with Float variable. In my smart forms one fields of table QAMV contain value like 8.0000000000000000E+01.
    I have to remove the exponent and display value like 80.
    I have tried wa_qamv-sollwert(E10.4).. but it not working.
    Can U suggest me some solution.
    Regards
    Swati.
    Edited by: Swati Namdev on Apr 27, 2010 12:19 PM

    Hi,
    Please follow the steps.
    1. In your smart form create a variable w_val ,, type,, associate type -->  CHAR10
    2. Now write a code, jsut above your node where u wud like to get this value... For this Create -> Flow Logic -> Program Lines.. Now you have editor..
    3. In input parameters , put i_tab-QAMV.. and in output parameter put w_val... and Code like below
    CALL FUNCTION 'MD_CONV_QUANTITY_FLOAT_TO_PACK'
      EXPORTING
        iv_menge       = i_tab-qamv
      IMPORTING
        EV_MENGE       = w_val.
    4. Now grag and drop this w_val from global data field list...your this w_val will have the rounded value.. Pls try this and check..   It will work.
    Regards,
    Lokesh.
    Edited by: Lokesh Tarey on Apr 27, 2010 9:28 AM

  • Logo in sap smart forms

    hi,
      i have one logo and i want to insert that logo into the smart forms
    so can u suggest me the steps to insert that logo in smart forms.
    regards,
    kamal

    Hi
                   SAP SCRIPT
    To create a logo in SAP printouts just do the following
    1. Save a Logo using Imaging, Paint shop Pro or Corel Draw as Tiff file.
    2. Run  program RSTXLDMC and enter the following parameters
       Enter file name                     C:\COMPLOGO.TIF
       UOM                           CM
        Line width for text                132
        Text name                     ZHEX-MACRO-COMPLOGO
        Text ID                          ST
        Text language = E
        Number of Tiff gray levels (2,4,9) 2
    3.  Then Create a new window 'COMP' with attributes;
    Window COMP description Company Logo
    Left margin 7.00 CH window width 10.00 CH
    Upper margin LN window height 8.00 LN
    Finally in the text element, mention
            /: INCLUDE 'ZHEX-MACRO-COMPLOGO' OBJECT TEXT ID ST LANGUAGE 'E'.
    Please note that if object name is not indicated as 'ZHEX...’ the logo may not be printed!
    You will not be able to see the logo in a test print. The same will be printed in actual printout.
                          SMARTFORM
    1)     In Smart Forms Editor, In left pane, right Click any Page (say Page1) and select Create -> Window, Give it a name and Description (Say Window1)
    2) Right Click on Window (Window 1) and select Create -> Graphics, Give it a name and description
    3) In general Attributes, Select Name, get search help (F4) , you will find a list of pictures
    4) Select any picture and set its Resolution in DPI
    5) Press F9 to open Smart Forms Builder, Select window (Window1) and In Output options window set, size and   position of the Logo
    6) Set any other parameters if required, save and activate.
    7) If there is only 1 Window in the forms, set it as Main Window in general attributes.
    8) Use  TCode SE78 to upload new pictures and logos.
    look at Thread Dynamic Graph in smartforms
    Refer the links also -
    Re: Dinamic Graph in smartforms
    How to get file perperties in Unix server
    Regards
    Anji

  • Smart Form and Module Pool

    Can anybody provide me good step by step procedurehow create smart form and module pool programming.
    My email Id is [email protected]

    hi,
    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.
    What is SAP Smart Forms?
    SAP Smart Forms is introduced in SAP Basis Release 4.6C as the tool for creating and maintaining forms. 
    SAP Smart Forms allow you to execute simple modifications to the form and in the form logic by using simple graphical tools; in 90% of all cases, this won't include any programming effort. Thus, a power user without any programming knowledge can 
    configure forms with data from an SAP System for the relevant business processes.
    To print a form, you need a program for data retrieval and a Smart Form that contains the entire from logic. As data retrieval and form logic are separated, you must only adapt the Smart Form if changes to the form logic are necessary. The application program passes the data via a function module interface to the Smart Form. When activating the Smart Form, the system automatically generates a function module. At runtime, the system processes this function module.
    You can insert static and dynamic tables. This includes line feeds in individual table cells, triggering events for table headings and subtotals, and sorting data before output.
    You can check individual nodes as well as the entire form and find any existing errors in the tree structure. The data flow analysis checks whether all fields (variables) have a defined value at the moment they are displayed.
    SAP Smart Forms allow you to include graphics, which you can display either as part of the form or as background graphics. You use background graphics to copy the layout of an existing (scanned) form or to lend forms a company-specific look. During printout, you can suppress the background graphic, if desired.
    SAP Smart Forms also support postage optimizing.
    Also read SAP Note No. 168368 - Smart Forms: New form tool in Release 4.6C
    What Transaction to start SAP Smart Forms?
    Execute transaction SMARTFORMS to start SAP Smart Forms.
    Key Benefits of SAP Smart Forms:
    SAP Smart Forms allows you to reduce considerably the implementation costs of mySAP.com solutions since forms can be adjusted in minimum time. 
    You design a form using the graphical Form Painter and the graphical Table Painter. The form logic is represented by a hierarchy structure (tree structure) that consists of individual nodes, such as nodes for global settings, nodes for texts, nodes for output tables, or nodes for graphics.
    To make changes, use Drag & Drop, Copy & Paste, and select different attributes.
    These actions do not include writing of coding lines or using a Script language.
    Using your form description maintained in the Form Builder, Smart Forms generates a function module that encapsulates layout, content and form logic. So you do not need a group of function modules to print a form, but only one. 
    For Web publishing, the system provides a generated XML output of the processed form.
    Smart Forms provides a data stream called XML for Smart Forms (XSF) to allow the use of 3rd party printing tools. XSF passes form content from R/3 to an external product without passing any layout information about the Smart Form. 
    PROGRAM YMPSKEL MESSAGE-ID YL.
    DESCRIPTION
    written by !
    TABLES:
    DATA: OK_CODE(4), " ok code - screen 1
    OK_CODE2(4).
    DATA C LIKE SY-INDEX. " Index for screen loop
    *& Module USER_COMMAND_0100 INPUT
    process after input for screen 0100 *
    MODULE USER_COMMAND_0100 INPUT.
    CASE OK_CODE.
    WHEN 'SAVE'.
    WHEN 'DISP'.
    WHEN 'LIST'.
    C = 0. "reset loop control
    WHEN OTHERS.
    ENDCASE.
    CLEAR OK_CODE.
    ENDMODULE. " USER_COMMAND_0100 INPUT
    *& Module STATUS_0100 OUTPUT
    process before output for screen 0100 *
    MODULE STATUS_0100 OUTPUT.
    SET PF-STATUS 'AMEND'. " set gui status
    SET TITLEBAR '100'. " set title
    ENDMODULE. " STATUS_0100 OUTPUT
    *& Form SAVE data
    Save screen details
    FORM SAVE.
    CLEAR OK_CODE.
    ENDFORM.
    *& Form DISPLAY
    FORM DISPLAY.
    ENDFORM.
    *& Module EXIT_COMMAND INPUT
    exit commands are processed before validation *
    defined by E against function in menu painter(function list)
    MODULE EXIT_COMMAND INPUT.
    CASE OK_CODE.
    WHEN 'EXIT'. CLEAR OK_CODE. SET SCREEN 0. LEAVE SCREEN.
    WHEN 'CANC'. CLEAR OK_CODE. SET SCREEN 0. LEAVE SCREEN.
    WHEN 'BACK'. CLEAR OK_CODE. SET SCREEN 0. LEAVE SCREEN.
    ENDCASE.
    ENDMODULE. " EXIT_COMMAND INPUT
    *& Form list
    text *
    FORM LIST.
    CLEAR OK_CODE. SET SCREEN 200. LEAVE SCREEN.
    ENDFORM. " LIST
    *& Module EXIT_COMMAND_200 INPUT
    exit command processing for screen 200 *
    defined by E against function in menu painter(function list)
    MODULE EXIT_COMMAND_200 INPUT.
    CASE OK_CODE2.
    WHEN 'EXIT'. CLEAR OK_CODE2. SET SCREEN 0. LEAVE SCREEN.
    WHEN 'CANC'. CLEAR OK_CODE2. SET SCREEN 0. LEAVE SCREEN.
    WHEN 'BACK'. CLEAR OK_CODE2. SET SCREEN 100. LEAVE SCREEN.
    ENDCASE.
    ENDMODULE. " EXIT_COMMAND_200 INPUT
    *& Module STATUS_0200 OUTPUT
    process before output for screen 200 *
    MODULE STATUS_0200 OUTPUT.
    SET PF-STATUS 'POPUP'.
    SET TITLEBAR 'xxx'.
    ENDMODULE. " STATUS_0200 OUTPUT
    Module pool programs are created in abap development work bench (TCODE: SE80).
    Here we can do all the works whatever you can do in abap.
    Module pool programs are also called dialog programs.
    The module Pool are reports prepared for different screens and to manage the sequence of events of these screens, in the transaction SE80 you can see all the dynpros that you have for this kind of report, add new ones, add all types of element to the report.
    Process Before Output is the part of the dynpro code that is processed before the user can do anything with the data in the screen
    Process After Input is the part of the dynpro code that is processed after the interaction with the user.
    module pool programs are excuted using Tcodes
    regards,
    sreelakshmi

  • Creation of Smart Forms for PDF

    Hi All,
    I am new to SFP. So, please tell me how to create Smart Forms for PDF.
    I already have an SAP standard form of Customer Invoice in this format (SFP) and I need to change the layout and add some additional fields in it as well.
    Please guide me through the process. Earliest reponse will be highly appreciated.
    Regards,
    Shabbar

    Hi,
    I take that you meant PDF Forms in SAP.
    Refer the following help links.
    http://help.sap.com/saphelp_nw04s/helpdata/en/dc/f1783fe3263042e10000000a114084/content.htm
    This PDF link (Has got many Pdf files)
    https://www.sdn.sap.com/irj/sdn/interactiveforms?rid=/webcontent/uuid/d1088b7e-0c01-0010-c78e-984c0537e3ec [original link is broken]
    Also check this Tech-ed 06 session at Amsterdam.
    http://www.sapteched.com/emea/edu_sessions/session.htm?sid=317
    Check this download from SDN.
    https://www.sdn.sap.com/irj/sdn/downloaditem?rid=/library/uuid/2dd3dbcd-0401-0010-55b8-b10808ff688e
    Is this you are looking for?
    Feel free to revert back.
    --Ragu

  • About writting text in smart forms

    Hi friends,
           I am currently working on ABAP 7.0 version and currently i am working on creating smart forms so in that i want to know that how to write heading in windows so i can display that text as a name of that window.
    My mail id is: [email protected]
    Thanx & Regards,
    Rahul Talele

    to display a heading for a window..
    create a text element usre  the appropriate character formats and pparagraph formats.
    is there any additional feature in 7.0 in smartforms.. if yes can u please let me know
    Please Close this thread.. when u r problem is solved. Reward all Helpful answers
    Regards
    Naresh Reddy K
    Message was edited by:
            Naresh Reddy

  • Syntax for sum in Smart Form based on Selection criteria in Program.

    Hi,
    We have created smart form for printing confirmation entries in desired format. We have given some selection criteria in the program. Now, we want to do the sum of certain fields in the smart form based on selection criteria given in program and selection screen.
    But we are getting wrong sum in the smart form than expected.
    When we debug the program during run time, we are getting correct records as per our expectations. But result of sum in the out put is not as per given selection criteria.
    Do we need to establish link between "select option" and "Smart form"? How can we use internal table created for select option in the smart form?
    Thanks & regards
    Vijay

    Hi,
    There will be no option to sum the values in smartforms, You just have to sum and append the data to internal table and display the internal table data in the form.
    Regards,
    Satish

  • Assigning categories to multiple Commodities - Smart Forms

    Hi Folks,
    appreciate any feedback you could give, i'm creating smart forms in 11i for my company based on vendor. were looking to lock down the correct category (not editable) so requestors dont have a choice - reducing backend reclassing to the GL.
    however, in some scenarios i need multiple choice as our vendor may provide more than one service. if i create a commodity for 1 vendor with 3 categories in there, i cannot choose the same categories in a different commodity (for a different vendor).
    has anyone come accross this, if so how did you manage this? there has to be some workaround... i have faith :-)
    thanks in advance for your help.

    hi,
    when the first command get executed, then the control moves into the new page....
    but ur second command is in old page, i mean from where u called ur first command... then the control is in one page, and the command is in another page...then how can u get that executed...?
    here do one thing, using first command u r calling one page, in that page place this secod command, then after executing that page, u can get the required one using the second command...
    hope its clear.
    if any doubts, plz revert back.

  • Error in smart form

    Hi Friends,
    I am creating Smart form with Print program for sales order data..
    While executing the print program.. item data is displaying in the out put but header data is not displaying
    Please help me......
    Thanks
    rohini

    Hi Venkat,
    thanks for you reply.
    i have checked all things ........all values are moving to final internal table.
    but in that internal table Header level values are not displaying...
    thanks
    Rohini.

Maybe you are looking for

  • I used to be able to type in where I wanted to go and firefox 4 wont let this happen

    as an example: Say I wanted to go to a website of a particular place I would go to the address bar at the top and type in Union Mo Theater and press enter ... It would take me straight to WWW.great8cinema.com now with Firefox 4 it brings up a Google

  • How to pass report column value

    I'm trying to implement a AJAX report pull from one of the response on this forum. The report column calls the following javascript function below. The #COL2# values are dotted values like 10.2.3.5.6. The function passes values correctly passed if th

  • Need to buy Apple Care within 60 days of purchase date?

    Since when you need to buy Apple Care within 60 days of purchase date? I thought you can do it before the end of one-year limited warranty, no?

  • Newbee question!

    hi , supposing i use the following code.. <jsp:useBean id="requestInfo" scope="request" class="RequestBean" >   <jsp:setProperty name="requestInfo" property="*" /> </jsp:useBean>in the above case do all set methods in requestinfo object get called? s

  • Premiere CS4 I Can't Import .MXF files but Adobe assures me i can?????

    Hi I have Adobe Premiere CS4 and I am trying to import some videos to it and they are in .MXF format. Premiere issues me "codec missing or unavailable" and I don't want to download some sort of converter. Isn't Premiere supposed to support .MXF files