Ver Mensaje Individual
  #6  
Viejo 08/04/08, 17:20:59
Avatar de DavidXD_XD
DavidXD_XD DavidXD_XD is offline
Moderator
 
Fecha de Ingreso: ago 2006
Localización: Lima - Perú
Mensajes: 1,251
Hola, si se puede !!!, te dejo el codigo para que veas como lo hice ..., solo interesa el dynpro principal y el subscreen creado ..., porque lo hice sobre un programa que siempre agarro de borrador

TABLES rkpf.

data: gt_lfa1 TYPE STANDARD TABLE OF lfA1 WITH HEADER LINE,
ZCAMPO type t001-bukrs,
number(4) TYPE n VALUE '1100'.

CONTROLS: tctrl_lfb1 TYPE TABLEVIEW USING SCREEN 100.

SELECTION-SCREEN BEGIN OF SCREEN 1100 AS SUBSCREEN.
SELECT-OPTIONS: s_rsnum FOR rkpf-rsnum MATCHCODE OBJECT zpru.
SELECTION-SCREEN END OF SCREEN 1100.

SELECT * FROM LFa1
INTO TABLE gt_lfa1
UP TO 50 ROWS.


CALL SCREEN 100.
*&---------------------------------------------------------------------*
*& Module STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE STATUS_0100 OUTPUT.
SET PF-STATUS 'ST_PRUEBA'.
SET TITLEBAR 'TIT_PR'.


IF sy-ucomm = 'ACT'.
LOOP AT SCREEN.
IF screen-group1 = 'GR1' OR screen-name = 'TCTRL_LFB1'.
screen-active = 1.
MODIFY screen.
ENDIF.
ENDLOOP.
ELSEIF sy-ucomm = 'DESACT'.
LOOP AT SCREEN.
IF screen-group1 = 'GR1' OR screen-name = 'TCTRL_LFB1'.
screen-active = 0.
MODIFY screen.
ENDIF.
ENDLOOP.
ENDIF.

ENDMODULE. " STATUS_0100 OUTPUT
*&---------------------------------------------------------------------*
*& Module USER_COMMAND_0100 INPUT
*&---------------------------------------------------------------------*
* text
*----------------------------------------------------------------------*
MODULE USER_COMMAND_0100 INPUT.

IF sy-ucomm = 'BACK'.
LEAVE TO SCREEN 0.
ENDIF.

ENDMODULE. " USER_COMMAND_0100 INPUT

El dynpro Principal es 100, y le agrege el subscreen 1100

PROCESS BEFORE OUTPUT.

MODULE STATUS_0100.
LOOP AT gt_lfa1 WITH CONTROL tctrl_lfb1.
ENDLOOP.
CALL SUBSCREEN SUB_1 INCLUDING sy-repid number.
*
PROCESS AFTER INPUT.
LOOP AT gt_lfa1.
ENDLOOP.

CALL SUBSCREEN SUB_1.

MODULE USER_COMMAND_0100.

Ahi esta la logica de pantalla y en el diseño del screen sale al comienzo un table control y abajo le coloque un subscreen para probar si sale, y con la sentencia MATCHCODE OBJECT apunto la ayuda de busqueda al select option, mi ayuda de busqueda se llama ZPRU, espero te ayude
__________________
David Carballido Córdova
Responder Con Cita