Application Development and Automation Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 
Read only

smartforms

Former Member
0 Likes
707

Hi Guys,

I'm new to smartforms. Can anyone tell me what a form interface is? And can you'll please send me some good faq's on smartforms.

Thanks in advance.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
525

Hi,

In Smartforms we will be passing Work Areas and tables from Print program into smartform, and those values passed are called at the interface section of smartform.

Suppose we have a work area in Print Program for example:-

1) w_mara ( w_matnr type mara )

2) t_makt ( t_makt TYPE STANDARD TABLE OF makt )

and we are populating this workarea with values from MARA and t_makt with values from MAKT

In the print program we use a function-

DATA: c_fmname TYPE tdsfname VALUE 'smartform name'.

<u><i>*This Function Returns the name of generated Function Module.</i></u>

CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'

EXPORTING

formname = c_fmname

IMPORTING

fm_name = w_fmname

EXCEPTIONS

no_form = 1

no_function_module = 2

OTHERS = 3

.

IF sy-subrc NE 0.

EXIT.

ENDIF.

<u><i>*To call the generated Function Module in the above step.</i></u> CALL FUNCTION w_fmname

EXPORTING

w_mara = w_mara

TABLES

t_makt = t_makt

EXCEPTIONS

formatting_error = 1

internal_error = 2

send_error = 3

user_canceled = 4.

In smartform interface we need to call all the workareas and internal tables :-

in IMPORT Tab we need to declare;

w_mara type mara.

in TABLES Tab section we need to declare:

t_makt like MAKT.

Reward Points if Helpful

Regards

Avi...

4 REPLIES 4
Read only

Former Member
0 Likes
525

Hi,

Declare a structure in SE11 with the follg.

LOW

HIGH

SIGN

OPTION

low and high should have datatype of your value in range.

Then pass it in smartform->Form interface->table

itab like <struture you created in SE11>

For more info.,refer

https://www.sdn.sap.com/irj/servlet/prt/portal/prtroot/com.sap.km.cm.docs/library/uuid/ccab6730-0501...

check most imp link

http://www.sapbrain.com/ARTICLES/TECHNICAL/SMARTFORMS/smartforms.html

FAQ

http://www.sap-img.com/smartforms/smart-006.htm

http://www.sap-img.com/smartforms/smartforms-faq-part-two.htm

Regards,

Priyanka.

Read only

Former Member
0 Likes
526

Hi,

In Smartforms we will be passing Work Areas and tables from Print program into smartform, and those values passed are called at the interface section of smartform.

Suppose we have a work area in Print Program for example:-

1) w_mara ( w_matnr type mara )

2) t_makt ( t_makt TYPE STANDARD TABLE OF makt )

and we are populating this workarea with values from MARA and t_makt with values from MAKT

In the print program we use a function-

DATA: c_fmname TYPE tdsfname VALUE 'smartform name'.

<u><i>*This Function Returns the name of generated Function Module.</i></u>

CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'

EXPORTING

formname = c_fmname

IMPORTING

fm_name = w_fmname

EXCEPTIONS

no_form = 1

no_function_module = 2

OTHERS = 3

.

IF sy-subrc NE 0.

EXIT.

ENDIF.

<u><i>*To call the generated Function Module in the above step.</i></u> CALL FUNCTION w_fmname

EXPORTING

w_mara = w_mara

TABLES

t_makt = t_makt

EXCEPTIONS

formatting_error = 1

internal_error = 2

send_error = 3

user_canceled = 4.

In smartform interface we need to call all the workareas and internal tables :-

in IMPORT Tab we need to declare;

w_mara type mara.

in TABLES Tab section we need to declare:

t_makt like MAKT.

Reward Points if Helpful

Regards

Avi...

Read only

Former Member
0 Likes
525

Hi,

form interface is nothing but its an interface between the program and smartforms.so which are to be transfered from program to smartform,those r specified in form interface.

Smartforms

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

How to trace smartform

http://help.sap.com/saphelp_47x200/helpdata/en/49/c3d8a4a05b11d5b6ef006094192fe3/frameset.htm

I think this will help u...

Read only

Former Member
0 Likes
525

Hi,

What are Smart Forms?

SAP’s new print form solution, SAP Smart Forms, is the successor of SAPscript. All new

development of forms at SAP will be done using the Smart Form print solution. However,

SAPScript will still be supported for those forms already created in SAPScript, and for customers

who have created their own forms in SAPScript.

SAP Smart Forms is a tool for the maintenance of forms on which application data from the SAP

system can be output. Depending on the application, the number of forms to be printed can be

very high, and they might have to be printed in a short period of time, in a mass printing.

Examples of mass printing are monthly invoices sent by telecom companies or salary statements.

The output of application data is placed into a dynamically expandable table where the size and

layout of the output table is determined by the number of records being retrieved.

What About SAPscript?

Customers can use either SAPScript or Smart Forms as their forms solution. SAP recommends

you use Smart Forms for new developments (from 4.6C), because these forms are much easier

to edit when using the Smart Forms graphical tools. Also, further development is planned for the

Smart Form print solution.

