Doing Block Recovery of a Table

Hello,
We have to do a single block recovery of a table on Oracle 10gR2 Solaris machine.
One of the archive was missing or corrupted.
I was trying to do block recovery from the backup of 3 days. But it is applying all the archives and after that errors out saying media recovery failure due to missing/corrupt archive log.
I have tried until scn , until sysdate-2 , using tag tagname etc....
But in all the situations it is applying archive logs and giving media recovery failure.
Is there any way I can only apply certain archive logs or do until a point in time of recovery of that single block.
or just get the block from the backup and not apply the archive logs.
Thanks

Street Hawk wrote:
Then you have to forget that block.
OR
you will have to do an incomplete recoveryI have to say that its "really wrong". How would you do an incomplete recovry of a corrupted block?
http://download.oracle.com/docs/cd/B19306_01/backup.102/b14191/rcmconc2.htm#i1008221
>
Note these restrictions of block media recovery:
You can only perform block media recovery with RMAN. No SQL*Plus recovery interface is available.
You can only perform complete recovery of individual blocks. In other words, you cannot stop recovery before all redo has been applied to the block.
You can only recover blocks marked media corrupt. The V$DATABASE_BLOCK_CORRUPTION view indicates which blocks in a file were marked corrupt since the most recent BACKUP or BACKUP ... VALIDATE command was run against the file.
You must have a full RMAN backup. Incremental backups are not used by block media recovery. Proxy backups are also not used by block media recovery. Only full backups and archived log files are used.
Block media recovery is able to restore blocks from parent incarnation backups and recover the corrupted blocks through a RESETLOGS.
Blocks that are marked media corrupt are not accessible to users until recovery is complete. Any attempt to use a block undergoing media recovery results in an error message indicating that the block is media corrupt.>
Flashback also is WRONG suggestion. It recovers your logical changes,not the physcial corruptions like block failure and you don't need to enable it. Its there by default. The flashback database option has to be enabled. But putting the whole database back in past , just because a block is corrupted , is that a wise thing to do?
@OP,
If you don't have all the archive logs, I would suggest to repair the block using [dbms_repair|http://download.oracle.com/docs/cd/B19306_01/appdev.102/b14258/d_repair.htm] package. Note that the name of the package is "misleading".
HTH
Aman....

