Error when deletting internal table

Hi to all,
   I have small requirement. Am getting runtime error , when am deleting internal table when that internal table will have only one record. how i can solve this problem. Give me some clues.

Hi Geetha, you can do this
IF itab[] IS NOT INITIAL.
  LOOP AT it_ekbe.
    IF it_ekbe-bwart_i NE '101' AND it_ekbe-bwart_i NE '105' AND it_ekbe-bwart_i NE '201' OR it_ekbe-bwart_i NE '202' AND
       it_ekbe-bwart_i NE '221' AND it_ekbe-bwart_i NE '222' AND it_ekbe-bwart_i NE '231' AND it_ekbe-bwart_i NE '232' AND
       it_ekbe-bwart_i NE '241' AND it_ekbe-bwart_i NE '242' AND it_ekbe-bwart_i NE '251' AND it_ekbe-bwart_i NE '252' AND
       it_ekbe-bwart_i NE '261' AND it_ekbe-bwart_i NE '262' AND it_ekbe-bwart_i NE '281' AND it_ekbe-bwart_i NE '282' AND
       it_ekbe-bwart_i NE '291' AND it_ekbe-bwart_i NE '292'.
      DELETE itab WHERE mblnr   = it_ekbe-lfbnr_i
                    AND matnr_i = it_ekbe-matnr_i
                    AND ebeln_i = it_ekbe-ebeln_i
                    AND ebelp_i = it_ekbe-ebelp_i
                    AND werks_i = it_ekbe-werks_i.
    ENDIF.
  ENDLOOP.
ENDIF.
This routine does the same but with better performance, I hope this help you.
Regards
David Carballido

