One more Standard table filter weird work

In the same VO described in previous thread: Standard table filter weird work
I have another filter trouble.
The attribute is calculated, not bound to entity.
SQL:to_char(case when ID_BASE_TYPES_MIME is null then substr(THE_VALUE, 0, 100)
            when ID_BASE_TYPES_MIME = 7 then
       dbms_lob.substr(
          regexp_replace(LargeTextData.DATA_TEXT, '<.*?>|&.*;')
          , 100)
            else LargeBinaryData.Filename
       end) as CONTENT_PREVIEW,VO attribute:<ViewAttribute
    Name="ContentPreview"
    IsUpdateable="false"
    IsPersistent="false"
    PrecisionRule="true"
    Precision="255"
    Type="java.lang.String"
    ColumnType="VARCHAR2"
    AliasName="CONTENT_PREVIEW"
    Expression="CONTENT_PREVIEW"
    SQLType="VARCHAR">
    <Properties>
      <SchemaBasedProperties>
        <LABEL
          ResId="ru.miit.cms.model.view.ContentComplexView.ContentPreview_LABEL"/>
        <DISPLAYWIDTH
          Value="90"/>
      </SchemaBasedProperties>
    </Properties>
  </ViewAttribute>With logging turned on I apply filter like P or \P\* - anything that contains letter P. ADF table with standard filter shows me no rows.
I take the executed SQL and parameter value from AdminServer-diagnostic-1.log. It is like:SELECT * FROM ( main query ) QRSLT  WHERE ( ( (CONTENT_PREVIEW LIKE ( :vc_temp_1 || '%') ) ) )
[SRC_CLASS: oracle.jbo.server.OracleSQLBuilderImpl] [APP: CMS] [SRC_METHOD: bindParamValue]  [850] Binding param "vc_temp_1": %РI execute this query in PL SQL Developer and it shows me 2 records - that is correct.
While ADF shows me no records, executing the same VO with the same parameters - that is wrong.
From this SQL query I also created a test VO with vc_temp_1 bind variable = %Р and run it in AppModule Tester. It shows me 2 rows.
Any ideas?
JDev 11.1.2.2

Hello Derio,
Thanks for your attention. This view object is a part of a composite application with lots of business components, running ~stable on 11.1.2.2. Sherman installed, of cause.
There are several tables with filters and all of them work fine except this attribute in this VO.
I believe the filter would work with no problems with such attribute if I create a clean new application, but in my specific case it doesn't.
The trouble is I don't know where to look for the error source because generated SQL and app module tester seem fine.

