Autor Tema: actualizar campos según valor de un listbox  (Leído 7903 veces)

0 Usuarios y 1 Visitante están viendo este tema.

pikaste

  • Visitante
actualizar campos según valor de un listbox
« en: 19 de Mayo de 2008, 10:24:51 am »
hola, mi duda es la siguiente:

tengo una tabla de la que recojo todos los campos con un select y los meto en una tabla interna.
A su vez, con los datos de la tabla interna, creo un listbox.
Lo que quiero es que al pinchar en una opción del listbox se rellenen los parameters que tengo más abajo.
Alguien sabe como??

*definimos los tipos de datos de la lista
TYPE-POOLS: vrm.
DATA: name TYPE vrm_id,
      list TYPE vrm_values,
      value LIKE LINE OF list.

*mostramos la lista
selection-screen begin of block opc with frame title text-001.
    selection-screen skip.
    PARAMETERS: lista(80) AS LISTBOX VISIBLE LENGTH 80 modif id OP.
selection-screen end of block opc.

*selection screen de los datos a introducir
selection-screen begin of block b2 with frame title text-002.
  parameters: idalum like zcurso1martin4-idalumno modif id CMP,
              nom like zcurso1martin4-nombre modif id CMP,
              apel1 like zcurso1martin4-apellido1 modif id CMP,
              apel2 like zcurso1martin4-apellido2 modif id CMP,
              telef like zcurso1martin4-telefono modif id CMP,
              ciudad like zcurso1martin4-ciudad modif id CMP.
selection-screen end of block b2.

*inicializamos
initialization.
  loop at screen.
    if screen-group1 = 'CMP'.
*       oculta la selection-screen.
        SCREEN-input = '0'.
      endif.
    modify screen.
  endloop.

*  llamamos a inicializar lista
   perform iniciarLista.

* actualizamos la lista según se pulse una opción u otra.
  CALL FUNCTION 'VRM_SET_VALUES'
       EXPORTING
            id     = name
            values = list.

* INICIALIZA TODOS LOS VALORES QUE CONTIENE LA LISTA
FORM iniciarLista.
  data: i type n value 1.
  name = 'lista'.
  select * from zcurso1martin4 into table tabla.
  loop at tabla.
    value-key = i.
    value-text = tabla-idalum.
    APPEND value TO list.
    i = i + 1.
  endloop.
ENDFORM.

Desconectado Carlos

  • Usuario Sr.
  • ****
  • Mensajes: 177
    • Ver Perfil
Re: actualizar campos según valor de un listbox
« Respuesta #1 en: 19 de Mayo de 2008, 11:17:10 am »
Si no me equivoco al entenderte, lo que tienes que hacer es rellenar los campos en el AT SELECTION-SCREEN OUTPUT.

Me ha gustado ver otra forma de rellenar campos en la pantalla de selección con un listbox.

Un saludo.

pikaste

  • Visitante
Re: actualizar campos según valor de un listbox
« Respuesta #2 en: 19 de Mayo de 2008, 11:51:52 am »
Gracias por la contestación, pero aún no me quedó muy claro. He probado algunas cosillas pero no me funciona correctamente. si pudieras ser un poco más claro, o proponerme algún ejemplo te lo agradecería.
Lo que quiero es que al pinchar en cualquiera de las opcionees del listbox se rellenen los campos con esa información.