cancel
Showing results for 
Search instead for 
Did you mean: 

Smartform Printing Problem

Former Member
0 Kudos

Hello,

I develop a smartform with one page and three copies are there.

On first it wa written ORIGINAL, on second DUPLICATE and third one is TRIPLICATE.

In my driver program i use do undo statement 3 time with different text and call my FM for smartform in that.

Now user have to give print command three times to print that. he want to give one print command and three copies will print.

How to do that ????

Please help

With Regards,

Nitin

Accepted Solutions (0)

Answers (5)

Answers (5)

Former Member
0 Kudos

Hi,

You can solve this problem by creating three pages of which the first page is the ORIGINAL page and the windows in the second and the third page is the copy of the windows in the first page. To display the text as DUPLICATE and TRIPLICATE, instead of copying that window from the first page you can create new windows in the second and third page , This will make 3 copies of the page with different texts as ORIGINAL, DUPLICATE and TRIPLICATE.

Regards,

Praveenkumar T

Former Member
0 Kudos

hii nitin,

create a window with window type as copy wondow

and for 3 pages you have created text feild in text feild under condition tab sfsy-copycount = 1 similarly for 2 and 3 pages.while at the print preview give how many copies u need.

regards,

sri.

former_member196280
Active Contributor
0 Kudos

Making changes to your driver program with the sample code that is stated below, may help to reslove your issue.

DO 3 Times.

IF SY-index = 1.
label = 'Original'.
IF SY-INDEX = 2.
label = 'Duplicate'.
IF SY-index = 3.
Label = 'TRIPLICATE' 

CALL FUNCTION lv_fm_name... 
EXPORTING
    GV_LABEL = label.

ENDDO.

Regards,

SaiRam

asik_shameem
Active Contributor
0 Kudos

Hi,

You can still use the same idea which I mentioned in the previous post by creating Copies Window.

Add the text "Original" or "Duplicate" or whatever based on the system variable SFSY-COPYCOUNT.

Alternatively you can do like this .

gs_control_param-no_open     = 'X'.
gs_control_param-no_close    = 'X'.

CALL FUNCTION 'SSF_OPEN'
  EXPORTING
    control_parameters = gs_control_param..

CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
  EXPORTING
    formname           = lv_formname..

CALL FUNCTION lv_fm_name... " Do this for 3 outputs

CALL FUNCTION 'SSF_CLOSE'

Search SDN with "multiple smartform into single spool"

asik_shameem
Active Contributor
0 Kudos

In the smartform FM, just set the no of copies as below.

OUTPUT_OPTIONS-TDCOPIES = '3'.

Former Member
0 Kudos

Hello,

Thanx for your reply, but this will print 3 copies of each form.

I want all the three i:e ORIGINAL, DUPLICATE and TRIPLICATE in one go.