Definicon de Tabla en Smartform

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • amam2605
    Senior Member
    • ene
    • 150

    #1

    Definicon de Tabla en Smartform

    Hola a todos, necesito definir una tabla interna en un smartforms cuyos campos son: Como y donde s erealiza esto? Gracias de Antemano

    CTNUMBER LIKE WITH_ITEM-CTNUMBER, " No. Comprobante
    BELNR LIKE BSAK-BELNR, " No. Documento
    BUZEI LIKE BSAK-BUZEI, " No. posición del doc.
    GJAHR LIKE BSAK-GJAHR, " Ejercicio del Documento
    BLDAT LIKE BKPF-BLDAT, " Fecha del Documento
    BUDAT LIKE BKPF-BUDAT, " Fecha de Contabilización
    XBLNR LIKE BKPF-XBLNR, " No. de Factura
    ZUONR LIKE BSAK-ZUONR, " No. de Control
    USNAM LIKE BKPF-USNAM, " Código de Usuario
    AUGBL LIKE WITH_ITEM-AUGBL, " Doc. Compensación
    AUGDT LIKE WITH_ITEM-AUGDT, " Fecha Compensación
    TIDOC(1) TYPE C, " Tipo de Documento
    TITRA(8) TYPE C, " Tipo de Transacción
    NOTAD LIKE BKPF-XBLNR, " No. Nota de Débito
    NOTAC LIKE BKPF-XBLNR, " No. Nota de Crédito
    F_AFE LIKE BKPF-XBLNR, " No. Factura Afectada
  • Ripper87
    Member
    • dic
    • 37

    #2
    En la pestaña "Tipos" del nodo "Definiciones Globales" creas la estructura:

    TYPES: BEGIN OF ts_tabla,
    CTNUMBER LIKE WITH_ITEM-CTNUMBER, " No. Comprobante
    BELNR LIKE BSAK-BELNR, " No. Documento
    BUZEI LIKE BSAK-BUZEI, " No. posición del doc.
    GJAHR LIKE BSAK-GJAHR, " Ejercicio del Documento
    BLDAT LIKE BKPF-BLDAT, " Fecha del Documento
    BUDAT LIKE BKPF-BUDAT, " Fecha de Contabilización
    XBLNR LIKE BKPF-XBLNR, " No. de Factura
    ZUONR LIKE BSAK-ZUONR, " No. de Control
    USNAM LIKE BKPF-USNAM, " Código de Usuario
    AUGBL LIKE WITH_ITEM-AUGBL, " Doc. Compensación
    AUGDT LIKE WITH_ITEM-AUGDT, " Fecha Compensación
    TIDOC(1) TYPE C, " Tipo de Documento
    TITRA(8) TYPE C, " Tipo de Transacción
    NOTAD LIKE BKPF-XBLNR, " No. Nota de Débito
    NOTAC LIKE BKPF-XBLNR, " No. Nota de Crédito
    F_AFE LIKE BKPF-XBLNR, " No. Factura Afectada
    END OF ts_tabla.

    Luego creas el tipo tabla en la misma pestaña:

    TYPES: tt_tabla TYPE TABLE OF ts_tabla.

    Luego declaras tu tabla interna en la pestaña de datos globales con el tipo tt_tabla.

    Comentario

    • amam2605
      Senior Member
      • ene
      • 150

      #3
      Definicion de PArametros y Select Options en Smartforms

      Hola !! Gracias por la informacion. Ahora estoy necesitando declarar un parameter y select options debido a que tengo en el programa lo siguiente: Donde se declara esto y como.

      Muchas Gracias de Antemano.

      Saludos

      SELECTION-SCREEN BEGIN OF BLOCK BOX1 WITH FRAME TITLE TEXT-P01.
      PARAMETERS: SOCIE LIKE BSAK-BUKRS MEMORY ID BUK OBLIGATORY.
      SELECT-OPTIONS: EJERC FOR BSAK-GJAHR OBLIGATORY NO-EXTENSION,
      FEC_R FOR BKPF-BUDAT OBLIGATORY NO-EXTENSION,
      DOC_R FOR BSAK-BELNR,
      COD_U FOR BKPF-USNAM,
      ACREE FOR LFA1-LIFNR.
      SELECTION-SCREEN END OF BLOCK BOX1.

      SELECTION-SCREEN BEGIN OF BLOCK BOX2 WITH FRAME TITLE TEXT-P02.
      SELECT-OPTIONS TIPO_R FOR WITH_ITEM-WITHT DEFAULT 'RF' OBLIGATORY.
      SELECTION-SCREEN END OF BLOCK BOX2.

      * ---------------------------------------------------------------------*
      * INICIO DEL PROGRAMA
      * ---------------------------------------------------------------------*
      * Busqueda de información de la Sociedad
      AT SELECTION-SCREEN ON SOCIE.
      SELECT SINGLE * FROM T001 WHERE BUKRS EQ SOCIE.
      IF SY-SUBRC NE 0.
      MESSAGE E012 WITH SOCIE.
      ELSE.
      NOMSOC = T001-BUTXT. " Nombre de la sociedad
      SELECT SINGLE * FROM ADRC WHERE ADDRNUMBER EQ T001-ADRNR.
      DIRSOC = ADRC-STREET. " Dirección de la sociedad
      RIFSOC = ADRC-SORT2. " RIF de la sociedad
      ENDIF.



      Originalmente publicado por Ripper87
      En la pestaña "Tipos" del nodo "Definiciones Globales" creas la estructura:

      TYPES: BEGIN OF ts_tabla,
      CTNUMBER LIKE WITH_ITEM-CTNUMBER, " No. Comprobante
      BELNR LIKE BSAK-BELNR, " No. Documento
      BUZEI LIKE BSAK-BUZEI, " No. posición del doc.
      GJAHR LIKE BSAK-GJAHR, " Ejercicio del Documento
      BLDAT LIKE BKPF-BLDAT, " Fecha del Documento
      BUDAT LIKE BKPF-BUDAT, " Fecha de Contabilización
      XBLNR LIKE BKPF-XBLNR, " No. de Factura
      ZUONR LIKE BSAK-ZUONR, " No. de Control
      USNAM LIKE BKPF-USNAM, " Código de Usuario
      AUGBL LIKE WITH_ITEM-AUGBL, " Doc. Compensación
      AUGDT LIKE WITH_ITEM-AUGDT, " Fecha Compensación
      TIDOC(1) TYPE C, " Tipo de Documento
      TITRA(8) TYPE C, " Tipo de Transacción
      NOTAD LIKE BKPF-XBLNR, " No. Nota de Débito
      NOTAC LIKE BKPF-XBLNR, " No. Nota de Crédito
      F_AFE LIKE BKPF-XBLNR, " No. Factura Afectada
      END OF ts_tabla.

      Luego creas el tipo tabla en la misma pestaña:

      TYPES: tt_tabla TYPE TABLE OF ts_tabla.

      Luego declaras tu tabla interna en la pestaña de datos globales con el tipo tt_tabla.

      Comentario

      • Ripper87
        Member
        • dic
        • 37

        #4
        Tendras que pasarlos como parametros a la función de smartforms.

        Para el caso de un PARAMETER, por ejemplo el campo SOCIE es una variable de tipo BUKRS común y corriente que tendrás que declararla en la pestaña IMPORT del smartform.

        Para el caso de un SELECT-OPTION, ellos en el fondo son una tabla porque el usuario puede agregar multiples valores. Por ejemplo para el campo EJERC hay que declarar un Tipo Tabla con estructura de Rango (Todos los SELECT-OPTIONs son Rangos), afortunadamente como GJARH es un tipo estándar ya existe un tipo tabla en el diccionario que puedes usar: FKK_RT_GJAHR.

        Entonces declaras el parametro en la pestaña TABLAS del smartform y le colocas tipo FKK_RT_GJAHR.

        Ya en tu código cuando llames el módulo de función del smartform, tendrás que agregar tus campos como parametros EXPORT y TABLES respectivamente.
        Editado por última vez por Ripper87; 10/06/2014, 19:33:31.

        Comentario

        • amam2605
          Senior Member
          • ene
          • 150

          #5
          Gracias por tus informaciones.

          Comentario

          • Enriq
            Junior Member
            • oct
            • 2

            #6
            Definicion de tabla en Smartform

            Que tal, te recomiendo para que ahorres código y trabajo, mejor declara una estructura y la puedes usar tanto en tu programa de control como en el smartform y de esta forma te sera mas fácil hacer el paso de parámetros al smartform y tendrás menos errores.

            Comentario

            Trabajando...