‎2006 Oct 12 9:57 AM
hi experts,
i developed script layout and print program also.i can print the line items in first page but if its more line items it is showing the error like this.
'WRITE_FORM is invalid, START_FORM is missing'.
how can i get the line items in second page.
can anybody help me for this.
thanks & regards
praveen
‎2006 Oct 12 10:19 AM
Hi Chang ur code according ur requirement.Its a working example.
REPORT ZGA_STEST.
TABLES: SPFLI.
data: s_spfli type table of spfli with header line.
select * from spfli UP TO 3 ROWS into TABLE s_spfli .
CALL FUNCTION 'OPEN_FORM'
EXPORTING
APPLICATION = 'TX'
ARCHIVE_INDEX =
ARCHIVE_PARAMS =
DEVICE = 'PRINTER'
DIALOG = 'X'
FORM = 'ZGA_SFORM1 '
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
LOOP AT S_SPFLI INTo SPFLI.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'TEXT_100'
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'MAIN'
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDLOOP.
CALL FUNCTION 'CLOSE_FORM'
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
‎2006 Oct 12 10:08 AM
Can you please cut-paste the code from your print prg...it seems that you are closing the form in the loop and hence the error.
Regards
Anurag
‎2006 Oct 12 10:13 AM
Hi
You need a START_FORM FM because if more no. of line items are there means system will generate the second page .
‎2006 Oct 12 10:19 AM
Hi Chang ur code according ur requirement.Its a working example.
REPORT ZGA_STEST.
TABLES: SPFLI.
data: s_spfli type table of spfli with header line.
select * from spfli UP TO 3 ROWS into TABLE s_spfli .
CALL FUNCTION 'OPEN_FORM'
EXPORTING
APPLICATION = 'TX'
ARCHIVE_INDEX =
ARCHIVE_PARAMS =
DEVICE = 'PRINTER'
DIALOG = 'X'
FORM = 'ZGA_SFORM1 '
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
LOOP AT S_SPFLI INTo SPFLI.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'TEXT_100'
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'MAIN'
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDLOOP.
CALL FUNCTION 'CLOSE_FORM'
.
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.