‎2006 Apr 04 3:47 AM
anyone have an example print program to pass data to smartform? I would really appreciate it.
‎2006 Apr 04 6:40 AM
‎2006 Apr 04 3:57 AM
Hi,
Did you <a href="http://www.sap-img.com/smartforms/a-sample-program-calling-smartform.htm">Check this</a> out?
Regards,
Suresh Datti
‎2006 Apr 04 4:24 AM
i need one perticularly to print PO since that smartform is importing about 40 parameters. I do not know where they would come from.
I had to import these many because this smartform was created by migration of a sapscript to smartform.
‎2006 Apr 04 4:28 AM
Hi D P,
Go to transaction code smartforms.
Go to the Form Interface.
There you can check out the parameters in the IMPORT/EXPORT/TABLES tab.
In your driver program, create variables similar to that and then pass them as arguments.
Check the variables in your smartform code to check where they are being used.
Regards,
Wenceslaus.
Ps: Reward helpful posts.
‎2006 Apr 04 4:30 AM
DP,
As you are saying that its a PO related SMART Form, if you can figure what fields that SMART Form is expecting by looking at the Import variables / tables of the SMART Forms then it will be easy for you to find out where you can get the data from. I am not even sure if the SMART Form is using a custom structure or just parameter variables.
Usually you get the PO data from EKKO, EKPO, EKBE, etc tables.
IF you can list the parameters here, probably we can try to help.
Regards,
Ravi
Note : Please mark the helpful answers
‎2006 Apr 04 4:24 AM
Hi D P,
In your smartforms if you have added parameters in the form interface import/export/tables you can pass data to these in the call to the smartform.
This is a sample code to pass an internal table.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZTESTSF'
IMPORTING
FM_NAME = func
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 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.
call function func
* EXPORTING
* ARCHIVE_INDEX =
* ARCHIVE_INDEX_TAB =
* ARCHIVE_PARAMETERS =
* CONTROL_PARAMETERS =
* MAIL_APPL_OBJ =
* MAIL_RECIPIENT =
* MAIL_SENDER =
* OUTPUT_OPTIONS =
* USER_SETTINGS = 'X'
* SUM = 100
* IMPORTING
* DOCUMENT_OUTPUT_INFO =
* JOB_OUTPUT_INFO =
* JOB_OUTPUT_OPTIONS =
TABLES
ITAB = itab
.
‎2006 Apr 04 5:22 AM
Hi,
Please mention your mail id.I shall send you some documents.
Regards,
Gayathri
‎2006 Apr 04 6:11 AM
Hi
Here is a driver program go through this i hope this will help you to solve your problem.
*
*
****************************************************************
*DATA DECLARATIONS
****************************************************************
TABLES : vbrk,
vbrp,
kna1.
TYPES : BEGIN OF t_vbrk,
vbeln TYPE vbrk-vbeln,
fkart TYPE vbrk-fkart,
kunag TYPE vbrk-kunag,
END OF t_vbrk.
TYPES : BEGIN OF t_vbrp,
vbeln TYPE vbrp-vbeln,
fkimg TYPE vbrp-fkimg,
cmpre TYPE vbrp-cmpre,
netwr TYPE vbrp-netwr,
END OF t_vbrp.
TYPES : BEGIN OF t_kna1,
kunnr TYPE kna1-kunnr,
name1 TYPE kna1-name1,
adrnr TYPE kna1-adrnr,
ort01 TYPE kna1-ort01,
pstlz TYPE kna1-pstlz,
regio TYPE kna1-regio,
END OF t_kna1.
TYPES : BEGIN OF t_final.
INCLUDE STRUCTURE ZINVOICE.
vbeln TYPE vbrk-vbeln,
fkart TYPE vbrk-fkart,
kunag TYPE vbrk-kunag,
fkimg TYPE vbrp-fkimg,
cmpre TYPE vbrp-cmpre,
netwr TYPE vbrp-netwr,
name1 TYPE kna1-name1,
adrnr TYPE kna1-adrnr,
ort01 TYPE kna1-ort01,
pstlz TYPE kna1-pstlz,
regio TYPE kna1-regio,
types: END OF t_final.
DATA : i_vbrk TYPE TABLE OF t_vbrk,
i_vbrp TYPE TABLE OF t_vbrp,
i_kna1 TYPE TABLE OF t_kna1,
i_final TYPE TABLE OF t_final.
data : v_fnam type rs38l_fnam.
DATA : wa_vbrk TYPE t_vbrk,
wa_vbrp TYPE t_vbrp,
wa_kna1 TYPE t_kna1,
wa_final TYPE t_final.
****************************************************************
*START-OF-SELECTION
****************************************************************
SELECT-OPTIONS : s_vbeln FOR vbrk-vbeln.
START-OF-SELECTION.
SELECT vbeln
fkart
kunag
INTO TABLE i_vbrk FROM vbrk
WHERE vbeln IN s_vbeln.
SELECT vbeln
fkimg
cmpre
netwr
INTO TABLE i_vbrp FROM vbrp
FOR ALL ENTRIES IN i_vbrk
WHERE vbeln = i_vbrk-vbeln.
SELECT kunnr
name1
adrnr
ort01
pstlz
regio
INTO TABLE i_kna1 FROM kna1
FOR ALL ENTRIES IN i_vbrk
WHERE kunnr = i_vbrk-kunag.
LOOP AT i_vbrk INTO wa_vbrk.
wa_final-vbeln = wa_vbrk-vbeln.
wa_final-fkart = wa_vbrk-fkart.
wa_final-kunag = wa_vbrk-kunag.
LOOP AT i_vbrp INTO wa_vbrp WHERE vbeln = wa_vbrk-vbeln.
wa_final-fkimg = wa_vbrp-fkimg.
wa_final-cmpre = wa_vbrp-cmpre.
wa_final-netwr = wa_vbrp-netwr.
ENDLOOP.
LOOP AT i_kna1 INTO wa_kna1 WHERE kunnr = wa_vbrk-kunag.
*
wa_final-name1 = wa_kna1-name1.
wa_final-adrnr = wa_kna1-adrnr.
wa_final-ort01 = wa_kna1-ort01.
wa_final-pstlz = wa_kna1-pstlz.
wa_final-regio = wa_kna1-regio.
*
ENDLOOP.
APPEND wa_final TO i_final.
ENDLOOP.
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
formname = 'ZINVOICE_FORM'
VARIANT = ' '
DIRECT_CALL = ' '
IMPORTING
FM_NAME = V_FNAM
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 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.
CALL FUNCTION V_FNAM
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
i_final = i_final.
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.
THANKS
MRUTYUNJAYA TRIPATHY
‎2006 Apr 04 6:40 AM