Data recovery from BSIS and BSAS tables

Hi all,
The records in the tables BSIS and BSAS are deleted due to adhoc circumstances.
How do I recover this data in SAP?
Please help!!!
Thanks,
Raghav

Hello Raghav,
two possibilities without a complete restore (in a standard SAP environment):
1) Flashback Query (but it only works if your UNDO tablespace still contains all the data - parameter undo_retention):
http://docs.oracle.com/cd/E11882_01/appdev.112/e25518/adfns_flashback.htm#ADFNS01003
2) LogMiner
http://docs.oracle.com/cd/E11882_01/server.112/e22490/logminer.htm#i1005553
Regards
Stefan

Similar Messages

  • Data Recovery from Partitioned and formatted Bit Locker Encrypted Drive

    Recently because of some issues in windows 7 installation from windows 8 installed OS. it was giving as the disc is dynamic windows can not be installed on it. so at last after struggling hard no other solution i partitioned and formatted my whole
    drive so all data gone included the drive which was encrypted by bit lockers.
    For recovery i used many software such as ontrack easy recover, get data back, recovery my files professional edition but still i couldnt able to recover my data from that drive. then i found some suggestion Using CMD to decrypt my data first 
    http://technet.microsoft.com/en-us/library/ee523219(WS.10).aspx
    where it shows it successfully decrypt my data at that moment my drives were in RAW format excluding on which windows is installed and then in CMD i check Chdsk which also shows no problem found. but now problem is still i coudnt able to recover
    my data then i format the drive D and again tried to recover data using above software after decryption still no result. 
    Now i need assistance how i can recover my encrypted drive as it was partitioned and also formatted but decrypted also as i have its recovery key too. thanks

    Hi ,
    I am afraid that we cannot get the data back if the drive has been formatted even if use the
    BitLocker Repair Tool.
    You’d better contact your local data recovery center to try to get data back.
    Tracy Cai
    TechNet Community Support

  • Data needed from emp and dept tables

    Wondering if somebody can querry the emp table and dept table that comes with some versions of oracle already built in.
    I need the data produced from these two querries
    select * from emp
    select * from dept

    If you look in ORACLE_HOME/sqlplus/demo you'll find demobld.sql which contains the script the build all the scott tables.

  • Fetching data slow from MSEG and BSEG table

    Dear Experts,
    Out  MSEG and BSEG are major tables which are very slow and taking 5-10 minutes in fetching just 20/30 records.
    Why this table taking more time and how I can fatch fast  data from these table.
    regards

    > Out  MSEG and BSEG are major tables which are very slow and taking 5-10 minutes in fetching just 20/30 records.
    > Why this table taking more time and how I can fatch fast  data from these table.
    Do you select on key fields or on indexed fields? How do you select?
    If not, then the database must read the full table and check which of the entries are valid for your selection.
    Do an SQL trace using ST05, run the command, stop the trace and check the explain.
    Markus

  • Data retrieval from proj and prps  tables

    I want to retrieve the data from proj & prps by giving selection parameter as
    project defination (proj-pspid). Please give me an idea about this. Is there any common field i  between these two.
    regards

    Hello,
    Check this:
    *--- Selektion von PSP-Elemente
      SELECT PRPS~PSPNR  PROJ~PSPID  PRPS~POSID  PRPS~POST1
             PRPS~OBJNR  PRPS~PSPHI
         INTO TABLE G_T_PSP
         FROM PRPS
         JOIN PROJ   ON PRPS~PSPHI = PROJ~PSPNR
         WHERE PROJ~PSPID IN SO_PROJ
           AND PROJ~LOEVM EQ SPACE
           AND POSID      IN SO_PSP
           AND PRART      IN SO_PRART
           AND PRPS~LOEVM EQ SPACE
           AND PRPS~PBUKR IN SO_PBUKR.
    Regards,
    Vasanth

  • BSIS and BSAS

    Hi Experts
    1) Is there any difference between BSIS and BSAS table?
    2) What are open items and closed items?
    pallavi

    BSIS : Open Items Available for GL
    BSAS: Cleared Items Available  for GL
    Gl Acoount Open Line Items Available in Table BSIS,
    GL Account Cleared Line Items Available in BSAS,
    Ex: while Using T. Code F-02,
    Dr 400500 Rs 1000
    Cr 500100 Rs 1000
    This Data Is Availeble In BSIS
    Reverse Above Entry
    Dr 500100 Rs 1000
    Cr 400500 Rs 1000
    This Data is Available In BSAS,
    Regards,
    Viswa

  • BSAK link to BSIS and BSAS...

    Hello Experts,
    I am doing 2 FOR ALL ENTRIES to get records from BSIS and BSAS based on the records
    that I got in BSAK. Currently, I only know of 3 fields to link which is BUKRS, BELNR, AND GJAHR
    but I is still any more fields that I can link to BSAK from BSIS and BSAS? Because we are
    experiencing performance issues in my program. I am using index for the 3 tables but still it gives us
    performance issues. Below is my code:
    *   Get previous year
        lv_year = p_gjahr - 1.
    *   Get records from PAYR
        SELECT zbukr vblnr gjahr lifnr zaldt
          FROM payr
          INTO TABLE gt_payr
         WHERE zbukr = p_bukrs
           AND gjahr IN (lv_year, p_gjahr).
        DELETE gt_payr WHERE zaldt+4(2) > p_monat.
        SORT gt_payr BY zbukr vblnr gjahr lifnr zaldt.
        DELETE ADJACENT DUPLICATES FROM gt_payr COMPARING zbukr vblnr gjahr lifnr zaldt.
        IF NOT gt_payr[] IS INITIAL.
    *     Get records from BSAK
          SELECT bukrs blart gjahr monat belnr lifnr dmbtr shkzg
            FROM bsak
            INTO TABLE gt_bsak
             FOR ALL ENTRIES IN gt_payr
            WHERE lifnr = gt_payr-lifnr
              AND bukrs = gt_payr-zbukr
              AND augdt = gt_payr-zaldt
              AND augbl = gt_payr-vblnr
              AND gjahr = gt_payr-gjahr.
        ENDIF.
        DELETE gt_bsak WHERE monat > p_monat.
        DELETE gt_bsak WHERE shkzg <> 'H'.
        gt_payments[] = gt_bsak[].
        IF NOT gt_payments[] IS INITIAL.
    *   Get records from BSIS(Open items)
        SELECT bukrs blart gjahr monat dmbtr hkont
          FROM bsis
          INTO TABLE gt_bsis
           FOR ALL ENTRIES IN gt_payments
         WHERE bukrs = gt_payments-bukrs
           AND belnr = gt_payments-belnr
           AND gjahr = gt_payments-gjahr
           AND blart IN (lc_su, lc_px).
    *   Get records from BSAS(Cleared items)
        SELECT bukrs blart gjahr monat dmbtr hkont
          FROM bsas
          INTO TABLE gt_bsas
           FOR ALL ENTRIES IN gt_payments
         WHERE bukrs = gt_payments-bukrs
           AND belnr = gt_payments-belnr
           AND gjahr = gt_payments-gjahr
           AND blart IN (lc_su, lc_px).
        ENDIF.
    Hope you can help me guys. Thank you and take care!

    In a statement with a SELECTstatement with FOR ALL ENTRIES, the addition ORDER BY can only be used with the addition PRIMARY KEY
    bsis
    select MANDT
    BUKRS
    HKONT
    AUGDT
    AUGBL
    ZUONR
    GJAHR
    BELNR
    BUZEI
    bsak
    select MANDT
    BUKRS
    LIFNR
    UMSKS
    UMSKZ
    AUGDT
    AUGBL
    ZUONR
    GJAHR
    BELNR
    BUZEI
    bsas
    select MANDT
    BUKRS
    HKONT
    AUGDT
    AUGBL
    ZUONR
    GJAHR
    BELNR
    BUZEI
    Message was edited by:
            Karthikeyan Pandurangan

  • Problem in Selecting the data from EKPO and KONV tables

    Hi Experts,
    Presently I am working on Report with Comparision-Sheet Between the vendor's Quotations. I have to display the Discount, Freight, Packing and Forwarding, Vat in Item level data based on the conditions made in PO.
    As per my Knowledge, Condition Types are stored in KONV Table. But there is no relation between KONV and EKPO tables.  So, I am unable to print the data for Discount, Freight, Packing and Forwarding, Vat... How can I get the values from EKPO and KONV tables?
    Thanks in Advance.
    Thanks n Regards,
    Muralikrishna.

    Don't recall if this is correct, but you may need the condition number from the header (EKKO) combined with EKPO-EBELP or other field as you key to access KONV (KNUMH and KPOSN).  My site doesn't run PP, so can't verify if the data is actually stored that, so just a possibility.

  • Can I get a data recovery from Apple if my iMac was in the hard drive replacement programme and I wasn't notified about it?

    Basically my iMac just crashed and I searched on Google for replacing my hard drive and came across the iMac 1TB Seagate Hard Drive Replacement Program at http://www.apple.com/support/imac-harddrive/
    Which is that Apple is asking all 2009 - 2011 iMac users to return their iMac for a free hard drive replacement because it currently has a fault in it. After entering in my serial number, I see that my iMac is elegible for a replacement.
    I did register my iMac with Apple, but I didn't receive any email about this program and I lost all my recent data because of the faulty hard drive. I never had an issue before with the drive so this just happened out of the blue.
    Is it possible to get a free data recovery from Apple for this? I find that it was a lack of communication that I lost most of my data.

    I completely understand that it's my responsibility to back up my data but I have it set to every 2nd month, not on a weekly or daily basis to back up the data.
    Apple might not be in data recovery business but could they not acquire a third party to do this?
    This is what happened:
    It was on sleep overnight and when I tried waking it, it was lagging badly. So I shut it down and restarted it. I phoned into techincal support to find out whats wrong, but they were giving me advice to reset the params etc. But i think it made it worse because it didnt want to get passed the white start up screen.
    So I phoned back to ask if it's a usual issue with my version of iMac and the man replied that it isn't common and that I should run the disk utility to check the hard drives health.
    I installed Mountain Lion on a USB and started the disk utility. Then it highlighted in red that it's a hardware fault and cannot be repaired by the disk utility. Therefore the hard drive has a serious fault with it.
    That's when I Google'd for a replacement drive and came across the program. The techincal guy didn't even tell me about it or anything.
    If I knew about this sooner, I would have taken it in for a replacement.

  • BSIS and BSIK table Fields

    Dear Experts,
    I m coding a Vendor GL report and using bsik and bsis table.
    problem is when i check for a document ( say 1100000290 open document), i dont get any entry of prctr, bupla or secco in bsis and bsik tables. but when i chek same document in BSEG (which i don't want to use, because its a cluster table) , I get bupla, prctr and secco fields value.
    Do i need to use some other tables also ?????????
    Any suggestions.
    Regards,
    Maverick

    After selecting data from BSIS & BSIK you must be having the fields BUKRS, GJAHR, BELNR, BUZEI. Correct ?
    These fields are key fields of BSEG. You can select data from BSEG using FOR ALL ENTRIES and in the WHERE condition pass the fields BUKRS, GJAHR, BELNR, BUZEI. I don't think selecting data based on key fields from cluster tables will give any performance issues.
    Cheers,
    Suhas

  • Oracle Assets Category-wise Report from FA and GL tables

    Hi,
    I am developing a customized report (Schedule of Fixed Assets) in the Oracle Assets Module, Which includes Category Wise Opening Balance, additions, adjustments, transfer IN, Transfer OUT and Retirements of Cost and Depreciations. I am using FA tables (FA_CATEGORY_BOOKS, FA_CATEGORIES_B) for category_id, category_name (segment1 of category combination) and book_type_code (Book Name). And I am also using GL tables (GL_BALANCES, GL_JE_HEADERS, GL_JE_LINES) for the amount of begin_balance_dr,begin_balance_cr,accounted_dr and accounted_cr.
    The report gets the category_id,category_name from FA_CATEGORIES_B and book_type_code, asset_account_ccid, reserve_account_ccid and book_type_code from FA_CATEGORY_BOOKS for a single book. The sum of accounted_dr or sum of accounted_cr is calculated for a single category_id whose asset_account_ccid is matched with code_combination_id of GL_JE_LINES.
    There are 15 books each have many projects (FA_CATEGORIE_B.segment6). This report is working as desired for 14 books but in one book there is same asset_account_ccid and reserve_account_ccid for more than one category_id(s). That’s why the same amount is displayed against the multiple category_ids .
    As functionally it is possible in Oracle Assets to have same asset_account_ccid or reserve_account_ccid for more than one category_ids, I want to know that is there any other attribute(except asset_account_ccid,reserve_account_ccid and code_combination_id) which can be used to get the separate data for each category_id from GL tables.
    Regards,
    Fahim
    [email protected]

    hi vijay,
    thanks for your quick reply,
    i'm preparing a reports,fields from bsis and bseg database tables,
    and,my select statement giving error,saying that cluster table can't be joined,
    my problem is,how to write the select statement without inner join those tables,is there any alternative,
    i heard there is 'select for all entries',but i don't know proper usage of that addition,
    regards,
    kc

  • Data recovery from corrupt boot partition

    The boot partition on my MacBook running 10.7.6 has a corrupt volume structure and will not mount, much less boot. The recovery partition boots but really doesn't let me do anything. Disk Utility can't repair nor even complete verification. I have lots of images which I need to recover, so am looking for a utility which might help.
    Everything was apparently ok until the failure and the drive hardware checked out ok, so I'm hopeful my files are recoverable. A week or so ago I optimized the volume with TechTool Pro and the directory with DiskWarrior, and last night attempted to sync 1Password on my iPad with 1Password for Mac. This did no t work, probably because of my unfamiliarity with the procedure, but seemed to do no damage. When I ran TTPro last night from its eDrive partition it reported a volume structure problem on the partition which I started to fix with the program but then cancelled the analysis and decided to use disk utility instead. Disk utility also reported a problem but stopped the verification with the instruction to do a repair which it again could not complete. When I rebooted the system partition would again not boot but this time I got grey screen with a message that the debugger had loaded and <panic>. A message box said power down and restart, but that only repeats the process.
    I'm thinking of attempting to install a system on an external boot drive and accessing the corrupt partition with a data recovery utility. Any insights, ideas or shared experiences appreciated. Thanks in advance for any desperately needed help.

    The safest thing to do here is to install a new disk in the system and do a clean install of OS X. From there, you can put your corrupted volume in an external USB enclosure and mount the file system to try and recover as much data as you can.
    It's likely obvious now, but it's REALLY worth investing in a large-capacity external storage or Time Capsure to use with Time Machine. Backups are essential. Hardware always eventually dies. We all need an effective strategy to deal with that.
    A long time ago, I was backing my Linux system up to 4mm DAT. When the inevitable HDD crash came, I thought I was ready. Unfortunately, I hadn't tested recovery from tape and I ended up losing everything. Which is to say, until you know you can restore, you don't even have a backup. I lost thousands upon thousands of photos of my kids growing up.
    BTW, if it is essential that you recover as much as possible, consider taking the disk to a data recovery service. Be warned: It's expensive.

  • A friend bought second hand macbook air mid 2011 with crossed circle on the display, we tried recovery from partition and same thing happened, after internet recovery it stays the same except now it asks for password for boot option, what happened?

    A friend bought second hand macbook air mid 2011 with crossed circle on the display and give to me to try to recover the system, I tried recovery from partition and same thing occured, after internet recovery it stays the same-crossed circle after reboot, then we tried to boot from USB with mac os 10.8 on it, it installs something,like it has being finishing installation, rebootes, and now it asks for password for boot option.We have no idea what that password could be.What happened!!!

    I forgot to write down my computer specs:
    iMac 27 Mid 2011
    2.7 GHz Intel Core i5
    4 GB 1333 MHz DDR3
    AMD Radeon HD 6770M 512 MB
    OS X 10.9.2

  • Get zuonr of  table bsis and bsas

    Hi All,
    Tried getting the zuonr of  bsas and bsis using bseg but  got
    Run time error long text.  Exceeded the permitted time.
    My condition is  c_sales_pdc type bseg-hkont value u20180000102120u2019.
    Need your advise on program optimization and rephrasing my program statements especially the case statements.
    below is the code
    Many thanks,
    Aashta
    SELECT bukrs
             hkont
             gjahr
             belnr
             budat
             waers
             blart
             shkzg
             wrbtr
             dmbtr
             augdt
             xragl
      FROM bsis
      INTO TABLE it_bsis
      WHERE hkont EQ c_sales_pdc
        AND bukrs IN s_bukrs
        AND belnr IN s_belnr
        AND budat LE p_budat.
      DELETE it_bsis WHERE blart NE 'DZ'
                     AND   blart NE 'PD'.
      DELETE it_bsis WHERE xragl NE ''.
      SELECT  augbl belnr bukrs  gjahr buzei bschl
       FROM bseg
       INTO TABLE it_bseg
       FOR ALL ENTRIES IN it_bsis
       WHERE zuonr NE space
         AND buzei = '01'
         AND gjahr = it_bsis-gjahr
         AND bschl  IN ('01', '15')
         AND qsskz = 'XX'
         AND bukrs IN s_bukrs
         AND zuonr IN s_zuonr
         AND augbl IN s_belnr
         AND augbl = it_bsis-belnr.
      LOOP AT it_bseg.
        CLEAR: it_bseg2-belnr, it_bseg2-zuonr, it_bseg2-kunnr.
        CASE it_bseg-bschl.
          WHEN '01'.
            SELECT augbl  zuonr kunnr
                FROM bseg
                INTO TABLE it_bseg2
                FOR ALL ENTRIES IN it_bseg
                WHERE augbl = it_bseg-augbl
                  AND augbl IN s_belnr
                  AND zuonr IN s_zuonr
                  AND kunnr IN s_kunnr.
          WHEN '15'.
            SELECT belnr zuonr kunnr
                 FROM bseg
                 INTO TABLE it_bseg2
                 FOR ALL ENTRIES IN it_bseg
                 WHERE belnr = it_bseg-belnr
                   AND belnr IN s_belnr
                   AND zuonr IN s_zuonr
                   AND kunnr IN s_kunnr.
          WHEN OTHERS.
            EXIT.
        ENDCASE.
      ENDLOOP.
      SELECT zuonr prctr
        FROM zfspbu
        INTO TABLE it_zfspbu
        FOR ALL ENTRIES IN it_bseg2
        WHERE zuonr = it_bseg2-zuonr
          AND zuonr IN s_zuonr.

    Hi Aasta,
               Obviously it will take the long time, because the fields you are retrieving in the select query are not in the proper order as of database fields and the same case in the where condition.  Therefore I have corrected and kept in order. please check.
    Select   bukrs
             hkont
             gjahr
             augdt
             belnr
             budat
             waers
             blart
             shkzg
             dmbtr
             wrbtr
             xragl
    FROM bsis
      INTO TABLE it_bsis
      WHERE bukrs IN s_bukrs
        AND hkont EQ c_sales_pdc
        AND belnr IN s_belnr
        AND budat LE p_budat.
    Also please put the initial check before using for all entries.
    i.e., if not it_bsis[] is initial.
    SELECT  bukrs
            belnr
            gjahr
            buzei
            augbl
            bschl
       FROM bseg
       INTO TABLE it_bseg
       FOR ALL ENTRIES IN it_bsis
       WHERE bukrs IN s_bukrs
         AND gjahr = it_bsis-gjahr
         AND buzei = '01'
         AND augbl = it_bsis-belnr
         AND bschl  IN ('01', '15')
         AND qsskz = 'XX'
         AND zuonr IN s_zuonr.
    endif.
    Please do the changes, hope will work fine.
    Regards,
    Md Ziauddin.

  • How To UPLOAD a DATA (.DAT) fiel from PC to internal table and then split it into the data different columns

    Hi all,
    I am new to ABAP Development. I need to upload a .DAT file (the file doesn#t have any proper structure-- Please find the .DAT file in the attachment). After uploading the DATA (.DAT) fiel I need to split in into different columns. Refering the attached .DAT fiel the fields in bracets like:
    [Arbeitstag],  [Pecunia], [Mita], [Kunde], [Auftrag] and  [Position] are different fields that need to be arranged in columns in an internal table. this .DAT fiel which I want to upload and then SPLIT it into various fields will will treated as MASTER DATA table for further programming. The program that I had written is as below. Also please refer the attached .DAT table.
    Please if any one could help me. i searched a lot in different forums but couldn't find me  a solution. Also note that the attached fiel is in text (.txt) format here but in real situation the same fiel is in DATA (.DAT) format.
    *& Report  ZDEMO_ZEITERFASSUNG9
    REPORT  ZDEMO_ZEITERFASSUNG9.
    Types: Begin of ttab,
            Rec(1000) type c,
           End of ttab.
    DATA: itab  type table of ttab.
    DATA: wa_tab type ttab.
    DATA: file_str type string.
    Parameters: p_file type localfile.
    At selection-screen on value-request for p_file.
                                           CALL FUNCTION 'KD_GET_FILENAME_ON_F4'
                                            EXPORTING
    *                                          PROGRAM_NAME        = SYST-REPID
    *                                          DYNPRO_NUMBER       = SYST-DYNNR
    *                                          FIELD_NAME          = ' '
                                               STATIC              = 'X'
    *                                          MASK                = ' '
                                             CHANGING
                                               file_name           = p_file.
    *                                        EXCEPTIONS
    *                                          MASK_TOO_LONG       = 1
    *                                          OTHERS              = 2
    Start-of-Selection.
      file_str = P_file.
      CALL FUNCTION 'GUI_UPLOAD'
        EXPORTING
          filename                      = '\\10.10.1.92\Volume_1\_projekte\Zeiterfassung-SAP\BUP_ZEIT.DAT'   " This the file  source address
          FILETYPE                      = 'DAT'
          HAS_FIELD_SEPARATOR           = ';'
    *     HEADER_LENGTH                 = 0
    *     READ_BY_LINE                  = 'X'
    *     DAT_MODE                      = ' '
    *     CODEPAGE                      = ' '
    *     IGNORE_CERR                   = ABAP_TRUE
    *     REPLACEMENT                   = '#'
    *     CHECK_BOM                     = ' '
    *     VIRUS_SCAN_PROFILE            =
    *     NO_AUTH_CHECK                 = ' '
    *   IMPORTING
    *     FILELENGTH                    =
    *     HEADER                        =
        tables
          data_tab                      = itab
       EXCEPTIONS
         FILE_OPEN_ERROR               = 1
         FILE_READ_ERROR               = 2
         NO_BATCH                      = 3
         GUI_REFUSE_FILETRANSFER       = 4
         INVALID_TYPE                  = 5
         NO_AUTHORITY                  = 6
         UNKNOWN_ERROR                 = 7
         BAD_DATA_FORMAT               = 8
         HEADER_NOT_ALLOWED            = 9
         SEPARATOR_NOT_ALLOWED         = 10
         HEADER_TOO_LONG               = 11
         UNKNOWN_DP_ERROR              = 12
         ACCESS_DENIED                 = 13
         DP_OUT_OF_MEMORY              = 14
         DISK_FULL                     = 15
         DP_TIMEOUT                    = 16
         OTHERS                        = 17
      IF sy-subrc <> 0.
    * MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
    *         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
      ENDIF.
      LOOP at itab into wa_tab.
            WRITE: / wa_tab.
      ENDLOOP.
    I will be grateful to all you experts for ur inputs
    regards
    Chandan Singh

    For every Auftrag, there are multiple Position entries.
    Rest of the blocks don't seems to have any relation.
    So you can check this code to see how internal table lt_str is built whose first 3 fields have data contained in Auftrag, and next 3 fields have Position data. The structure is flat, assuming that every Position record is related to preceding Auftrag.
    Try out this snippet.
    DATA lt_data TYPE TABLE OF string.
    DATA lv_data TYPE string.
    CALL METHOD cl_gui_frontend_services=>gui_upload
      EXPORTING
        filename = 'C:\temp\test.txt'
      CHANGING
        data_tab = lt_data
      EXCEPTIONS
        OTHERS   = 19.
    CHECK sy-subrc EQ 0.
    TYPES:
    BEGIN OF ty_str,
      a1 TYPE string,
      a2 TYPE string,
      a3 TYPE string,
      p1 TYPE string,
      p2 TYPE string,
      p3 TYPE string,
    END OF ty_str.
    DATA: lt_str TYPE TABLE OF ty_str,
          ls_str TYPE ty_str,
          lv_block TYPE string,
          lv_flag TYPE boolean.
    LOOP AT lt_data INTO lv_data.
      CASE lv_data.
        WHEN '[Version]' OR '[StdSatz]' OR '[Arbeitstag]' OR '[Pecunia]'
             OR '[Mita]' OR '[Kunde]' OR '[Auftrag]' OR '[Position]'.
          lv_block = lv_data.
          lv_flag = abap_false.
        WHEN OTHERS.
          lv_flag = abap_true.
      ENDCASE.
      CHECK lv_flag EQ abap_true.
      CASE lv_block.
        WHEN '[Auftrag]'.
          SPLIT lv_data AT ';' INTO ls_str-a1 ls_str-a2 ls_str-a3.
        WHEN '[Position]'.
          SPLIT lv_data AT ';' INTO ls_str-p1 ls_str-p2 ls_str-p3.
          APPEND ls_str TO lt_str.
      ENDCASE.
    ENDLOOP.

Maybe you are looking for