MUNDOSAP

Regresar   MUNDOSAP > DESARROLLO > Programación ABAP IV
Nombre de Usuario
Contraseña
Home Descargas Registrar FAQ Miembros Calendario Buscar Temas de Hoy Marcar Foros Como Leídos




 
Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Viejo 28/02/08, 13:36:28
jalopez jalopez is offline
Junior Member
 
Fecha de Ingreso: ago 2007
Localización: Medelín Colombia
Mensajes: 15
Question Radio Button en reporte tipo 1

Actualmente estoy creando un reporte tipo 1 que maneja unos radio button y unas cajas de texto para el ingreso de información.
Cuando me seleccionen un radio button debe deshablitar unas cajas de texto y habilitar otros... Como realizar esto sin que el usuario de enter en el programa.
Con reporte de dialogos se puede hacer facilmente... pero en este tipo de reporte como se hace para generar el evento del click sin el ENTER.

Gracias por la ayuda que puedan brindar.
Responder Con Cita
  #2  
Viejo 28/02/08, 15:05:02
LouieBoy LouieBoy is offline
Member
 
Fecha de Ingreso: ago 2006
Mensajes: 86
Buenas,
En la declaracion del primer radio buton del grupo le añadir user-command xxx. entonces cuando se pulse algun radio button de ese grupo se disparar el user command correspondiente, asi puedes evitar meterle al enter.

Saludos,

LouieBoy
Responder Con Cita
  #3  
Viejo 28/02/08, 15:18:57
Avatar de DavidXD_XD
DavidXD_XD DavidXD_XD is offline
Moderator
 
Fecha de Ingreso: ago 2006
Localización: Lima - Perú
Mensajes: 1,251
Hola te paso un ejemplo para que te guies mejor

*----------------------------------------------------------------------*
* INCLUDE ZPPFR_BLOQUEO_SEL *
*----------------------------------------------------------------------*
*----------------------------------------------------------------------*
* Pantallas de Selección
*----------------------------------------------------------------------*

SELECTION-SCREEN BEGIN OF BLOCK b01 WITH FRAME TITLE text-b01.
PARAMETERS: p_direc RADIOBUTTON GROUP rb02
DEFAULT 'X' USER-COMMAND UC1,
p_visua RADIOBUTTON GROUP rb02.
SELECTION-SCREEN END OF BLOCK b01.

SELECTION-SCREEN BEGIN OF BLOCK b02 WITH FRAME TITLE text-b02.
SELECTION-SCREEN BEGIN OF BLOCK b03 WITH FRAME TITLE text-b03.
SELECT-OPTIONS: s_usnam FOR ztpp_fr_blq-usnam NO INTERVALS,
s_datum FOR sy-datum.
SELECTION-SCREEN END OF BLOCK b03.
SELECTION-SCREEN BEGIN OF BLOCK b04 WITH FRAME TITLE text-b04.
PARAMETERS: p_bloq RADIOBUTTON GROUP rb01 DEFAULT 'X' MODIF ID rpt,
p_libe RADIOBUTTON GROUP rb01 MODIF ID rpt.
SELECTION-SCREEN END OF BLOCK b04.
SELECTION-SCREEN END OF BLOCK b02.

*----------------------------------------------------------------------*
* Evento AT SELECTION-SCREEN
*----------------------------------------------------------------------*

AT SELECTION-SCREEN OUTPUT.
IF p_direc = 'X'.
LOOP AT SCREEN.
IF screen-group1 = 'RPT'.
screen-active = '0'.
MODIFY screen.
ENDIF.
ENDLOOP.
ELSEIF p_visua = 'X'.
LOOP AT SCREEN.
IF screen-group1 = 'RPT'.
screen-active = '1'.
MODIFY screen.
ENDIF.
ENDLOOP.
ENDIF.

Espero te sirva
__________________
David Carballido Córdova
Responder Con Cita
  #4  
Viejo 28/02/08, 15:22:32
LouieBoy LouieBoy is offline
Member
 
Fecha de Ingreso: ago 2006
Mensajes: 86
Eso misma mente...

Saludos,

LouieBoy
Responder Con Cita
  #5  
Viejo 28/02/08, 15:47:51
vickxo vickxo is offline
Senior Member
 
Fecha de Ingreso: nov 2006
Localización: Madrid, España
Mensajes: 118
Prueba este codigo

Aunque aclaro, no es mio...

REPORT zvdll_pruebas .
DATA: lolo LIKE a306-kschl.
SELECTION-SCREEN BEGIN OF BLOCK 0001 WITH FRAME TITLE text-001.
SELECT-OPTIONS so_kschl FOR lolo.
SELECTION-SCREEN END OF BLOCK 0001.

