Application Development Discussions
Join the discussions or start your own on all things application development, including tools and APIs, programming models, and keeping your skills sharp.
cancel
Showing results for 
Search instead for 
Did you mean: 

incorrect entries from application server file read dataset .

0 Kudos

As i am using below code for fetching file data from application server to internal table in custom report.

data in internal table in inconsistent is there any another way to do in?

report zparoman.


TYPES: BEGIN OF ty_bkpf" STRUCTURE DEFINATION bkpf

         belnr TYPE belnr_d ,

         bukrs TYPE bukrs,

         gjahr TYPE gjahr,

         bldat TYPE bldat,

         cpudt TYPE cpudt,

         waers TYPE waers,

         blart TYPE blart,

         budat TYPE budat,

         xblnr TYPE xblnr1,

         bktxt TYPE bktxt,

  END OF ty_bkpf.

DATA: it_bkpf TYPE STANDARD TABLE OF ty_bkpf INITIAL SIZE 0, " INTERNAL TABLE it_BKPF

       wa_bkpf TYPE ty_bkpf.                                   " work area wa_bkpf

TYPES: BEGIN OF ty_bseg,

       belnr TYPE belnr_d,

       bukrs TYPE bukrs,

       buzei TYPE buzei,

       bschl TYPE bschl,

       umskz TYPE umskz,

       hkont TYPE hkont,

       zterm TYPE dzterm,

       wrbtr TYPE wrbtr,

       kostl TYPE kostl,

       prctr TYPE prctr,

       mwskz TYPE mwskz,

       sgtxt TYPE sgtxt,

       zuonr TYPE dzuonr,

       zlspr TYPE dzlspr,

       zlsch TYPE schzw_bseg,

   END OF ty_bseg.

DATA: it_bseg TYPE STANDARD TABLE OF ty_bseg INITIAL SIZE 0, "internal table it_bseg

       wa_bseg TYPE ty_bseg.                                   "work area wa_bseg

TYPES:BEGIN OF ty_final,                                    " final structue defn

        header TYPE c LENGTH 3,

        belnr TYPE c LENGTH 10,"belnr_d,

        bukrs TYPE c LENGTH 4,"bukrs,

        gjahr TYPE c LENGTH 4,"gjahr,

        bldat TYPE c LENGTH 8,"bldat,

        cpudt TYPE c LENGTH 8,"cpudt,

        waers TYPE c LENGTH 5,"waers,

        blart TYPE c LENGTH 2,"blart,

        budat TYPE c LENGTH 8,"budat,

        xblnr TYPE c LENGTH 16,"xblnr1,

        bktxt TYPE c LENGTH 25,"bktxt,

        buzei TYPE c LENGTH 3,"buzei,

         bschl TYPE c LENGTH 2,"bschl,

         umskz TYPE c LENGTH 1,"umskz,

         hkont TYPE c LENGTH 10,"hkont,

         zterm TYPE c LENGTH 4,"dzterm,

         wrbtr TYPE c LENGTH 13,"wrbtr,

         kostl TYPE c LENGTH 10,"kostl,

         prctr TYPE c LENGTH 10,"prctr,

         mwskz TYPE c LENGTH 2,"mwskz,

         sgtxt TYPE c LENGTH 50,"sgtxt,

         zuonr TYPE c LENGTH 18,"dzuonr,

         zlspr TYPE c LENGTH 1,"dzlspr,

         zlsch TYPE c LENGTH 1,"schzw_bseg,

  END OF ty_final.

DATA: it_final TYPE STANDARD TABLE OF ty_final INITIAL SIZE 0, " final internal table it_final

        wa_final TYPE ty_final.                                  " work area wa_final

TYPES: BEGIN OF temp_str,

wa_string(5000) TYPE c,

   END OF temp_str.

DATA:it_str TYPE TABLE OF temp_str,

       wa_str TYPE temp_str.

DATA: gv_file   TYPE rlgrap-filename.

gv_file = 'E:\USR\SAP\ECS\SYS\CSL_FIGL_TRANS_DATA_04172014162215.TXT'.

OPEN DATASET gv_file FOR INPUT IN TEXT MODE ENCODING DEFAULT.     "Opening file from Application server

IF sy-subrc EQ 0.

*  DO 2 TIMES.

   DO.

     READ DATASET gv_file INTO wa_str.

     IF sy-subrc = 0.

       APPEND wa_str TO it_str.

     ELSE.

       EXIT.

     ENDIF.

   ENDDO.

   ENDIF.

*   WRITE:/ 'HELLO'.

LOOP AT it_str INTO wa_str.

    split wa_str at ' ' into

       wa_final-header

        wa_final-belnr

        wa_final-bukrs

        wa_final-gjahr

        wa_final-bldat

        wa_final-cpudt

        wa_final-waers

        wa_final-blart

        wa_final-budat

        wa_final-xblnr

        wa_final-bktxt

        wa_final-buzei

         wa_final-bschl

         wa_final-umskz

         wa_final-hkont

         wa_final-zterm

         wa_final-wrbtr

         wa_final-kostl

         wa_final-prctr

         wa_final-mwskz

         wa_final-sgtxt

         wa_final-zuonr

         wa_final-zlspr

         wa_final-zlsch.

                                         " Split the string separated by SPACE

     append wa_final to it_final.

ENDLOOP.

3 REPLIES 3

Former Member
0 Kudos

Hi ,

Try to open the file with encoding UTF-8 :

   Open dataset file for INPUT in TEXT MODE ENCODING UTF-8 .

Regards

Former Member
0 Kudos

How did you solve the issue ?


0 Kudos

The problem was at split statement use of pipe delimited instead of space in code . Solved my problem