StarOffice 8 calc - select/delete  range problem

I use calc for long time till now works fine.
Lately I encountered a problem when I want to select a range that I defined before, I'm using Data->Select Range.
but no range name appears at the list for selection.
I defined few ranges, but none appears.
The defined ranges show when I use Data->Consolidate but then it is not what I need to do.
The problem repeats when I want to delete a range (I couldn't find a way to edit it) using Data->Define range.
Is there a fix for that problem?
I'm using version 8 (update 9) on a windows Xp Home
Thanks for your kind help,

You can specify dynamic WHERE clause in the DELETE statement. Check this SAP online documentation for the same: [http://help.sap.com/abapdocu_70/en/ABAPDELETE_ITAB_LINES.htm#!ABAP_ADDITION_4@4@].
Try this:
DATA: V_COND TYPE STRING.
V_COND = 'FIELD NOT IN LR_RANGE'.
DELETE <FS_C> WHERE ( V_COND ).

Similar Messages

  • Select a range of files to delete

    How can I select a range of files to delete?  I have ten files I want to delete.  Do I have to select each one individually?

    If it is in Finder and they are listed one after the other in a continuous fashion, select the first file, hold the shift key and select the last file. Then delete.
    If on the Desktop you can choose them by using your mouse pointer to draw a square around them, that will selct all.

  • Problem: "Select a Range" doesn't work (Cannot mark data from MS Excel)

    Hi,
    I need Your help. I have some problem with connection with MS Excel.
    I can't use MS Excel range as data source.
    Please find short overview of this situation (video clip):
    [http://www.explorer-consulting.pl/XC-prob.swf|http://www.explorer-consulting.pl/XC-prob.swf]
    (Windows 7 + Office 2007).
    Maybe there is something to do w/ Windows 7 admin options, but I have no idea what kind of them.
    Please share Your ideas.
    Wojtek

    Hi Liliana,
    about video (it's flash swf file) so maybe You have to give permission to watch this (in Your browser).
    but here You are screenshot too:
    [http://www.explorer-consulting.pl/xc.jpg|http://www.explorer-consulting.pl/xc.jpg]
    XC 2008 servicepack3 with fixpacks 3.1, 3.2, 3.3 and 3.4
    I try to select cells in Excel area, but "Select a Range" window is blank all the time.
    Edited by: WojciechKorsak on Jan 31, 2011 7:38 PM

  • I still have a problem clearing history and i did select time range to Everything

    I still have a problem clearing history and i did select time range to "Everything". I tested using Internet explorer and I could clear the history there so its not a problem with the Xp secondary account. I even disabled the add ons in firefox and still get the same issue

    sorry, scratch this, the first post did enable me to find a solution, it was the signon.sqlite file that had become corrupted.
    As an interesting aside, this has also fixed the problem with using Xmarksspace which was giving me an "error 3" synchronising problem.
    Apologies for the tone of my previous posting, you did provide the information that enabled me to find a solution, thank you and sorry.
    Regards
    Crashhot

  • HT201210 Contact List Problem.   I have duplicates on my iPhone.  I turned off my Contact and selected "Delete Contacts"  Most of the contacts were deleted but about 120 were left on my phone.   I've tried selecting individual contacts and deleting them,

    Contact List Problem.   I have duplicates on my iPhone.  I turned off my Contact and selected "Delete Contacts"  Most of the contacts were deleted but about 120 were left on my phone.   I've tried selecting individual contacts and deleting them, No Go. 
    Can anyone help?   How do I get rid of these contacts so I can re-synch my iPhone. 

    I have exactly the same problem on my ipad. It is happening on only some contacts but, as with you, when I delete one of the contacts on the ipad, the second ipad contact and the contact on the imac are also deleted. This is even the case when I have differentiated the two contacts on the ipad and can see the one I have deleted on the ipad is not the same one as is then deleted on the imac.

  • Error in Selective deletion of cube

    HI
    I want to delete all the records in a cube based on the values in a field say VGUID.
    i have generated the selective deletion pgm from 'RSDRD_DELETE_FACTS' and i am submitting all the values in the field VGUID to this in a report program.
    SUBMIT gp46pdkfwf255w7uqo4y2i8sx2h WITH c007 IN ra_vguid.
    ra_vguid  contains all values that need to be deleted from the cube.
    this works fine for a small number of VGUIDs but fails for large sets(3,000 records) giving system error.
    System error: CREATE_TABLE_AS_SELECT/RSDU_EXEC_SQL /BI0/0100000074 0
    Message no. DBMAN100
    Diagnosis
    A system error with the following parameters has occurred in the data manager:
    Parameter 1 = &v1&
    Parameter 2 = &v2&
    Parameter 3 = &v3&
    Parameter 4 = &v4&
    How can I delete all my candidate records from the cube?
    Thanks in Advance
    Biyaz

    Hi Srinivas
    i tried to split the VGUID list ( 100 records ). first 100 records are deleted but the rest records are not deleted . is there a problem with my code?
    REFRESH ra_vguid.
    CLEAR wa_vguid.
    CLEAR wf_count .
    LOOP AT tb_vguid INTO wa_vguid.
      wf_count = wf_count + 1.
      ra_vguid-low = wa_vguid-/bic/yc1vguid.
      ra_vguid-sign = 'I'.
      ra_vguid-option = 'EQ'.
      APPEND ra_vguid.
      CLEAR wa_vguid.
    IF wf_count = 100 OR
      sy-tabix = wf_max.
    Now call the Deletion program and pass the ranges as parameters.
    SUBMIT gp46pdkfwf255w7uqo4y2i8sx2h WITH c007 IN ra_vguid.
        REFRESH ra_vguid[].
    CLEAR wf_count.
    ENDIF.
    ENDLOOP.

  • Select- Color Range- Results in Blue Screen (PC)  (driver out of date)

    I've been using the CS6 beta about two days.  While experimenting with color range I experienced two consecutive blue screen crashes.  The first time it happened,I was working with the color range selector and was replacing the selected areas with another color using the paint bucket.  About the third time I attempted this, my PC blue screened.  The second time, I opened a photo, went to Select>Color Range and got an immediate blue screen crash.
    I then went back to CS5 and I've been playing with the same scenario with no apparent problems.
    My PC is a store built computer.  It consists of an MSI 990-FXA GD80 motherboard, an AMD Phenom 1100t CPU, Asus GTX550 Ti graphics card and 8 gig of RAM.  It boots from a 60 gig SSD and my programs reside on a 500 gig hard drive.  The OS is Windows 7 Professional 64 bit.  CS6 is using the hard drive for its scratch disk and Photoshop is using 4339 mb of the 7232 mb of available RAM - I haven't changed that.  I'm running CS6 as administrator because the way it installed, it would only run in that fashion.
    One disappointment during the installation was CS6 made no attempt to read my preferences from the CS5 install.  That may be covered in another post, I've not yet looked.
    Please keep us informed as new betas are released, because I would like some time to work with this puppy before plunking down big bux for the upgrade.  As it is now, I'm going back to CS5.  I get mighty nervous when my super computer blue screens!
    Gerry
    gswetsky AT bellsouth DOT net

    The GPU is often at root of issues like yours. I've had so many problems with Nvidia drivers for their gaming-oriented adapters (like yours) that I finally went with one of their workstation cards. I have a Quadro card with just enough RAM to make Photoshop happy. The workstation drivers are optimized for reliability, the consumer card drivers are optimized for gaming and that often means they're less stable and reliable with Photoshop.

  • Devloped an ALV report for daily cash receipts for selected date range

    hi,   
                 how to devlop an ALV report for daily cash receipts for selected date range.for this report what are the tables and fields we have to use.what is the selectionscreen&what is logic.give me sample report.

    Hi,
    You can develop simple reports using Report Painter.
    You may be also interested in:
    Check report SAPMF05A for credit memo
    See the following Std reports on Payment Advices execute the Tcodes:
    S_ALR_87009888
    S_ALR_87009889
    S_ALR_87009890
    S_ALR_87009891
    S_ALR_87009892
    S_ALR_87009893
    S_ALR_87009978
    S_ALR_87009979
    S_ALR_87009980
    S_ALR_87009981
    S_ALR_87009982
    S_ALR_87009983
    S_ALR_87010056
    S_ALR_87010057
    S_ALR_87010058
    S_ALR_87010059
    S_ALR_87010060
    S_ALR_87010061
    S_ALR_87010066
    S_ALR_87010067
    S_ALR_87012106
    S_ALR_87012107
    S_ALR_87012108
    S_ALR_87012109
    S_ALR_87012110
    S_ALR_87012111
    S_ALR_87012116
    S_ALR_87012117
    S_ALR_87012200
    S_ALR_87012201
    S_ALR_87012202
    S_ALR_870122
    S_ALR_87012204
    S_ALR_87012205
    S_ALR_87012350
    S_ALR_87012351
    S_ALR_87012352
    S_ALR_87012353
    S_ALR_87012354
    S_ALR_87012355
    sample ALV report:
    tables:
    marav. "Table MARA and table MAKT
    Data to be displayed in ALV
    Using the following syntax, REUSE_ALV_FIELDCATALOG_MERGE can auto-
    matically determine the fieldstructure from this source program
    Data:
    begin of imat occurs 100,
    matnr like marav-matnr, "Material number
    maktx like marav-maktx, "Material short text
    matkl like marav-matkl, "Material group (so you can test to make
                            " intermediate sums)
    ntgew like marav-ntgew, "Net weight, numeric field (so you can test to
                            "make sums)
    gewei like marav-gewei, "weight unit (just to be complete)
    end of imat.
    Other data needed
    field to store report name
    data i_repid like sy-repid.
    field to check table length
    data i_lines like sy-tabix.
    Data for ALV display
    TYPE-POOLS: SLIS.
    data int_fcat type SLIS_T_FIELDCAT_ALV.
    select-options:
    s_matnr for marav-matnr matchcode object MAT1.
    start-of-selection.
    read data into table imat
      select * from marav
      into corresponding fields of table imat
      where
      matnr in s_matnr.
    end-of-selection.
    Now, we start with ALV
    To use ALV, we need a DDIC-structure or a thing called Fieldcatalogue.
    The fieldcatalouge can be generated by FUNCTION
    'REUSE_ALV_FIELDCATALOG_MERGE' from an internal table from any
    report source, including this report.
    The only problem one might have is that the report and table names
    need to be in capital letters. (I had it )
    Store report name
    i_repid = sy-repid.
    Create Fieldcatalogue from internal table
      CALL FUNCTION 'REUSE_ALV_FIELDCATALOG_MERGE'
           EXPORTING
                I_PROGRAM_NAME         = sy-repid
                I_INTERNAL_TABNAME     = 'IMAT'  "capital letters!
                I_INCLNAME             = sy-repid
           CHANGING
                CT_FIELDCAT            = int_fcat
           EXCEPTIONS
                INCONSISTENT_INTERFACE = 1
                PROGRAM_ERROR          = 2
                OTHERS                 = 3.
    CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
           EXPORTING
                I_CALLBACK_PROGRAM       = i_repid
                I_STRUCTURE_NAME         = 'marav'
                I_DEFAULT                = 'X'
                I_SAVE                   = 'A'
           TABLES
                T_OUTTAB                 = imat.
      IF SY-SUBRC <> 0.
        WRITE: 'SY-SUBRC: ', SY-SUBRC .
      ENDIF.
    Hope this will help.
    Regards,
    Naveen.

  • Selective deletion based on Calendar Year/Month in process chains

    Hi all,
    I have a requirement from the business wherein I have to delete the past months data before I load the same data into 6 infocubes using a process chain.
    I checked the forums to understand how selective deletion is used in a process chain and I have come to know that RSDRD_DELETE_FACTS program or DELETE_FACTS Tcode can be used to generata a G* program that performs the deletion.
    I am to integrate this generated program in my process chain. I have 0CALMONTH(Calendar Year/Month) as the time characteristic in all my infocubes and therefore the only time characteristic available for selective deletion.
    My problem is that I am unable to create a dynamic selection for the Calendar Year/Month such that it takes the previous month.To be exact I am unable to use the "D" option in the Selection Variable column for this characteristic.
    Please can somebody help me out with this.

    Hi,
    Use this ABAP program code in your Process Chain...
    Type Pools
        TYPE-POOLS: rsdrd, rsdq, rssg.
    Local Internal Tables
        DATA: lit_msg     TYPE rs_t_msg,
                    lit_sel     TYPE rsdrd_thx_sel.
    Local Work Area
        DATA : lwa_sel_kf1     TYPE rsdrd_sx_sel,
                   lwa_range_kf1  TYPE rsdrd_s_range.
    Local Constants
        CONSTANTS :    lc_i(1)      TYPE c  VALUE 'I',
                                 lc_x(1)      TYPE c  VALUE 'X',
                                 lc_eq(2)     TYPE c  VALUE 'EQ',
                                 lc_kf1(11)   TYPE c  VALUE '0CALMONTH'.
        CONSTANTS :   lc_cube      TYPE rsddatatarget VALUE 'Z_C21'.
    Delete Existing cube records
    Key Field 1 (CALMONTH)
          lwa_range_kf1-sign    = lc_i.
          lwa_range_kf1-option  = lc_eq.
          lwa_range_kf1-high    = space.
          lwa_range_kf1-keyfl   = lc_x.
          lwa_range_kf1-low     = <Value of CALMONTH>.
          APPEND lwa_range_kf1 TO lwa_sel_kf1-t_range.
          CLEAR  lwa_range_kf1.
           lwa_sel_kf1-iobjnm = lc_kf1.
          INSERT lwa_sel_kf1 INTO TABLE lit_sel.
          CLEAR : lwa_sel_kf1.
    Selective Deletion through FM
          CALL FUNCTION 'RSDRD_SEL_DELETION'
            EXPORTING
              i_datatarget      = lc_cube
              i_thx_sel         = lit_sel
              i_authority_check = space
              i_mode            = lc_c
              i_no_enqueue      = lc_x
            CHANGING
              c_t_msg           = lit_msg
            EXCEPTIONS
              x_message         = 1
              inherited_error   = 2
              invalid_type      = 3
              OTHERS            = 4.
          IF sy-subrc = 0.
            REFRESH : lit_sel[],
                      lit_msg[].
          ENDIF.
    Thanks,
    Saru

  • How do I select a range of rows from an internal table in the debugger?

    Hi,
    I have a case where I wanted to delete a range of rows (several thousand) from an internal table using the debugger.
    It seems that rows can only be selected one at a time by selecting (clicking) on the far left side of the row.
    This is cumbersome, if not impossible when wishing to delete several thousand rows. 
    Other tools, such as Excel for example, allow for selecting a range of rows by selecting the first row and then holding the SHIFT key and selecting the last row and all rows in between will be selected.
    I can't seem to find the combination of keys that will allow this in the table (or structure) tab of the debugger.
    Is it possible to select a range of rows without having to select each row one at a time?
    Thanks for your help,
    Andy

    While it's a Table Control and should/could have a button to select all fields (or visible fields)...I don't think we can do it right now...I know it's a pain to select each row one at a time...but I don't we have any more options...
    Greetings,
    Blag.

  • Billing Number Range problem ( accounting document not generated)

    Hi All,
    I have created some billing types and for them I have assigned some internal number ranges. Now when I create a billing document it is getting saved with the proper number range but no accounting document is getting generated.
    Also when I try to release the invoice I am getting an error which says " *Incorrect doc.no.: 10000009. Select document number between 0090000000 and 0099999999* "
    K I N D L Y     suggest  as U R G E N T.
    Regards,
    Danny.

    Dear,
              Billing Number Range problem ( accounting document not generated) is not an error because when you create billing document then accounting document not generated. Accounting done after posting of that billing document with VFX3 or VF02 T.Code by account department.
               And for second issue you had define number range between 0090000000 and 0099999999 for invoice so thats why it happen.
    Regards,
    Sandip Shaktavat

  • How to go for selective deletion if the request is rolled up???.. URGENT!!!

    hi all,
    we a have a data target which was compressed and rolled up...
    please do suggest us how to go for selective deletion  if the data target was rolled up???
    on what basis we need to do the selective deletion ??
    thanks for ur understanding...
    suggestions would be highly rewarded
    regards
    Prince

    Hi,
    in the subsequent datatargets of your ODS:
    if the requests are only rolled up, then you can delete those requests; now if your aggregates are collapsed then you'll have to dactivate them and reactivate them after. If not you can simply delete them.
    then delete all the requests from your ODS up to the request right after the missing one. This will deactivate you ODS delta init. This is not a problem since when you'll have finished with the above your ODS and subsequent targets will have a consistent status in terms of data.
    Reinit your ODS delta without datatransfer, reconstruct your missing request and the subsequent requests in your ODS.
    Reactivate them (not all together as a single activation, but separately).
    Then load the delta into your subsequent targets.
    Now if the subsequent datatargets are collapsed then you'll have to either reinit with full load or selective delete them. the missing request in your ODS still must be reloaded before!
    If you go for selective deletion you'll have to find the right selection criteria based on the data of your ODS. For instance if you can ensure that only a selected period is incorrect (all the ODS requests from the missing one to the last only contain data for JAN08) then you can selectively delete JAN08 from your subseq targets and perform a FULL load selecting JAN08 from your ODS.
    Then perform an INIT without data transfer... you can then continue your deltas as usual....
    hope this helps....
    Olivier.

  • No Selective Deletion on Inventory Cube 0IC_C03 via Calendar Day

    Hi,
    I need to repair my Inventory Cube <b>0IC_C03</b> for a certain date. To do that, I need to perform a <i><b>Selective Deletion</b></i> on the Cube and perform a <b>FULL REPAIR REQUEST</b> limited on that day only.
    But to my surprise, I could not find a Calendar Day entry in the "<i>DeletionSelection</i>".
    Is there a workaround or do I need to switch on anything?
    --Jkyle

    Hi Roberto,
    You are too humble! Everybody knows you are the <b>ONE</b>
    (he heh from the <b>MATRIX</b> movie)
    Anyway, I dont think Export Datasource would help. As you may know, Inventory Cube <b>0IC_C03</b> uses 2LIS_03_BX and 2LIS_03_BF data sources. This <b>CUBE</b> is somehow special.
    To cut this problem short, I'll go straight to the point. <i>How could I perform INIT via 2LIS_03_BX and 2LIS_03_BF w/o R/3 downtime at all</i>? The reason I came to this <i>Selective Deletion</i> thing is to patch up the mess the INIT would introduce when there are users around by using a REPAIR FULL REQUEST only for that single day...
    I hope you get what I mean...
    Thanks!
    --Jkyle

  • Selective deletion job taking very long time

    Hi All,
    I am performing the selective deletion on cube for the year 2011 and the deletion job is running for a long time (14 hrs). Generally this job takes few mins to execute.
    Could you please provide your inputs?
    Regards,
    Venkat
    Job log overview for job:    BI_INDX4OSEBBLUUTR6KUTWHGHZLY5ID / 13193500
    ime     Message text                                                                 Message class Message no.
    3:19:35 Job started                                                                       00           516
    3:19:36 Step 001 started (program RSINDEX1, variant &0000000000718, user ID ECW7752)      00           550
    3:32:48 SQL: 26.02.2012 13:32:48 ECW7752                                                 DBMAN         099
    3:32:48  DELETE FROM DDSTORAGE WHERE DBSYSABBR = 'ORA'                                   DBMAN         099
    3:32:48 AND INDEXNAME = ' ' AND TABNAME = '/BIC/FZCOG_C06                                DBMAN         099
    3:32:49 SQL-END: 26.02.2012 13:32:49 00:00:01                                            DBMAN         099
    3:32:53 SQL: 26.02.2012 13:32:53 ECW7752                                                 DBMAN         099
    3:32:53  DELETE FROM DDSTORAGE WHERE DBSYSABBR = 'ORA'                                   DBMAN         099
    3:32:53 AND INDEXNAME = ' ' AND TABNAME = '/BIC/FZCOG_C06                                DBMAN         099
    3:32:54 SQL-END: 26.02.2012 13:32:54 00:00:01                                            DBMAN         099
    3:32:54 SQL: 26.02.2012 13:32:54 ECW7752                                                 DBMAN         099
    3:32:54  CREATE TABLE "ZBICZFZCOG_C06" PCTFREE 10 PCTUSED                                DBMAN         099
    3:32:54 00 INITRANS 001 TABLESPACE PSAPPBP NOCOMPRESS                                    DBMAN         099
    3:32:54 STORAGE (INITIAL     0000000016 K NEXT                                           DBMAN         099
    3:32:54 0000001024 K MINEXTENTS  0000000001 MAXEXTENTS                                   DBMAN         099
    3:32:54 2147483645 PCTINCREASE 0000 FREELISTS   001                                      DBMAN         099
    3:32:54 FREELIST GROUPS 01) PARTITION BY RANGE                                           DBMAN         099
    3:32:54 ("KEY_ZCOG_C06P") ( PARTITION "/BIC/FZCOG_C060"                                  DBMAN         099
    3:32:54 VALUES LESS THAN (0) , PARTITION                                                 DBMAN         099
    3:32:54 "/BIC/FZCOG_C060000001798" VALUES LESS THAN                                      DBMAN         099
    3:32:54 (0000001798) , PARTITION                                                         DBMAN         099
    3:32:54 "/BIC/FZCOG_C060000001799" VALUES LESS THAN                                      DBMAN         099
    3:32:54 (0000001799) , PARTITION                                                         DBMAN         099
    3:32:54 "/BIC/FZCOG_C060000001801" VALUES LESS THAN                                      DBMAN         099
    3:32:54 (0000001801) , PARTITION                                                         DBMAN         099
    3:32:54 "/BIC/FZCOG_C060000001802" VALUES LESS THAN                                      DBMAN         099
    3:32:54 (0000001802) , PARTITION                                                         DBMAN         099
    3:32:54 "/BIC/FZCOG_C060000001806" VALUES LESS THAN                                      DBMAN         099

    check notes
    Note 991372 - Selective deletion from InfoCubes takes a long time
    Note 481238 - Selective deletion ends with dump and ORA-00918

  • How does the CBO calculate the selectivity for range predicates on ROWID ?

    Hi all,
    I'm wondering how the CBO estimate the selectivity for range predicates based on ROWID columns.
    For example, for the following query the CBO estimates there's going to be 35004 rows returned instead of 7:
    SQL> SELECT count(*)
      FROM intsfi i
    WHERE
    ROWID>='AAADxyAAWAAHDLIAAB' AND ROWID<='AAADxyAAWAAHDLIAAH';  2    3    4
      COUNT(*)
             7
    Elapsed: 00:00:02.31
    SQL> select * from table(dbms_xplan.display_cursor(null,null,'iostats last'));
    PLAN_TABLE_OUTPUT
    SQL_ID  aqbdu2p2t6w0z, child number 1
    SELECT count(*)   FROM intsfi i  WHERE  ROWID>='AAADxyAAWAAHDLIAAB' AND
    ROWID<='AAADxyAAWAAHDLIAAH'
    Plan hash value: 1610739540
    | Id  | Operation             | Name    | Starts | E-Rows | A-Rows |   A-Time   | Buffers |
    |   0 | SELECT STATEMENT      |         |      1 |        |      1 |00:00:02.31 |   68351 |
    |   1 |  SORT AGGREGATE       |         |      1 |      1 |      1 |00:00:02.31 |   68351 |
    |*  2 |   INDEX FAST FULL SCAN| INTSFI2 |      1 |  35004 |      7 |00:00:02.31 |   68351 |
    Predicate Information (identified by operation id):
       2 - filter((ROWID>='AAADxyAAWAAHDLIAAB' AND ROWID<='AAADxyAAWAAHDLIAAH'))According to Jonathan Lewis' book, for a normal column the selectivity would have been:
    (value_column1-value_column2)/(high_value-low_value)+1/num_distinct+1/num_distinct
    But here with the ROWID column, how does the CBO make its computation ?
    SINGLE TABLE ACCESS PATH
      Single Table Cardinality Estimation for INTSFI[I]
      Table: INTSFI  Alias: I
        Card: Original: 14001681.000000  Rounded: 35004  Computed: 35004.20  Non Adjusted: 35004.20

    Hi Jonathan,
    Some Clarifications
    =============
    DELETE /*+ ROWID(I) */ FROM INTSFI I WHERE
    (I.DAVAL<=TO_DATE('12032008','DDMMYYYY') AND (EXISTS(SELECT 1 FROM
    INTSFI S WHERE S.COINT=I.COINT AND S.NUCPT=I.NUCPT AND S.CTSIT=I.CTSIT
    AND NVL(S.RGCID,-1)=NVL(I.RGCID,-1) AND S.CODEV=I.CODEV AND
    S.COMAR=I.COMAR AND S.DAVAL>I.DAVAL) AND I.COMAR IN (SELECT P.COMAR
    FROM PURMAR P WHERE P.NUPUR=1))) AND ROWID>='AAADxyAAWAAHDLIAAB' AND
    ROWID<='AAADxyAAWAAHDLIAAH'
    Plan hash value: 1677274993
    | Id  | Operation                      | Name    | Starts | E-Rows | A-Rows |   A-Time   | Buffers |  OMem |  1Mem | Used-Mem |
    |   0 | DELETE STATEMENT               |         |      1 |        |      0 |00:00:05.94 |   53247 |    |          |          |
    |   1 |  DELETE                        | INTSFI  |      1 |        |      0 |00:00:05.94 |   53247 |    |          |          |
    |*  2 |   HASH JOIN SEMI               |         |      1 |   9226 |      7 |00:00:05.94 |   53180 |   783K|   783K|  471K (0)|
    |   3 |    NESTED LOOPS                |         |      1 |   9226 |      7 |00:00:00.01 |      10 |    |          |          |
    |*  4 |     TABLE ACCESS BY ROWID RANGE| INTSFI  |      1 |   9226 |      7 |00:00:00.01 |       6 |    |          |          |
    |*  5 |     INDEX UNIQUE SCAN          | PURMAR1 |      7 |      1 |      7 |00:00:00.01 |       4 |    |          |          |
    |   6 |    INDEX FAST FULL SCAN        | INTSFI1 |      1 |     14M|   7543K|00:00:01.73 |   53170 |    |          |          |
    Predicate Information (identified by operation id):
       2 - access("S"."COINT"="I"."COINT" AND "S"."NUCPT"="I"."NUCPT" AND "S"."CTSIT"="I"."CTSIT" AND
                  NVL("S"."RGCID",(-1))=NVL("I"."RGCID",(-1)) AND "S"."CODEV"="I"."CODEV" AND "S"."COMAR"="I"."COMAR")
           filter("S"."DAVAL">"I"."DAVAL")
       4 - access(ROWID>='AAADxyAAWAAHDLIAAB' AND ROWID<='AAADxyAAWAAHDLIAAH')
           filter("I"."DAVAL"<=TO_DATE(' 2008-03-12 00:00:00', 'syyyy-mm-dd hh24:mi:ss'))
       5 - access("P"."NUPUR"=1 AND "I"."COMAR"="P"."COMAR")
    When I force the NESTED LOOP SEMI JOIN the query runs faster:
    DELETE /*+ ROWID(I) */ FROM INTSFI I WHERE
    (I.DAVAL<=TO_DATE('12032008','DDMMYYYY') AND (EXISTS(SELECT /*+ NL_SJ
    */ 1 FROM INTSFI S WHERE S.COINT=I.COINT AND S.NUCPT=I.NUCPT AND
    S.CTSIT=I.CTSIT AND NVL(S.RGCID,-1)=NVL(I.RGCID,-1) AND S.CODEV=I.CODEV
    AND S.COMAR=I.COMAR AND S.DAVAL>I.DAVAL) AND I.COMAR IN (SELECT P.COMAR
    FROM PURMAR P WHERE P.NUPUR=1))) AND ROWID>='AAADxyAAWAAHDLIAAB' AND
    ROWID<='AAADxyAAWAAHDLIAAH'
    Plan hash value: 2031485112
    | Id  | Operation                      | Name    | Starts | E-Rows | A-Rows |   A-Time   | Buffers |
    |   0 | DELETE STATEMENT               |         |      1 |        |      0 |00:00:00.01 |      94 |
    |   1 |  DELETE                        | INTSFI  |      1 |        |      0 |00:00:00.01 |      94 |
    |   2 |   NESTED LOOPS SEMI            |         |      1 |   9226 |      7 |00:00:00.01 |      27 |
    |   3 |    NESTED LOOPS                |         |      1 |   9226 |      7 |00:00:00.01 |       9 |
    |*  4 |     TABLE ACCESS BY ROWID RANGE| INTSFI  |      1 |   9226 |      7 |00:00:00.01 |       5 |
    |*  5 |     INDEX UNIQUE SCAN          | PURMAR1 |      7 |      1 |      7 |00:00:00.01 |       4 |
    |*  6 |    INDEX RANGE SCAN            | INTSFI1 |      7 |     14M|      7 |00:00:00.01 |      18 |
    Predicate Information (identified by operation id):
       4 - access(ROWID>='AAADxyAAWAAHDLIAAB' AND ROWID<='AAADxyAAWAAHDLIAAH')
           filter("I"."DAVAL"<=TO_DATE(' 2008-03-12 00:00:00', 'syyyy-mm-dd hh24:mi:ss'))
       5 - access("P"."NUPUR"=1 AND "I"."COMAR"="P"."COMAR")
       6 - access("S"."COINT"="I"."COINT" AND "S"."NUCPT"="I"."NUCPT" AND
                  "S"."CTSIT"="I"."CTSIT" AND "S"."CODEV"="I"."CODEV" AND "S"."COMAR"="I"."COMAR" AND
                  "S"."DAVAL">"I"."DAVAL")
           filter(NVL("S"."RGCID",(-1))=NVL("I"."RGCID",(-1)))the above post is from Ahmed AANGOUR
    Case 1 - . If you check Plan hash value: 16772749938
    =====
    TABLE ACCESS BY ROWID RANGE| INTSFI  For every row access from INTSFI - it fetches a record from INDEX UNIQUE SCAN | PURMAR1
    If we check A-rows = 9226
    9226 * 7 = 64582 request across the table - perhaps with hint of rowid it fetches exact rows from PURMAR1
    in this case i think going for hash join with ordered hints (jonathan as you suggest go for leading hint's instead of ordered) - from INTSFI - PURMAR1 - instead of going for IN clause would get the rows that satifies the ("P"."NUPUR"=1 AND "I"."COMAR"="P"."COMAR")
    |*  2 |   HASH JOIN SEMI               |         |      1 |   9226 |      7 |00:00:05.94 |   53180 |   783K|   783K|  471K (0)|
    |   3 |    NESTED LOOPS                |         |      1 |   9226 |      7 |00:00:00.01 |      10 |    |          |          |
    |*  4 |     TABLE ACCESS BY ROWID RANGE| INTSFI  |      1 |   9226 |      7 |00:00:00.01 |       6 |    |          |          |
    |*  5 |     INDEX UNIQUE SCAN          | PURMAR1 |      7 |      1 |      7 |00:00:00.01 |       4 |    |          |          |My understanding with above plan would change to
    HASH JOIN
    TABLE ACCESS BY ROWID RANGE| INTSFI
    INDEX UNIQUE SCAN | PURMAR1
    HASH JOIN
    INDEX FAST FULL SCAN | INTSFI1
    Which migt be feasible.
    2 .
    DELETE /*+ ROWID(I) */ FROM INTSFI I WHERE
    (I.DAVAL<=TO_DATE('12032008','DDMMYYYY') AND (EXISTS(SELECT /*+ NL_SJ
    */ 1 FROM INTSFI S WHERE S.COINT=I.COINT AND S.NUCPT=I.NUCPT AND
    S.CTSIT=I.CTSIT AND NVL(S.RGCID,-1)=NVL(I.RGCID,-1) AND S.CODEV=I.CODEV
    AND S.COMAR=I.COMAR AND S.DAVAL>I.DAVAL) AND I.COMAR IN (SELECT P.COMAR
    FROM PURMAR P WHERE P.NUPUR=1))) AND ROWID>='AAADxyAAWAAHDLIAAB' AND
    ROWID<='AAADxyAAWAAHDLIAAH'Ahmed AANGOUR, modified the query by /*+ NL_SJ */ hint, Instead of that in to remove the most of the rows as we join the tables using subquery, I still doubt it
    to go push_predicate hints - still doubt it.
    Jonathan your comments are most valuable in the above two cases..
    Looking forward to calrify my understanding with concepts of indexes for above test cases
    - Pavan Kumar N

Maybe you are looking for