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

printprogram for smartform

Former Member
0 Likes
749

anyone have an example print program to pass data to smartform? I would really appreciate it.

1 ACCEPTED SOLUTION
Read only

Former Member
0 Likes
712

Hi,

Refer this thread:

This will help you.

Regards,

Gayathri

8 REPLIES 8
Read only

suresh_datti
Active Contributor
0 Likes
712

Hi,

Did you <a href="http://www.sap-img.com/smartforms/a-sample-program-calling-smartform.htm">Check this</a> out?

Regards,

Suresh Datti

Read only

0 Likes
712

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.

Read only

0 Likes
712

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.

Read only

0 Likes
712

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

Read only

Former Member
0 Likes
712

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
          .

Read only

Former Member
0 Likes
712

Hi,

Please mention your mail id.I shall send you some documents.

Regards,

Gayathri

Read only

Former Member
0 Likes
712

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

Read only

Former Member
0 Likes
713

Hi,

Refer this thread:

This will help you.

Regards,

Gayathri