SELECTION-SCREEN: BEGIN OF BLOCK bloq1 WITH FRAME TITLE text-001.
PARAMETERS: inicio RADIOBUTTON GROUP g1 USER-COMMAND ent,
clte_mat RADIOBUTTON GROUP g1,
prmonmat RADIOBUTTON GROUP g1,
material RADIOBUTTON GROUP g1.
*PARAMETERS: p_file(128) TYPE C default ' ' MODIF ID g2. "parametro con
*la ruta completa del fichero
PARAMETERS: p_vkorg TYPE a306-vkorg MODIF ID g2, " Org. Ventas TYPE C
*default ' ',
p_vtweg TYPE a306-vtweg MODIF ID g2, " CANAL DE DISTRIBUCION
p_kunnr TYPE a305-kunnr MODIF ID g2, " CLIENTE
p_pltyp TYPE a306-pltyp MODIF ID g2, " LISTA DE PRECIOS
p_waerk TYPE a306-waerk MODIF ID g2. " MONEDA

SELECTION-SCREEN: END OF BLOCK bloq1.

INITIALIZATION.
LOOP AT SCREEN.
IF screen-name = 'P_VKORG' OR screen-name =
'%_P_VKORG_%_APP_%-TEXT' OR screen-name = 'P_VTWEG' OR screen-name =
'%_P_VTWEG_%_APP_%-TEXT' OR screen-name = 'P_KUNNR' OR screen-name =
'%_P_KUNNR_%_APP_%-TEXT' OR screen-name = 'P_PLTYP' OR screen-name =
'%_P_PLTYP_%_APP_%-TEXT' OR screen-name = 'P_WAERK' OR screen-name =
'%_P_WAERK_%_APP_%-TEXT'.
screen-invisible = 0.
screen-input = 0.
ENDIF.
* Se actualizan las modificaciones en la tabla SCREEN
MODIFY SCREEN.
ENDLOOP.

AT SELECTION-SCREEN OUTPUT.
LOOP AT SCREEN.
IF clte_mat = 'X'.
IF screen-name = 'P_PLTYP' OR screen-name =
'%_P_PLTYP_%_APP_%-TEXT' OR screen-name = 'P_WAERK'
OR screen-name ='%_P_WAERK_%_APP_%-TEXT' .
screen-invisible = 0.
screen-input = 0.
ENDIF.
ELSE.
IF prmonmat = 'X'.
IF screen-name = 'P_KUNNR'
OR screen-name ='%_P_KUNNR_%_APP_%-TEXT'

.
screen-invisible = 0.
screen-input = 0.
ENDIF.

ELSE.
IF screen-name ='P_PLTYP' OR screen-name =
'%_P_PLTYP_%_APP_%-TEXT' OR
screen-name ='P_WAERK' OR screen-name =
'%_P_WAERK_%_APP_%-TEXT' OR screen-name = 'P_KUNNR'
OR screen-name ='%_P_KUNNR_%_APP_%-TEXT'
.
screen-invisible = 0.
screen-input = 0.
ENDIF.
ENDIF.
ENDIF.
* Se actualizan las modificaciones en la tabla SCREEN
MODIFY SCREEN.
ENDLOOP.
Responder Con Cita
  #6  
Viejo 29/02/08, 03:08:15
jalopez jalopez is offline
Junior Member
 
Fecha de Ingreso: ago 2007
Localización: Medelín Colombia
Mensajes: 15
Muchas gracias amigos por su colaboración... he probado ambos codigos y funciona, sin embargo para parametros de tipo:
SELECT-OPTIONS p_muni FOR gvr_municipio NO INTERVALS.
no me deja deshabilitar el campo... que podria hacer para solucionar esto???
Responder Con Cita
  #7  
Viejo 29/02/08, 07:01:04
LouieBoy LouieBoy is offline
Member
 
Fecha de Ingreso: ago 2006
Mensajes: 86
Buenas, para los select options debes ocultar el low, el high y luego el texto, ponle un break point a loop at screen y mira los nombres de todo lo que guarde relacion con el SO que quieras ocultar, generalmente van todos seguidos.
acuerdate de poner primero el input a 0 y luego el invisible a 1.

Saludos,

LouieBoy
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

Reglas de Mensajes
no puedes crear nuevos temas
no puedes responder temas
no puedes adjuntar archivos
no puedes editar tus mensajes

El código vB está On
Las caritas están On
Código [IMG] está On
Código HTML está Off
Saltar a Foro


Husos Horarios son GMT. La hora en este momento es 11:18:01.


www.mundosap.com 2006 - Spain
software crm, crm on demand, software call center, crm act, crm solutions, crm gratis, crm web