Programita Que No Funciona

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • aaron alfonso
    Junior Member
    • may
    • 27

    #1

    Programita Que No Funciona

    HOLA TENGO POCO PROGRAMANDO ABAP Y ME PIDIERON LO SIGUIENTE
    DE LA TABLA DE BKPF Y LA TABLA BSEG UN REPORTE CON LOS CAMPOS BUKRS,BELNR,GJAHR,BLDAT,BUDAT,XBLNR,BKTXT,BLART,SG TXT,PRCTR.
    ESTE ES MI CODIGO :
    HE ESTADO DEBBUGIE Y NO ME GUARDA LOS CAMPOS .PARA PRESENTARLO EN LA IMPRESION ALGUIEN PUEDE AYUDARME
    --------------------------------------------------------------------------------
    REPORT ZCONSULTA_DOCFI.
    TABLES: BKPF ,BSEG.
    DATA:
    BEGIN OF T_DATOS OCCURS 0,
    MANDT LIKE BKPF-MANDT,
    BUKRS LIKE BKPF-BUKRS,
    BELNR LIKE BKPF-BELNR,
    GJAHR LIKE BKPF-GJAHR,
    BLDAT LIKE BKPF-BLDAT,
    BUDAT LIKE BKPF-BUDAT,
    XBLNR LIKE BKPF-XBLNR,
    BKTXT LIKE BKPF-BKTXT,
    BLART LIKE BKPF-BLART,
    SGTXT LIKE BSEG-SGTXT,
    PRCTR LIKE BSEG-PRCTR,
    END OF T_DATOS.
    DATA:
    e_layout TYPE lvc_s_layo,
    t_fcat TYPE lvc_t_fcat,
    fldtext TYPE char50.


    DATA:IT_TABLE TYPE STANDARD TABLE OF BKPF,
    WA_BKPF TYPE BKPF.
    DATA:IT_TABLEB TYPE STANDARD TABLE OF BSEG,
    WA_BSEG TYPE BSEG.

    SELECT-OPTIONS:
    S_BUKRS FOR BKPF-BUKRS,
    S_BLDAT FOR BKPF-BLDAT,
    S_BUDAT FOR BKPF-BUDAT,
    S_BELNR FOR BKPF-BELNR,
    S_GJAHR FOR BKPF-GJAHR,
    S_XBLNR FOR BKPF-XBLNR,
    S_BKTXT FOR BKPF-BKTXT,
    S_BLART FOR BKPF-BLART.

    START-OF-SELECTION.
    SELECT SINGLE BUKRS BELNR GJAHR BLDAT BUDAT XBLNR BKTXT BLART
    INTO (T_DATOS-BUKRS, T_DATOS-BELNR, T_DATOS-GJAHR, T_DATOS-BLDAT, T_DATOS-BUDAT, T_DATOS-XBLNR, T_DATOS-BKTXT, T_DATOS-BLART)
    FROM BKPF
    WHERE BUKRS EQ S_BUKRS
    AND BELNR IN S_BELNR
    AND GJAHR IN S_GJAHR.

    SELECT SINGLE SGTXT PRCTR
    INTO (T_DATOS-SGTXT, T_DATOS-PRCTR)
    FROM BSEG
    WHERE BUKRS EQ T_DATOS-BUKRS
    AND BELNR EQ T_DATOS-BELNR
    AND GJAHR EQ T_DATOS-GJAHR.

    PERFORM reporte_alv.
    *&--------------------------------------------------------------------*
    *&REPORTE_ALV
    *&--------------------------------------------------------------------*
    FORM reporte_alv.
    CHECK NOT IT_TABLE[] IS INITIAL.
    PERFORM catalogo_fcat.
    e_layout-zebra = 'X'.
    e_layout-sel_mode = 'D'.
    e_layout-no_rowmove = 'X'.
    e_layout-col_opt = 'X'.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
    EXPORTING
    i_callback_program = sy-repid
    i_callback_html_top_of_page = 'MY_HTML_TOP_PAGE'
    is_layout_lvc = e_layout
    it_fieldcat_lvc = t_fcat
    TABLES
    t_outtab = IT_TABLE
    EXCEPTIONS
    program_error = 1.

    IF SY-TCODE ='T_DATOS'.
    ENDIF.

    LOOP AT T_DATOS.
    MOVE:
    SY-MANDT TO T_DATOS-MANDT,
    BKPF-BUKRS TO T_DATOS-BUKRS,
    BKPF-BELNR TO T_DATOS-BELNR,
    BKPF-GJAHR TO T_DATOS-GJAHR,
    BKPF-BUDAT TO T_DATOS-BUDAT,
    BKPF-BLDAT TO T_DATOS-BLDAT,
    BKPF-XBLNR TO T_DATOS-XBLNR,
    BKPF-BLART TO T_DATOS-BLART,
    BSEG-SGTXT TO T_DATOS-SGTXT,
    BSEG-PRCTR TO T_DATOS-PRCTR.
    *Inserta datos en la tabla Z
    INSERT INTO BKPF VALUES T_DATOS.
    *Inserta datos en la tabla interna
    APPENDT DATOS.
    CLEAR: WA_BSEG, WA_BKPF.
    ENDLOOP.
    ENDFORM.
    *&---------------------------------------------------------------------*
    *&Form catalogo_fcat
    *&---------------------------------------------------------------------*
    FORM catalogo_fcat.
    PERFORM agrega_campos USING:
    'BURKS' 'BURKS' 'BKPF' space space,
    'BELNR' 'BELNR' 'BKPF' space space,
    'GJAHR' 'GJAHR' 'BKPF' space space,
    'BLDAT' 'BLDAT' 'BKPF' space space,
    'BUDAT' 'BUDAT' 'BKPF' space space,
    'XBLNR' 'XBLNR' 'BKPF' space space,
    'BKTXT' 'BKTXT' 'BKPF' space space,
    'BLART' 'BLART' 'BKPF' space space,
    'SGTXT' 'SGTXT' 'BSEG' space space,
    'PRCTR' 'PRCTR' 'BSEG' space space.
    ENDFORM. " CATALOGO_FCAT
    *&---------------------------------------------------------------------*
    *&Agrega_Campos
    *&---------------------------------------------------------------------*
    FORM agrega_campos USING
    value(p1) value(p2) value(p3) value(p4) value(p5).
    DATA l_fcat TYPE lvc_s_fcat.
    l_fcat-fieldname = p1.
    l_fcat-ref_field = p2.
    l_fcat-ref_table = p3.
    l_fcat-coltext = p4.
    l_fcat-inttype = p5.
    l_fcat-col_opt = 'X'.
    IF p5 NE space.
    l_fcat-intlen = 20.
    l_fcat-decimals = 2.
    l_fcat-decimals_o = 2.
    ENDIF.
    APPEND l_fcat TO t_fcat.
    ENDFORM. " agrega_campos
    *&---------------------------------------------------------------------*
    *&Form MY_USER_COMMAND
    *&---------------------------------------------------------------------*
    FORM my_user_command USING p_ucomm TYPE sy-ucomm
    p_selfield TYPE slis_selfield.
    CASE p_ucomm.
    WHEN 'REGR' OR 'SALI'.
    p_selfield-exit = abap_true.
    ENDCASE.

    ENDFORM. " MY_USER_COMMAND
    tenchy
  • guido.e.lozano
    Junior Member
    • dic
    • 2

    #2
    Cuando dices "HE ESTADO DEBBUGIE Y NO ME GUARDA LOS CAMPOS .PARA PRESENTARLO EN LA IMPRESION ALGUIEN PUEDE AYUDARME" es que el alv no te muestra datos o a que te refieres?

    Comentario

    • Dlanor20777
      Senior Member
      • nov
      • 708

      #3
      Si son solo 2 tablas, por que no usas la SQVI?

      Comentario

      Trabajando...