For example, the customer can use a preconfigured Smart Form for the Purchase Order, and a

SAPscript form for the Production Order (if no suitable Smart Form is available), or create the

Smart Form.

While unnecessary, a user’s prior knowledge of SAPScript forms can accelerate their Smart

Forms learning because some tools are used both by Smart Forms and SAPscript (for example,

font maintenance transaction SE73, SAPScript texts, and more).

SAP Smart Form Process Overview

The basic structure of SAP Smart Forms consists of the Smart Form Builder, the Smart Form

print form template (which you create or is given to you as a preconfigured starting point), the

Smart Form function module, and the Smart Form print program (also described as a driver

program).

The Smart Form print programs are not the same as SAPScript programs, and you cannot use a

SAPScript print program with a Smart Form print form.

Programming Flow

When an SAP Smart Form template is created, a user creates the form layout, defines the

required fields, conditions, and special programming instructions in the Smart Form template

using the Smart Form Builder.

After the form design is complete, the form needs to be activated before it can be tested or

accessible by print programs.Activating the form initiates the generation of a function module that

handles all of the form’s processing.

This function module interacts with the application program and print program to create the output

in the user-defined output media for the specified device.

The main SAP Smart Form interface is the Smart Form Builder. Call this transaction by entering

the transaction code smartforms in the Command field.

Smart Form Print Form Template

A Smart Form print form is designed using the Smart Form Builder. This formdoes not create the

final output. The Smart Form function module, generated by the Smart Form print form, creates

the output.

Smart Form Function Module

The Smart Form function module is the code generated automatically when you activate your

Smart Form print form. Each time you make a change to your print form in the Smart Form

Builder, the change needs to be activated in the Smart Form Builder before taking effect in your

output.

Smart Form Print Program

The Smart Form print program is where the majority of data extraction occurs. Typically, one

Smart Form print program should be associated with one type of form. For example, the Smart

Form purchase order has a corresponding Smart Form purchase order print program that only

handles data extraction for that form.

This one-to-one relationship improves the transparency for the user between what is being

performed in the form versus the print program.

We recommend that customer-specific customization be performed in the Smart Form print form,

and not in the Smart Form print program.

Graphics

Graphics to be used in forms must first be stored on the Business Document Server (BDS) of the

SAP System (as a bitmap image or TIFF). The transaction code SE78 is used for this purpose.

Applications graphics include:

• Logos

• Preprinted forms that are scanned in as background pictures

Templates and Tables

SAP Smart Forms has a powerful new tool called the Table Painter. The Table Painter provides

more powerful functionality over SAPScript. For example, table and template outputs that are

rather difficult to create in SAPscript are much easier in Smart Forms. One exciting feature in

Smart Forms is the ability to create dynamically expandable tables.

In Smart Forms, although templates still have a fixed number of rows, the number of rows in a

Smart Form table can be dynamic. In both Smart Form templates and tables, you can determine

how many cells a line of a table output should have using the Table Painter's row types.

Additionally, you can use a scanned-in image of a preprinted third-party form (such as a W2 form

for Employee Earnings in the U.S.) as a background image in the creation of templates. A

background image proves especially useful when laying out fields on a template. This

background image can either be printed or not when the form is output.

Tables

When you work on a table node in your form, the node is marked with the table icon . In the

maintenance frame, you get a new type of tab,Working with Nodes in a Form

All nodes can be created or moved using the navigation tree.

• Node Order:

&#8722; The node order impacts the order in which form output is processed. Addtitionally,

conditions that you can create on a specific node determined whether a node is

processed.

&#8722; You determine the order of output on the form based on the order that you arrange the

nodes in the Navigation Tree.

• Node Movement:

&#8722; To move a node, click and drag it to the new desired location in the navigation tree.

&#8722; You can also move a node by double-clicking in the Form Painter, the right frame in the

Form Builder screen. If your Form Painter is not visible on the screen, choose Form

Painter. You can control whether the Form Painter is visible or hidden using this button.

You can navigate to the relevant nodes in the navigation menu by selecting the desired

output area in the right frame.

• Creation and Definition:

&#8722; For each node, you define the attributes for the node in the Form Builder’s maintenance

frame (for example, text, the technical name of the graphics to be included, or styles).

&#8722; In the Form Builder’s maintenance frame, the tabs for Output options and Conditions

appear in all output node types.

&#8722; A graphic is added as a separate node as well, and is positioned on the form using the

Form Painter.

All texts of the form are output using text nodes. As an exception, addresses can also

be output using address nodes (direct access to the Business Address Services,

previously Central Address Management).

Node Creation Steps

1. Create a text node: Position your cursor where you want to add your text node and click.

2. Then right click and choose Create &#8594; Text

3. Enter the textHello World in the text editing box in Form Builder’s center frame, the

maintenance frame.

4. Save the node.

5. To check the form, choose .

6. After the form has been checked, choose to activate it.

When the form is activated, the Form Builder generates a function module. The name

of the generated function module is unique within a system.

The module must be regenerated if it is transported to another system. You can view

the Function Module name by pressing the F8 key, which brings you to the initial

screen of the Function Builder.