Similar Messages

  • Block recovery why it needs so many archive dlogs

    Subject: Why does block recovery needs so many archived logs
    My blocks were corrupted on Sept 8 (looking at rman backup log).
    I am doing
    recover datafile 19 block 321, 322, 385, 513, 577 restore until time 'sysdate - 15';
    I am finding that this command first restores datafile of backup of Sept 7 and then it tries to get
    1.     All the archived logs from Sept 7 until today. If my blocks were corrupted on Sept 8 why does it need logs of next 10 days or so.
    2.     If restore of archived logs from tape somehow fails; then If I rerun recover data file 19 block command,
    It starts from the beginning; why?
    3.     Is there a way to do recovery based on archived logs received
    So far since I do not think more are needed. Can I just run:
    recover datafile 9 command.
    Can it be run while database is in open mode.

    user632098 wrote:
    Can I just run:
    recover datafile 9 command.
    Can it be run while database is in open mode.You can try to recover only a datafile if you have the right backup for the datafile and and all archived redo logs needed.
    It can be done online if the datafile does not belong to SYSTEM or UNDO tablespace.
    Example:
    RMAN> sql 'alter database datafile 4 offline';
    sql statement: alter database datafile 4 offline
    RMAN> restore datafile 4;
    Starting restore at 18-SEP-10
    allocated channel: ORA_DISK_1
    channel ORA_DISK_1: sid=21 devtype=DISK
    channel ORA_DISK_1: starting datafile backupset restore
    channel ORA_DISK_1: specifying datafile(s) to restore from backup set
    restoring datafile 00004 to C:\ORACLEXE\ORADATA\XE\USERS.DBF
    channel ORA_DISK_1: reading from backup piece C:\ORACLEXE\APP\ORACLE\FLASH_RECOV
    ERY_AREA\XE\BACKUPSET\2010_09_16\O1_MF_NNNDF_TAG20100916T210407_694TK7BY_.BKP
    channel ORA_DISK_1: restored backup piece 1
    piece handle=C:\ORACLEXE\APP\ORACLE\FLASH_RECOVERY_AREA\XE\BACKUPSET\2010_09_16\
    O1_MF_NNNDF_TAG20100916T210407_694TK7BY_.BKP tag=TAG20100916T210407
    channel ORA_DISK_1: restore complete, elapsed time: 00:00:07
    Finished restore at 18-SEP-10
    RMAN> recover datafile 4;
    Starting recover at 18-SEP-10
    using channel ORA_DISK_1
    starting media recovery
    archive log thread 1 sequence 70 is already on disk as file C:\ORACLEXE\APP\ORAC
    LE\FLASH_RECOVERY_AREA\XE\ARCHIVELOG\2010_09_17\O1_MF_1_70_695ZOOOH_.ARC
    archive log thread 1 sequence 71 is already on disk as file C:\ORACLEXE\APP\ORAC
    LE\FLASH_RECOVERY_AREA\XE\ARCHIVELOG\2010_09_17\O1_MF_1_71_6977XBK5_.ARC
    archive log thread 1 sequence 72 is already on disk as file C:\ORACLEXE\APP\ORAC
    LE\FLASH_RECOVERY_AREA\XE\ARCHIVELOG\2010_09_18\O1_MF_1_72_698RLXQC_.ARC
    archive log filename=C:\ORACLEXE\APP\ORACLE\FLASH_RECOVERY_AREA\XE\ARCHIVELOG\20
    10_09_17\O1_MF_1_70_695ZOOOH_.ARC thread=1 sequence=70
    archive log filename=C:\ORACLEXE\APP\ORACLE\FLASH_RECOVERY_AREA\XE\ARCHIVELOG\20
    10_09_17\O1_MF_1_71_6977XBK5_.ARC thread=1 sequence=71
    media recovery complete, elapsed time: 00:00:01
    Finished recover at 18-SEP-10
    RMAN> sql 'alter database datafile 4 online';
    sql statement: alter database datafile 4 online
    RMAN>

  • Block recovery errror

    Hi all
    in alert log file i am getting following messege
    Sat Jan 23 04:00:03 2010
    Recovery of Online Redo Log: Thread 1 Group 19 Seq 443514 Reading mem 0
    Mem# 0: /redo_odd2/oracle/VIGILANCE/data/VIGILANC/redo19aa.log
    Mem# 1: /redo_odd3/oracle/VIGILANCE/data/VIGILANC/redo19bb.log
    Mem# 2: /redo_odd1/oracle/VIGILANCE/data/VIGILANC/redo19cc.log
    Block recovery interrupted at rba 443514.342069.476
    Doing block recovery for file 15658 block 21511
    Block recovery from logseq 443514, block 182898 to scn 9095198491615
    Why it so
    it is critical production server

    Hi,
    Do You have any rman backup of that datafile ,
    if have then using rman you can recover the block as
    rman> recoverblock datafile <no.> block <no.>;
    try this
    farhan.

  • Does adding a field to a table affect a data block based on the table?

    If I make a change to a table like adding a field does it affect data data blocks based on the table?

    The other place I have seen where adding a new column to a table causes problems is when a programmer codes: Select * from table.
    If that is coded in a form, the form will need to be recompiled before it will work properly.

  • Block on PL/SQL Table of Record

    Hi,
    I am using Developer 6 with Oracle 8i, I based my block on PL/SQL procedure returning table of record, the form is running fine, but when ever I try to get data set, more then 200 rows, first it gows for query, working for a moment and then closed the form with out giving any result. And the least possible queryable data is 1000 to 30000.
    It is working fine with less then 200 rows.
    The form is also working fine with Ref Cursor with any of rows, but what I am doing is only possible with Table of record type.
    Please give me your good advise what should I do.
    Please accept my thanks in advance.
    Fahim

    This should not happen. If you are not sure that your stored procedure is bug-free, you could generate and use stored procedures using my SQLPlusPlus and give it a try.
    You can email me directly if your problem still not gets solved.
    regards,
    M. Armaghan Saqib
    +---------------------------------------------------------------
    | 1. SQL PlusPlus => Add power to SQL Plus command line
    | 2. SQL Link for XL => Integrate Oracle with XL
    | 3. Oracle CBT with sample GL Accounting System
    | Download free: http://www.geocities.com/armaghan/
    +---------------------------------------------------------------
    null

  • BAPI_ACC_DOCUMENT_POST does not update BKPF/BSEG tables

    Hello,
    I used bapi_acc_document_post to post a accounting document The following routine says that the document is successfully posted, however, does not update the acccounting tables. I read several messages on the SDN and unable to get the correct answer.
    Your help is appreciated.
    Regards
    William
    REPORT ze_bapi_acc_document_post .
    SELECTION-SCREEN BEGIN OF BLOCK bl01 .
    SELECTION-SCREEN ULINE.
    PARAMETERS:
      ref_key LIKE bapiache01-obj_key DEFAULT 'TEST000001BAPICALL',
      dest    LIKE bdi_logsys-logsys  DEFAULT '          '.
    SELECTION-SCREEN END   OF BLOCK bl01 .
    DATA:
      gd_documentheader    LIKE bapiache09,
      gd_customercpd       LIKE bapiacpa09,
      gd_fica_hd           LIKE bapiaccahd,
      it_accountreceivable LIKE TABLE OF bapiacar09 WITH HEADER LINE,
      it_accountgl         LIKE TABLE OF bapiacgl09 WITH HEADER LINE,
      it_accounttax        LIKE TABLE OF bapiactx09 WITH HEADER LINE,
      it_criteria          LIKE TABLE OF bapiackec9 WITH HEADER LINE,
      it_valuefield        LIKE TABLE OF bapiackev9 WITH HEADER LINE,
      it_currencyamount    LIKE TABLE OF bapiaccr09 WITH HEADER LINE,
      it_return            LIKE TABLE OF bapiret2   WITH HEADER LINE,
      it_receivers         LIKE TABLE OF bdi_logsys WITH HEADER LINE,
      it_fica_it           LIKE TABLE OF bapiaccait WITH HEADER LINE,
      it_accountpayable    LIKE TABLE OF bapiacap09 WITH HEADER LINE,
      it_paymentcard       LIKE TABLE OF bapiacpc09 WITH HEADER LINE,
      it_ext               LIKE TABLE OF bapiacextc WITH HEADER LINE.
    PERFORM fill_internal_tables.
    CALL FUNCTION 'BAPI_ACC_DOCUMENT_CHECK'
      DESTINATION dest
      EXPORTING
        documentheader    = gd_documentheader
        customercpd       = gd_customercpd
        contractheader    = gd_fica_hd
      TABLES
        accountgl         = it_accountgl
        accountreceivable = it_accountreceivable
        accountpayable    = it_accountpayable
        accounttax        = it_accounttax
        currencyamount    = it_currencyamount
        return            = it_return.
    WRITE: / 'Result of check all:'.                            "#EC NOTEXT
    PERFORM show_messages.
      DATA: l_type LIKE gd_documentheader-obj_type,
            l_key  LIKE gd_documentheader-obj_key,
            l_sys  LIKE gd_documentheader-obj_sys.
      CALL FUNCTION 'BAPI_ACC_DOCUMENT_POST'
        EXPORTING
          documentheader    = gd_documentheader
          customercpd       = gd_customercpd
          contractheader    = gd_fica_hd
        IMPORTING
          obj_type          = l_type
          obj_key           = l_key
          obj_sys           = l_sys
        TABLES
          accountgl         = it_accountgl
          accountpayable    = it_accountpayable
          accounttax        = it_accounttax
          currencyamount    = it_currencyamount
          return            = it_return
        EXCEPTIONS
          OTHERS  = 1.
      WRITE: / 'Result of post:'.                               "#EC NOTEXT
    PERFORM show_messages.
    REFRESH IT_RETURN.
    CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
    EXPORTING
       WAIT          = 'X'.
    IMPORTING
      RETURN        = IT_RETURN.
        COMMIT WORK.     .
    BREAK-POINT.
         Form  fill_internal_tables
    FORM fill_internal_tables.
      PERFORM fill_header.
      PERFORM fill_accountgl.
      PERFORM fill_accountap.
      PERFORM fill_accounttax.
      PERFORM fill_currencyamount.
    ENDFORM.                               " fill_internal_tables
         Form  Show_messages
    FORM show_messages.
      IF it_return[] IS INITIAL.
        WRITE: / 'no messages'.
      ELSE.
        SKIP 1.
        LOOP AT it_return.
          WRITE: /    it_return-type,
                 (2)  it_return-id,
                      it_return-number,
                 (80) it_return-message,
                      it_return-message_v1,
                 (20) it_return-parameter,
                 (3)  it_return-row,
                      it_return-field.
        ENDLOOP.
      ENDIF.
      ULINE.
    ENDFORM.                               " Show_messages
          FORM fill_accountgl                                           *
    FORM fill_accountgl.
    Actual invoice line
      CLEAR it_accountgl.
      it_accountgl-itemno_acc     = 2.
      it_accountgl-gl_account     = '0000009223'.
      it_accountgl-item_text      = 'Line Iten'.  "#EC NOTEXT
      it_accountgl-profit_ctr     = 'DNDDUMMY'.
      it_accountgl-comp_code      = '0180'.
      it_accountgl-tax_code       = 'IG'.
      it_accountgl-FUNDS_CTR      = '1985BA'.
      it_accountgl-COSTCENTER     = '1985BA'.
      it_accountgl-FUND           = 'C113'.
      it_accountgl-TAXJURCODE     = 'CAON'.
      APPEND it_accountgl.
    ENDFORM.                    "fill_accountgl
          FORM fill_header                                              *
    FORM fill_header.
    CALL FUNCTION 'OWN_LOGICAL_SYSTEM_GET'
       IMPORTING
         own_logical_system = gd_documentheader-obj_sys.
    OBJ_TYPE has to be replaced by customers object key (Y* or Z*)
    gd_documentheader-obj_type   = 'BKPFF'.
    gd_documentheader-obj_key    = ref_key.
    gd_documentheader-BUS_ACT    = 'RMRP'.
      gd_documentheader-username   = sy-uname.
      gd_documentheader-header_txt = 'BAPI Test'.               "#EC NOTEXT
    gd_documentheader-obj_key_r  =
    GD_DOCUMENTHEADER-reason_rev =
      gd_documentheader-comp_code  = '0180'.
    GD_DOCUMENTHEADER-AC_DOC_NO  =
      gd_documentheader-fisc_year  = '2008'.
      gd_documentheader-doc_date   = sy-datum.
      gd_documentheader-pstng_date = '20070901'.
    GD_DOCUMENTHEADER-TRANS_DATE = SY-DATUM.
    GD_DOCUMENTHEADER-VALUE_DATE =
    GD_DOCUMENTHEADER-FIS_PERIOD =
      gd_documentheader-doc_type   = 'RE'.
      gd_documentheader-ref_doc_no = '6000009268'.
    GD_DOCUMENTHEADER-COMPO_ACC  = 'FI'.
      gd_documentheader-bus_act    = 'RFBU'.
    ENDFORM.                    "fill_header
          FORM fill_ap                                                  *
    FORM fill_accountap.
    vendor line
      CLEAR it_accountpayable.
      it_accountpayable-itemno_acc = 1.
      it_accountpayable-comp_code = '0180'.
      it_accountpayable-pmnttrms = '0006'.
      it_accountpayable-TAX_CODE = 'IG'.
      it_accountpayable-vendor_no  = '0001200051'.
      it_accountpayable-item_text  = 'Vendor Line'. "#EC NOTEXT
      APPEND it_accountpayable.
    ENDFORM.                    "fill_accountap
          FORM fill_tax                                                 *
    FORM fill_accounttax.
    tax line
      CLEAR it_accounttax.
      it_accounttax-itemno_acc = 3.
      it_accounttax-gl_account = '0000081710'.
      it_accounttax-tax_code   = 'IG'.
      it_accounttax-acct_key   = 'VST'.
      it_accounttax-TAXJURCODE     = 'CA00'.
      APPEND it_accounttax.
    ENDFORM.                    "fill_accounttax
          FORM fill_currencyamount                                      *
    FORM fill_currencyamount.
      CLEAR it_currencyamount.
      it_currencyamount-itemno_acc   = 1.
      it_currencyamount-curr_type    = '00'.
      it_currencyamount-currency     = 'CAD'.
      it_currencyamount-amt_base     = '106.00'.
      APPEND it_currencyamount.
      CLEAR it_currencyamount.
      it_currencyamount-itemno_acc   = 2.
      it_currencyamount-curr_type    = '00'.
      it_currencyamount-currency     = 'CAD'.
      it_currencyamount-amt_base     = '100.00'.
      APPEND it_currencyamount.
      CLEAR it_currencyamount.
      it_currencyamount-itemno_acc   = 3.
      it_currencyamount-curr_type    = '00'.
      it_currencyamount-currency     = 'CAD'.
      it_currencyamount-amt_base     = '6.00'.
      APPEND it_currencyamount.
    ENDFORM.                    "fill_currencyamount

    U have to implement the BADI for this.. ‘AC_DOCUMENT’
    Add source code into Method: CHANGE_INITIAL & CHANGE_AFTER_CHECK,
    *---<SAPLBPFC> is for Posting      with BAPI: BAPI_ACC_DOCUMENT_POST
      *---<SAPCNVE > is for Posting(Tax) with BAPI: BAPI_ACC_DOCUMENT_POST
      *---<SAPMSSY1> is for Test(Check)  with BAPI: BAPI_ACC_DOCUMENT_CHECK
    DATA: wa_header TYPE acchd.
        IF sy-xprog NE ' SAPMSSY1 '.
          CLEAR wa_header.
          wa_header = im_document-header.
          ex_document-header-bktxt = wa_header-bktxt.
          CLEAR wa_header.
        ENDIF.

  • One block based on two table when update/insert result in FRM-40654

    Hi,
    I ahve a multi line block based on two tables.
    Customers - AFCUSTOMER
    Maintenance - AFMAINT
    Some customers exist when maintenance doesnt so in my where clause i have
    AFCUSTOMER.CUSTID=AFMAINT.MAINT_CUSTID(+) AND AFCUSTOMER.CUSTBRANCHID=1 AND AFCUSTOMER.CUSTSTATUSID=2
    I have primary key set as the AFMAINT table primary key and have set DML data targetr name as AFMAINT.
    I am displaying customer name (from AFCUSTOMER) and type of payment (from AFMAINT) on screen and i want to change the type of payment which then uses pre update trigger to fil in the primary key of AFMAINT.
    Querying works fine and displays all records. But when i try to insert a record into the AFMAINT table by changing the type of payment list item i get FRM-40654 Record updated by another user. I have checked and block status is QUERY right before the list item is changed.
    Any ideas on where i am going wrong.

    But when i try to insert a record into the AFMAINT table by changing the type of payment list item i get FRM-40654 Record updated by another userWhen you start editing a record which is already stores in the database forms "rereads" the record from the database and check id all values in the database are the same as in the form. If there is some difference, forms assumes that someone else changed the record after you did the query.
    The main causes for that are:
    -Some database-trigger which changes the value of a column which is included in the form
    -numeric column with a higher precision in forms, than in the database
    -a block based on a view or "select from clause" which does not return the same values as inserted/updated through forms.
    I guess you run into the third issue. Check all the values in the forms-items after your dml and compare them to the values saved to the database, there will be some difference. If you find it, correct the error, if one, or re-read the data in the POST-UPDATE-trigger.

  • Finding the number of blocks occupied by a table

    Hi,
    I need to know how much space is being occupied by a table.
    NOTE: I dont need the allocated space of a table. I need the actual space occupied by a table currently.
    I have used the following two methods to determine the size, but i have two contradictory answers..
    The procedure i have used is:
    1. calculate the number of blocks being used.
    2. mulitply the number of blocks by db_block_size to get
    the space occupied by a table.
    I have used two ways to find out the number of blocks, but they both differ.
    Let me know which one is correct or is there any way to find out the number of blocks.
    1st Method
    SQL> analyze table employee estimate statistics;
    Table analyzed.
    SQL> select table_name, blocks, empty_blocks from dba_tables where table_name='EMPLOYEE';
    TABLE_NAME BLOCKS EMPTY_BLOCKS
    EMPLOYEE 184999 5000
    2nd method to find the number of blocks.
    SQL> select count(distinct(substr(dbms_rowid.rowid_to_Restricted(rowid,0),1,8))) from employee;
    COUNT(DISTINCT(SUBSTR(DBMS_ROWID.ROWID_TO_RESTRICTED(ROWID,0),1,8)))
    165058
    From the 1st method i got 184999 as the number of blocks and from 2nd method i got 165058.
    Please help me out as soon as possible.
    Thanks........

    If by "the number of blocks occupied by a table" you mean the number of blocks actually containing data, then the best you can do is an approximation. The supplied package DBMS_SPACE contains a procedure called Unused_Space that will give you the number of blocks above the high water mark. It takes 3 input paramters and returns 7 out parameters. You can call it as:
    DBMS_SPACE.Unused_Space (owner, obj_name, object_type,
                             total_blocks, total_bytes, unused_blocks,
                             unused_bytes, last_used_extent_file_id,
                             last_used_extent_block_id, last_used_block)The output parameters are:
    total_blocks - Number of blocks allocated to the table
    total_bytes - Number of bytes allocated to the table
    unused_blocks - Number of blocks above the high water mark
    unused_bytes - Number of bytes above the high water mark
    last_used_extent_file_id - file id containing the last used block
    last_used_extent_block_id - block id of the last used block
    last_used_block - row slot of the last used block
    Note that this does not take into account any free space within block below the high water mark.
    HTH
    John

  • [nQSError: 59014] The  requested column does not exist in this table.

    Hi
    As you know this error has been discussed in other threads.. the difference in mine is that not only the time series measures but all the columns are giving me the error...none of the columns are being displayed... The rpd has no consistency errors. can anyone suggest what may be going on?
    Error Codes: OPR4ONWY:U9IM8TAC:OI2DL65P
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 59014] The requested column does not exist in this table. (HY000)
    SQL Issued: SELECT column1 saw_0 FROM Paint3 ORDER BY saw_0
    Thank you
    mm58

    I guess you have the column in RPD, and it is available for queries.
    are you using any time measures? if so check you chronological keys.

  • The requested column does not exist in this table

    Hi All,
    I am getting the following error:
    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error has occurred. [nQSError: 59014] The requested column does not exist in this table. (HY000)
    SQL Issued: SELECT "Customers - Dim".CITY FROM MVDEMO ORDER BY 1
    When I tried viewing data online I am able to view the data in the physical Layer. Also I tried connecting thru ODBC Client and issued the same SQL (above) and it returns the data.
    I am using Oralce BIEE 10.1.3.2.1 version.
    Please let me know if any faced this kinda issue and how to resolve this.
    Thank you.

    Check your column mapping in the BMM layer in your Customers - Dim logical table. Does the CITY column point to a physical table column?

  • What does the recovery CD contain - Satellite A100-847

    Hello guys
    I had a few questions about the recovery CD:
    1- What does the recovery CD contain? and the other CD which is called Media something?
    2- Does it have Windows in it? So I can format my PC using it? And from where can i find the product key (windows key)
    3- What if i wanted to use the CD without formatting? etc. installing the softwares?
    Sorry for asking too much but my laptop started disturbing me. Just for knowledge my Laptop is satellite A100-847

    Hello
    I will try to answer your question.
    1 Recovery media contains recovery image. Recovery image is a kind of package that contains operating system, all necessary drivers, Toshiba tools and utilities and some additional software like WinDVD or Norton antivir application. Media something is not known to me. Maybe exact description can help.
    2 Yes it has Windows OS. Yes you can format your notebook using it. You do not need product key. Just install it.
    3 I do not know what you mean. The fact is that HDD will be formatted before you start recovery installation. Be sure all your important data are saved on some external device.
    Bye

  • Can I back up the files before doing the recovery?

    Hello
    If using the recovery disk to load windows (I have Windows Vista 32-bit) is it possible to save files (pictures, etc...) before wiping out these files on the hard drive?
    I have not backed up some files and cannot access windows to do this now...am wondering if I can back up the files before doing the recovery?
    Any help would be appreciated : )

    Hello
    You can try to start Vista in Safe mode. Start your notebook and press F8. Choose option to start OS in safe mode. When Vista starts connect external HDD or USB memory stick and copy all your data there.
    I have done this three weeks ago. I was not able to start Vista properly due to blue screen.

  • Error in ALV : Field Does not exists in Output table .

    Hi All,
    In my ALV report, program get dumped and showing error when i tried to put a col named Distribution channel ion the alv.
    I have put the Distribution cannel field in the IT_FInal table , but still getting folwong errors :
    Error : Field Symbol is not been assigned.
    As Instructed i have passed            I_INTERFACE_CHECK              = 'X'.
    By this i am getting detail error that :
    Field Distribution channel does not exists in Output table & Heading for List is missing .
    But i have maintained the distribition channel in IT_Final table
    Please suggest wheather we have to define dis channel in any other place.
    Thanks in advance.
    Can any one help me regrarding this.
    Thanks in advance.

    Hello,
    You have to populate the same in the fieldcatalog as well, i think you have not maintained this field there.
    BR,
    Suhas
    PS: Also make it a point to follow-up on your previous post: [Error in ALV : Field Symbol not been assigned.|Error in ALV : Field Symbol not been assigned.]

  • Error :Extract Structure does not exist for the table YFSP03A .

    Hi Could you please help me to solve the above mentioned problem?
    I have a requirement where i have to generate the Data Source ' 3FI_SL_FS_SI ' using the table YFSP03A .
    Using the Tcode: BW03MAST i tried to assign FI-SL to the ledger but it throwed me an error that extract structure does not exit for the table YFSP03A .The reason being that i didnot create an extract structure for the table.So i tried to create it using the Tcode: BW01,but i did not have authorisation for the Transaction and BI team also could not generate as even they were not authorized to generate extract Structures.
                          So, Please are there any other ways to generate Extract structure for the table so that i can generate the Data source? Or is there any other means of generating the Data Source? And i couldnot access the other Tcodes viz :FAGLBW03, FAGLBW01,  FAGLBW02.

    Hi Bharath,
    Goto SE11, put the name of your extract structure in Data type and click display, check the version of the structure. if it is inactive then goto RSA6 and activate your DS.
    After activation try to retransport.
    Regards,
    Durgesh.
    Edited by: Durgesh Gandewar on Jul 25, 2011 3:13 PM

  • BLOCK BASED ON TWO TABLES

    I've created a block based on two tables.
    Querying records works fine.
    However, when I try to amend a column in the master table I get an error message 'Record has already been updated by another user.'
    I have set the dml target property to to the master table and set the primary key on the correct columns.
    What else could there be??!!

    Block1 will be----- enter_query Sku :123 then from dropdown select Level 1 which will show data like this
    in two different rows.
    Sku       : 123       Price  : $100        Qty : 10   (Primary)
    Sub Sku   : 345       Price  : $110        Qty : 8   (Level 1)then from dropdown selected Level 2 which will show data like this in two different rows.
    Sku       : 123       Price  : $100        Qty : 10   (Primary)
    Sub Sku   : 456       Price  : $90         Qty : 12 (Level 2)There are two more blocks which will display more information based on either Level 1 is selected or Level2 selected.
    Regards
    Sandy

Maybe you are looking for