Desactivar un parametro

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • novato-sap
    Junior Member
    • dic
    • 21

    #1

    Desactivar un parametro

    Hola buenos dias, soy nuevo en sap y necesito que me ayudeis. Mi problema es el siguiente:
    Yo quiero que al pulsar una opcion usando radiobutton un campo de un parametro me lo desactive, en mi caso la fecha, quedando en forma no editable.
    Gracias.
  • francesc
    Member
    • mar
    • 58

    #2
    En el evento AT SELECTION-SCREEN OUTPUT haces:

    loop at screen.

    if screen-name = el nombre de tu campo.
    screen-active = 0.
    endif.

    endloop.

    Comentario

    • novato-sap
      Junior Member
      • dic
      • 21

      #3
      Pero si se utiliza un report, cual es el nombre del campo, sería el del parametro?.
      Y se seguiria haciendo asi?
      Gracias.

      Comentario

      • francesc
        Member
        • mar
        • 58

        #4
        Si sería el nombre del campo. Una cosa, en el código anterior hay un par de errores, con la prisa me he confundido. Te lo reescribo correctamente:

        AT SELECTION-SCREEN OUTPUT.
        LOOP AT SCREEN.

        IF screen-name = 'P_DATUM'.
        screen-input = 0.
        MODIFY SCREEN.
        ENDIF.

        ENDLOOP.

        En este caso P_DATUM es el nombre del parámetro. Con screen-input = 0 se mostrará en gris. Con el screen-active = 0 no se mostrará

        Comentario

        • DavidXD_XD
          Moderator
          • ago
          • 1255

          #5
          Hola ... mas practico que darle el nombre es colocandole un grupo, asi si quieres realizar la misma jugada con otro campo entonces le asignas el grupo, se hace de la siguiente manera:

          Código:
          PARAMETERS: rad1 RADIOBUTTON GROUP grp1 USER-COMMAND uc1,
                             rad2 RADIOBUTTON GROUP grp1.
          
          [COLOR="Blue"]* El parametro p_fecha tiene asignado el grupo GR1[/COLOR]
          PARAMETERS: p_fecha TYPE sy-datum MODIF ID gr1,
                              p_fecha2 TYPE sy-datum.
          
          INITIALIZATION.
            rad1 = 'X'.              "Asignando la X a la salida del programa
          
          AT SELECTION-SCREEN OUTPUT.
          [COLOR="blue"]* Si presiono el primer radiobutton entonces se ocultara el campo p_fecha[/COLOR]
            IF rad1 = 'X'.
              LOOP AT screen.
                IF screen-group1 = 'GR1'.
                  screen-active = 0.
                  MODIFY screen.
                ENDIF.
              ENDLOOP.
            ELSE.
              LOOP AT screen.
                IF screen-group1 = 'GR1'.
                  screen-active = 1.
                  MODIFY screen.
                ENDIF.
              ENDLOOP.
            ENDIF.
          David Carballido Córdova

          Comentario

          • novato-sap
            Junior Member
            • dic
            • 21

            #6
            Muchas gracias a ambos por haberme ayudado. Me habeis ayudado a solucionar mi problema.

            Comentario

            Trabajando...