!! Getting error while using function in where clause

Hi,
I have created a function as below
create function find_cnt(n varchar2)
return number is
cnt number;
begin
execute immediate 'select count(1) from '||n into cnt;
return nvl(cnt,0);
end;
and when running the below select
select find_cnt(object_name),object_name from user_objects where object_type='TABLE' and find_cnt(object_name)=0
I getting
ERROR:
ORA-04044: procedure, function, package, or type is not allowed here
ORA-06512: at "SCOTT.FIND_CNT", line 5
can anyone help????????
thanks
Harish

In 11g you could simply do
SQL> select table_name, trim(column_value) cnt
  from user_tables, xmltable(('count(ora:view("'||table_name||'"))'))
TABLE_NAME                     CNT      
DEPT                           4        
BONUS                          0        
SALGRADE                       5        
DEMO_USERS                     2        
DEMO_CUSTOMERS                 7        
DEMO_ORDERS                    10       
DEMO_PRODUCT_INFO              10       
DEMO_ORDER_ITEMS               16       
DEMO_STATES                    51       
DEMO_PAGE_HIERARCHY            18       
TABLE1                         6        
TABLE2                         6        
CREATE$JAVA$LOB$TABLE          0        
CLICKS                         1        
T                              0        
EMP                            14       
PLAN_TABLE                     2        
17 rows selected.

