‎2007 Aug 24 10:20 AM
Hi Friends,
I have created a screen with tabstrip. There are two tabs. On executing the screen, I am getting error as :
CALL SUBSCREEN: Z_ABC 0100 NO DYNPRO NAME.
Can any one let me know what is this error and how to correct the same.
TIA.
Regards,
Mark K
‎2007 Aug 24 10:22 AM
hi mark k,
please check the attributes of both the screens.
kishore
‎2007 Aug 24 10:22 AM
In the main screen 's PBO
CALL SUBSCREEN: SUB1 INCLUDING SY-REPID '0210',
SUB2 INCLUDING SY-REPID '0220'.
in PAI
CALL SUBSCREEN: SUB1,
SUB2.
‎2007 Aug 24 10:27 AM
hi
the syntax for the calling subscreen is :
CALL SUBSCREEN b INCLUDING prog dynnr .
Variants:
1.CALL CUSTOMER-SUBSCREEN b INCLUDING SAPLX... dynp.
Effect
Displays and processes the subscreen screen 'dynnr' from program 'prog' in the defined area 'b' of the main screen.
On the screen, you can define areas into which you place dynamic subscreens at runtime. Each area in the screen must have a unique name, which may be up to 10 characters long. In the flow logic, you address an area in the PBO ( PROCESS BEFORE OUTPUT ) event using the following statement:
CALL SUBSCREEN b INCLUDING prog dynnr.
Specify the name of the area without inverted commas. You can specify the program name and screen number either as a literal or a variable.
When you call the subscreen in the PBO, only its PBO modules are processed.
You process the PAI modules of the subscreen in the PAI (PROCESS AFTER INPUT) event of the main screen using the statement
CALL SUBSCREEN b.
You define the subscreen area on the main screen in the fullscreen editor.
You maintain the subscreen screen itself like a normal screen in the Screen Painter. However, you must specify in the screen attributes that it is a subscreen. A subscreen screen cannot call further subscreens.
A normal screen can contain multiple areas for multiple subscreens.
Notes
CALL SUBSCREEN ... is not allowed between LOOP and ENDLOOP or between CHAIN and ENDCHAIN. This means that you cannot repeat subscreens in the same way you can repeat fields in a loop.
Field names must be unique across all subscreens that are called either statically or dynamically from the same main screen. .
A subscreen screen may not have a named OK code field. Function codes can only be passed to the OK code field of the main screen.
Subscreen screens may not contain an ... AT EXIT-COMMAND module. Exit handling is only possible from the main screen.
F1 help and F4 input help is supported on subscreens.
You can only set the GUI status from modules of the main screen. If you use the SET TITLEBAR, SET PF-STATUS, SET SCREEN, or LEAVE SCREEN statements in the modules of a subscreen, a runtime error occurs.
The following system fields contain data about the current screen or subscreen:
- SY-DYNNR Screen number
- SY-DYNGR Screen group
- SY-CUROW Cursor line
- SY-CUCOL Cursor column
- SY-STEPL Loop pass
- SY-LOOPC Loop number
On a subscreen, you can use SET CURSOR to position the cursor on a particular field. However, a SET CURSOR statement can only refer to fields on the current screen or subscreen. You can find out the current cursor position using GET CURSOR. If the cursor is positioned on a field that is not on the current screen or subscreen, the FIELD, LINE, and OFFSET parameters do not return any values. Instead, the AREA parameter indicates the screen in which the cursor is located.
Variant 1
CALL CUSTOMER-SUBSCREEN b INCLUDING 'SAPLX...' dynnr.
Effect
This call is only effective if you have activated the screen in Transaction CMOD as part of an enhancement. Unlike in the CALL SUBSCREEN statement, you must specify the program name as a literal, and it must begin with SAPLX. In other words, the screen must belong to a function group whose name begins with 'X'.
For further information, refer to the online manual for Transaction SMOD.
Regards,
Prasant
*reward if helpful
‎2007 Aug 24 11:53 AM
You have to give the name of the program to which that screen belongs.