2007 Sep 27 12:47 PM
I am trying to execute this progarm ,
but here it is showing error message like: WRITE_FORM is invalid START_FORM is missing.....
Please any one can check
&----
*& Report ZSANDYFORM
*&
&----
*&
*&
&----
REPORT ZSANDYFORM.
TABLES: EKPO.
Data: begin of it_sandy occurs 0,
ebeln like ekpo-ebeln,
ebelp like ekpo-ebelp,
matnr like ekpo-matnr,
end of it_sandy.
select ebeln
from ekpo into table it_sandy
up to 100 rows.
CALL FUNCTION 'OPEN_FORM'
EXPORTING
APPLICATION = 'TX'
ARCHIVE_INDEX =
ARCHIVE_PARAMS =
DEVICE = 'PRINTER'
DIALOG = 'X'
FORM = 'ZSANDYSCRIPT'
LANGUAGE = SY-LANGU
OPTIONS =
MAIL_SENDER =
MAIL_RECIPIENT =
MAIL_APPL_OBJECT =
RAW_DATA_INTERFACE = '*'
SPONUMIV =
IMPORTING
LANGUAGE = SY-LANGU
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
CODEPAGE = 11
OTHERS = 12
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
*
*SELECT *
UP TO 200 ROWS
FROM vbap
INTO TABLE it_sandy.
loop at it_sandy.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'SALES'
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
CODEPAGE = 9
OTHERS = 10
.
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 'START_FORM'
EXPORTING
ARCHIVE_INDEX =
FORM = 'ZSANDYFORM'
LANGUAGE = SY-LANGU
STARTPAGE = ' '
PROGRAM = ' '
MAIL_APPL_OBJECT =
IMPORTING
LANGUAGE = SY-LANGU
EXCEPTIONS
FORM = 1
FORMAT = 2
UNENDED = 3
UNOPENED = 4
UNUSED = 5
SPOOL_ERROR = 6
CODEPAGE = 7
OTHERS = 8
.
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 'CLOSE_FORM'
IMPORTING
RESULT =
RDI_RESULT =
TABLES
OTFDATA =
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SEND_ERROR = 3
SPOOL_ERROR = 4
CODEPAGE = 5
OTHERS = 6
.
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 in advance
Sandy Bondy...
Hi,
This error may be occur due to assigning of next page in script..
please check this,
if it is not assinged,, then when prining of 1 page it will not give any problem,
but if u r output goes more than one page it will pop up the message,,
can u check
and let me know if it available
Reward the points
2007 Sep 27 12:51 PM
Hi,
https://forums.sdn.sap.com/click.jspa?searchID=5541159&messageID=3738451
thanks,
Reward If Helpful.
2007 Sep 27 12:51 PM
Hi sandy,
in function module write_form
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'SALES'
FUNCTION = 'APPEND'
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
CODEPAGE = 9
OTHERS = 10.
use this hope u will get rid of the error.
regards,
Santosh Thorat
2007 Sep 27 12:53 PM
Hi Sandy..
This error generally comes when you did not assign the NEXT PAGE for Every page in the Layout set FORM .
So in your Layout set assign the NEXT PAGE for each page and Activate the layoutset.
Then run the print program.
It should work. Get back if u still have the issues.
<b>reward if Helpful.</b>
2007 Sep 27 12:57 PM
YOU MUST CALL
END_FORM AFTER START_FORM BEFORE USING WRITE FORM.
TRY THIS.
REWARD IF USEFUL.
AMIT SINGLA
2007 Sep 27 1:01 PM
2007 Sep 27 1:05 PM
NO FOR A START_FORM THERE SHOULD BE END_FORM AS FOR EVERY
OPEN_FORM THERE IS CLOSE_FORM.
HERE YOU USE STSRT_FORM.
WHICH IS REQUIRED IF YOU NEED TO PRINT ( SAY A CUSTOMER DETAILS) PRINT ON DIFFERENT PAGES. SAY FOR CUSTOMER 1 ON FIRST PAGE.
THEN CUSTOMER 2 ON SECOND.
REWARD IF USEFUL.
AMIT SINGLA
2007 Sep 27 1:17 PM
Hi Sandy..
Have u checked my previous post? It will solve ur problem.
There is no need to Call START_FORM and END_FORM functions in this case.
<b>reward if Helpful.</b>
2007 Sep 27 1:04 PM
Hi,
This error may be occur due to assigning of next page in script..
please check this,
if it is not assinged,, then when prining of 1 page it will not give any problem,
but if u r output goes more than one page it will pop up the message,,
can u check
and let me know if it available
Reward the points
2007 Sep 27 1:14 PM
HI SANDY
SEE THI S PROG
&----
*& Report ZSAMP_INVOICE *
*& *
&----
REPORT zsamp_invoice .
TABLES : vbrk,
vbrp.
DATA : BEGIN OF i_inv OCCURS 0 ,
vbeln LIKE vbrk-vbeln,
fkdat LIKE vbrk-fkdat,
kunag LIKE vbrk-kunag,
arktx LIKE vbrp-arktx,
matnr LIKE vbrp-matnr,
fkimg LIKE vbrp-fkimg,
netwr LIKE vbrp-netwr,
name1 LIKE kna1-name1,
adrnr LIKE kna1-adrnr,
END OF i_inv.
DATA : sum TYPE i ,
sum1 LIKE vbrp-netwr,
sum2 LIKE spell,
amount(20) TYPE n .
PARAMETER : p_inv TYPE vbrk-vbeln .
select a~vbeln
a~fkdat
a~kunag
b~arktx
b~matnr
b~fkimg
b~netwr
c~name1
c~adrnr
into corresponding fields of table i_inv
from vbrk as a inner join vbrp as b on avbeln = bvbeln
inner join kna1 as c on ckunnr = akunag
where a~vbeln = p_inv .
loop at i_inv.
endloop.
*write : i_inv-fkdat,
i_inv-name1.
*
CALL FUNCTION 'OPEN_FORM'
EXPORTING
APPLICATION = 'TX'
ARCHIVE_INDEX =
ARCHIVE_PARAMS =
DEVICE = 'PRINTER'
DIALOG = 'X'
FORM = 'ZSAMP_INVOICE1'
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
CODEPAGE = 11
OTHERS = 12
.
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 I_INV.
sum = i_INV-fkimg + sum.
sum1 = i_INV-netwr + sum1.
sum2 = sum1.
endloop.
amount = sum1 .
CALL FUNCTION 'SPELL_AMOUNT'
EXPORTING
AMOUNT = sum1
CURRENCY = 'INR'
FILLER = ' '
LANGUAGE = SY-LANGU
IMPORTING
IN_WORDS = sum2
EXCEPTIONS
NOT_FOUND = 1
TOO_LARGE = 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.
LOOP AT I_INV.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'MAIN'
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
CODEPAGE = 9
OTHERS = 10
.
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 'WRITE_FORM'
EXPORTING
ELEMENT = 'DATA1'
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'SECOND'
IMPORTING
PENDING_LINES =
EXCEPTIONS
ELEMENT = 1
FUNCTION = 2
TYPE = 3
UNOPENED = 4
UNSTARTED = 5
WINDOW = 6
BAD_PAGEFORMAT_FOR_PRINT = 7
SPOOL_ERROR = 8
CODEPAGE = 9
OTHERS = 10
.
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 'WRITE_FORM'
EXPORTING
ELEMENT = 'DATA2'
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'THIRD'
IMPORTING
PENDING_LINES =
EXCEPTIONS
ELEMENT = 1
FUNCTION = 2
TYPE = 3
UNOPENED = 4
UNSTARTED = 5
WINDOW = 6
BAD_PAGEFORMAT_FOR_PRINT = 7
SPOOL_ERROR = 8
CODEPAGE = 9
OTHERS = 10
.
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 'WRITE_FORM'
EXPORTING
ELEMENT = 'DATA3'
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'FOUTH'
IMPORTING
PENDING_LINES =
EXCEPTIONS
ELEMENT = 1
FUNCTION = 2
TYPE = 3
UNOPENED = 4
UNSTARTED = 5
WINDOW = 6
BAD_PAGEFORMAT_FOR_PRINT = 7
SPOOL_ERROR = 8
CODEPAGE = 9
OTHERS = 10
.
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 'WRITE_FORM'
EXPORTING
ELEMENT = 'DATA4'
FUNCTION = 'SET'
TYPE = 'BODY'
WINDOW = 'FIFTH'
IMPORTING
PENDING_LINES =
EXCEPTIONS
ELEMENT = 1
FUNCTION = 2
TYPE = 3
UNOPENED = 4
UNSTARTED = 5
WINDOW = 6
BAD_PAGEFORMAT_FOR_PRINT = 7
SPOOL_ERROR = 8
CODEPAGE = 9
OTHERS = 10
.
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 'CLOSE_FORM'
IMPORTING
RESULT =
RDI_RESULT =
TABLES
OTFDATA =
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SEND_ERROR = 3
SPOOL_ERROR = 4
CODEPAGE = 5
OTHERS = 6
.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
IT WILL HELP U
KK.
2007 Sep 27 2:15 PM
before write_form you need to call start_form other wise you will get that error.
| User | Count |
|---|---|
| 6 | |
| 2 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 | |
| 1 |