Iam printing a script for cash payments in fbcj transaction.I collected data from three internal tables into a final internal table.But while executing iam getting error stating that 'write form is invalid start form is missing.here is my code:
PARAMETERS: P_COCODE TYPE TCJ_POSITIONS-COMP_CODE,
P_BRANCH TYPE TCJ_POSITIONS-CAJO_NUMBER.
DATA: BEGIN OF ITAB1 OCCURS 0,
COMP_CODE TYPE TCJ_POSITIONS-COMP_CODE,
CAJO_NUMBER TYPE TCJ_POSITIONS-CAJO_NUMBER,
P_PAYMENTS TYPE TCJ_POSITIONS-P_PAYMENTS,
GL_ACCOUNT TYPE TCJ_POSITIONS-GL_ACCOUNT,
KOSTL TYPE TCJ_POSITIONS-KOSTL,
PRCTR TYPE TCJ_POSITIONS-PRCTR,
END OF ITAB1.
DATA:BEGIN OF ITAB2 OCCURS 0,
CAJO_NUMBER TYPE TCJ_DOCUMENTS-CAJO_NUMBER,
DOCUMENT_DATE TYPE TCJ_DOCUMENTS-DOCUMENT_DATE,
DOCUMENT_NUMBER TYPE TCJ_DOCUMENTS-DOCUMENT_NUMBER,
END OF ITAB2.
DATA:BEGIN OF ITAB3 OCCURS 0,
CAJO_NUMBER TYPE TCJ_CJ_NAMES-CAJO_NUMBER,
CAJO_NAME TYPE TCJ_CJ_NAMES-CAJO_NAME,
END OF ITAB3.
DATA: BEGIN OF ITAB4 OCCURS 0,
COMP_CODE TYPE TCJ_POSITIONS-COMP_CODE,
CAJO_NUMBER TYPE TCJ_POSITIONS-CAJO_NUMBER,
P_PAYMENTS TYPE TCJ_POSITIONS-P_PAYMENTS,
GL_ACCOUNT TYPE TCJ_POSITIONS-GL_ACCOUNT,
KOSTL TYPE TCJ_POSITIONS-KOSTL,
PRCTR TYPE TCJ_POSITIONS-PRCTR,
DOCUMENT_DATE TYPE TCJ_DOCUMENTS-DOCUMENT_DATE,
DOCUMENT_NUMBER TYPE TCJ_DOCUMENTS-DOCUMENT_NUMBER,
CAJO_NAME TYPE TCJ_CJ_NAMES-CAJO_NAME,
END OF ITAB4.
DATA: WA_TAB1 LIKE LINE OF ITAB1,
WA_TAB2 LIKE LINE OF ITAB2,
WA_TAB3 LIKE LINE OF ITAB3,
WA_TAB4 LIKE LINE OF ITAB4.
SELECT COMP_CODE CAJO_NUMBER P_PAYMENTS GL_ACCOUNT KOSTL PRCTR FROM TCJ_POSITIONS INTO TABLE ITAB1 WHERE COMP_CODE = P_COCODE AND
CAJO_NUMBER = P_BRANCH.
SELECT CAJO_NUMBER DOCUMENT_DATE DOCUMENT_NUMBER FROM TCJ_DOCUMENTS INTO TABLE ITAB2 FOR ALL ENTRIES IN ITAB1 WHERE COMP_CODE = ITAB1-COMP_CODE
AND CAJO_NUMBER = ITAB1-CAJO_NUMBER.
SELECT CAJO_NUMBER CAJO_NAME FROM TCJ_CJ_NAMES INTO TABLE ITAB3 FOR ALL ENTRIES IN ITAB1 WHERE COMP_CODE = ITAB1-COMP_CODE AND
CAJO_NUMBER = ITAB1-CAJO_NUMBER.
LOOP AT ITAB1 INTO WA_TAB1.
WA_TAB4-COMP_CODE = WA_TAB1-COMP_CODE.
WA_TAB4-CAJO_NUMBER = WA_TAB1-CAJO_NUMBER.
WA_TAB4-P_PAYMENTS = WA_TAB1-P_PAYMENTS.
WA_TAB4-GL_ACCOUNT = WA_TAB1-GL_ACCOUNT.
WA_TAB4-KOSTL = WA_TAB1-KOSTL.
WA_TAB4-PRCTR = WA_TAB1-PRCTR.
READ TABLE ITAB2 WITH KEY CAJO_NUMBER = WA_TAB1-COMP_CODE.
WA_TAB4-DOCUMENT_DATE = WA_TAB2-DOCUMENT_DATE.
WA_TAB4-DOCUMENT_NUMBER = WA_TAB2-DOCUMENT_NUMBER.
READ TABLE ITAB3 WITH KEY CAJO_NUMBER = WA_TAB1-COMP_CODE.
WA_TAB4-CAJO_NAME = WA_TAB3-CAJO_NAME.
APPEND WA_TAB4 TO ITAB4.
ENDLOOP.
CALL FUNCTION 'OPEN_FORM'
EXPORTING
FORM = 'ZCASHPAYMENTS'.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'E1'.
LOOP AT ITAB4 INTO WA_TAB4.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'E2'.
ENDLOOP.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'E3'.
LOOP AT ITAB4 INTO WA_TAB4.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
ELEMENT = 'E4'.
ENDLOOP.
CALL FUNCTION 'CLOSE_FORM'.
Iam attaching a screen of text element too and I used only one page window