‎2015 Mar 05 7:00 PM
Hi all, i have a standard program, this standard program have 5 includes:
*Data Declarations
INCLUDE rpfiglmx_eaccounting_data.
*Selection Screen
INCLUDE rpfiglmx_eaccounting_sel.
*Main Processing
INCLUDE rpfiglmx_eaccounting_main.
*Subroutines
INCLUDE rpfiglmx_eaccounting_form.
*ALV tree Output
INCLUDE rpfiglmx_eaccounting_sf01.
i touched:
INCLUDE rpfiglmx_eaccounting_form.Yes, i know i know, not modify a standard program, its a little modification, the program ask for a filepath on the server, i write some code for make the path static and read only.
For do this modification asked me a access Key.
Checked the syntax and activated the program, created a request for transport from dev to qas, when the Basis ppl, try transport get an error:
Syntax error on line 000022, program RPFIGLMX_EACCOUNTING_MAIN, FORM CHECK_REQ_T does not exist,
Don't know/understand why, i don't touch this part(include) of the program, this line is:
PERFORM check_req_t.
if i do 2 clicks on: check_req_t. the editor show the FORM:
FORM check_req_t .
IF p_treq IS NOT INITIAL.
IF p_treq = 'AF' OR p_treq = 'FC'.
IF p_ord IS INITIAL.
SET CURSOR FIELD 'P_ORD'.
MESSAGE text-050 TYPE 'E'.
ENDIF.
ELSEIF p_treq = 'DE' OR p_treq = 'CO'.
IF p_pro IS INITIAL.
SET CURSOR FIELD 'P_PRO'.
MESSAGE text-051 TYPE 'E'.
ENDIF.
ENDIF.
ENDIF.
ENDFORM.
not know why the error, also i modified (a comment on this Form, for create a new TranportOrder, but again show me same error:
Syntax error on line 000022, program RPFIGLMX_EACCOUNTING_MAIN, FORM CHECK_REQ_T does not exist,
any advice how to remove these error?
Thanks.
‎2015 Mar 06 5:06 AM
Hi,
Are all the changes managed within a same tranport ?
This type of error usually occurs when the part where the Subroutine is called i.e. your PERFORM statement is tried to be transported before the object containing the Actual FORM.
So please try to check whether the object containing the FORM.. ENDFORM is tranported first and later you can tranport the object with the PERFORM statement.
Regards,
Mayur Priyan. S
‎2015 Mar 06 8:28 AM
Hi,
Includes can contain code for multiple programs, that's why, while in editor it asks which is the main program.
Whn you double click on routine check_req_t it drillsdown to a program(include). Also add that include/program in your transport request (the one containing routine check_req_t ).
See if it works .
-
Andrei
‎2015 Mar 06 6:47 PM
Hi, thanks for answer.
i do:
1) Modify the Include program(on DEV):
INCLUDE rpfiglmx_eaccounting_form
2) Created a transport (DEV to QAS)
3) tested on QAS, and generate the error(dump):
4) next, modified the include program(DEV):
INCLUDE rpfiglmx_eaccounting_main.
*&---------------------------------------------------------------------*
*& Form CHECK_REQ_T
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
* --> p1 text
* <-- p2 text
*----------------------------------------------------------------------*
*{ INSERT DR3K941483 1
*
*} INSERT
FORM check_req_t .
IF p_treq IS NOT INITIAL.
IF p_treq = 'AF' OR p_treq = 'FC'.
IF p_ord IS INITIAL.
SET CURSOR FIELD 'P_ORD'.
MESSAGE text-050 TYPE 'E'.
ENDIF.
ELSEIF p_treq = 'DE' OR p_treq = 'CO'.
IF p_pro IS INITIAL.
SET CURSOR FIELD 'P_PRO'.
MESSAGE text-051 TYPE 'E'.
ENDIF.
ENDIF.
ENDIF.
ENDFORM.
if see only inserted a comentary at the top of the form, and create the new transport.
The Basis Ppl, Transported This new transport first and, next try transport other transport, continue getting error(the dump, see the image).
Thanks, any advice?
‎2015 Mar 09 4:05 PM
Hi, to all.
Finally i decided removed all the standard modification, and created an enhancement implicit.
All worked.
thanks, many thanks.