batch input

Colapsar
X
 
  • Tiempo
  • Mostrar
Limpiar Todo
nuevos mensajes
  • Mar_83
    Member
    • oct
    • 33

    #1

    batch input

    Hola a todos!
    tengo un gran problema.
    me han mandado hacer un batch input.
    el caso es ke me enviaron por mail un fichero y ese es el fichero que debo de meter en la funcion ws_upload, xo no se porque al ejecutarlo no me lo muestra.
    alguien me puede enviar un ejemplo de batch input completo para poder mirar en que falla?
    muchisimas gracias de antemano.
  • robert_milan
    Senior Member
    • jun
    • 315

    #2
    este es un codigo muy sencillo que puedes mirar:

    REPORT zbicargadelubi
    NO STANDARD PAGE HEADING LINE-SIZE 255.

    INCLUDE bdcrecx1.

    INITIALIZATION.
    nodata = ' '.

    * Tabla interna
    DATA: BEGIN OF itabc OCCURS 0,
    lgnum(003),
    lgtyp(003),
    lgpla(010),
    END OF itabc.

    START-OF-SELECTION.

    CALL FUNCTION 'UPLOAD'
    EXPORTING
    filetype = 'DAT'
    filetype_no_change = 'S'
    TABLES
    data_tab = itabc.
    IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
    ENDIF.

    PERFORM open_group.

    LOOP AT itabc.
    CLEAR bdcdata.
    REFRESH bdcdata.
    PERFORM crear.
    ENDLOOP.

    PERFORM close_group.

    *---------------------------------------------------------------------*
    * FORM CrearTrans *
    *---------------------------------------------------------------------*
    * Crear la Transaccion *
    *---------------------------------------------------------------------*
    FORM crear.
    PERFORM bdc_dynpro USING 'SAPML01S' '0400'.
    PERFORM bdc_field USING 'BDC_CURSOR' 'LAGP-LGPLA'.
    PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
    PERFORM bdc_field USING 'LAGP-LGNUM' itabc-lgnum.
    PERFORM bdc_field USING 'LAGP-LGTYP' itabc-lgtyp.
    PERFORM bdc_field USING 'LAGP-LGPLA' itabc-lgpla.

    PERFORM bdc_dynpro USING 'SAPML01S' '0400'.
    PERFORM bdc_field USING 'BDC_OKCODE' '=LO'.

    PERFORM bdc_transaction USING 'LS02N'.

    ENDFORM.

    espero te sirva
    Un Huevon No Inútil


    Solo di lo que piensas, a la mejor tienes la mejor respuesta....

    Si alguien ya lo hizo, copialo y cambiale las variables total es un codigo nuevo.....

    Si SAP lo hace se puede hacer, no me pidas hacer algo que SAP no ha hecho.....

    Consultor FI jr/ABAP Sr.

    Comentario

    • Mar_83
      Member
      • oct
      • 33

      #3
      Originalmente publicado por robert_milan
      este es un codigo muy sencillo que puedes mirar:

      REPORT zbicargadelubi
      NO STANDARD PAGE HEADING LINE-SIZE 255.

      INCLUDE bdcrecx1.

      INITIALIZATION.
      nodata = ' '.

      * Tabla interna
      DATA: BEGIN OF itabc OCCURS 0,
      lgnum(003),
      lgtyp(003),
      lgpla(010),
      END OF itabc.

      START-OF-SELECTION.

      CALL FUNCTION 'UPLOAD'
      EXPORTING
      filetype = 'DAT'
      filetype_no_change = 'S'
      TABLES
      data_tab = itabc.
      IF sy-subrc <> 0.
      * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
      * WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.

      PERFORM open_group.

      LOOP AT itabc.
      CLEAR bdcdata.
      REFRESH bdcdata.
      PERFORM crear.
      ENDLOOP.

      PERFORM close_group.

      *---------------------------------------------------------------------*
      * FORM CrearTrans *
      *---------------------------------------------------------------------*
      * Crear la Transaccion *
      *---------------------------------------------------------------------*
      FORM crear.
      PERFORM bdc_dynpro USING 'SAPML01S' '0400'.
      PERFORM bdc_field USING 'BDC_CURSOR' 'LAGP-LGPLA'.
      PERFORM bdc_field USING 'BDC_OKCODE' '/00'.
      PERFORM bdc_field USING 'LAGP-LGNUM' itabc-lgnum.
      PERFORM bdc_field USING 'LAGP-LGTYP' itabc-lgtyp.
      PERFORM bdc_field USING 'LAGP-LGPLA' itabc-lgpla.

      PERFORM bdc_dynpro USING 'SAPML01S' '0400'.
      PERFORM bdc_field USING 'BDC_OKCODE' '=LO'.

      PERFORM bdc_transaction USING 'LS02N'.

      ENDFORM.

      espero te sirva



      ok muchas gracias, creo ke ya me funciona bien voy a hacer una prueba xa asegurarme

      Comentario

      Trabajando...