Similar Messages

  • Getting error when creating internal table

    hi i m creating internal table giving erro like 'VBELN' must be flat structure.
    DATA: BEGIN OF INT_VBAK,
            VBELN  LIKE VBELN-VBAK,
            AUDAT  LIKE AUDAT-VBAK,
            KWMENGE LIKE KWMENGE-VBAP,
            ARKTX LIKE ARKTX-VBAP,
            WERKS LIKE WERKS-VBAP,
            LFIMG LIKE LFIMG-VBAP.
          END OF INT_VBAK.
    thanks .

    Hii Laxman..
    DATA: BEGIN OF INT_VBAK,
    VBELN LIKE VBELN-VBAK,
    AUDAT LIKE AUDAT-VBAK,
    KWMENGE LIKE KWMENGE-VBAP,
    ARKTX LIKE ARKTX-VBAP,
    WERKS LIKE WERKS-VBAP,
    LFIMG LIKE LFIMG-VBAP.
    END OF INT_VBAK.
    This is Not itab declaration.. it will only Create a work area.
    So Declare like this
    DATA: BEGIN OF INT_VBAK <b>occurs 100,</b>
    VBELN LIKE VBELN-VBAK,
    AUDAT LIKE AUDAT-VBAK,
    KWMENGE LIKE KWMENGE-VBAP,
    ARKTX LIKE ARKTX-VBAP,
    WERKS LIKE WERKS-VBAP,
    LFIMG LIKE LFIMG-VBAP.
    END OF INT_VBAK.
    or
    DATA: BEGIN OF ST_VBAK ,
    VBELN LIKE VBELN-VBAK,
    AUDAT LIKE AUDAT-VBAK,
    KWMENGE LIKE KWMENGE-VBAP,
    ARKTX LIKE ARKTX-VBAP,
    WERKS LIKE WERKS-VBAP,
    LFIMG LIKE LFIMG-VBAP.
    END OF ST_VBAK.
    DATA : INT_VBAK LIKE TABLE OF ST_VBAK.
    Then it works.
    <b>Reward if Helpful</b>

  • Error On deleting from table

    Hello Experts.
    I am getting error when deleting from table.
    please help me.I had given my error.
    If possible also tell me how to trace this error.
    java.lang.IndexOutOfBoundsException: Index: 3, Size: 3
         at java.util.ArrayList.RangeCheck(ArrayList.java:507)
         at java.util.ArrayList.get(ArrayList.java:324)
         at com.sap.tc.webdynpro.progmodel.context.Node$ElementList.getElement(Node.java:2034)
         at com.sap.tc.webdynpro.progmodel.context.Node.isMultiSelected(Node.java:841)
         at com.sap.tc.webdynpro.progmodel.context.Node.isMultiSelected(Node.java:839)
         at try1.comp1.TableView.onActionDelete_Entry(TableView.java:191)
         at try1.comp1.wdp.InternalTableView.wdInvokeEventHandler(InternalTableView.java:191)
         at com.sap.tc.webdynpro.progmodel.generation.DelegatingView.invokeEventHandler(DelegatingView.java:87)
         at com.sap.tc.webdynpro.progmodel.controller.Action.fire(Action.java:67)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.doHandleActionEvent(WindowPhaseModel.java:420)
         at com.sap.tc.webdynpro.clientserver.window.WindowPhaseModel.processRequest(WindowPhaseModel.java:132)
         at com.sap.tc.webdynpro.clientserver.window.WebDynproWindow.processRequest(WebDynproWindow.java:335)
         at com.sap.tc.webdynpro.clientserver.cal.AbstractClient.executeTasks(AbstractClient.java:143)
         at com.sap.tc.webdynpro.clientserver.session.ApplicationSession.doProcessing(ApplicationSession.java:299)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessingStandalone(ClientSession.java:759)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doApplicationProcessing(ClientSession.java:712)
         at com.sap.tc.webdynpro.clientserver.session.ClientSession.doProcessing(ClientSession.java:261)
         at com.sap.tc.webdynpro.clientserver.session.RequestManager.doProcessing(RequestManager.java:149)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doContent(DispatcherServlet.java:62)
         at com.sap.tc.webdynpro.serverimpl.defaultimpl.DispatcherServlet.doPost(DispatcherServlet.java:53)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:760)
         at javax.servlet.http.HttpServlet.service(HttpServlet.java:853)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.runServlet(HttpHandlerImpl.java:401)
         at com.sap.engine.services.servlets_jsp.server.HttpHandlerImpl.handleRequest(HttpHandlerImpl.java:266)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:387)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.startServlet(RequestAnalizer.java:365)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.invokeWebContainer(RequestAnalizer.java:944)
         at com.sap.engine.services.httpserver.server.RequestAnalizer.handle(RequestAnalizer.java:266)
         at com.sap.engine.services.httpserver.server.Client.handle(Client.java:95)
         at com.sap.engine.services.httpserver.server.Processor.request(Processor.java:160)
         at com.sap.engine.core.service630.context.cluster.session.ApplicationSessionMessageListener.process(ApplicationSessionMessageListener.java:33)
         at com.sap.engine.core.cluster.impl6.session.MessageRunner.run(MessageRunner.java:41)
         at com.sap.engine.core.thread.impl3.ActionObject.run(ActionObject.java:37)
         at java.security.AccessController.doPrivileged(Native Method)
         at com.sap.engine.core.thread.impl3.SingleThread.execute(SingleThread.java:100)
         at com.sap.engine.core.thread.impl3.SingleThread.run(SingleThread.java:170)

    This Is the code of delete function.
    //@@begin onActionDelete_Entry(ServerEvent)
             int Count=wdContext.nodePerson().size();
             int LeadSelcection=wdContext.nodePerson().getLeadSelection();
             for(int i=0;i<Count;i++)
                  if( (i==LeadSelcection) || wdContext.nodePerson().isMultiSelected(i))
                       wdContext.nodePerson().removeElement(wdContext.nodePerson().getElementAt(i));
                  }//if
             }//for
        //@@end

  • Internal error when accessing a table  -

    Hi,
    The program which is running as background was running for last 1 year, last two days the RFC call in the program is dumping.
    In DUMP its showing Internal error when accessing a table
    Error : DBIF_RSQL_SQL_ERROR
    I checed the size of the table its quite huge for the application.
    So there is no issue with table.
    Please advise what causes these sort of error.
    System is ECC 6.0
    With SQL server 8.0
    Regards,
    Thomas

    These are the system log i got it from SM21. For this error logs are as below
    Very High Priority error
    Details Page 2 Line 9 System Log: Local Analysis of onsaprp1                  1
    Time
    Type
    Nr
    Clt
    TCode
    Grp
    N
    Text
    15:43:09
    DIA
    009
    300
    AB
    0
    Run-time error "DBIF_RSQL_INTERNAL_ERROR" occurred
    Run-time error "DBIF_RSQL_INTERNAL_ERROR" occurred
    Details
    Recording at local and central time........................ 11.02.2011 15:43:09
    Task......
    Process
    User......
    Terminal
    Session
    TCode
    Program
    Cl
    Problem cl
    Package
    03084
    Dialog work process No. 009
    TOM
    1
    SAPMSSY1
    T
    Transaction Problem
    SABP
    Further details for this message type
    Module nam
    Line
    Error text
    absapsql
    0786
    HandleRsqlErrors
    Documentation for system log message AB 0 :
    The specified runtime error has occurred in the system.
    Parameter
    abcdefghijklmnopqrstuvwxyz .. DBIF_RSQL_INTERNAL_ERROR
    Technical details
    File
    Offset
    RecFm
    System log type
    Grp
    N
    variable message data
    119
    618840
    l
    Error (Module, Row)
    AB
    0
    HandleRsqlErrors                                    absapsql0786
    High Priority error
    Details Page 2 Line 18 System Log: Local Analysis of onsaprp1                 1
    Time
    Type
    Nr
    Clt
    TCode
    Grp
    N
    Text
    15:44:07
    DIA
    009
    300
    SMEN
    BZ
    Y
    Unexpected return value 8 when calling up
    Unexpected return value 8 when calling up
    Details
    Recording at local and central time........................ 11.02.2011 15:44:07
    Task......
    Process
    User......
    Terminal
    Session
    TCode
    Program
    Cl
    Problem cl
    Package
    03084
    Dialog work process No. 009
    TOM
    om-blr-l
    1
    SMEN
    SAPLSMTR_NAVIGATION
    K
    SAP Web AS Problem
    SBAC
    Further details for this message type
    Module nam
    Line
    Table Name
    Field Name
    dbrepolo
    172
    8
    Documentation for system log message BZ Y :
    When calling a function within the database interface, a return
    value which cannot be processed by the calling function was
    provided.
    Technical details
    File
    Offset
    RecFm
    System log type
    Grp
    N
    variable message data
    120
    11160
    h
    Database Error (Non-SQL)
    BZ
    Y
    8                                                   dbrepolo172
    Edited by: Thomas Paul jr on Feb 14, 2011 6:36 AM
    Edited by: Thomas Paul jr on Feb 14, 2011 6:38 AM

  • SM58 : Internal error when accessing a table

    Hi there,
    We have just upgraded from R/3 4.7 to ECC 6.0. After the upgarde we face many "Internal error when accessing a table" in sm58. Is there any table mapping mismatched happened during unicode conversions? How to check the details? Most of the errors are SWW_WI_EXECUTE_INTERNAL_RFC, SWW_WI_CREATE_VIA_EVENT_IBF and etc which are workflow modules.
    can you help?
    Thanks.
    Regards,
    Thava

    Hi
    Have u checked this thread?
    problem in TRFC
    Error while executing Workflow: User is locked.
    /message/5804053#5804053 [original link is broken]
    Regards
    Sridhar Goli

  • Error ODS activation - sql error when accessing a table.

    Hi,
    sometimes occurs an error by activation ODS. I have proces chain and when is loaded second packet an error occurs. In monitor>>
    -RSMPC 128, datapacket 3 is wrong, with status number 9
    -RSMPC 131
    -RSDRO 108 - communcation error (sql error when accessing a table)
    In sm21>
    -sql error when accessing a table
    -The exception, which is assigned to the class 'CX_SY_OPEN_SQL_DB', was  
    either                                                      caught nor passed along using a RAISING clause, in the procedure <b>"UPDATE_ATAB"</b>   "(FORM)"                                                                    
    Since the caller of the procedure could not have expected this exception     
       to occur, the running program was terminated.                               
      The reason for the exception is:                                             
      The database system recognized that your last operation on the database      
      would have led to a deadlock.                                                
      Therefore, your transaction was rolled back                                  
      to avoid this.                                                                       
      ORACLE always terminates any transaction that would result in deadlock.      
      The other transactions involved in this potential deadlock                   
      are not affected by the termination.
    I have BW 3.5.
    Thank You very much.

    There are a few different scenarios that I can think of where this might come up that all involve what might resulting in parallel (concurrent)processes:
    Loading packets in parallel - that is there are X number of processes loading packets concurrently. This could be set in your IMG settings system wide or in the InfoPackage for just this datasource.   You seem to indicate that you don't have this.
    Database parallel processing - RSAMDIN - ORA_PARALLEL_DEGREE ( there was a different RSADMIN parm for older versions - forget what SP the change came with).
    You have multiple InfoPackages for the datasource, each loading what should be a different range of data, and they run atthe same time.
    You could be loading from two different datasources to the ODS at the same time.
    If any of these are true, I would look at bumping the INITRANS setting up.  Your DBA will probably need to do this for table and its indices.  There is a Note - 831234 that allows you to create a parameter in RSADMIN that will specify a INITRANS value (e.g. 20) rather than using the default. The ODS would need to be activated to pick this new setting up for the table to be altered. 
    You could also look at the Processing settings for the InfoPackage and change to PSA first, then target to see if that helps. 
    Or if you are loading from two different datasources at the same time, you might adjust your schedule so that doesn't happen.
    Pizzaman

  • ORA-00054 error when loading Oracle table using Data Services

    Hello,
    we are facing ORA-00054 error when loading Oracle table using BO Data services
    (Oracle 10g database, BODS Xi 3.2 SP3)
    Test Job performs
    1- truncate table
    2- load table (tested in standard and bulk load modes)
    Scenario when issue happens is:
    1- Run loading Job
    2- Job end in error for any Oracle data base error
    3- When re-running the same Job, Job fails with following error
         ORA-00054: resource busy and acquire with NOWAIT specified
    It seems after first failure, Oracle session for loading the table stays active and locks the table.
    To be able to rerun the Job, we are forced need to kill Oracle session manually to be able to run the Job again.
    Expected behaviour would be : on error rollback modifications made on table and BODS stops Oracle session in a clean way.
    Can somebody tell me / or point me to any BODS best practice about Oracle error handling to prevent such case?
    Thanks in advance
    Paul-Marie

    the ora-0054 can occure depending how the job failed before. If this occures you will need the DBA to release the lock on the table in question
    Or
           AL_Engine.exe on The server it creates the Lock. Need to Kill Them. Or stop it..
    This Problem Occurs when we select The Bulkloading Option in orclae  We also faced the same issue,Our admin has Killed the session. Then everything alright.

  • ORA-1722 ERROR WHEN SELECTING MFG_LOOKUPS TABLE

    제품 : AOL
    작성날짜 : 2003-04-07
    ORA-1722 ERROR WHEN SELECTING MFG_LOOKUPS TABLE.
    ================================================
    PURPOSE
    Problem Description
    sqlplus 에서 mfg_lookups table을 select할때,
    ORA-1722 Invalid number 에러발생
    Workaround
    Solution Description
    =======================================================
    CREATE OR REPLACE VIEW mfg_lookups(
    lookup_type,
    lookup_code,
    meaning,
    description,
    enabled_flag,
    start_date_active,
    end_date_active,
    created_by,
    creation_date,
    last_update_date,
    last_updated_by,
    last_update_login
    AS
    SELECT lv.lookup_type,
    TO_NUMBER(lv.lookup_code) lookup_code, <==== Wrong code!!!
    lv.meaning,
    lv.description,
    lv.enabled_flag,
    lv.start_date_active,
    lv.end_date_active,
    lv.created_by,
    lv.creation_date,
    lv.last_update_date,
    lv.last_updated_by,
    lv.last_update_login
    FROM fnd_lookup_values lv
    WHERE lv.LANGUAGE = USERENV('LANG') AND
    lv.view_application_id = 700 AND
    lv.security_group_id =
    fnd_global.lookup_security_group(lv.lookup_type,
    lv.view_application_id)
    =================================================================
    MFG_LOOKUPS 은 view로 fnd_lookup_values의 lookup_code값을 가지고 오는
    방식이나, to_number로 변환하게 되어 있어 숫자가 아닌 문자의 경우
    이와 같은 에러를 발생한다.
    이번 경우, 고객이 새로 등록한 Lookup code였고, code값을 숫자의 format으로
    다시 등록하니 해결됨.
    Reference Documents
    -------------------

    Yes but this is a regular operation and the INSERT is the only opportunity.
    BTW, look at what else I have just found:
    INSERT INTO Local_Table (a, b)SELECT col1, col2 FROM DUAL INNER JOIN Table1@remote ON (1=1) LEFT JOIN Table2@remote ON (...)
    OK.

  • Attribute change run fails - "Error when deleting the data record /B05/X.."

    Hello,
    I get the error message "Error when deleting the data record /B05/X.." on doing the change run.
    I have already done RSRV on this objects and found no errors, but still the activation fails.
    please give your suggestions ASAP to fix the issue as it is on production system.
    Thanks.

    Attribute change run could fails due to 2 reasons-
    (1) attribute xchange run is already runnnig for any toher object(monitor lock) (check by thi prog-RSDDS_CHANGERUN_MONITOR)
    (2) data is loading deleting from the object on which attribut changerun is running.(go in a manage tab and check)
    check this two conditions and rerun the attribute changrun again from program - RSDDS_AGGREGATES_MAINTAIN and give the master data name in the selection.
    Hope it helps you.

  • Error in passing internal table to smartform

    I have created a structure type in the driver program as below.
    tYPES : BEGIN OF gy_final,
              matnr TYPE mara-matnr,
              ersda TYPE mara-ersda,
              ernam TYPE mara-ernam,
              laeda TYPE mara-laeda,
              mtart TYPE mara-mtart,
              matkl TYPE mara-matkl,
              meins TYPE mara-meins,
              lgort TYPE mard-lgort,
              werks TYPE mard-werks,
            END OF gy_final.
    Then i created internal table and its work area of the above structure type as below
    data: it_final type STANDARD TABLE OF gy_final,
             wa_final type gy_final.
    I fetched the records in to the internal table it_final.
    Now i wanted to pass this in to smartform.
    nasi
    CALL FUNCTION 'fname'
    EXPORTING
        it1_final = it_final.
    I have created a similar structure in DDIC and declared in the smartform
    still it shows the error 
    The following syntax error occurred in program "/1BCDWB/SAPLSF00000239 " in
      include "/1BCDWB/LSF00000239F01 " in
    line 669:
    ""IT_FINAL" is neither specified under "TABLES" nor is it defined as an"
    " internal table."
    Please help me to sove this issue.

    In form interface -> go to tab TABLE then declare as IT1_FINAL LIKE <structure DDIC>.
    And i think when call form it should:
    CALL FUNCTION 'fname'
    TABLES
    it1_final = it_final.
    Regards,
    Edited by: Thien M. Pham on Sep 15, 2010 3:28 PM
    Edited by: Thien M. Pham on Sep 15, 2010 3:29 PM
    Edited by: Thien M. Pham on Sep 15, 2010 3:30 PM

  • An error when edit a table with ObjectViewer

    when I try to set a value to NULL with ObjectViewer,its data_type is number,the developer said:
    UPDATE "TT"."ADDRESS" SET USER_NO= WHERE ROWID = 'AAAOMXAAFAACH3GAAq' AND ORA_ROWSCN = '4563636967634'
    One error saving changes to table "TT"."ADDRESS":
    Row 118: ORA-00932: inconsistent datatypes: expected NUMBER got DATE,
    if the data_type is varchar2,it works:
    UPDATE "TT"."ADDRESS" SET NAME= WHERE ROWID = 'AAAOMXAAFAACH3GAe' AND ORA_ROWSCN = '4563636967631'
    Commit Successful
    I have no idea what's going on...

    Sorry, this got broken while fixing Re: Bug in 1.5.1 Deleting number value in data grid
    I'll let you know on how soon the fix could be delivered.
    -Raghu
    Edited by: RaghvendraSaboo on Mar 31, 2009 12:43 PM

  • Error when updating xml table

    Using IDCS3 I created a master table and exported as xml. Created a working ID file and copied the table over so structure was duplicated with all elements. Deleted some rows I didn't need and made some text changes in the master table.
    According to the manual, when merging the tables, the source should ignore elements that are no longer there and update the text in the remaining cells.
    Tried to update the xml by updating the link but get an error "Cells too small to split".
    I'm new to xml so any advice would be appreciated.
    Regards,
    Gerry

    It appears that ID can't change the cells or rows in a table, although it can change the content. The only solution is to change the table to text and modify the elements that way. The solution removes some flexibility in using tables to manage data.
    Regards,
    Gerry

  • Runtime error in Dynamic internal table with AMOUNT and Quantity Fields..

    Dear friends,
    I am attempting write a dymanic Select Statement (with joins).
    And the sleect query looks like this..
      SELECT (LT_SEL_LIST)
      INTO CORRESPONDING FIELDS OF
      TABLE <DYN_TABLE>
      FROM (LT_FROM_LIST)
      WHERE (LT_WHERE3).
    Here the into table is a dynamically created internal table..
    which is created by ...this
    CALL METHOD CL_ALV_TABLE_CREATE=>CREATE_DYNAMIC_TABLE
        EXPORTING
          IT_FIELDCATALOG = IT_OUTPUT2[]
        IMPORTING
          EP_TABLE        = DY_TABLE.
    the it_output2 contains the the fieldcatlog information of dynamically given fields :-
    like:-
           TABNAME
           FIELDNAME
           DATATYPE
           LENG
           INTTYPE
           ROLLNAME
           DECIMALS
           REFTABLE
           REFFIELD
    i mean the internal table is constructed with reference to all the bove metadata.
    Problem:- This query run fine with all the fields Except AMOUNT AND QUANTITY fields....
    When the selection list contain VBAK-NETWR or MSEG-MENGE..It throws a runtime error.
    "The data read during a SLECT access couldnt be inserted into the target field,either conversion is not supported for
    the target field's type or the target field is too short."
    after this I even tried to construct the dynamic table with CFILEDNAME and QFIELDNAME in the Fieldcatalog.
    so now my fieldcatlog looks like this:---
    LOOP AT IT_DD03L..
      IF IT_DD03L-DATATYPE = 'CURR'.
           TABLEFIELD-CFIELDNAME = IT_DD03L-FIELDNAME .
           ENDIF.
       IF IT_FIELDCAT3-DATATYPE = 'QUAN'.
           TABLEFIELD-QFIELDNAME = IT_DD03L-FIELDNAME .
      ENDIF.
           TABLEFIELD-TABNAME     = IT_DD03L-TABNAME.
           TABLEFIELD-FIELDNAME   = IT_DD03L-FIELDNAME.
           TABLEFIELD-DATATYPE    = IT_DD03L-DATATYPE.
           TABLEFIELD-INTLEN      = IT_DD03L-LENG.
           TABLEFIELD-INTTYPE     = IT_DD03L-INTTYPE .
           TABLEFIELD-ROLLNAME    = IT_DD03L-ROLLNAME.
           TABLEFIELD-DECIMALS    = IT_DD03L-DECIMALS.
           TABLEFIELD-REF_TABLE   = IT_DD03L-REFTABLE.
           TABLEFIELD-REF_FIELD   = IT_DD03L-REFFIELD.
    APPEND TABLEFIELD.
    CLEAR TABLEFIELD.
    ENDLOOP.
    Note:- this is a test code so ignore performance issues...
    Please help me with some code ...to avoid the Runtime erorr.
    Thanks,
    jeevan.

    Hi Jeevan,
    Why are moving only few fields from DD03L table to your field catalog? Why don't you use move-corresponding? The following code works for me in ECC6.0.
    data: it_dd03l type table of dd03l initial size 0,
          ls_dd03l type dd03l,
          lt_fldcat TYPE lvc_t_fcat,
          ls_fldcat TYPE lvc_s_fcat,
          ls_where(72) TYPE c,
          lt_where LIKE TABLE OF ls_where,
          lt_fld LIKE TABLE OF ls_where,
          lt_data_dy TYPE REF TO data.
    field-symbols: <ft_data> TYPE STANDARD TABLE.
    select * into table it_dd03l from dd03l
        where tabname = 'VBAK'
          and ( fieldname = 'VBELN' or fieldname = 'NETWR' ).
    check sy-subrc eq 0.
    loop at it_dd03l into ls_dd03l.
      move-corresponding ls_dd03l to ls_fldcat.
      append ls_fldcat to lt_fldcat.
      move ls_dd03l-fieldname to ls_where.
      append ls_where to lt_fld.
      if ls_dd03l-fieldname = 'VBELN'.
        clear ls_where.
        concatenate ls_dd03l-fieldname ' <> ''''' into ls_where.
        append ls_where to lt_where.
      endif.
    endloop.
    check not lt_fldcat is initial.
    CALL METHOD cl_alv_table_create=>create_dynamic_table
          EXPORTING
            it_fieldcatalog           = lt_fldcat
          IMPORTING
            ep_table                  = lt_data_dy
          EXCEPTIONS
            generate_subpool_dir_full = 1
            OTHERS                    = 2.
        IF sy-subrc <> 0.
          RAISE no_configuration_data.
        ENDIF.
        ASSIGN lt_data_dy->*  TO <ft_data>.
    check sy-subrc eq 0.
    select (lt_fld) from VBAK into corresponding fields of table
        <ft_data>
        where (lt_where).
    Thanks
    Bala

  • ORA-22813 error when deleting spatial objects in LIVE

    Hi,
    We are getting an ORA-22813 error when attempting to delete a spatial object from a version-enabled table in workspace LIVE. The spatial object to be removed has a SDO type of multipolygon. The geometry information consists of 4 rings with a combined ordinate count of 4120. The statement used to delete the row is:
    delete from tableA where tableA.id in (select tableA.id from tableA where tableA.id = 3);
    The error occurs only on a 10g R1 Oracle instance (10.1.0.5.0) with Workspace Manager version 10.1.0.7.1. The delete operation succeeds without problems on a 10g R2 (10.2.0.2.0) instance with Workspace Manager version 10.2.0.3.1. The statement is also executed successfully on the 10g R1 instance if the table is not version-enabled.
    Any help on this would be appreciated.
    Thanks

    Hi,
    I would recommend filing a TAR in this one. The only ora-22813 error involving workspace manager and geometry columns that I know about involves queries that need to sort data for which the size of the geometry column was >30k. Does the execution plan for the delete statement involve any kind of sort? However, this is an old 9.2 bug, that I believe was fixed for all 10.1 and newer releases.
    Does the same error happen if you do not use the subquery?
    Regards,
    Ben

  • Error in passing internal table as returning parameter

    Hi
    Im new to ABAP OO.
    I declared a parameter ret_kna1 Returning Type KNA1.
    Inside the method, I am retrieving data from table KNA1 into internal table and then I want return the interal table value.
    But Im not able to assing the internal table for eg : code
    method READ_CUSTOMER_LIST.
    data: lt_kna1 type TABLE OF kna1,
          wa_kna1 LIKE LINE OF lt_kna1.
    data: lv_kunnr type kna1-kunnr,
          lv_land1 type kna1-LAND1.
    SELECT * FROM kna1
    INTO TABLE lt_kna1
    WHERE land1 eq lv_land1.
    insert LINES OF lt_kna1 INTO TABLE ret_kna1.
    endmethod.
    when I try to activate the error says 'ret_kna1 is not an internal table  "OCCURS n" specification is missing.
    but I can not declare the internal table 'ret_kna1' once again in the code, as it already defined in the parameter as type KNA1.
    please help me how to assign internal table values to the returing structur.

    Are you passing it as an EXPORT parameter?
    use and define it in the TABLES section of your function module as so:
    *"  IMPORTING
    *"     VALUE(INCLUDE_X_LEVELS) TYPE  CHAR1 OPTIONAL
    *"  TABLES
    *"      I_SELECTED_OU STRUCTURE  HRROOTOB
    *"      I_SELECTED_EE STRUCTURE  OBJEC
    *"      E_VIP_EPM_DISTR STRUCTURE  ZHR_VIP_EPM_DISTR
    *"      E_RETURN STRUCTURE  BAPIRET1
    That way you can pass value in the table (if needed) and then pass the table with your values based on your own logic

Maybe you are looking for