Complex section of smart forms
before ecc 6.0 there was a option to create the complex section but in ecc 6.0 there is no such option. how to deal with it?
Hi mathew,
I have read these few lines about the COMPLEX SECTION.
Complex Section: combines all the node attributes
Refer to the below link
http://www.abap-code.com/smartforms.html
In older version folder template table and loop were combined in the same control complex section with different tab types
but now it is no longer in use
sap recommend not to use this node type
as they have provided the folder template table loop as different controls
http://help.sap.com/saphelp_crm50/helpdata/en/d2/69a148cd8b11d3b563006094192fe3/content.htm
Regards,
Sravanthi
Similar Messages
-
Smart forms - COMPLEX SELECTION node in ECC 6.0
HI ABAPers ,
Where we can find the COMPLEX SELECTION node in ECC 6.0 ..
i searched but not able to find .. can you plaese guide me
regards
ravi
Edited by: Julius Bussche on Feb 18, 2009 9:52 AM
Please use meaningfull subject titlesHi Ravichandra,
You will find the similar threads and search in SDN
Re: Complex Section in Smart Form
Re: complex section of main window : smart forms
Regards,
Sravanthi -
in ecc 6.0 there is no option to create the complex section under the main window, but in earlier versions it was there, so how to deal with it.
Hi mathew,
Refer to your previous thread ...
complex section of smart forms
Re: complex selection in smartforms
Regards,
Sravanthi -
Hi all,
Iam going through the screen shots of Smart forms of 4.6c version, and i was trying the same in the 4.7
In the screen shot of 4.6c it suggest to select Complex selection by right clicking Main Window in the left subtree and from the Menu option "Create -> select the "Complex Section"
in that screen asked to check the "Repeat processing" and select the "output type" as an unstructured in the "General attributes" tab.
In the description asked to give "PO_LOOP" in section and "purchase Order Number Loop" in description.
Can anybody please say me how to do it in 4.7
Thanks in Advance
RanjithIn 4.7 Complex Section has been removed.
You can achieve your functionality using the LOOP and TABLE object and nesting them.
Regards,
Ravi
Note - Please mark all the helpful answers -
How to Generate a complex smart form for the Sales Order different pages h
How to Generate a complex smart form for the Sales Order different pages has different page Layouts explain me?
in print program in interface when calling the form there should be some option to tell it to make a NEW spool everytime.
I have it in mind for sap-script it is ITCPO-TDNEWID. Dont have it in mind for SAMRTFORMS but still it should work somehow similar. -
How to draw vertical lines in SMART FORMS
Hi Guys,
Can anyone please let me know how to draw vertical and horizontal lines in smart forms, i have to do this in the secondary window.
thanks,
RameshHi Ramesh,
In the window output options you have option of check box to get lines.
Then you need to give the spacing for vertical and horizontal.
Another option is putting a template on window and getting the boxes, but it is quite little bit complex.
Put the cursor on the WINDOW in which the lines you want.
Right click on it>create>complex section.
In that select the TEMPLATE radio button.
Goto TAB TEMPLATE.
Name: give some name of line.
From: From coloumn.
To: To coloumn
Height: specify the height of the line.
Next give the coloumn widths.
Like this you can draw the vertical and horzontal lines.
If the above option doesnot workout then u can try the below option also
any how you can draw vertical and horizontal lines using Template and Table.
for Template First define the Line and divide that into coloumns and goto select patterns and select the required pattern to get the vertical and horizontal lines.
For table, you have to divide the total width of the table into required no.of columns and assign the select pattern to get the vertical and horizontal lines.
if this helps, reward with points.
Regards,
Naveen -
Regarding smart forms (really urgent)
hi,
i am new to smartforms and i got report to make changes in the smart forms,plzz help me out as i know nothing about the smart forms by providing me it in easiest & simplest form.
if find useful help will be deifnately rewarded.
Edited by: ric .s on Mar 6, 2008 5:16 AMHi,
This Smartform Information I read, really helped me out.
I think it would be of some good help to you too..
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.
Advantages of SAP Smart Forms
1. The adaption of forms is supported to a large extent by graphic tools for layout and logic, so that no programming knowledge is necessary (at least 90% of all adjustments). Therefore, power user forms can also make configurations for your business processes with data from an SAP system. Consultants are only required in special cases.
2. Displaying table structures (dynamic framing of texts)
3. Output of background graphics, for form design in particular the use of templates which were scanned.
4. Colored output of texts
5. User-friendly and integrated Form Painter for the graphical design of forms
6. Graphical Table Painter for drawing tables
7. Reusing Font and paragraph formats in forms (Smart Styles)
8. Data interface in XML format (XML for Smart Forms, in short XSF)
9. Form translation is supported by standard translation tools
10. Flexible reuse of text modules
11. HTML output of forms (Basis release 6.10)
12. Interactive Web forms with input fields, pushbuttons, radio buttons, etc. (Basis-Release 6.10)
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.
Difference with SMARTFORMS vs. SapScript(SE71)
The Following are the differences :-
a) Multiple page formats are possible in smartforms which is not the case in SAPScripts
b) It is possible to have a smartform without a main window .
c) Labels cannot be created in smartforms.
d) Routines can be written in smartforms tool.
e) Smartforms generates a function module when activated.
f) Unlike sapscripts (RSTXSCRP), you cannot upload/download Smartform to your local harddisk.
It was said that it was provided in CRM 3.0 version, but not available in R/3. You can download smartforms into Local PC in a XML format. In the same way you can upload this XML format into Smartform. From the smartform editor itself you can call download option, if you are working in CRM 3.0 environment.
In R3 also, you can download into XML format. However, it's not sure about uploading. Refer to the program 'SF_XSF_DEMO'.
In 4.7 Enterprise, other have seen this utlity which is completey missing in 4.6c. There is functionality to downlaod a complete form or only a particular node. (Utilities -> Download form). It will create a XML file and save it in the hard disk.
For others, if you want to download/upload the Smartforms source, you will need the help from the Basis people. What you can do is to create a Transport and then FTP down to your local harddisk. When you need the Smartform source in another system, you have FTP up the Smartforms file back to the SAP server. Finally, the Basis team, will tp it into your system.
g) The protect and endprotect command in sapscript doesn't work with smartforms. For example on a invoice: First data of position no 80. is printed on page one, other data of position no 80 is printed on page 2. And there's nothing you can do about it. Actually, there is something you can do about it. By using a folder node and checking the 'protect' checkbox, everything in that folder will be page protected.
FAQ on Migrating SAPscript to SmartForms
Is it possible to migrate a SAPscript form to a Smart Form?
Smart Forms provides a migration tool for this purpose which migrates layout and texts of a SAPscript form to a Smart Form. It does not migrate SAPscript form logic of the print program. Using Smart Forms, this logic is described by the tree structure of the Form Builder. The effort involved in migrating it depends on the complexity of the print program.
Which Basis Release do I need to use SAP Smart Forms?
SAP Smart Forms is available as of R/3 Basis Release 4.6C.
I have heard that Smart Forms replaces SAPscript. What does "replace" mean?
It does not mean that SAPscript is removed from the Basis shipment. Even as of Basis Release 4.6C, SAPscript remains part of the SAP standard and there are no plans to remove it. Since Smart Forms is currently, and will continue to be, the tool for form maintenance for mySAP.com solutions, our further development efforts will focus on Smart Forms, not on SAPscript.
Do we have to migrate all SAPscript forms to Smart Forms?
There is no point in migrating all SAPscript forms already in use. Since SAPscript can still be used and will be available in the future, there is no need to. If you plan to migrate a SAPscript form, it is recommended that you check whether benefit is worth the effort involved
Conversion of SAPSCRIPT to SMARTFORMS
SAP provides a conversion for SAPscript documents to SMARTforms.
This is basically a function module, called FB_MIGRATE_FORM. You can start this function module by hand (via SE37), or create a small ABAP which migrates all SAPscript forms automatically.
You can also do this one-by-one in transaction SMARTFORMS, under
Utilities -> Migrate SAPscript form.
You could also write a small batch program calling transaction SMARTFORMS and running the migration tool.
SmartForms System Fields
Within a form you can use the field string SFSY with its system fields. During form processing the system replaces these fields with the corresponding values. The field values come from the SAP System or are results of the processing.
System fields of Smart Forms
&SFSY-DATE&
Displays the date. You determine the display format in the user master record.
&SFSY-TIME&
Displays the time of day in the form HH:MM:SS.
&SFSY-PAGE&
Inserts the number of the current print page into the text. You determine the format of the page number (for example, Arabic, numeric) in the page node.
&SFSY-FORMPAGES&
Displays the total number of pages for the currently processed form. This allows you to include texts such as'Page x of y' into your output.
&SFSY-JOBPAGES&
Contains the total page number of all forms in the currently processed print request.
&SFSY-WINDOWNAME&
Contains the name of the current window (string in the Window field)
&SFSY-PAGENAME&
Contains the name of the current page (string in the Page field)
&SFSY-PAGEBREAK&
Is set to 'X' after a page break (either automatic [Page 7] or command-controlled [Page 46])
&SFSY-MAINEND&
Is set as soon as processing of the main window on the current page ends
&SFSY-EXCEPTION&
Contains the name of the raised exception. You must trigger your own exceptions, which you defined in the form interface, using the user_exception macro (syntax: user_exception <exception name >).
Example Forms Available in Standard SAP R/3
SF_EXAMPLE_01
Simple example; invoice with table output of flight booking for one customer
SF_EXAMPLE_02
Similar to SF_EXAMPLE_01 but with subtotals
SF_EXAMPLE_03
Similar to SF_EXAMPLE_02, whereby several customers are selected in the application program; the form is called for each customer and all form outputs are included in an output request
Smart forms Frequently Asked Questions
Forcing a page break within table loop
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.
Font style and Font size
Goto Transaction SMARTSTYLES.
There you can create Paragraph formats etc just like in sapscript.
Then in your window under OUTPUT OPTIONS you include this SMARTSTYLE and use the Paragraph and character formats.
Line in Smartform
Either you can use a window that takes up the width of your page and only has a height of 1 mm.
Then you put a frame around it (in window output options).
Thus you have drawn a box but it looks like a line.
Or you can just draw "__" accross the page and play with the fonts so that it joins each UNDER_SCORE.
Difference between 'forminterface' and 'global definitions' in global settings of smart forms
The Difference is as follows.
To put it very simply:
Form Interface is where you 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 defs. is where you declare data to be used within the smartform on a global scope.
ie: anything you declare here can be used in any other node in the form.
Smartforms function module name
Once you have activated the smartform, go to the environment -> function module name. There you can get the name of funtion module name.
The key thing is the program that calls it. for instance, the invoice SMARTFORM LB_BIL_INVOICE is ran by the program RLB_INVOICE.
This program uses another FM to determine the name of the FM to use itself. The key thing is that when it calls this FM (using a variable to store the actual name), that the parameters match the paramters in your smartform.
Another thing to note is that the FM name will change wherever the SF is transported to.
So you need to use the FM to determine the name of the SF.
Here is the code that can be use to determine the internal name of the function module:
Code:
if sf_label(1) <> '/'. " need to resolve by name
move sf_label to externalname.
call function 'SSF_FUNCTION_MODULE_NAME'
exporting
formname = externalname
importing
fm_name = internalname
exceptions
no_form = 1
no_function_module = 2
others = 3.
if sy-subrc <> 0.
message 'e427'.
endif.
move internalname to sf_label.
endif.
It checks to see if the sf_label starts with a '/', which is how the internal names start. if it does, the name has already been converted. If not, it calls the FM and converts the name.
You would then CALL FUNCTION sf_label.
Smartforms FAQ Part Two
Smartforms output difference
Problem with Smartforms: in a certain form 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' if you go to SPAD Menu (Spool Administrator Menu) you can see the difference in the Printer Control and if you make the Printer control setting for both the printers as same. then it will be ok. and also u have to check what is the device type used for both the output devices.
SmartForms Output to PDF
There is a way to download smartform in PDF format.
Please do the following:
1. Print the smartform to the spool.
2. Note the spool number.
3. Download a PDF file (Acrobat Reader) version of the spool by running Program RSTXPDFT4 and entering the noted spool number.
SmartForm Doublesided printing question Your customer wants your PO SmartForm to be able to print "Terms and Conditinos" on the back side of each page. They don't want to purchase pre-printed forms with the company's logo on the front and terms & conditions on the back. Now this presents an interesting problem.
Has anyone else ever had a request like this? If for example there was a 3 page PO to be printed, they want 3 pieces of paper, the front side of each to containe the PO information (page 1, 2, and 3) and the back side of each piece of paper to containg the static "Terms & Conditions" information.
Anyone have a clue how to force this out?
Easy - page FRONT lists page CONTACTS as next page and CONTACTS lists FRONT as next page. Since CONTACTS does not contain a MAIN window, it will print the contacts info and then continue on to FRONT for the rest of the main items. Additionally, set print mode on FRONT to D (duplex) and set CONTACTS to 'blank' (for both resource name and print mode - this is the only way to get to the back of the page).
Transport Smart Forms
How does one transport SMARTFORM? SE01?
How do you make sure that both, the SMARTFORM & it's function module gets transported? Or does the FM with same name gets generated automatically in the transported client?
A smartform is transported no differently than any other object. if it is assigned to a development class that is atteched to a transport layer, it will be transported.
The definition is transported, and when called, the function module is regenerated.
This leads to an interetsing situation. On the new machine, it is very likely the function module name will be different than the name on the source system. Make sure, before you call the function module, you resolve the external name to the internal name using the 'SSF_FUNCTION_MODULE_NAME' function module.
Typically, generate the SF, then use the pattern to being in the interface. Then change the call function to use the name you get back from the above function module.
Smartforms: protect lines in main window.
How to protect lines in the main window from splitting between pages?
It was easy with SAPscript, but how to do it with SF's. For 4.7 version if you are using tables, there are two options for protection against line break:
- You can protect a line type against page break.
- You can protect several table lines against page break for output in the main area.
Protection against page break for line types
- Double-click on your table node and choose the Table tab page.
- Switch to the detail view by choosing the Details pushbutton.
- Set the Protection against page break checkbox in the table for the relevant line type. Table lines that use this line type are output on one page.
Protection against page break for several table lines
- Expand the main area of your table node in the navigation tree.
- Insert a file node for the table lines to be protected in the main area.
- If you have already created table lines in the main area, you can put the lines that you want to protect again page break under the file using Drag&Drop. Otherwise, create the table lines as subnodes of the file.
- Choose the Output Options tab page of the file node and set the Page Protection option. All table lines that are in the file with the Page Protection option set are output on one page.
Regards,
Rohini. -
hi
i am getting run time error while running DRIVER PROGRAM of smartform.
both driver program and smartform running successfully without any error while executing saprately.
while calling Smart Form by driver prg. it is giving error as :-
<u> <b> Events are already defined</b>.</u>
Description :- <b>You tried to define events for a section, but a section with
events is already active. You are not allowed to nest events.</b>
plz guide meHi,
Go to smartforms and check whether you had selected the events in the data tab of complex section or table which you had created which is under the short creteria
or.
check whter you had selected any events in the conditions tab of any of the node whether it maight be text element,table,section,window..etc.
Thanks,
Nethaji. -
hi gurus,
in the following link creating smart form,
the author says to right click on main window and select complex section.
http://smoschid.tripod.com/How_to_do_things_in_SAP/How_To_Build_SMARTFORMS/How_To_Build_SMARTFORMS.html
but in my system , when i right click on main window and click on create i see only till folder option,
i dont have complex section in my system,
do i need to enable anything..
rgds.Hai ,
If you are using higher version of ECC like ecc 6.0 you can get it that complex section node..first you
select your window where you want to create SECTION then
go to main menu of SAP(form,edit ,goto,utilities,enviornment,system,help) and click on EDIT->NODE->CREATE.
choose position ,either after or vefore main window and select COMPLEX SECTION from dropdown list.
i think it will solve your problem..
thanx to JIGNESHSAVALIA
hai sanjana,please put answerd if you get the answer,it will helpfull to other users to find exact answer...thanx....
Edited by: saifudheenc on Dec 26, 2010 3:05 PM -
Hi Frendz,
Can you pls give me any exercise on Smart forms ? i am learning sap smart forms.
Points for sure
VijayaCheck This...
www.sap-press.com/downloads/h955_preview.pdf
help.sap.com/bp_presmartformsv1500/html/EXAMP.HTM
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. -
pls send me how to developed a smart forms with one example .
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.
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.
regards,
sreelakshmi -
Purchase order smart forms and scripts
i need to create a smart form and script in simple purchase order there is no requirements has given to me, can any one tell me in detail how i need to do and what are the procedures i need to follow, example code will be usefull and steps to build it.
Hi,
Go through the links mentioned below.
http://www.****************/Tutorials/Smartforms/SFMain.htm
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/3c5d9ae3-0501-0010-0090-bdfb2d458985
http://www.sapmaterial.com/smartform_example.html
Re: Hands on SAP Smart Forms
smartforms
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
Reward if helpful.
Regards,
Harini.S -
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 -
Smart Form Functional Specification
Hi Gurus,
I have to design a smart form functional specification, but i don't have any idea about how to prepare the functional specification?
can anybody send me the smart form functional specification template ?
which helps me to prepare the specificationHi Devi,
Here is the FS for Form,
Functional Specification Document for Forms
Authors
Approved By
TABLE OF CONTENTS
1 OVERVIEW SECTION: 3
1.1 DOCUMENT OVERVIEW: 3
1.2 REVISION HISTORY: 3
1.3 OPEN ISSUES: 3
1.4 EXTERNAL REFERENCES: 3
1.5 REQUEST OVERVIEW: 3
1.6 GENERAL PROCESSING REQUIREMENTS: 4
2 BUSINESS/FUNCTIONAL REQUIREMENTS 5
2.1 REQUIREMENT DESCRIPTIONS: 5
2.2 BUSINESS DRIVER 5
2.3 TO-BE BUSINESS PROCESS: 5
2.4 TO-BE BUSINESS PROCESS FLOW DIAGRAM: 5
2.5 ASSUMPTIONS: 5
2.6 DEPENDENCIES: 5
2.7 RISKS: 5
2.8 SECURITY: 6
2.9 OTHER REQUIREMENTS: 6
3 FORM SECTION 7
3.1 REPORT SELECTION SCREEN: 7
3.2 STANDARD FORM NAME: 7
3.3 FORM LAYOUT: 7
3.4 DATA SOURCE: 7
3.5 SPECIAL REQUIREMENTS PROCESSING: 7
3.6 HOW TO EXECUTE THE FORM: 8
4 UNIT TEST PLAN SECTION 9
4.1 FUNCTIONAL UNIT TEST PLAN: 9
5 USER GUIDE REQUIREMENTS 10
5.1 USER GUIDE REQUIREMENTS: 10
6 APPENDIX 11
6.1 APPENDIX: 11
1 Overview Section:
1.1 Document Overview:
(Provide the high level identification information about the object to be developed. Id, title, Release etc)
Project Project Atlas
Development Object ID: SC-F-125
Development Object Title: Purchase Order Form
Release:
Process Team: Supply Chain
Process Area: Procure-to-Pay
1.2 Revision History:
{This section should be filled with other details about the owner of functional specs, current status of document as explained in the status key etc}
Date Modified Version Modified By Description of Change(s)
1.3 Open Issues:
(Any open issues should be reported in this section)
Issue # Issue Date Issue Title / Description Priority Resolved Date Any Other Comments
1.4 External References:
(Identify any documents referenced in any part of this document. (Attach documents where possible.)
Document Title Filename Author Identifier (Version/Date)
Process Flow diagram N/A
Screen Shots if any N/A
Sample data file PO Form Layout (Single Page) Erik Kraus 1/ (10/11/2006)
Sample data file PO Form Layout (Multiple Pages) Erik Kraus 1/ (10/11/2006)
1.5 Request Overview:
Complexity 0 High
1 Medium
0 Low
System(s) Impacted 1 R/3
0 CRM
0 BW
0
0 Other
Existing SAP transaction(s) involved? ME22N, ME23N
New SAP transaction(s) involved? ME22N; then click Messages to print or Print Preview to view.
Menu path for transaction(s) Logistics  Materials Management  Purchasing  Change
1.6 General Processing Requirements:
(Check the appropriate boxes for e.g. if the development object is an batch report that runs monthly, then check the Online and Monthly boxes in the Processing mode and frequency section and also provide the expected data volume if known)
Processing Mode: 1 Online
0 Batch
Frequency 0 Annually
0 Quarterly
0 Monthly
1 Daily
1 Real Time
1 Ad-Hoc
1 Others
Expected Data Volume
2 Business/Functional Requirements
Section 2 describes what is needed. This information is used to build the design (how to do it) in Sections 3 and on
2.1 Requirement Descriptions:
Describe the purpose of the object. Brief overview
The purchase order form is used to display the purchase order in SAP. This form can also be sent to the supplier via e-mail or fax in SAP. The PO can also be displayed in the Print Preview screen and printed out as well.
2.2 Business Driver
The PO Form is standard in SAP. Modifications to the form will be necessary to meet the needs of the purchasing organizations at Sage. The PO form is necessary so that all the details of the purchase order can be faxed/ emailed to the supplier and also can be printed out into a hard copy form for internal purposes. The PO form also needs to be able to be viewed via the print preview icon in SAP.
2.3 To-Be business process:
Describe the To-Be business process
Customized Sage Purchase Order Form.
2.4 To-Be business process flow diagram:
Describe the To-Be business process flow diagram
N/A
2.5 Assumptions:
List all the assumptions that were made when developing this object
1) Standard SAP PO Form will need to be modified from its standard layout.
2) Font for Purchase Order form will be Times New Roman
3) PO Form will be created in English
2.6 Dependencies:
List all the dependencies that were made when developing this object
N/A
2.7 Risks:
(What are the risks that make this development unique? What risks need to be proactively dealt with in order to be successful? What data sources are needed but not readily available? Are there any risks or concerns that make this development out of the ordinary?)
N/A
2.8 Security:
(Any security requirement for this object)
2.9 Other Requirements:
(If there are any other requirement which is not covered under section 2)
N/A
3 Form Section
Type: 0 SAP Script 1 Smart forms
3.1 Report Selection Screen:
Describe the selection screen of the program. Specify fields for selection and what checks are needed after the user has entered their criteria.
Field Name Select Options / Parameters / Radio Buttons / Check Boxes Default Values
From To Validation
Required /Optional F4 Values
N/A N/A N/A N/A N/A N/A
3.2 Standard form name:
Give the name of the SAP Script or Smart form name if copied from SAP
MEDRUCK Form in SAP
3.3 Form Layout:
Describe the form layout for each page.
The PO form will contain information at the Header Level, Item Level, and Authorizations levels.
Header Level:
The header level will contain all the supplier, bill-to party/address, and ship-to party/address information. The header level will also contain the payment and shipping terms, logo, page number, purchase order title, purchase order number, supplier number in SAP, and the PO date.
Item Level:
The item level will contain the item number, material and description, order unit, quantities, date required, unit cost, and the total amount of the line-item. The item-level will also contain the line-item text of purchase order.
Authorization:
The authorization section of the form will contain the name, telephone number, and email address of the purchasing agent.
Other:
-The Total Amount and Currency will be displayed to the right of the Authorization information.
-The layout will include sections and fields with borders. For example the Ship-To, Bill-To, and Supplier will be enclosed in rounded edge boxes. The Layout can be viewed in the Attachments section:
portion of section 3.4. which will show an example of a PO with only one page and a PO with multiple pages.
3.4 Data Source:
Identify the data that has to be appeared in the forms. Table Name-Field Name
All the fields will be available on the SAP standard form MEDRUCK. Any additional fields that are not on the standard form will need to be added. The mapping for additional fields not in the standard form will be shown below in each section (Header Level, Item-Level, and Authoriztions) if required.
Please see below for the required fields in the form:
This Section will contain details on the Header, Line-Item, and Authorization sections of the form. A section for attachements will also be inlcuded at the end.
I. Header Information:
The following fields will be displayed for the header information.
- Title: Purchase Order
- Logo: The Sage Software logo will appear in the top left corner of the form.
- PO Creation Date (MM/DD/YYYY)
- Supplier Number
- PO Number
- Page Number
- Bill to Name and Address
- Supplier Name and Address
- Ship to Name and Adress
- Payment Terms: (not on standard form, see field mapping section below)
- Shipping Terms: (not on standard form, see field mapping section below). The shipping terms are the same as the incoterms in SAP. There are two fields for the incoterms and both will be used for the shipping terms.
- Header Text
Additional Notes for Header Fields:
PO creation date should be in format MM/DD/YYYY
Page Number should be in format Page 1 of 1, Page 2 of 3, etc format
The Bill To name and address will come from the company code that is assigned to the plant in the purchase order.
The Ship To name and address will come from the storage location in the first line-item on the purchase order if the SC Vendor box is not checked on the delivery address tab of the purchase order. If the SC Vendor box is checked on the delivery address tab, then the Ship To address will come from the delivery address tab on the purhcase order from the central address management system.
The Supplier name and address will come from the vendor master in the purchase order.
The central address management system will need to be queried when looking up the Bill To, Deliver, and Supplier addresses.
Header Text: The text to be inserted here will be pulled from the Header Text in the purchase order.
Example: Text is pulled from the Header text with the green checkmark.
If the PO Form requires additional pages, then the header information should be duplicated on the subsequent pages.
Additional Fields :
Field Mapping for additional header fields that are not on the Standard SAP PO (MEDRUCK) Form . These fields can also be viewed on the PO Forms in the Attachments section.
PO Form Additional Fields
Field Name SAP Table/ Field Name
Payment Terms MEPO1226-ZTERM
Shipping Terms (incoterms1) MEPO1226-INCO1
Shipping Terms (incoterms 2) MEPO1226-INCO2
II. Item Level Information
The following fields will be on the PO form for the item-level:
- Item Number
- Material
- Material Description
- Unit (Unit of Measure)
- Quantity
- Date Reqd (MM/DD/YYYY)
- Unit Cost
- Amount
Each field will have an allotted amount of characters, so that all the text can fit on the line-item. Using .5 inch margins with times new roman 10pt font; there are 105 possible characters in microsoft word for the line-item details to fit on the line. The fields are broken down as follows with their allotted characters to accommodate the 105 allowed spaces:
Characters:
Item Number: 1-3
Material: 6-18
Descriptoin: 6-36
Unit: 39-49
Quantity: 44-56
Date Required: 60-69
Unit Cost: 77-86 (Commas and Delimals will be included in the Price. Two total decimal Spaces)
Amount: 92-103 (Commas and Delimals will be included in the Price. Two total decimal Spaces)
The Numbering Ranges above can be viewed below line-item 040 in the PO Form Outline (Sinlge Page) document in the Attachments section.
Note: These number ranges are shown as an example of what the form should like. They do not have to match up identicle to the specifications listed above.
Additional Notes for Line-Item Fields:
- Material Description will be displayed directly below the Material on the next line.
- Item Text: The Item text will be displayed if there are any item texts from the Purchase order. The text will be displayed two lines below the Material description. So there will be one line without any text. Also, the next line-item on the PO form will be displayed two lines below the item-level text; so there will be only one line with no text between the line-item with text and the subsequent line-item. Line items 020 and 030 depict this in the PO Form Outline_v1 document in the attachments section. The Line Item text will come from the Material PO text (identified below with a green checkmark) from the line-item on the purchase order as shown below.
- The Date Required Format will be MM/DD/YYYY.
- For every item in the purchase order, the program should loop through each item and check to see if the returns item box is checked (MEPO1211-RETPO). If this box is flagged on the purchase order, then the purchase order form needs to be updated with a return indicator. This indicator can be viewed on line-item 030 of the attached word document PO Form Outline (Single Page) in the Attachments section.
- The line-item fields should have the following alignment:
Material: Left
Material Description: Left
Unit: Left
Qty.: Right
Date Required: Left
Unit Cost: Right
Amount: Right
- If the line-items do not fit on one page, then they should continue on to subsequent pages. The Header information should be copied to all the subsequent pages and the authorization section will be displayed on the last page as well as the total amount and currency. This example can be viewed in document PO Form Outline (Multiple Pages) in the Attachments section.
Dislclaimer:
A disclaimer will also be included in this section and after all the line-items. The disclaimer text is still pending. An example of a disclaimer is shown in the PO Form Outline (Single Page) after line-item 040. This document can be found in the Attachments section.
If a PO requires multple pages, the the disclaimer will be displayed on the last page after the last line-item.
III. Authorization Information
This section will contain the purchasing agent: The purchasing agent will be the person who created the purchase order. This section will also contain their telephone number and email address.
The first and last name of the person who created the purchase order should be displayed here. This can be looked up in the users profile. The user profile will also contain their email and telephone number.
The field names for can be viewed below or in the PO Form Outline (Single Page) document in the Attachments section.
PO Form Additional Fields
Field Name SAP Table/ Field Name
First Name ADDR3_DATA-NAME_FIRST
Last Name ADDR3_DATA-NAME_LAST
Telephone Number SZA5_D0700-TEL_NUMBER
Email SZA5_D0700-SMTP_ADDR`
Attachments:
3.5 Special Requirements Processing:
Describe the processing required to support any special requirements (e.g. signatures, logos, OCR, bar coding etc.).
3.6 How to execute the form:
Describe how to trigger the form e.g. Standard SAP transaction code or custom transaction code etc. If standard SAP transaction code describe the menu path
The form needs to be able to be viewed and printed.
To View:
Transaction ME22N or ME23N; Then Click the Print Preview icon to view the Form.
To Print:
1) Transaction ME22N.
2) Click Messages
3) Select Output NEU and medium 1 Print output
4) Click the Further data button as shown in the screen shot above
5) Select 4 Send immediately (when saving the application)
6) Click Back then Click Save
7) Select LOCAL for logical Destination
8) Click Save again
4 Unit Test Plan Section
4.1 Functional Unit Test Plan:
Document the criteria to be used for validating programming accuracy and positive/ negative results
Step Scenario Expected Results
Number Description of what is being tested in this step Description of what is expected to happen in this step
1 Go to Transaction ME22N and Display PO Form by clicking the Print Preview Icon Form should mirror the forms in the Attachments section.
2 Go to Transaction ME22N and Print PO Form PO Form should print as showed in the Print Preview Screen and the forms the Attachments section.
3 Create PO that will force PO form to cross multiple pages and then click Print Preview PO Form should have Header information on all pages and line-item shoulds continue on to the subsequent pages. Authorization, Total Amount, Currency, and Disclaimer will be on the last page. The page numbers should also be correct and in the right format. This should mirror the PO Form Outline (Multiple Pages) document in the Attachments section.
4 Go to Transaction ME22N and print PO as in step 3 PO Form shoul print as showed in the Print Preview Screen and the PO Form Outline (Multiple Pages) document in the Attachments section.
5 User Guide Requirements
A User Guide must be provided to assist the person responsible for running the program(s). The User Guide must be in cookbook-style (required elements with step by step instructions) and annotated screen prints. The User Guide will be required in the running of the object in the Production environment as well as the QA and Test environments.
5.1 User guide Requirements:
N/A
6 Appendix
6.1 Appendix:
N/A
Hope it will help ..
Regards,
Arjun.
<b>Reward the points if it hepls</b> -
Why sapscripts are client dependent & smart forms are client independent?
why sapscripts are client dependent & smart forms are client independent?
You developed the script in development client , you can't find the same in testing client even though the server is same.
Where are You developed the smartform in development client , you can find the same in testing client even though the server is same.
Few more reasons why....? Please read below:
SAPscript technology is based on a mainframe product from the 1980s,
while Smart Forms have only been around since (roughly) 2001. With that sort of time gap,
there are bound to be significant differences between the two tools. As you have noted correctly, client dependence is a fundamental one.
Although SAPscript has had some incremental improvements over time,
its forms have always been -- under the hood -- relatively passive objects, with minimal embedded logic.
These forms were designed to be driven and controlled by ABAP programs,
much in the way ABAP programs read in database tables to produce reports;
if you ever download a SAPscript form (e.g., via utility program RSTXSCRP),
and look at the portable text file it produces you'll see what I mean.
Many text objects (e.g., invoice header texts) are bound directly to documents which are client-dependent, so it makes sense for these text objects to also be client-dependent. From a complexity standpoint, SAPscript forms are close enough to these text objects where I can see how it made sense at the time to make them client-dependent too.
Conversely, a Smart Form is significantly more robust and complex. For instance, it can contain program nodes and nested tables with patterns. When a Smart Form is compiled, it generates an ABAP function module and these are always client-independent. This is appropriate, given that this form has more in common with an ABAP program than its predecessor. For instance, when a print program calls a Smart Form, the form itself takes over to produce output, without any further direction from the print program. In fact, the join is so seamless that I often find myself using a Smart Form's Initialization section for logic to handle any data gathering not handled by the print program. I would never even think to attempt this with SAPscript.
Several factors figured into SAP's decision to make Smart Forms client-independent, including customer feedback. There are significant advantages to client-independence. For instance, a change made in one development client happens immediately across all development clients. Among other things, this means we don't have to waste time figuring which client contains the most recent version -- they all do! In addition, transporting Smart Forms is easier, since we can safely bundle them together in the same transport as their client-independent print programs (no worry about mixing client-dependent and independent objects).
Check the beloe links for more information
script and smart forms
http://www.sap-img.com/smartforms/smartform-sapscripts.htm
Maybe you are looking for
-
Is Windows Live Mail 2012 compatible with Windows 8.1 ?
I'm having ongoing problems with WLM 2012 not responding after I try to attach a file to a new email. As soon as I click 'attach' the program stops responding and I have to close it down. I've used 'Find & Fix Problems' and in 'Programs' it offers di
-
I have CS6 and I just got a new Leica D-LUX and can not view my RAW (.RWL) images in Bridge what do I do? I already tried updating Bridge from the Help menu.
-
Problem saving data model when using Oracle DB Pivot feature
I have problem saving a data model - SQL Query that uses the Oracle DB PIVOT feature? When I hit save, nothing happends.... have also tried "save as" - nothing is saved No error message is shown. Is Oracle DB PIVOT not supported by OBIEE? The SQL tha
-
Do you have to "clean up" a Mac like you do a pc?
Just wondering if you have to reconfigure a Mac to make it run faster, and if you do, how do you do it?
-
Picked up an iPhone 4 Monday @ the Danbury Apple Store ... The phone is fine but now iTunes is showing an error that the info does not match bank records (this is the same info which has worked for over a year) ... Have been emailing with iTunes supp