Similar Messages

  • Error while using REMAP_TABLE and WHERE clause  together in IMPDP

    I am trying to move some records from a very large table to another small table.
    I am facing trouble while using REMAP_TABLE and WHERE clause together in IMPDP.
    Problem is data filter is not getting applied and all records are getting imported.
    here is how I have simulated this. please advice.
    CREATE TABLE TSHARRHB.TMP1
      A  NUMBER,
      B  NUMBER
    begin
    Insert into TSHARRHB.TMP1
       (A, B)
    Values
       (1, 1);
    Insert into TSHARRHB.TMP1
       (A, B)
    Values
       (2, 2);
    COMMIT;
    end;
    expdp system/password TABLES=tsharrhb.TMP1 DIRECTORY=GRDP_EXP_DIR DUMPFILE=TMP1.dmp REUSE_DUMPFILES=YES LOGFILE=EXP.log PARALLEL=8
    impdp system/password DIRECTORY=GRDP_EXP_DIR DUMPFILE=TMP1.dmp LOGFILE=imp.log PARALLEL=8 QUERY='TSHARRHB.TMP1:"WHERE TMP1.A = 2"'  REMAP_TABLE=TSHARRHB.TMP1:TMP3 CONTENT=DATA_ONLY
    Import: Release 11.2.0.1.0 - Production on Fri Dec 13 05:13:30 2013
    Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
    Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
    With the Partitioning, Automatic Storage Management, OLAP, Data Mining
    and Real Application Testing options
    Master table "SYSTEM"."SYS_IMPORT_FULL_01" successfully loaded/unloaded
    Starting "SYSTEM"."SYS_IMPORT_FULL_01":  system/********@GRD6.RBSG DIRECTORY=GRDP_EXP_DIR DUMPFILE=TMP1.dmp LOGFILE=SSD_93_TABLES_FULL_EXP.log PARALLEL=8 QUERY=TSHARRHB.TMP1:"WHERE TMP1.A = 2" REMAP_TABLE=TSHARRHB.TMP1:TMP3 CONTENT=DATA_ONLY
    Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
    . . imported "TSHARRHB"."TMP3"                           5.421 KB       2 rows
    Job "SYSTEM"."SYS_IMPORT_FULL_01" successfully completed at 05:13:33
    here I am expecting only 1 record to get imported but both the records are getting imported. please advice.

    The strange thing compared to your output is that I get an error when I have table prefix in the query block:
    Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    Master table "SYSTEM"."SYS_IMPORT_FULL_01" successfully loaded/unloaded
    Starting "SYSTEM"."SYS_IMPORT_FULL_01":  system/******** DUMPFILE=TMP1.dmp LOGFILE=imp.log PARALLEL=8 QUERY=SYSADM.TMP1:"WHERE TMP1.A = 2" REMAP_TABLE=SYSADM.TMP1:TMP3 CONTENT=DATA_ONLY
    Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
    ORA-31693: Table data object "SYSADM"."TMP3" failed to load/unload and is being skipped due to error:
    ORA-38500: Unsupported operation: Oracle XML DB not present
    Job "SYSTEM"."SYS_IMPORT_FULL_01" completed with 1 error(s) at Fri Dec 13 10:39:11 2013 elapsed 0 00:00:03
    And if I remove it, it works:
    Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
    With the Partitioning, OLAP, Data Mining and Real Application Testing options
    Master table "SYSTEM"."SYS_IMPORT_FULL_01" successfully loaded/unloaded
    Starting "SYSTEM"."SYS_IMPORT_FULL_01":  system/******** DUMPFILE=TMP1.dmp LOGFILE=imp.log PARALLEL=8 QUERY=SYSADM.TMP1:"WHERE A = 2" REMAP_TABLE=SYSADM.TMP1:TMP3 CONTENT=DATA_ONLY
    Processing object type TABLE_EXPORT/TABLE/TABLE_DATA
    . . imported "SYSADM"."TMP3"                             5.406 KB       1 out of 2 rows
    Job "SYSTEM"."SYS_IMPORT_FULL_01" successfully completed at Fri Dec 13 10:36:50 2013 elapsed 0 00:00:01
    Nicolas.
    PS: as you can see, I'm on 11.2.0.4, I do not have 11.2.0.1 that you seem to use.

  • Using function in where clause

    I have created a function as follows
    create or replace FUNCTION get_codes RETURN varchar2 IS
    scodes varchar2(50) := 'A1,A2';
    BEGIN
    scodes := '('''||REPLACE(scodes,',',''',''')||''')';
    return scodes;
    END;
    this function returns ('A1','A2')
    now i want to use this in where clause, both below statements fetches no rows
    select * from tablea where code in (select get_codes from dual);
    select * from tablea where code in get_codes;
    but the following will fetch rows
    select * from tablea where code in ('A1','A2')
    how to use function in where clause
    Thanks

    Hi,
    The code that works:
    where code in ('A1','A2')is testing whther code is either of two 2-character strings, A1 or A2.
    The ones that don't work, such as:
    where code in get_codes;are comparing code to one 9-character string: 'A1','A2', where characters 1, 4, 6 and 9 are single-quotes. (The function can only return one value.)
    You can use dynamic SQL to embed that 9-character string in part of your query, where it will be interpreted as two 2-character strrings.
    [Oracle Base|http://www.oracle-base.com/articles/misc/DynamicInLists.php] and AskTom have good pages on the subject of dynamic IN-lists.
    Of you can use INSTR or LIKE:
    where INSTR ( get_codes
                , '''' || code || ''''
                ) > 0

  • Getting error while using HTTP connector and calling POST action to a Web API which is deployed as website on Azure

    I have create Logic App under Azure App Services, I am getting
    error while using HTTP connector and calling POST action to a Web API which is deployed as website on Azure.
    Following are the screen shots:
    Login App Connector Diagram:
    hema

    Marking as answered since no response on request for more information - assuming that you found what was wrong in the inputs. Let us know if you're still having trouble.
    http://twitter.com/joshtwist

  • Getting Error while using CallTarget class

    I am getting following error while using the CallTarget.
    "Exception in thread "main" java.lang.NullPointerException
    at org.apache.tools.ant.taskdefs.Ant.init(Ant.java:147)
    at org.apache.tools.ant.taskdefs.CallTarget.init(CallTarget.java:85)
    at org.apache.tools.ant.taskdefs.CallTarget.setTarget(CallTarget.java:150
    at AntCallTarget.main(AntCallTarget.java:7)"
    Can anyone please help me solve this problem.
    The code where i am getting this error is
              CallTarget antCall = new CallTarget();
              antCall.setTarget("Main");

    I am getting following error while using the CallTarget.
    "Exception in thread "main" java.lang.NullPointerException
    at org.apache.tools.ant.taskdefs.Ant.init(Ant.java:147)
    at org.apache.tools.ant.taskdefs.CallTarget.init(CallTarget.java:85)
    at org.apache.tools.ant.taskdefs.CallTarget.setTarget(CallTarget.java:150
    at AntCallTarget.main(AntCallTarget.java:7)"
    Can anyone please help me solve this problem.
    The code where i am getting this error is
              CallTarget antCall = new CallTarget();
              antCall.setTarget("Main");

  • Getting error while using Callouts

    Hi Gurus,
    I am getting the below error while using callouts.
    Error -: AIP-51806: Error during callout invocation: Error -: AIP-10606: Domain exception in callout execution. Error -: AIP-10606: Domain exception in callout execution. Callout/Usage property not found for key password.
         at oracle.tip.adapter.b2b.callout.CalloutUtil.raiseIPCalloutDomainException(CalloutUtil.java:88)
         at oracle.tip.adapter.b2b.callout.CalloutContextImpl.getMapValue(CalloutContextImpl.java:100)
         at oracle.tip.adapter.b2b.callout.CalloutContextImpl.getStringProperty(CalloutContextImpl.java:149)
         at com.tm.EncryptMessage.execute(EncryptMessage.java:25)
         at oracle.tip.adapter.b2b.callout.CalloutExecuteWorker.doWork(CalloutExecuteWorker.java:424)
         at oracle.tip.adapter.b2b.callout.CalloutExecuteWorker.run(CalloutExecuteWorker.java:333)
         at java.lang.Thread.run(Thread.java:534)
         at oracle.tip.adapter.b2b.callout.B2BCalloutHandler.handleOutgoingCallout(B2BCalloutHandler.java:344)
         at oracle.tip.adapter.b2b.msgproc.Request.outgoingRequestPostColab(Request.java:1606)
         at oracle.tip.adapter.b2b.msgproc.Request.outgoingRequest(Request.java:975)
         at oracle.tip.adapter.b2b.engine.Engine.processOutgoingMessage(Engine.java:1167)
         at oracle.tip.adapter.b2b.transport.AppInterfaceListener.onMessage(AppInterfaceListener.java:141)
         at oracle.tip.transport.basic.FileSourceMonitor.processMessages(FileSourceMonitor.java:903)
         at oracle.tip.transport.basic.FileSourceMonitor.run(FileSourceMonitor.java:317)
    Caused by: Error -: AIP-10606: Domain exception in callout execution. Error -: AIP-10606: Domain exception in callout execution. Callout/Usage property not found for key password.
         at oracle.tip.adapter.b2b.callout.CalloutUtil.raiseIPCalloutDomainException(CalloutUtil.java:88)
         at oracle.tip.adapter.b2b.callout.CalloutContextImpl.getMapValue(CalloutContextImpl.java:100)
         at oracle.tip.adapter.b2b.callout.CalloutContextImpl.getStringProperty(CalloutContextImpl.java:149)
         at com.tm.EncryptMessage.execute(EncryptMessage.java:25)
         at oracle.tip.adapter.b2b.callout.CalloutExecuteWorker.doWork(CalloutExecuteWorker.java:424)
         at oracle.tip.adapter.b2b.callout.CalloutExecuteWorker.run(CalloutExecuteWorker.java:333)
         at java.lang.Thread.run(Thread.java:534)
         at com.tm.EncryptMessage.execute(EncryptMessage.java:47)
         at oracle.tip.adapter.b2b.callout.CalloutExecuteWorker.doWork(CalloutExecuteWorker.java:424)
         at oracle.tip.adapter.b2b.callout.CalloutExecuteWorker.run(CalloutExecuteWorker.java:333)
         at java.lang.Thread.run(Thread.java:534)
    I have configured the property "password" in the "Callout Properties" & "Callout Usage". I think no properties reaching the "CalloutContext" in the callout class.
    Please help me in this.
    Regards,
    Vithal
    Edited by: Vithal R on 03-Jun-2009 08:07

    Hi Vithal,
    Did you try with sample callouts -
    http://download-uk.oracle.com/docs/cd/B14099_19/integrate.1012/b19370/callouts.htm
    For your case, make sure -
    You are following below steps to create the property -
    http://download.oracle.com/docs/cd/B14099_19/integrate.1012/b19370/callouts.htm#BEIFDECJ
    You have selected the appropriate callout usage while creating the agreement.
    Callout Directory : Just mention the folder and not the jar.
    Mention the appropriate jar file in the Libray name section of the "create call out"
    Let us know the result please.
    Regards,
    Anuj
    Edited by: Anuj Dwivedi on Jun 4, 2009 11:39 AM

  • Clarification on using function in where clause of oracle sql query

    I have an issue in regarding function using where clause of sql query..
    We are facing performance issue while executing query, so in what ways to improve the performance of the query which i have posted below.
    select col ,case when my_function(parameter)
    from tab1 a ,tab2 b,tabl3 c
    where a.column1=b.column2
    and b.column3 =c.column6
    and my_function(parameter)>0
    Regards
    Dinesh
    Edited by: wild fire on May 18, 2012 4:15 PM

    Dinesh,
    remind that when you use a function in the where clause it normally will get started for each record in the table.
    So your answer is two-fold:
    1. make the function only start when needed by adding a function based index on the table (this will make inserts and updates slower)
    2. make the function faster by adding the DETERMINISTIC clause if possible. this will make Oracle "cache" the result of the function.
    Regards,
    Richard
    blog: http://blog.warp11.nl
    twitter: @rhjmartens
    If this question is answered, please mark the thread as closed and assign points where earned..

  • Getting error while using the data element in ztable

    though i specified the length as 20 in dataelement when i am entering the dataelement i am getting this error
    while i used help i got the following information
    Number of positions < minimum number (1) for data type CHAR
    Message no. DO253
    Diagnosis
    A minimum length is required for the specified data type.
    This minimum length is not reached by the specified number of positions.
    Procedure
    Increase the number of positions or select a more appropriate data type with the possible entries help F4.

    This is strange, you shouldn't even be able to activate the dataelement type char with a length of 0. Revisit your data element and make sure that the length shows to be greater than 0 and reactivate your data element to make sure the newest version is active. In case you are referencing a domain in your data element do the same with the domain after validating that everything is correct (you can also use the check function). Then go back to your table and reenter the data element before activating your table.
    Hope that helps,
    Michael

  • Getting Error while using  LKM File to Oracle(SQLLDR) KM in ODI

    Hi All ,
    Could anyone please help me out on this error which i am getting while using LKM File to Oracle(SQLLDR)
    My Scenario :
    1. I have my CSV file created in one location with some records .
    2. Created a new interface having this CSV file as source(File Technology) and Table as target (Oracle technology)
    3. Here i want to get the contents from csv and store into the target table by using SQLLDR .For that i am using this KM- LKM File to Oracle(SQLLDR)
    4. By Executing the Interface i am getting following error at step 6 -call sqlldr
    org.apache.bsf.BSFException: exception from Jython:
    Traceback (most recent call last):
      File "<string>", line 22, in <module>
    Load Error: See E:\demo1\file/SALES.log for details
      at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:146)
      at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.execInBSFEngine(SnpScriptingInterpretor.java:322)
      at com.sunopsis.dwg.codeinterpretor.SnpScriptingInterpretor.exec(SnpScriptingInterpretor.java:170)
      at com.sunopsis.dwg.dbobj.SnpSessTaskSql.scripting(SnpSessTaskSql.java:2472)
      at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:47)
      at oracle.odi.runtime.agent.execution.cmd.ScriptingExecutor.execute(ScriptingExecutor.java:1)
      at oracle.odi.runtime.agent.execution.TaskExecutionHandler.handleTask(TaskExecutionHandler.java:50)
      at com.sunopsis.dwg.dbobj.SnpSessTaskSql.processTask(SnpSessTaskSql.java:2913)
      at com.sunopsis.dwg.dbobj.SnpSessTaskSql.treatTask(SnpSessTaskSql.java:2625)
      at com.sunopsis.dwg.dbobj.SnpSessStep.treatAttachedTasks(SnpSessStep.java:577)
      at com.sunopsis.dwg.dbobj.SnpSessStep.treatSessStep(SnpSessStep.java:468)
      at com.sunopsis.dwg.dbobj.SnpSession.treatSession(SnpSession.java:2128)
      at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$2.doAction(StartSessRequestProcessor.java:366)
      at oracle.odi.core.persistence.dwgobject.DwgObjectTemplate.execute(DwgObjectTemplate.java:216)
      at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.doProcessStartSessTask(StartSessRequestProcessor.java:300)
      at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor.access$0(StartSessRequestProcessor.java:292)
      at oracle.odi.runtime.agent.processor.impl.StartSessRequestProcessor$StartSessTask.doExecute(StartSessRequestProcessor.java:855)
      at oracle.odi.runtime.agent.processor.task.AgentTask.execute(AgentTask.java:126)
      at oracle.odi.runtime.agent.support.DefaultAgentTaskExecutor$2.run(DefaultAgentTaskExecutor.java:82)
      at java.lang.Thread.run(Thread.java:662)
    Caused by: Traceback (most recent call last):
      File "<string>", line 22, in <module>
    Load Error: See E:\demo1\file/SALES.log for details
      at org.python.core.PyException.fillInStackTrace(PyException.java:70)
      at java.lang.Throwable.<init>(Throwable.java:181)
      at java.lang.Exception.<init>(Exception.java:29)
      at java.lang.RuntimeException.<init>(RuntimeException.java:32)
      at org.python.core.PyException.<init>(PyException.java:46)
      at org.python.core.PyException.doRaise(PyException.java:219)
      at org.python.core.Py.makeException(Py.java:1166)
      at org.python.core.Py.makeException(Py.java:1170)
      at org.python.pycode._pyx2.f$0(<string>:59)
      at org.python.pycode._pyx2.call_function(<string>)
      at org.python.core.PyTableCode.call(PyTableCode.java:165)
      at org.python.core.PyCode.call(PyCode.java:18)
      at org.python.core.Py.runCode(Py.java:1204)
      at org.python.core.Py.exec(Py.java:1248)
      at org.python.util.PythonInterpreter.exec(PythonInterpreter.java:172)
      at org.apache.bsf.engines.jython.JythonEngine.exec(JythonEngine.java:144)
      ... 19 more
    Here the sales.log file is not created in the above directory .I am not getting  where it is actually went wrong.
    I searched for the solution and i could not find any.Please help me out as it is high priority for me.
    I tried to run SQL*Loader through command prompt and i am able to generate the data in the target table and not getting it through ODI.
    Atleast is there any workaround .Please suggest me.
    Environment Details: ODI_11.1.1.7.0, Oracle DB 11g
    Thanks,
    keerthi

    Which agent are you using to execute?
    Standalone? If standalone, did you start it with OPMN?  I've seen such issues with standalone agent started with OPMN.
    Generally these kind of issues occur when you try to run with standalone agent started with OPMN.
    Because OPMN does not have access to the environment shell variables PATH or ORACLE_HOME and therefore the sqlldr.exe binary (or other Oracle product binary) is not found for execution.
    In this case, you need to specify PATH and ORACLE_HOME variables in opmn.xml file like below for your agent(say "MyStandaloneAgent" in this case)
    <ias-component id="MyStandaloneAgent">
    <process-type id="odiagent" module-id="CUSTOM">
      <environment>
         <variable id="ORACLE_HOME" value="C:\oracle\product\11.2.0\client_1"/>
          <variable id="PATH" value="C:\oracle\product\11.2.0\client_1\BIN;$PATH"/>
    After that, start and stop the agent and try the execution once again.

  • Getting error while Using BAPI Interface in VB

    Hi,
    I m getting error message while creating object of SAP.BAPI.1
    Error message is "out of memory : run time error 7".
    do I need to install any patch to my local PC? If yes then from where could i get that patch.
    Plz help me out.
    Thanks & Regards,
    Sagar

    Hi Sagar,
    Please varify the version of SAP client you use. I have noticed that this error with SAP Frontend Package 6.20, and was able to over come the follwing issue by upgrading to the SAP Frontend Package 6.40.
    Regards,
    Randima

  • Getting error while using as_access_pub.Create_SalesTeam API

    Hi,
    I am getting this error while executing this API in a procedure which is triggered from a business event.
    "User id 0 is invalid. The user cannot be identified in Resource Manager."
    The error does not occur when I execute the procedure stand-alone from a PL/SQL client. What could be the reason ? Any help would be appreciated.
    Thanks
    Ramya

    Hi,
    thanks for the response. I tried doing that FND_APPS.Initialize... explicitly by passing user_id,resp_id and resp_app_id, still its giving the same error.
    Also note that the API works fine from our development instance (without fnd_apps.initialize), whereas it does not work from our testing instance (with or without fnd_apps.initialize)
    Thanks
    Ramya

  • Getting error while using TRIM method in collections

    Hi Experts,
    While using TRIM method I am getting below error. Am I doing any mistake here ?
    DB : Oracle 11g
    SQL> declare
      2
      3    type emp_tab is table of employees%rowtype index by binary_integer;
      4    l_emp_tab emp_tab;
      5
      6  begin
      7
      8   select * bulk collect into l_emp_tab from employees;
      9   l_emp_tab.trim(5);
    10   dbms_output.put_line(l_emp_tab.count);
    11
    12  end;
    13  /
    l_emp_tab.trim(5);
    ERROR at line 9:
    ORA-06550: line 9, column 2:
    PLS-00306: wrong number or types of arguments in call to 'TRIM'
    ORA-06550: line 9, column 2:
    PL/SQL: Statement ignored
    Thanks in advance for all your help.
    Cheers,
    Suri

    Gerard, and to Unkonwn epxpert ;-)
    Thanks for the reply. I am aware about extend method. But not sure about TRIM. Once again thanks for your help.
    Cheers,
    Suri

  • Getting Error while using HttpAuthManager present in  cdb_devkit.

    Hi,
    I am using the classes present in cdb_devkit in my application. I am using HttpAuthManager class in order to retrieve the Fdksession from existing Http Session of CDB.However while using the HttpAuthManager class:
    HttpAuthManager ham = HttpAuthManager.getInstance();
    I am getting the error when this statement is being executed.
    Error:*"FDK Configuration not initialized! Delay this call until the node and servers are initialized!"*.
    Can anyone please tell me what this error indicate and provide me the solution for resolving this error.
    This is very urgent for me. Thanks in advance.
    Thank You,
    Ravi kumar.

    Gerard, and to Unkonwn epxpert ;-)
    Thanks for the reply. I am aware about extend method. But not sure about TRIM. Once again thanks for your help.
    Cheers,
    Suri

  • Regd. using functions in where clause

    Hi All,
    I need to apply a set of functions in sysdate and use that in a where clause to compare. My question is, will these functions on sysdate be executed for every record in the tables that I use? Will this have performance impact when i have millions of records returned by the select?
    Below is the scenario:
    Select * from table A inner join table B on A.c1 = B.c1 where
    TO_NUMBER(TO_CHAR(TRUNC(LAST_DAY(ADD_MONTHS(SYSDATE, -1))),'YYYYMMDD')) BETWEEN Date1 and Date2
    Regards,
    Raj.D

    1005330 wrote:
    I need to apply a set of functions in sysdate and use that in a where clause to compare. My question is, will these functions on sysdate be executed for every record in the tables that I use? Will this have performance impact when i have millions of records returned by the select?
    Below is the scenario:
    Select * from table A inner join table B on A.c1 = B.c1 where
    TO_NUMBER(TO_CHAR(TRUNC(LAST_DAY(ADD_MONTHS(SYSDATE, -1))),'YYYYMMDD')) BETWEEN Date1 and Date2
    Test it on a small data set - run a query and check the execution plan to see what the predicate section tells you.
    Oracle OUGHT to be smart enough to recognise that you've got a constant that it need only calculate once. If not, then change the usage to read:
        (select TO_NUMBER(TO_CHAR(TRUNC(LAST_DAY(ADD_MONTHS(SYSDATE, -1))),'YYYYMMDD')) from dual) BETWEEN Date1 and Date2Note, by the way, that 'constant between col1 and col2' is generally a tough one as far as efficiency is concerned; it translates to:
        col1 <= constant
    and col2 >= constantIn many cases this means oracle has to access a large volume of data (for one of the predicates) and then filter that data (with the other predicate). A typical damage limitation strategy is to create an index on the two columns, arrangin the column order to minimise the range scan on the first column.
    Depending on your data patterns and the nature of the predicate there are alternative optimiisation strategies.
    Regards
    Jonathan Lewis

  • Error while using Function module SPELL_AMOUNT with arabic language AR

    Hi ,
    When i am trying to convert the number to words, using function module SPELL_AMOUNT with arabic language(AR),following abend message is coming and FM is getting abended.
    Entry AR 0 1 in table T015Z does not have a delimiter (
    Can you please provide me how to overcome this error?
    Thanks & Regards
    Seshagiri.

    Hi Santosh,
    Thanks for quick inputs.
    And amount is not having any delimitors.
    I have checked in table T015Z and it has entries with AR as SPRAS.
    All entries are having ':' at the beginning of the arabic words,and there is no single entry with ';'.
    All entries with EN as SPRAS are having delimiters ';' at the end of the words.
    Numbers are correctly converted to words in english,but abending in arabic.
    Any idea please.
    Thanks & Regards
    Seshagiri.

Maybe you are looking for