Urgent: Como actualizo campo en dynpro

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Marco
    Senior Member
    • abr
    • 141

    #1

    Urgent: Como actualizo campo en dynpro

    Hola gente del foro:
    He realizado una dynpro y tengo un campo variable XX (que es numerico) quiero apartir de un campo en pantalla actualizar el campo XX, es decir si digito en un campo el numero 2, al dar enter quiero q ese valor aparesca en el campo XX.
    He revisado las funciones:
    DYNP_VALUES_UPDATE
    SET_DYNP_VALUE

    y no me esta funcionando, nunca actualiza el campo XX al dar enter.

    Si alguien me ayuda o pone un codigo para poder realizarlo este muy agradecido.

    Mi codigo lo estoy poniendo en el PAI en un MODULE que esta dentro de un CHAIN ...... ENDCHAIN. Algo asi:

    CHAIN.
    FIELD CHK_ACUM.
    FIELD GT_BALANZA-PICKI.
    MODULE VALUE_CHK_ACUM ON CHAIN-REQUEST.
    ENDCHAIN.

    En el MODULO VALUE_CHK_ACUM estoy usando las funciones pero no funciona.

    Espero sus comentarios.
  • abapedro
    Member
    • mar
    • 83

    #2
    Hola,

    Creo que el problema radica en el entendimiento de la lógica de los dynpros.

    Un dynpro solo se refresca (se "redibuja") en PBO, es decir en el "antes de mostrar".

    Por esta razón los cambios de contenido o aspecto que se definan en el PAI no son efectivos inmediatamente, pueden ser efectivos en el siguiente evento PBO.

    Resulta mas claro programar cambios de estado de campos (visualizar o esconder, habilitar o inhabilitar para entrada) o cambios de contenido de campos en el PBO.

    Buena suerte

    Comentario

    • Marco
      Senior Member
      • abr
      • 141

      #3
      Hola...
      Buenos datos los q comentas.
      Es cierto que el PBO es el proceso que se lanza antes de mostrar la dynpro, pero no necesariamente va a definir que aparecera. En el PAI pude resolver el caso y de la manera mas sencilla: Dentro del CHAIN .... ENDCHAIN en el module solo iguale campo2 = campo1, y NO utilice las funciones antes descritas que mas funcionan en un ON HELP REQUEST (F4). Lo unico que modifique es que el campo2 (el q voy a mostrar por pantalla) sea referente directo a un campo de base de datos.

      Saludos
      Estamos en comunicacion...
      Bye
      Marcko

      Comentario

      • adge
        Junior Member
        • jul
        • 9

        #4
        Originalmente publicado por Marco
        Hola...
        Buenos datos los q comentas.
        Es cierto que el PBO es el proceso que se lanza antes de mostrar la dynpro, pero no necesariamente va a definir que aparecera. En el PAI pude resolver el caso y de la manera mas sencilla: Dentro del CHAIN .... ENDCHAIN en el module solo iguale campo2 = campo1, y NO utilice las funciones antes descritas que mas funcionan en un ON HELP REQUEST (F4). Lo unico que modifique es que el campo2 (el q voy a mostrar por pantalla) sea referente directo a un campo de base de datos.

        Saludos
        Estamos en comunicacion...
        Bye
        Marcko

        A que te refieres con campo2 = campo 1 a los dos campos del ejemplo? yo tengo el mismo problema pero con pestañas. Me actualiza solo la última pestaña pero las dos primeras de las 3 pestañas no me la actualiza. COmo lo soluciono. Muchas gracias.

        Comentario

        • Montiel007
          Junior Member
          • jun
          • 11

          #5
          Hola, amigos, estoy creando un programa y tengo una dynpro que al colocar uno de los campos como obligatorio no me permite volver, salir o cancelar hasta que no llene dicho campo obligatorio, es decir, es algo tedioso pues son muchos campos obligatorios en una sola pantalla, alguin me podria ayudar sobre como abordar esto.

          Saludos.

          Comentario

          • pancho6102
            Senior Member
            • jun
            • 238

            #6
            puedes probar

            pones su PF-STATUS en la dynpro que esta el campo obligatorio ahi en la seccion de teclas de funcion le pones un codigo de funcion al pulsador que quieras que te saque por ejemplo cancel y exit ( si lo quisieras igual el BACK) le pones el codigo le das doble click y seleccionas el tipo de funcion E que es el AT-EXIT COMAND.

            dentro de la misma dynpro al final de PAI creas el modulo:
            module m_exit AT EXIT-COMMAND.
            (m_exit es un nombre cualquiera)

            ahi metes el codigo para ver que valor trae tu OK_CODE y pones el leave to screen, leave program, etc...

            con un case u otra cosa.

            este module te permitira hacer lo que quieres aun que te recomiendo que solo debe de tener el EXIT y CANCEL por que el BACK por lo regular se sujeta a los campos obligatorios, pero es a como lo necesites tu.

            saludos.
            Francisco Ramirez.
            consultor SAP ABAP Netweaver
            Queretaro, Mexico.

            Comentario

            Trabajando...