Similar Messages

  • Filter not working in Rank

    Hi
    I have a requirement to show top ten expenditure and their sum for a particular month and for a particular country based on capex id like
    I have used RANK(CAPEX_ACTUAL_EXPENSE_AMOUNT) in column formula .
    Also I am using SQL Server ..
    CAPEX_ACTUAL_EXPENSE_AMOUNT     test     CAL_YEAR     CAL_MONTH     COUNTRY_NAME     EXPENSE_TYPE_DESCRIPTION
    54,659,330     1     2,009     1     BOLIVIA     Capex Addition
    42,145,690     2     2,009     1     BOLIVIA     Capex Addition
    33,494,948     3     2,009     1     BOLIVIA     Capex Addition
    33,197,944     4     2,009     1     BOLIVIA     Capex Addition
    30,956,787     5     2,009     1     BOLIVIA     Capex Addition
    29,088,221     6     2,009     1     BOLIVIA     Capex Addition
    21,807,939     7     2,009     1     BOLIVIA     Capex Addition
    13,675,383     8     2,009     1     BOLIVIA     Capex Addition
    13,089,089     9     2,009     1     BOLIVIA     Capex Addition
    12,574,442     10     2,009     1     BOLIVIA     Capex Addition
    10,701,602     11     2,009     1     BOLIVIA     Capex Addition
    8,701,280     12     2,009     1     BOLIVIA     Capex Addition
    8,144,789     13     2,009     1     BOLIVIA     Capex Addition
    7,769,767     14     2,009     1     BOLIVIA     Capex Addition
    7,755,552     15     2,009     1     BOLIVIA     Capex Addition
    6,951,753     16     2,009     1     BOLIVIA     Capex Addition
    6,518,067     17     2,009     1     BOLIVIA     Capex Addition
    6,050,596     18     2,009     1     BOLIVIA     Capex Addition
    5,603,409     19     2,009     1     BOLIVIA     Capex Addition
    4,879,883     20     2,009     1     BOLIVIA     Capex Addition
    3,644,269     21     2,009     1     BOLIVIA     Capex Addition
    3,643,025     22     2,009     1     BOLIVIA     Capex Addition
    2,971,519     23     2,009     1     BOLIVIA     Capex Addition
    2,937,015     24     2,009     1     BOLIVIA     Capex Addition
    2,900,000     25     2,009     1     BOLIVIA     Capex Addition
    But when I am using the filter to put RANK <is less than 10> it shows only one row
    54,659,330     1     2,009     1     BOLIVIA     Capex Addition
    ANd when using RANK <is less than 100>
    shows :
    54,659,330     1     2,009     1     BOLIVIA     Capex Addition
    10,701,602     11     2,009     1     BOLIVIA     Capex Addition
    3,644,269     21     2,009     1     BOLIVIA     Capex Addition and likewise..
    Could anyone help me how I coud show Rank 1 to 10 using filter. Also I have to show the sum which restricts me to use rows per page functionality.
    Thanks

    Hi,
      Ex: your output is something like this
      A                     B                         C
      1                    2                             3
      4                    2                              5
      5                    3                              6
    When you filter B for value 2, then internally it creates one more internal table like this
    A                    B                         C
    1                002                         3
    4                002                         5
    5                003                         6
    it tries to matches value 2 to 002 and it fails to retrive the record.
    The solution is try to do the conversion exit on the column/field you are trying to filter it. It will work.
    Regards,
    Ramesh.

  • Saw expression filter not working

    I construct the SAW Expression as below:
    strBuf.append("<sawx:expr xsi:type=\"sawx:comparison\" op=\"equal\" ");
    strBuf.append( " xmlns:saw=\"com.siebel.analytics.web/report/v1\" ");
    strBuf.append( " xmlns:sawx=\"com.siebel.analytics.web/expression/v1\" ");
    strBuf.append( " xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" ");
    strBuf.append( " xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\">");
    strBuf.append(" <sawx:expr xsi:type=\"sawx:sqlExpression\">\"- Material Cost Walk\".\"Request ID\"/sawx:expr>");
    strBuf.append(" <sawx:expr xsi:type=\"xsd:decimal\">"+ map.get("requestId") +"</sawx:expr> ");
    strBuf.append("</sawx:expr>");
    map.get("requestId") would return 15 digit number like 200907201936598..
    The posted SAW Expression looks like:
    <sawx:expr xsi:type="sawx:comparison" op="equal" xmlns:saw="com.siebel.analytics.web/report/v1" xmlns:sawx="com.siebel.analytics.web/expression/v1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"> <sawx:expr xsi:type="sawx:sqlExpression">"- Material Cost Walk"."Request ID"/sawx:expr> <sawx:expr xsi:type="xsd:decimal">200907201936598</sawx:expr></sawx:expr>
    I have tried passing different xsi:type like decimal, number, string, double. Still the filter doesn't work.
    Kindly let me know if there is any solution.
    Thanks in advance,
    Priya

    Hi,
      Ex: your output is something like this
      A                     B                         C
      1                    2                             3
      4                    2                              5
      5                    3                              6
    When you filter B for value 2, then internally it creates one more internal table like this
    A                    B                         C
    1                002                         3
    4                002                         5
    5                003                         6
    it tries to matches value 2 to 002 and it fails to retrive the record.
    The solution is try to do the conversion exit on the column/field you are trying to filter it. It will work.
    Regards,
    Ramesh.

  • Filter not working in case insensitive mode

    Hi,
    I have created a Dashboard using Oracle BAM (version 11.1.1.4.0). The Dashboard contains some filters to filter out the data visible in the report. If I give ALL or All in the filter and click on Go. I can see the data in report. but it does not recognize the same in lowercase("all"). Is this the expected behavior. Can we get the filter working with (all ) also with some setup change or so?
    Please let us know.
    Thanks

    Hi,
      Ex: your output is something like this
      A                     B                         C
      1                    2                             3
      4                    2                              5
      5                    3                              6
    When you filter B for value 2, then internally it creates one more internal table like this
    A                    B                         C
    1                002                         3
    4                002                         5
    5                003                         6
    it tries to matches value 2 to 002 and it fails to retrive the record.
    The solution is try to do the conversion exit on the column/field you are trying to filter it. It will work.
    Regards,
    Ramesh.

  • Filter Not working in ALV grid

    Hi All,
    The filter button in ALV Grid is not working for some fields. if the filter button is selected for a particular field in the ALV grid then no entries are getting displayed in the ALV. For few fields it is working. for few fields is it not displaying any entries after selecting filter.
    Please let me know what may be the possible causes for this issue.
    Thanks in Advance!
    Thanks & Regards,
    Preethi G

    Hi,
      Ex: your output is something like this
      A                     B                         C
      1                    2                             3
      4                    2                              5
      5                    3                              6
    When you filter B for value 2, then internally it creates one more internal table like this
    A                    B                         C
    1                002                         3
    4                002                         5
    5                003                         6
    it tries to matches value 2 to 002 and it fails to retrive the record.
    The solution is try to do the conversion exit on the column/field you are trying to filter it. It will work.
    Regards,
    Ramesh.

  • Activating change documents for standard tables

    Hi all,
    Can someone please tell me how I can activate change documents for a standard table.
    I created a change document object in SCDO and included the standard table I am working with. This table does not have "LOG DATA CHANGES' enabled in its technical settings. I checked the data element of the field I am interested in and it has "Change Document" enabled.
    Is there any way to activate change documents for a std table without writing code to create change documents? 
    Thanks.

    Hi,
    Check this transaction SCU3, this is to activate the change logs for the tables.
    Regards,
    Satish

  • Adding one more selection field in the standard data source

    Hi SAP Gurus,
    I'd like to know how to add one field as a selection field for the data source.I used 0FI_GL_4 Datasource .It has 2 selection.Now I want to add one more field as a selection field .How to mark that field as selection?I tried by using RSA6 ,But I'm unable to change the previous selection.
    Please let me know how to fix it?
    I'll assign the points ...
    Thanks & regards
    Raja

    Pradip,
      when ever you create any Generic DS, you can find generic DS(I checked this), comming append fields(it's happend to me)... there is no meaning.. as we know... we will extract the data for append fields using existing DS.
    Comming Raju:
    to my knowledge, you should not add that field as selection enabled(wait for others posts). I had seen many posts for working on this... by updating the Table ROOSFIELD table for the respective DS. I never implemented this... if you update this using any custom program be careful. Ihave ccreated the program for append fields not for Standard Extractor.
    Try to search any SAP Notes: 571985
    All the best.
    Regards,
    Nagesh Ganisetti.

  • Need one more field in standard solman iview

    Hi All,
    I need to add one more field in my standard solman iview which gives only 4 fields and 1 radio button. I require 5 fields and one radio button.
    How can I add an additional field in standard iview?
    Is there any other solman iview which I can use?
    Please Advise.
    Thanks & Regards,

    Shreya,
    you should have system administrator role to work with par file.
    go to system administration -support-portal runtimeBrowse deployment-look for something com.sap.portalepsolman.par.bak and download it.
    you can import that into NWDS and start modifying the jsp files.
    When you import par files into NWDS jar file will be missing in the directory strucuture so you need to add it manually.once you do the changes deploy the par file from NWDS and upload it Portal using system administration-support-portal runtime-administration console-upload
    check these links for more info
    https://forums.sdn.sap.com/click.jspa?searchID=16632942&messageID=6128753
    https://forums.sdn.sap.com/click.jspa?searchID=16632942&messageID=6169428
    If any issue revert to me
    Thanks
    Bala Duvvuri

  • CAPP Functionality and Custom Z table when maintaining work center standard

    Hi,
    i have to do enhancmenet to transaction CR02,
    Production planning needs to update PP routers with Standard Values that pertain to setup, machine, labor, man calculation, machine calculation.  They will use CAPP functionality to accomplish this. Work centers will be classified with characteristics identified as CAPP standard values. The actual standard values will be assigned to each work center using transaction CR02, program SAPLCRA0. The work centers will be classified and standard values assigned.Upon saving the work center entries, the system needs to update the Z table with the assigned characteristic values and store the information by plant and work center. When the CAPP program is executed, the program will go a Z table where the work center characteristics are stored.

    What if I really don't care about the old historical values??? I only want to populate this information from this point forward. Would that change your mind as to which method to choose???
    In this case, you can use the Append Structure. There would be more advantages as you don't have to keep track of data consistency, Locking / Unlocking mechanism etc.
    Please refer to the section [Further Remarks on Append Structure|http://help.sap.com/saphelp_nw04/helpdata/en/cf/21eb61446011d189700000e8322d00/frameset.htm]
    Regards,
    Naimesh Patel

  • How to add one more field to an exist internal table

    hi abapers
    i am a very new abap programmer and just started learning it.
    i want to know How to add one more field to an exist internal table.
    lemme me put my question in a very simple way.
    i have a internal table having fields f1,f2,f3 and which also that internal also contains some data.
    now i want to add two more fields (mm & nn) to that internal table now.
    how can i do that.
    and i wanna know the websites names where i can find some brain teasing questions in abap programming.
    eagerly waiting for ur reply
    regards,
    Maqsood A Khan

    Hi, MAQSOOD.
    You can insert more fields in your internal table like this.
    refer this code snippet.
    DATA : BEGIN OF tbl_itab OCCURS 0.
            INCLUDE STRUCTURE zsdtc009.
    DATA :  vkorg   LIKE vbak-vkorg,  "inserted one
            vtweg   LIKE vbak-vtweg,  "inserted one
            vkbur   LIKE vbak-vkbur,  "inserted one
            vkgrp   LIKE vbak-vkgrp,  "inserted one
           END OF tbl_itab.
    you can also read the book "Teach yourself abap in 21 days"
    at http://cma.zdnet.com/book/abap/
    but that book is just about basic concept of abap and report program.
    it doesn't give a lecture for on-line program.
    you can get pdf version books(about abap, sap...things) from sap.
    http://help.sap.com/printdocu/core/Print46c/en/Data/htm/english.htm
    I wish I could help you.
    Regards
    Kyung Woo.

  • How to add one more field in Internal table

    Hi Experts
    i have declared an internal table
    DATA: lt_viqmel_iflos TYPE TABLE OF viqmel_iflos.
    viqmel_iflos is a Standared SAP Table,
    Now i want to add one more Text field in the internal table only, how to add in program. any one plz help.
    <REMOVED BY MODERATOR>
    Mohana
    Edited by: Alvaro Tejada Galindo on Feb 7, 2008 10:09 AM

    you can put this:
    types: begin of t_table_viqmel_iflos,
    include structure of viqmel_iflos,
    new_field type xxxx.
    types: end of viqmel_iflos.
    DATA: lt_viqmel_iflos TYPE TABLE OF t_table_viqmel_iflos.
    Luck.

  • More than one child -tree table

    Hi
    My jdev version is 11.1.1.6.0.
    I have a requirement where there tree structure is like
    VOParent
    |
    |___VOChild1
    |
    |___VOChild2
    And in my page I am creating it using a tree table component.
    What happens is, instead of showing display attribute selected while building the tree for VOChild1 & VOChild2 it shows me one more level showing VO's name ie. output is some thing like
    <VOParent's display attribute>
    |
    |__VOChild1
    | |
    | |__<VOChild1's display attribute>
    |
    |__VOChild2
    |
    |__<VOChild2's display attribute>
    While the required output and expected behaviour of tree table is
    <VOParent's display attribute>
    |
    |__<VOChild1's display attribute>
    |
    |
    |
    |__<VOChild2's display attribute>
    Any help would be highly appreciated.
    Thank you..

    Hi Hagai
    after oUserObjectMD.ChildTables.TableName = "JOBS1"
    just write
    oUserObjectMD.ChildTables.Add
    that would be
    oUserObjectMD.CanYearTransfer = SAPbobsCOM.BoYesNoEnum.tNO
    oUserObjectMD.ChildTables.TableName = "JOBS1"
    oUserObjectMD.ChildTables.Add
    oUserObjectMD.ChildTables.TableName = "JOBS2"
    oUserObjectMD.ChildTables.Add
    oUserObjectMD.ChildTables.TableName = "JOBS3"
    oUserObjectMD.ChildTables.Add
    oUserObjectMD.ChildTables.TableName = "JOBS4"
    oUserObjectMD.ChildTables.Add
    oUserObjectMD.ChildTables.TableName = "JOBS5"
    oUserObjectMD.ChildTables.Add
    oUserObjectMD.ChildTables.TableName = "JOBS6"
    oUserObjectMD.ChildTables.Add
    oUserObjectMD.ChildTables.TableName = "JOBS7"

  • Declare work area of type = standard table

    Hi All,
    How to declare a workarea of type standard table in ABAP Objects..
    the syntax check of ABAP Objects showing error for the general ABAP Code
    for the same..
    Thanks in Advance, Sudeep..

    Hi Sudeep,
    I had shown the declarations for internal table and work area as well
    if you just want work area
    just use the second statement
    data : is_vbak type vbak. " work area of VBAK
    Regards
    Gopi

  • Want to add one more field in the standard transation xk02 : screen exit

    Dear All ,
    I want to add one field in transation in Xk02 in withholding tax check box.
    run the transation xk02 and select check box Withholding tax and press enter after that you will get the screen having field
    WH Tax Country  in parellel to this i want one more field Country .
    Is there any screen exit available fot this or any other way to proceed .
    Please provide any solution .
    Regards
    Aryan

    use an iplicit enahnecemnt to call a function module in which you can call a screen popu up with the fields you want update them in the database and return back to the main program. If the the two exits available are not helpful to you.
    RFKRRANZ
    SAPMF02K.

  • Tunning Required! One more one for the Challengers!

    Hi all,
    This is one more to challenge!
    SELECT COUNT(1) FROM WHSE_LOC WHERE ((AREA_C,WKSTN_C) IN (SELECT AREA_C, WKSTN_C FROM WHSE_LOC WHERE AISLE_I = :B3 AND BIN_I = :B2 AND LVL_I = :B1 ) ) AND (AISLE_I,BIN_I,LVL_I) NOT IN (SELECT AISLE_I, BIN_I, LVL_I FROM WHSE_LOC WHERE AISLE_I = :B3 AND BIN_I = :B2 AND LVL_I = :B1 );
    I have the above query in one among the packages. My DBA reports that this query is the longest running in our database from : 7.22PM to 8.15PM IST.
    The record size currently is around 38500. This works when the records size is less than 5000 but when gone beyond that this fails. Can anybody help in this reg.?
    The following is the description of the table:
    desc whse_loc
    Name Null? Type
    AISLE_I NOT NULL NUMBER(3)
    BIN_I NOT NULL NUMBER(3)
    LVL_I NOT NULL NUMBER(2)
    AREA_C NOT NULL CHAR(4)
    WKSTN_C NOT NULL CHAR(4)
    STRG_ZONE_I NOT NULL NUMBER(2)
    SIZE_C NOT NULL CHAR(2)
    PULL_SEQ_I NOT NULL NUMBER(6)
    PUTAWAY_SEQ_I NOT NULL NUMBER(5)
    STRG_LOC_STAT_C NOT NULL CHAR(3)
    PALT_ID_CT_Q NOT NULL NUMBER(3)
    PULL_PALT_ID_CT_Q NOT NULL NUMBER(3)
    FLR_AIR_C NOT NULL CHAR(1)
    PALT_PULL_ALLOW_F NOT NULL CHAR(1)
    CTN_PULL_ALLOW_F NOT NULL CHAR(1)
    SSP_PULL_ALLOW_F NOT NULL CHAR(1)
    HOLD_STAT_C NOT NULL VARCHAR2(4)
    HOLD_REAS_T VARCHAR2(32)
    STRG_LOC_HOLD_TS DATE
    HOLD_USER_ID CHAR(7)
    MODF_USER_ID NOT NULL CHAR(7)
    MODF_PGM_N NOT NULL CHAR(8)
    MODF_TS NOT NULL DATE
    DPT_Q NUMBER(1)
    Pls. help me reg. optimizing the same!

    You are accessing the table three times, and you can reduce that to one:
    SQL> create table whse_loc (aisle_i, bin_i, lvl_i, area_c, wkstn_c)
      2  as
      3  select 1, 1, 1, 'A', 'A' from dual union all
      4  select 1, 1, 1, 'A', 'B' from dual union all
      5  select 1, 1, 2, 'A', 'A' from dual union all
      6  select 1, 1, 2, 'A', 'B' from dual union all
      7  select 1, 1, 2, 'A', 'C' from dual union all
      8  select 1, 1, 3, 'A', 'A' from dual union all
      9  select 1, 1, 3, 'A', 'B' from dual union all
    10  select 1, 1, 3, 'A', 'C' from dual union all
    11  select 1, 1, 3, 'A', 'D' from dual
    12  /
    Table created.
    SQL> var B1 number
    SQL> var B2 number
    SQL> var B3 number
    SQL> exec :B1 := 1; :B2 := 1; :B3 := 1
    PL/SQL procedure successfully completed.
    SQL> SELECT COUNT(1)
      2    FROM WHSE_LOC
      3   WHERE ( (AREA_C,WKSTN_C) IN
      4           ( SELECT AREA_C
      5                  , WKSTN_C
      6               FROM WHSE_LOC
      7              WHERE AISLE_I = :B3
      8                AND BIN_I = :B2
      9                AND LVL_I = :B1
    10           )
    11         )
    12     AND (AISLE_I,BIN_I,LVL_I) NOT IN
    13         (SELECT AISLE_I
    14               , BIN_I
    15               , LVL_I
    16            FROM WHSE_LOC
    17           WHERE AISLE_I = :B3
    18             AND BIN_I = :B2
    19             AND LVL_I = :B1
    20         )
    21  /
      COUNT(1)
             4
    1 row selected.That is your current query. The last predicate can be simplified like this:
    SQL> SELECT COUNT(1)
      2    FROM WHSE_LOC
      3   WHERE (AREA_C,WKSTN_C) IN
      4         ( SELECT AREA_C
      5                , WKSTN_C
      6             FROM WHSE_LOC
      7            WHERE AISLE_I = :B3
      8              AND BIN_I = :B2
      9              AND LVL_I = :B1
    10         )
    11     AND (  aisle_i != :B3
    12         OR bin_i != :B2
    13         OR lvl_i != :B1
    14         )
    15  /
      COUNT(1)
             4
    1 row selected.Note that the query below doesn't give the right result:
    SQL> SELECT COUNT(*)
      2  FROM  (SELECT DISTINCT AREA_C, WKSTN_C
      3         FROM   WHSE_LOC
      4         WHERE  AISLE_I = :B3 AND
      5                BIN_I   = :B2 AND
      6                LVL_I   = :B1)
      7  /
      COUNT(*)
             2
    1 row selected.By using an analytic function, the table scans are reduced to one:
    SQL> select sum(count_area_wkstn-1)
      2    from ( select whse_loc.*
      3                , count(*) over (partition by area_c, wkstn_c) count_area_wkstn
      4             from whse_loc
      5         )
      6   where aisle_i = :b3
      7     and bin_i = :b2
      8     and lvl_i = :b1
      9  /
    SUM(COUNT_AREA_WKSTN-1)
                          4
    1 row selected.Doing the same with other parameters:
    SQL> exec :B1 := 2; :B2 := 1; :B3 := 1
    PL/SQL procedure successfully completed.
    SQL> SELECT COUNT(1)
      2    FROM WHSE_LOC
      3   WHERE ( (AREA_C,WKSTN_C) IN
      4           ( SELECT AREA_C
      5                  , WKSTN_C
      6               FROM WHSE_LOC
      7              WHERE AISLE_I = :B3
      8                AND BIN_I = :B2
      9                AND LVL_I = :B1
    10           )
    11         )
    12     AND (AISLE_I,BIN_I,LVL_I) NOT IN
    13         (SELECT AISLE_I
    14               , BIN_I
    15               , LVL_I
    16            FROM WHSE_LOC
    17           WHERE AISLE_I = :B3
    18             AND BIN_I = :B2
    19             AND LVL_I = :B1
    20         )
    21  /
      COUNT(1)
             5
    1 row selected.
    SQL> SELECT COUNT(1)
      2    FROM WHSE_LOC
      3   WHERE (AREA_C,WKSTN_C) IN
      4         ( SELECT AREA_C
      5                , WKSTN_C
      6             FROM WHSE_LOC
      7            WHERE AISLE_I = :B3
      8              AND BIN_I = :B2
      9              AND LVL_I = :B1
    10         )
    11     AND (  aisle_i != :B3
    12         OR bin_i != :B2
    13         OR lvl_i != :B1
    14         )
    15  /
      COUNT(1)
             5
    1 row selected.
    SQL> select sum(count_area_wkstn-1)
      2    from ( select whse_loc.*
      3                , count(*) over (partition by area_c, wkstn_c) count_area_wkstn
      4             from whse_loc
      5         )
      6   where aisle_i = :b3
      7     and bin_i = :b2
      8     and lvl_i = :b1
      9  /
    SUM(COUNT_AREA_WKSTN-1)
                          5
    1 row selected.And yet another combination, with the explain plans so you can see the number of table scans.
    SQL> exec :B1 := 3; :B2 := 1; :B3 := 1
    PL/SQL procedure successfully completed.
    SQL> set autotrace on explain
    SQL> SELECT COUNT(1)
      2    FROM WHSE_LOC
      3   WHERE ( (AREA_C,WKSTN_C) IN
      4           ( SELECT AREA_C
      5                  , WKSTN_C
      6               FROM WHSE_LOC
      7              WHERE AISLE_I = :B3
      8                AND BIN_I = :B2
      9                AND LVL_I = :B1
    10           )
    11         )
    12     AND (AISLE_I,BIN_I,LVL_I) NOT IN
    13         (SELECT AISLE_I
    14               , BIN_I
    15               , LVL_I
    16            FROM WHSE_LOC
    17           WHERE AISLE_I = :B3
    18             AND BIN_I = :B2
    19             AND LVL_I = :B1
    20         )
    21  /
      COUNT(1)
             5
    1 row selected.
    Execution Plan
    Plan hash value: 2315582378
    | Id  | Operation            | Name     | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT     |          |     1 |    90 |    13   (8)| 00:00:01 |
    |   1 |  SORT AGGREGATE      |          |     1 |    90 |            |          |
    |*  2 |   FILTER             |          |       |       |            |          |
    |*  3 |    HASH JOIN SEMI    |          |     1 |    90 |     9  (12)| 00:00:01 |
    |   4 |     TABLE ACCESS FULL| WHSE_LOC |     9 |   405 |     4   (0)| 00:00:01 |
    |*  5 |     TABLE ACCESS FULL| WHSE_LOC |     1 |    45 |     4   (0)| 00:00:01 |
    |*  6 |    TABLE ACCESS FULL | WHSE_LOC |     1 |    39 |     4   (0)| 00:00:01 |
    Predicate Information (identified by operation id):
       2 - filter( NOT EXISTS (SELECT /*+ */ 0 FROM "WHSE_LOC" "WHSE_LOC"
                  WHERE "AISLE_I"=TO_NUMBER(:B3) AND "BIN_I"=TO_NUMBER(:B2) AND
                  "LVL_I"=TO_NUMBER(:B1) AND LNNVL("AISLE_I"<>:B1) AND LNNVL("BIN_I"<>:B2)
                  AND LNNVL("LVL_I"<>:B3)))
       3 - access("AREA_C"="AREA_C" AND "WKSTN_C"="WKSTN_C")
       5 - filter("AISLE_I"=TO_NUMBER(:B3) AND "BIN_I"=TO_NUMBER(:B2) AND
                  "LVL_I"=TO_NUMBER(:B1))
       6 - filter("AISLE_I"=TO_NUMBER(:B3) AND "BIN_I"=TO_NUMBER(:B2) AND
                  "LVL_I"=TO_NUMBER(:B1) AND LNNVL("AISLE_I"<>:B1) AND LNNVL("BIN_I"<>:B2)
                  AND LNNVL("LVL_I"<>:B3))
    Note
       - dynamic sampling used for this statement
    SQL> SELECT COUNT(1)
      2    FROM WHSE_LOC
      3   WHERE (AREA_C,WKSTN_C) IN
      4         ( SELECT AREA_C
      5                , WKSTN_C
      6             FROM WHSE_LOC
      7            WHERE AISLE_I = :B3
      8              AND BIN_I = :B2
      9              AND LVL_I = :B1
    10         )
    11     AND (  aisle_i != :B3
    12         OR bin_i != :B2
    13         OR lvl_i != :B1
    14         )
    15  /
      COUNT(1)
             5
    1 row selected.
    Execution Plan
    Plan hash value: 3820410662
    | Id  | Operation           | Name     | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT    |          |     1 |    90 |     9  (12)| 00:00:01 |
    |   1 |  SORT AGGREGATE     |          |     1 |    90 |            |          |
    |*  2 |   HASH JOIN SEMI    |          |     1 |    90 |     9  (12)| 00:00:01 |
    |*  3 |    TABLE ACCESS FULL| WHSE_LOC |     1 |    45 |     4   (0)| 00:00:01 |
    |*  4 |    TABLE ACCESS FULL| WHSE_LOC |     1 |    45 |     4   (0)| 00:00:01 |
    Predicate Information (identified by operation id):
       2 - access("AREA_C"="AREA_C" AND "WKSTN_C"="WKSTN_C")
       3 - filter("AISLE_I"<>TO_NUMBER(:B3) OR "BIN_I"<>TO_NUMBER(:B2) OR
                  "LVL_I"<>TO_NUMBER(:B1))
       4 - filter("AISLE_I"=TO_NUMBER(:B3) AND "BIN_I"=TO_NUMBER(:B2) AND
                  "LVL_I"=TO_NUMBER(:B1))
    Note
       - dynamic sampling used for this statement
    SQL> select sum(count_area_wkstn-1)
      2    from ( select whse_loc.*
      3                , count(*) over (partition by area_c, wkstn_c) count_area_wkstn
      4             from whse_loc
      5         )
      6   where aisle_i = :b3
      7     and bin_i = :b2
      8     and lvl_i = :b1
      9  /
    SUM(COUNT_AREA_WKSTN-1)
                          5
    1 row selected.
    Execution Plan
    Plan hash value: 1194892149
    | Id  | Operation            | Name     | Rows  | Bytes | Cost (%CPU)| Time     |
    |   0 | SELECT STATEMENT     |          |     1 |    52 |     5  (20)| 00:00:01 |
    |   1 |  SORT AGGREGATE      |          |     1 |    52 |            |          |
    |*  2 |   VIEW               |          |     9 |   468 |     5  (20)| 00:00:01 |
    |   3 |    WINDOW SORT       |          |     9 |   405 |     5  (20)| 00:00:01 |
    |   4 |     TABLE ACCESS FULL| WHSE_LOC |     9 |   405 |     4   (0)| 00:00:01 |
    Predicate Information (identified by operation id):
       2 - filter("AISLE_I"=TO_NUMBER(:B3) AND "BIN_I"=TO_NUMBER(:B2) AND
                  "LVL_I"=TO_NUMBER(:B1))
    Note
       - dynamic sampling used for this statementRegards,
    Rob.

Maybe you are looking for