Smartform questions

Please provide details and examples on the following two questions:
1. How can we create a smartform without a main window? Any example??
2. How can we debug any smartform? best practices??
Tx
Good answers r rewarded.

In the Smartform, create a Code Node and within the Code Node you can hardcode a normal abap
Break Point.
to Debug SF:
For debugging -
1. Write BREAK POINT in the code window.
2. Put a break point on the call function in the driver program
3. Put a break point in the generated Function module.
OR
1) DEBUG Smartform:
1) One way to debug smartform is to debug the Function Module of that smartforms.
If you want to debug particular smartform node that the solution would be,
insert a "Program Line" just above the node you want to debug and this program line write a normal abap breakpoint.
So whenever you call the smartforms, it will stop at this breakpoint and you can debug onwards.
2) SFTRACE can be used for debugging SMARTFORMS.
OR
Four ways you can debugging.....
1.place SFTRACE inplace where we enter T_CODE and press ENTER.
after that press F8.
2 ./H
3 /SH
4.after generating the function module there is a button DEBUGGING
These are Help links
http://help.sap.com/saphelp_erp2005/helpdata/en/c4/8d4a4273bb3830e10000000a155106/frameset.htm
See the Link below:
http://help.sap.com/saphelp_47x200/helpdata/en/df/ef7f380c2f2e3ce10000009b38f8cf/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/60/6fc10c6748479392101e09c9e8d33a/frameset.htm
http://help.sap.com/saphelp_erp2005/helpdata/en/42/c1151c55b33119e10000000a1553f7/frameset.htm
Go through the following Links, here u can find example with step
by step.
http://smoschid.tripod.com/How_to_do_things_in_SAP/How_To_Build_SMARTFORMS/How_To_Build_SMARTFORMS.html
Check these step-by-step links
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
Check these links also.
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
for Smartforms material
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
How to trace smartform
http://help.sap.com/saphelp_47x200/helpdata/en/49/c3d8a4a05b11d5b6ef006094192fe3/frameset.htm
http://www.help.sap.com/bp_presmartformsv1500/DOCU/OVIEW_EN.PDF
http://www.sap-img.com/smartforms/smart-006.htm
http://www.sap-img.com/smartforms/smartforms-faq-part-two.htm
Re: Need FAQ's
http://www.sap-img.com/smartforms/smart-006.htm
http://www.sap-img.com/smartforms/smartforms-faq-part-two.htm
Re: Need FAQ's
scripts
http://www.sappoint.com/abap/ssintro.pdf
http://www.sappoint.com/abap/sscript.pdf
http://www.sappoint.com/abap/sscript.pdf
http://www.sappoint.com/abap/lsetssap.pdf
http://www.sappoint.com/abap/sscrtpex1.pdf
http://www.sap-img.com/sapscripts.htm
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCSRVSCRPROG/BCSRVSCRPROG.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCSRVSCRRDI/BCSRVSCRRDI.pdf
http://help.sap.com/printdocu/core/Print46c/en/data/pdf/BCSRVSCREDIT/BCSRVSCREDIT.pdf
How to create a New smartfrom, it is having step by step procedure
http://sap.niraj.tripod.com/id67.html
step by step good ex link is....
http://smoschid.tripod.com/How_to_do_things_in_SAP/How_To_Build_SMARTFORMS/How_To_Build_SMARTFORMS.html
Here is the procedure
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.
for Smartforms material
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
How to trace smartform
http://help.sap.com/saphelp_47x200/helpdata/en/49/c3d8a4a05b11d5b6ef006094192fe3/frameset.htm
http://www.help.sap.com/bp_presmartformsv1500/DOCU/OVIEW_EN.PDF
http://www.sap-img.com/smartforms/smart-006.htm
http://www.sap-img.com/smartforms/smartforms-faq-part-two.htm
Re: Need FAQ's
check most imp link
http://www.sapbrain.com/ARTICLES/TECHNICAL/SMARTFORMS/smartforms.html
step by step good ex link is....
http://smoschid.tripod.com/How_to_do_things_in_SAP/How_To_Build_SMARTFORMS/How_To_Build_SMARTFORMS.html
Subtotals - Check the link...
Re: Subtotal with Table Node in smartforms
SCRIPTS
SAPScripts
SAPScripts
Link for SAP Scripts (step by step procedure)
http://smoschid.tripod.com/How_to_do_things_in_SAP/How_To_Create_A_SAPSCRIPT_Form/How_to_Create_SAPSCRIPT.html
http://esnips.com/doc/1ff9f8e8-0a4c-42a7-8819-6e3ff9e7ab44/sapscripts.pdf
http://esnips.com/doc/1e487f0c-8009-4ae1-9f9c-c07bd953dbfa/script-command.pdf
http://esnips.com/doc/64d4eccb-e09b-48e1-9be9-e2818d73f074/faqss.pdf
http://esnips.com/doc/cb7e39b4-3161-437f-bfc6-21e6a50e1b39/sscript.pdf
http://esnips.com/doc/fced4d36-ba52-4df9-ab35-b3d194830bbf/symbols-in-scripts.pdf
http://esnips.com/doc/b57e8989-ccf0-40d0-8992-8183be831030/sapscript-how-to-calculate-totals-and-subtotals.htm
SAP SCRIPT FIELDS
http://help.sap.com/saphelp_erp2005vp/helpdata/en/d1/8033ea454211d189710000e8322d00/content.htm
scripts easy material
http://www.allsaplinks.com/sap_script_made_easy.html
DIFFERENCE BETWEEN SMARTFORMS AND SAPSCRIPTS ARE:
1. script is client dependent one while smartform is client independent.
2. In scripts we have to write print program while in smart forms it is not necessary.
3. In scripts we can print background logo while in smartforms we cant print background logo
4. In scripts we have 99 main windows while in smartforms we have only 1 main window.
5. In scripts we should write paragraph format otherwise we cant execute program while in smartforms no need to create paragraph formats .
6. In scripts we can print the text in only two character formats.
while in smartforms we can do with more.
7. In scripts we dont have line types while in smartforms we have linetypes.
8.Multiple page formats are possible in smartforms which is not the case in SAPScripts
9.It is possible to have a smartform without a main window .
10.Labels cannot be created in smartforms.
11.Routines can be written in smartforms tool.
12.Smartforms generates a function module when activated.
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. Client dependence is a fundamental one. Although SAPscript has had some incremental improvements over time, its forms have always been -- under the hood -- relatively ...
also refer
difference between smartforms and scripts
Diff betwen Scripts & smartforms
advantages of smartforms over scripts
Whenever a smartform is created, a funciton module gets generated. So, we can access the smartform in different clients. But in case of scripts, it is not so.. So, scripts are client dependent.
Smart Forms are implemented using the Function Module SSF*, and all the logic lies in the FM. Function Modules are client independent objects, so Smart forms are also client independent
SAP Scripts are the Layout Forms that you design and there are aviable in the client in which you have created them, for making them available you have to copy across the clients.
Because, Sapscripts are saved in ITF format as text in client dependant tables STXH and STXL. smartforms are not saved in client dependant tables and visible across clients.
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.
I suspect 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).
Structure of a print program
OPEN_FORM function
CLOSE_FORM function
WRITE_FORM
START_FORM function
END_FORM function
CONTROL_FORM function
The print program is used to print forms. The program retieves the necesary data from datbase tables, defines the order of in which text elements are printed, chooses a form for printing and selects an output device and print options.
Function modules in a printprogram:
• When you print a form you must used the staments OPEN_FORM and CLOSE_FORM. To combine forms into a single spool request use START_FORM and END_FORM.
• To print textelements in a form use WRITE_FORM. The order in which the textelements are printed, is determined by the order of the WRITE_FORM statements. Note: for printing lines in the body, you can also use the WRITE_FORM_LINES function module.
• To transfer control command to a form use CONTROL_FORM.
Structure of a print program
Read data
Tables: xxx.
SELECT *
FROM xxx.
Open form printing - Must be called before working with any of the other form function modules.
Must be ended with function module CLOSE FORM
call function 'OPEN_FORM'.....
To begin several indentical forms containing different data within a single spool request, begin each form using START_FORM, and end it using END_FORM
call funtion 'START_FORM'.....
Write text elements to a window of the form
call function 'WRITE_FORM'.....
Ends spool request started with START_FORM
call funtion 'END_FORM'.....
Closes form printing
call function 'CLOSE_FORM'...
OPEN_FORM function
Syntax:
CALL FUNCTION 'OPEN_FORM'
EXPORTING
APPLICATION = 'TX'
ARCHIVE_INDEX =
ARCHIVE_PARAMS =
DEVICE = 'PRINTER'
DIALOG = 'X'
FORM = ' '
LANGUAGE = SY-LANGU
OPTIONS =
MAIL_SENDER =
MAIL_RECIPIENT =
MAIL_APPL_OBJECT =
RAW_DATA_INTERFACE = '*'
IMPORTING
LANGUAGE =
NEW_ARCHIVE_PARAMS =
RESULT =
EXCEPTIONS
CANCELED = 1
DEVICE = 2
FORM = 3
OPTIONS = 4
UNCLOSED = 5
MAIL_OPTIONS = 6
ARCHIVE_ERROR = 7
INVALID_FAX_NUMBER = 8
MORE_PARAMS_NEEDED_IN_BATCH = 9
SPOOL_ERROR = 10
OTHERS = 11
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Some important parameters:
FORM Name of the form
DEVICE • PRINTER : Print output using spool
• TELEFAX: Fax output
• SCREEN: Output to screen
OPTIONS Used to control attrubutes for printing or faxing (Number of copies, immediate output....
The input for the parameter is structure ITCPO.
CLOSE_FORM function
CALL FUNCTION 'CLOSE_FORM'
IMPORTING
RESULT =
RDI_RESULT =
TABLES
OTFDATA =
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SEND_ERROR = 3
SPOOL_ERROR = 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.
Paramerters:
RESULT Returns status information and print/fax parameters after the form has been printed. RESULT is of structure ITCPP.
WRITE_FORM function
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = ' '
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'MAIN'
IMPORTING
PENDING_LINES =
EXCEPTIONS
ELEMENT = 1
FUNCTION = 2
TYPE = 3
UNOPENED = 4
UNSTARTED = 5
WINDOW = 6
BAD_PAGEFORMAT_FOR_PRINT = 7
SPOOL_ERROR = 8
OTHERS = 9
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Some important parameters:
ELEMENT Specifies which textelement is printed
WINDOW Specifies which window is printed
TYPE Specifies the output area of the main window. This can be:
• TOP - Used for headers
• BODY
• BOTTOM - Used for footers
FUNCTION Specifies whether text is to be appended, replaced or added
Example of how to use the WRITE_FORM function module together with a script.
Form layout of the MAIN window
/E INTRODUCTION
Dear Customer
/E ITEM_HEADER
IH Carrier, Departure
/E ITEM_LINE
IL &SBOOK-CARRID&, &SPFLI-DEPTIME&
/E CLOSING_REMARK
The print program
Writing INTRODUCTION
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'INTRODUCTION'
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'MAIN'
EXCEPTIONS
OTHERS = 8
Writing ITEM_HEADER
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'ITEM_HEADER'
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'MAIN'
EXCEPTIONS
OTHERS = 8
Set ITEM_HEADER into TOP area of main window for subsequent pages
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'ITEM_HEADER'
FUNCTION = 'SET'
TYPE = 'TOP'
WINDOW = 'MAIN'
EXCEPTIONS
OTHERS = 8
Write ITEM_LINE
LOOP AT .....
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'ITEM_LINE'
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'MAIN'
EXCEPTIONS
OTHERS = 8.
ENDLOOP.
Delete ITEM_HEADER from TOP area of main window
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'ITEM_HEADER'
FUNCTION = 'DELETE'
TYPE = 'TOP'
WINDOW = 'MAIN'
EXCEPTIONS
OTHERS = 8
Print CLOSING_REMARK
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'CLOSING_REMARK'
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'MAIN'
EXCEPTIONS
OTHERS = 8
START_FORM function
CALL FUNCTION 'START_FORM'
EXPORTING
ARCHIVE_INDEX =
FORM = ' '
LANGUAGE = ' '
STARTPAGE = ' '
PROGRAM = ' '
MAIL_APPL_OBJECT =
IMPORTING
LANGUAGE =
EXCEPTIONS
FORM = 1
FORMAT = 2
UNENDED = 3
UNOPENED = 4
UNUSED = 5
SPOOL_ERROR = 6
OTHERS = 7
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
END_FORM function
CALL FUNCTION 'END_FORM'
IMPORTING
RESULT =
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SPOOL_ERROR = 3
OTHERS = 4
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CONTROL_FORM function
The CONTROL_FORM function module alows you to create SapScript control statements from within an APAB program.
Syntax:
CALL FUNCTION 'CONTROL_FORM'
EXPORTING
command =
EXCEPTIONS
UNOPENED = 1
UNSTARTED = 2
OTHERS = 3
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
Example:
Protecting the text element ITEM_LINE
CALL FUNCTION 'CONTROL_FORM'
EXPORTING
COMMAND = 'PROTECT'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
TEXELEMENT = 'ITEM_LINE'.
CALL FUNCTION 'CONTROL_FORM'
EXPORTING
COMMAND = 'ENDPROTECT'.
debugging smartform
for Smartforms material
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
How to trace smartform
http://help.sap.com/saphelp_47x200/helpdata/en/49/c3d8a4a05b11d5b6ef006094192fe3/frameset.htm
http://www.help.sap.com/bp_presmartformsv1500/DOCU/OVIEW_EN.PDF
http://www.sap-img.com/smartforms/smart-006.htm
http://www.sap-img.com/smartforms/smartforms-faq-part-two.htm
Re: Need FAQ's
check most imp link
http://www.sapbrain.com/ARTICLES/TECHNICAL/SMARTFORMS/smartforms.html
step by step good ex link is....
http://smoschid.tripod.com/How_to_do_things_in_SAP/How_To_Build_SMARTFORMS/How_To_Build_SMARTFORMS.html

Similar Messages

  • A SMARTForm question--new page

    hi guys,
    a SMARTFORM question need your help here.
    ABAP program
    itab1 (sflight-carrid)
    itab2 (sflight-carrid,connid,paymentsum,seatsmax,seatsocc)
    in this example, i have 'LH' and 'SQ' in itab1
    pass it to SMARTFORM
    SMARTFORM
    1.how to separate both the 'LH' and 'SQ' info into difference form to print?
    2.also i have a separte window with text field(for heading purpose, in this example will be the carrid) place above the main window area. how to get the correct carrid?
    thank you very much

    Hi,
    First of all in itab1 (sflight-carrid) you have only two types of carrid ('LH' ,'SQ' ) or multiple.
    If you have only two types of carrid and you want to print both in separate forms then,
    It is simple, in your abap program differentiate the two types into two different internal tables. And pass the two tables to the smart form
    call two different form
    1.       if itab1-carrid = 'LH'.
                       call form 'Form1'.
                       pass the itab2.
              elseif itab1-carrid = 'SQ'.
                       call form 'Form2'.
                       pass the itab3.
    2.      No need of define a widow for heading. Place table in main window.
              And in the header of table add text and write your itab-carrid.

  • SMARTFORM QUESTION

    Dear all;
       How to call function in smartform?
    Regards,
    Parag Gavkar.

    goto tcode SMARTFORMS
    in global settings > global difinitions>innitialization tab
    u can use any codes or functions like abap editeo
    or use any code line in table view
    Rewards if helpful

  • Smartform questions? thank you in advance!

    Does anyone know whether one print program can trigger two smartforms at the same time?
    if yes, how can I do? thank you much, I am grateful for your answer and help!

    Trigger Both Smartform at same time i think its not possible.But you can maintain same program for two smartforms.Both will be printed one after one.
    Call twice(If you need to print both one by one) SSF*** module in driver program.

  • Hi, everyone, I met a smartform question about print preview the form

    when I print preview the form there is an error message that WA_DOC_ITEM-TARIFNR doesn't exist in form, can anyone tell me how to solve this? and why? thank you in advance and merry christmas to you all.

    well it must be getting used some where check carefully,
    In main window if u r using a table element then goto data tab and see what internal table and work area u r looping at.
    кu03B1ятu03B9к

  • Drilldown in Smartforms , possible ?

    Requirement
    To create drilldown report from output screen of smartforms
    Question
    Is it possible to do that ?
    Please mention or kindly show me some alternative ideas.
    Actually, I convert smartforms to PDF and need drill down from PDF.
    But drilldown in smartforms, if possible, is fine anyhow.
    Thanks,
    Git

    I dont think that it is possible in smartforms... but adobe forms are interactive forms, so it may be possible in adobe forms.

  • How to Print next Page in smartform ?

    Hello ,
    I want to print next page in smartform.
    The situation is :-
    I am passing an internal table containing list of personal numbers.
    I have to print their details . Every candidate's detail should be printed on a new page .
    I have designed the whole form , but I am not print their details on a New Page.
    Please guide.
    Thanks in Advance.

    Hi, Nikita.
    Please Have a Look the following Link
    [MODERATOR MESSAGE: SapScript/Smartform questions go in FORM PRINTING forum|/thread/1360534 [original link is broken];
    So, Please Post Questions Regarding SapScript and Smartform in FORM PRINTING.
    1. First of all you need to set a Flag at the end of every Personal Number.
    2. Than Right Click on the object Like Main Window
    --> Create --> Flow Logic --> Command
    3. From First Tab of Command General Attributes Check the Check Box Go to New Page and Select Your Page
    4. In the Conditions Tab Give you Flag Condition.
    Hope will help you to solve out your problem,
    Please Reply if any Issue,
    Best Regards,
    Faisal

  • SAP Note Number 1535966 problem with IDWTFILE_US_1042.XML

    Dear Colleagues,
    I have installed the new SAP note for the 1099 from for Tax year of 2010 (note Nr.1535966).
    at Step 7 when I upload the IDWTFILE_US_1042.XML file, the activation of this files fails and gives the following error messages:
    Error in node WH Agent Contact: source field IDWTADD-US_AGENT_NAME does not exist
    Message no. DMEE_ABA306
    Error in node WH Agent Dept.: source field IDWTADD-US_DEPT_TITLE does not exist
    Message no. DMEE_ABA306
    My Platform is as follow:
    SAP_ABA     700     0013     SAPKA70013     Cross-Application Component
    SAP_BASIS     700     0015     SAPKB70015     SAP Basis Component
    PI_BASIS     2005_1_700     0013     SAPKIPYJ7D     PI_BASIS 2005_1_700
    ST-PI     2008_1_700     0001     SAPKITLRD1     SAP Solution Tools Plug-In
    SAP_BW     700     0015     SAPKW70015     SAP NetWeaver BI 7.0
    SAP_AP     700     0009     SAPKNA7009     SAP Application Platform
    SAP_APPL     600     0010     SAPKH60010     Logistics and Accounting
    SAP_HR     600     0018     SAPKE60018     Human Resources
    FI-CA     600     0010     SAPK-60010INFICA     FI-CA
    FI-CAX     600     0010     SAPK-60010INFICAX     FI-CA Extended
    Have you had this problem? do you know of a solution? It seems to me that the relevant IDWTFILE_US_1042.XML file  must  be incorrect!
    Help is greatly appreciated.
    Thank you.
    Regards;
    Hameed

    Hi Cheryl,
    I used the trx SMARTFORMS to upload all of the forms mentioned.  This earlier thread with one of my questions answered might be helpful to you.
    OSS Note 1535966 - a Smartforms question
    Also, you may need to change the package for some of the forms to ID-FI-US as the note suggests.  Use trx SE03 to change the package for a form that might not already be in package ID-FI-US.
    We only use form MISC and none of the others, but I uploaded and did the note steps for all anyway.
    I think this note lacks a bit of clarity.
    Thanks
    Jeremy

  • SAP CM:Extended Claim number

    Hi,
    Am very new to SAP CM.
    can any one tell me what is the use of extended claim number and paymnent & reserves

    Hi Cheryl,
    I used the trx SMARTFORMS to upload all of the forms mentioned.  This earlier thread with one of my questions answered might be helpful to you.
    OSS Note 1535966 - a Smartforms question
    Also, you may need to change the package for some of the forms to ID-FI-US as the note suggests.  Use trx SE03 to change the package for a form that might not already be in package ID-FI-US.
    We only use form MISC and none of the others, but I uploaded and did the note steps for all anyway.
    I think this note lacks a bit of clarity.
    Thanks
    Jeremy

  • Interview questions on Scripts & Smartforms

    Can anyone please help me with the answers for these questions that were asked in an interview.
    1. in Scripts, I have 10 address lines there were blanks in between rows how can I avoid those?
    2. In smartforms, If  I want to transfer the data from print programme to smartform, How can I do?

    Hi
    When you create a paragraph format in SE71
    you will observe one check box for NO BLANK LINES
    just check that, it is a property of that Paragraph format..
    If you see the following code of smartform you will observe the internal tables that are passed to it and they are used in smartform
    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
    <b>GS_MKPF = INT_MKPF</b>
    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.
    Here in this case we are passing GS_MKPF = INT_MKPF, so this strcuture data can be used in Smartform to display the data
    Reward points for useful Answers
    Regards
    Anji

  • Chinese Character Printing in Smartform (Different Question)

    Hi all,
    Can anyone explain to me further the OSS Note 776507 that Anji Reddy Vangala recently posted?  It involves the preview and printing of different character sets.  Currently I've managed to preview my form correctly, but it still prints out #'s.  Do I need to re-assign the fonts to the printer device or something, or do I need to use a different printer?  The printer I am currently using is an HP 2100.  Please please help, anyone?
    <b>EDIT:</b> Probably a better question would be how to map the conversion font of CNSONG to something that can be read by the printer?
    A copy of the note for everyone's reference:
    OSS Note: 776507
    Symptom
    Documents printed via SAPscript or SmartForms do not print with correct special characters, e.g. ### prints instead of Japanese or Russian characters. What to do?
    Other terms
    SAPscript, SmartForms, printing, device types, OTF
    Reason and Prerequisites
    Help required to choose proper fonts in a SAPscript or SmartForm
    Solution
    When using SAPscript or SmartForms to print (or email or fax) a form from a business application, many factors influence the outcome of the actual text within the form. All these factors must be checked in order to ensure a correct printout:
    1) The language version of the form used to produce the printout.
    Example: If you want to print a French invoice, you need to have a FR version of your SAPscript or SmartForms invoice form RVINVOICE01. And the application program must specify the corresponding language key (FR) when calling the SAPscript or SmartForms API.
    2) The font selections specified in the form (possibly also in a SAPscript style or SmartStyle used in a form).
    Example: In a SAPscript form or a SmartStyle you need to specify HELVE if you want to print German text in Helvetica (or similar) font. If you want to print Japanese text, HELVE is not a valid choice but you need to specify a Japanese font like JPMINCHO in your Japanese form.
    3) The output character set of the device type
    Every printer in transaction SPAD has a "device type" assigned. Device types used by the spooler for printing support only one single specific output character set. All text from the form has to be converted (using SAP's built-in character conversion mechanism) to this output character set.
    A character set can typically support either a single language (e.g. Shift-JIS which supports only Japanese) or a set of languages (e.g. ISO 8859-1, which supports Western-European languages). It is possible that a given language (such as German) can be supported by several output character sets, e.g. you may use either ISO 8895-1 (Latin-1) or ISO 8859-2 (Latin-2) to represent German text. This is so because both character sets contain the special characters used in German.
    Example: HPLJ4000 is a HP LaserJet device type supporting the ISO 8859-1 (Latin-1) character set. ISO 8859-1 can be used to represent e.g. Dutch, English, French, German, Spanish, Swedish but NOT Russian or Japanese.
    As a consequence, it is ok to use HPLJ4000 to print English, German French etc. but not for Japanese or Russian.
    4) The set of available printer fonts for a given device type
    When formatting a document, SAPscript and SmartForms perform an automatic mapping of the font definitions in the form (e.g. "HELVE 14 point bold") and the available printer fonts of the device type. A replacement printer font is chosen, should the specified font selection not be available in the device type. Now this replacement can be problematic if a language-specific font, such as Chinese CNSONG, is specified in a form and it gets replaced by a font which does not support this language, e.g. COURIER.
    To solve this problem, font families in SE73 have language attribute assigned, e.g. some fonts are characterized as being suitable only for certain languages. And when a replacement has to be chosen because the original font from the form is not available in the device type, a replacement font is chosen which has the same language attributes.
    If no fonts for the language in question exist in the device type, the resulting font will not be able to print the special characters and you will see "wrong" output characters in the printout.
    Note on SAPscript/SmartForms Print Preview:
    The OTF Print Preview available in Windows GUI (e.g. from transaction SP01) will sometimes not show the "wrong" characters which appear on the final printout. Here is the reason: since the Print Preview runs in Windows environment, it will use Windows fonts to represent the actual printer fonts. A Windows font typically has more available characters (i.e. covers more character sets) than are actually available in a printer's resident font.
    A typical example where the Print Preview will differ from the printout is here: if you have a Chinese PCL5 printer such as CNHPLJ4 and use the Western Latin font COURIER in your document, the print preview will show you Chinese characters if you (by accident) tried to format Chinese characters in COURIER font. This is because Windows will automatically choose a font that can output Chinese characters (which is actually not Courier). But when you print the job on an actual PCL5 printer with resident Western and Chinese fonts, the Courier font will not print any Chinese characters but Western special characters instead, because the printer's resident Courier font does not include Chinese characters.
    Rule of thumb: all Asian device types (e.g. CNHPLJ4, JPHPLJ4, JPPOST, KPHPLJ4) support not only Asian fonts but also COURIER, HELVE and TIMES fonts. But these Latin fonts can only be used to print English text, not Chinese/Japanese/Korean characters.
    Which fonts are suitable for a given language?
    Language(s): Font family to use in a form:
    Latin-1 (Western Europe/Americas) *******
    DE,EN,FR,ES,NL,SV COURIER, HELVE, TIMES
    (LETGOTH, LNPRINT)
    Latin-2 (Central Europe) ****************
    PL, CZ COURIER, HELVE, TIMES
    ISO 8859-4 (Baltic) *********************
    ET, LT, LV COURIER, HELVE, TIMES
    ISO 8859-5 (Cyrillic) *******************
    BG, RU, SR, UK COURCYR, HELVCYR, TIMECYR
    ISO 8859-7 (Greek) **********************
    EL COUR_I7, HELV_I7, TIME_I7
    ISO 8859-8 (Hebrew) *********************
    HE COURIER, HELVE, TIMES
    ISO 8859-9 (Turkish) ********************
    TR COURIER, HELVE, TIMES
    Simplified Chinese **********************
    ZH CNHEI, CNKAI, CNSONG
    Japanese ********************************
    JA JPMINCHO, DBMINCHO, DBGOTHIC
    Korean **********************************
    KP KPBATANG, KPDODUM, KPGULIM
    KPGUNGSE, KPSAMMUL
    Traditional Chinese *********************
    ZF TWDPHEI, TWMING, TWSONG
    Thai ************************************
    TH THANGSAN, THDRAFT, THVIJIT
    Arabic (Unicode systems only) ***********
    AR ANDALE_J
    Verify your output by examining the OTF data
    When analysing printing problems of this type, be sure to check the OTF data which gets produced by SAPscript or SmartForms. OTF or "Output Text Format" is the intermediate page-description format generated from SAPscript or SmartForms. OTF will contain the final printer font names and character set/language identifiers which help to solve the problem. OTF will even name the form and the language of the form used to create the output.
    The easiest way to do this is to create a spool request from your application, run transaction SP01, use menu
    Goto->Display Requests->Settings
    and choose
    Display Mode: Raw
    Now display your spool request. If this is a SAPscript or SmartForms spool request, you will see OTF data. Each line represents one OTF command, every command starts with a 2-character cmd identifier and possibly some cmd parameters follow.
    Here is an excerpt from a sample OTF file where we highlight the most interesting commands:
    //XHPLJ8000 0700 00000000001
    IN04EALEXTEST_ZEBRA
    IN05%PAGE1
    OPDINA4 P 144 240 1683811906000010000100001
    IN06%WINDOW2
    MT0024401289
    CP11000000E
    FCHELVE 120 00109XSF100SF101110000067E X
    UL +0000000000000
    SW00067
    CT00000000
    ST0453037Dieses SF hat Stil ALEXTEST_ZEBRA mit
    The 1st line with the // (Control) command reveals the device type usedto print: HPLJ8000
    //XHPLJ8000 0700 00000000001
    The 2nd line (IN = Info command) shows the name and (internal 1-char)language key of the form:
    IN04EALEXTEST_ZEBRA
    In this case it is the English (E = EN) SmartForm ALEXTEST_ZEBRA
    The OP-line (OP = Open Page) gives the page format used in the form, it is DINA4 Portrait orientation:
    OPDINA4 P 144 240 1683811906000010000100001
    The CP (CodePage) cmd shows the SAP system codepage used to code the text and the active language. In our case it is codepage 1100 and language E = EN = English.
    CP11000000E
    Finally, the FC-cmd (Font Call) lists a printer font selected within SmartForms. Please note that every SmartForm has a designated default SmartStyle under "Form Attributes->Output Options". In addition, every text node can have a SmartStyle attached (which will override the definitions from the default style for the text). In our case the resulting printer font that was selected is HELVE 12.0 pt bold-off, italic-off.
    FCHELVE 120 00109XSF100SF101110000067E X<b></b><b></b><b></b>

    Hi,
    there a different things to know.
    I produce sapscript forms with cinese and english characters for frontend / backend and archiv printing.
    Please check:
    Editor displays ###: You have to install the chinese language in your e.g. windows-system to display them.
    Script: You have to chose the the font family "CNSONG" (customized for chinese simplified and LATIN).
    Transaction I18N: May you have to set correct subfonts for the unicode areas (Cascading fonts, Standard is Courier).
    You can print in different ways:
    For archiv/PDF: Install the unicode truetype font with chinese characters for the pdf-converter.
    For Frontend: Use the Frontendprinter SAPWIN or SAPWIN*CF (Cascading Font) to send it to the gui (note: SAPLPD does not support it, use the newer technology.....)
    Backend printing: POSTSCRIPT is not yet implemented :-((
    PLease note: What you see in spool / print preview is a simulation of the possible print, but backend print is not frontend preview!!!!
    Regards,
    Christian

  • Smartform as Button in Hotspot Question - Captivate 8

    If I add a Smartform as Button to an Hotspot Question, the Button seems to have no function.
    The Button is not in the Hotspotarea, it is outside.
    I created several Buttons with different actions attached to it but nothing works.

    Shape buttons can be used on most question slides, but not on Hotspot Questions. My suspicion is that because Hotspot needs clicks in places, that the whole slide is reserved for possible clickable hotspots. And because Question slide objects are always on top of any other object, the shape button can not function. Even if you limit clicks only on Hotspots. Sorry, nothing for question slides has changed in CP8, was the same in CP7.

  • Ask a question about smartform

    Hi expert,
         I have a question about smartform . Now I am doing a task about Purchase Order,
    when I create a new Purchase Order in Transaction ME21N , before I saved , I click the button to preview how it looks .
    as everyone knows , during that time , there is no Purchase Order created . So in the header text - > Price types , I write something in
    the text . I know the data , I can get it from table STXH , then use the function 'READ_TEXT'  to check if there is data in it according to
    TDNAME (in this case the tdname is purchase order ), but I didn't save it , so there is no purchase order , how can I get the data .
    I only want to get the data in type 'EKKO' , not 'EKPO'.
    kind regards
    Nick

    Hi...
    use this code..
    data : variable type c.
    first concatenate ekko-name ekpo-ebelp into one variable.
    and take one text element and give the name is variable
    ok...
    follow this steps..
    i think this is help full for u...
    thxs & regards,
    rahul

  • This is a question:      Smartforms for RCTI Invoice generation

    Hi Guys (and Girls),
    I have client who would like to generate an RCTI invoice via smartforms.  The system has been configured to immediately print a form once transaction MRRL has been called.  However, our attempts to date to get a Smartform to print on creation of the invoice via MRRL has failed miserably.
    SAP comes pre-configured to generate RCTI invoices via SAP Script with Form MR_PRINT.  This can be changed in config via transaction NACE (Output type MR) to enable a smartform to be selected instead - but the standard program RX08NAST does not appear to be set up to execute smartforms, so all attempts to call the Custom smartform result in SAP Script being called instead.  And attempts to change the program from RX08NAST to something like RLB_INVOICE causes the invoice generation program to generate a workflow error and not print anything.
    SO, the 8 point question - does anyone know of a program that can be assigned to the RCTI invoice generation output type that will result in a Smartform being called instead if s SAP Script form?
    And secondly , the 2 point question, is LB_BIL_INVOICE the best smartform to copy for an RCTI invoice (The RCTI  looks the same as a standard Sales Invoice, but I'm concerned because we require vendor data, not customer data, and I don't know if the data structure passed into the LB_BIL_INVOICE form is set up for that)?  Can anyone confirm or deny this?
    Cheers,
    Steve
    Message was edited by:
            Stephen Keam

    r u printing this invoice from the VF01/02/03
    if Yes you can do this as follows.. As i understood.. you are printing a form for Inovice... you need to print invoice details and Venodr and Purchase order Details.
    you can achive this as follows..
    Note1: in LB_BIL_INVOICE you wont get the vendor details and Purchase Order details... but still you cane achive this bye writing you own select query in Smart form layout - Gobal declaraions>initialization..
    <b>Use the RLB_invoice as u r print Program.. Creat your own Layout in SMrtforms ther retrieve the VEnodr and PO Details.. and  confiur the output type as  Print program is RLB_Invoice and layout is your zLayout.</b>
    now you have Invoice details and Vendor and PO details... Prepare a invoice in Smatform asd your Requirement...
    In Smartform "Create Form inter face as mentioned in the Print Pogram
    <b>JUST this is Exampl only</b>
    first call this *   Determine smartform function module for invoice
        CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
             EXPORTING  FORMNAME           = LF_FORMNAME
                    variant            = ' '
                    direct_call        = ' '
             IMPORTING  FM_NAME            = LF_FM_NAME
             EXCEPTIONS NO_FORM            = 1
                        NO_FUNCTION_MODULE = 2
                        OTHERS             = 3.
        IF SY-SUBRC <> 0.
        Error handling
          CF_RETCODE = SY-SUBRC.
          PERFORM PROTOCOL_UPDATE.
        ENDIF.
    then
        Call smartform invoice
          CALL FUNCTION LF_FM_NAME
            EXPORTING
              ARCHIVE_INDEX      = TOA_DARA
              ARCHIVE_PARAMETERS = ARC_PARAMS
              CONTROL_PARAMETERS = LS_CONTROL_PARAM
              MAIL_RECIPIENT     = LS_RECIPIENT
              MAIL_SENDER        = LS_SENDER
              OUTPUT_OPTIONS     = LS_COMPOSER_PARAM
              USER_SETTINGS      = SPACE
              IS_BIL_INVOICE     = LS_BIL_INVOICE
            IMPORTING
              JOB_OUTPUT_INFO    = LS_JOB_INFO
            EXCEPTIONS
              FORMATTING_ERROR   = 1
              INTERNAL_ERROR     = 2
              SEND_ERROR         = 3
              USER_CANCELED      = 4
              OTHERS             = 5.
          IF SY-SUBRC <> 0.
          Error handling
            CF_RETCODE = SY-SUBRC.
         endif.
    <b>Close this thread if when u r problem ise solved
    Regards
    Naresh Reddy K</b>

  • Hi Experts, a question about translation of smartform?

    Hi Experts,
    I translated my smartform via SE63 but now I want to use gs_labels to translate the layout, can I do that? because at first I used SE63, now  I don't know if gs_labels will conflict with SE63 translation, can you tell me the principle of SE63 and GS_LABELS, thank you in advance!
    Kind regards
    Dawson

    Hi,
    At first I translated my smartform via SE63, but I found using se63 to translate smartform is not good, I want to try to use ZSSDLABLES(a structure) and TTDTG(Pooled table which contains the value of the fields in the structure, the value is language dependant), do you know what I mean? I need to define a variable called gs_labels(gs_labels type ZSSDLABELS) in the global data tab of the smartform, and call a function to retrieve the value of every field in gs_labels in the initialization tab of the smartform.
    thanks for your help.
    Kind regards
    Dawson

Maybe you are looking for