Eliminating an Inner Query when using UNPIVOT

In the following query, I am attempting to UNPIVOT a number of different phone / fax numbers into a single column named 'PhoneNum'.
I haven't used UNPIVOT before, and I'm trying to understand a couple of things about it:
1. Why does the query run without error if I alias the outer select list with 'work'?
2. Can I write this in a way that I can eliminate the inner SELECT?
The following is the query I am working with:
SELECT DISTINCT
program.RecordNumber
,work.PhysicianEntityKey
,program.insurerKey
,work.ParFlag
,work.ProviderID1
,work.ProviderID2
,work.ProviderGroupID
,work.ProviderGroupName
,work.NetworkID
,work.EffectiveDate
,work.TerminationDate
,pn.PhoneNum
FROM 
SELECT distinct
RecordNumber, 
InsurerKey, 
PhysicianEntityKey,
ParFlag,
ProviderID1,
ProviderID2,
ProviderGroupID,
ProviderGroupName,
NetworkID,
EffectiveDate,
TerminationDate, 
PhysicalPhone, 
PhysicalFax, 
cast(BillingPhone as VARCHAR(10)) as BillingPhone, 
BillingFax 
FROM PMR_ETL.Provider_Work
) as  iq
UNPIVOT ( PhoneNum FOR PhoneUseType IN (iq.PhysicalPhone,
                                                iq.PhysicalFax,
                                                iq.BillingPhone,
                                                iq.BillingFax)) as work
LEFT JOIN Physician.Nexus pn
ON pn.NexusHashValue = CAST(work.PhoneNum as VARBINARY(40))
LEFT JOIN ProviderODS.Physician.Nexus ods
ON ods.NexusHashValue = CAST(work.PhoneNum as VARBINARY(40))
INNER JOIN PMR_ETL.Provider_Program_Work program
ON program.RecordNumber = work.RecordNumber
and program.InsurerKey = work.insurerKey
I hope I have communicated enough detail about my issue. Thank you for your help.

If your BillingPhone has different type or size than other phone columns, then you can not eliminate the inner subquery. Otherwise you can do that UNPIVOT select directly.
I am also not sure about usage of DISTINCT in your query. Usually it shows a DDL logic problem.
For every expert, there is an equal and opposite expert. - Becker's Law
My blog
My TechNet articles

Similar Messages

  • Unable to parse query when using dblink in forms 4.5

    Hi,
    I have created a query that uses a DBlink because I need to do query on a table located on another dbase. I've used the query on creating my report using Reports 6i. The report needs to be called from a menu on our system, which was developed under Developer 2000 (forms 4.5). The problem is, when I tried to access the report from the menu, it returns the error 'unable to parse query'. What I did after getting error was to create a dummy module using Forms 6i, and call my report from there. It worked fine.
    By the way, the table that I'm accessing using the dblink is under Oracle 9i dbase, and the dbase of the system that I've been working at is Oracle 8i.
    I don't have any idea on what's causing this error. Is there a compatibility issue when using a dblink located in Oracle 9i database with forms 4.5?
    Thanks!

    Hello,
    Not sure if it is the good answer, but I know that Forms does not recognize dblink and owner.object syntax. You have to create a simple synomym that point to the distant object and use this synonym within Forms.
    Francois

  • How to set fetchsize of sql Query when using Database Adapter.

    Hi All,
    I am using DatabaseAdapter to connect to database and retriving huge amount of data.For improvement in the performance I want to set the "fetchsize" of sql query. I know fetchsize can be preset in Java using Jdbc 2.0 API.Please let me know how to set this value in BPEL when using DBAdapter?
    Thanks
    Chandra

    I talked to the developer of the db adapter - and he told me this feature will be available in BPEL PM 10.1.3 (which is supposed to be production later this year, and a public beta soon). If this is an emergency I would recommend going throug Oracle support and have them file an enhancement for 10.1.2.0.2
    hth clemens

  • Regarding ABAP query when using the LDB

    Hi Experts,
    Iam preparing one ABAP query by using LDB.
    And i added two more table VBPA and KNA1.
    When i add the VBPA table the system will automatically generate
    the sql query and we need to pass the where condition to thet query.
    system generated like this..
    SELECT SINGLE * FROM VBPA
    WHERE VBELN                =
       AND POSNR                  =
       AND PARVW                 =
    but in the above query i need to pass the values to PARVW as 'AG' or 'SP'.
    how can i pass the two values to that query?
    rgds,
    Sruthi.

    HI,
    It is system generated....just we need to pass the values to where condition.
    in normal ABAP we can do like this...
    SELECT SINGLE * FROM VBPA
    WHERE VBELN                = EKPO-ZZVBELN
       AND POSNR                  = EKPO-ZZPOSNR
       AND PARVW                in  ( 'AG' , 'SP').
    or
    SELECT SINGLE * FROM VBPA
    WHERE VBELN                = EKPO-ZZVBELN
       AND POSNR                = EKPO-ZZPOSNR
       AND                             ( PARVW  =  'AG' or  PARVW  =  'SP' ).
    Rgds,
    Sruthi.

  • Error in query when using offset in variable

    Hi,
    I have a query in which I use av variable (0CWEEK) for the current week. The query works fine with this varable. But when I use an offset of for example minus 1, the query displays an error:
    (A299(BRAIN)) Terminate: System error in program SAPLRRI2 and form REP_ASSIGN_INITIAL_OPT-01
    We use offset of 0CALWEEK in other info cubes, and there are no problems with that.
    In this case we have implemented 0CALWEEK in a DSO. Perhaps this somehow causes the problem? On the other hand the variable works fine in the DSO, as long as we don't use offset.
    So - why is there a error, and how to solve it?
    BR,
    Niclas

    Managed to solve the problem. The reason was that there was no column (or row) with the variable without offset. I.e. there needs to be a column for the actual week in the query as well, not only week with offset. In this case I didn't want the actual week, only an offset to it. So I just hid the column with the actual week from presentation.
    /Niclas

  • SQL Query (PL/SQL function body returning SQL query) when using to_char

    we are trying to build a report page of Type SQL Query (PL/SQL function body returning SQL query).
    our query is so simple, we need to extract the month from the recording_date column.
    declare
    l_query varchar2(1000);
    begin
    l_query:='select to_char(recording_date,'MM')from re_productive';
    return l_query;
    end;
    but we are having the following problem for this query
    Function returning SQL query: Query cannot be parsed within the Builder. If you believe your query is syntactically correct, check the generic columns checkbox below the region source to proceed without parsing.
    (ORA-06550: line 4, column 42: PLS-00103: Encountered the symbol "MON" when expecting one of the following: . ( * @ % & = - + ; < / > at in is mod remainder not rem <> or != or ~= >= <= <> and or like between || multiset member SUBMULTISET_ The symbol ". was inserted before "MON" to continue.)
    Notes:
    1-the query is correct and it was tested under Toad and SQL Plus.
    2- we tried Use Generic Column Names (parse query at runtime only) option but we get the same problem.
    any quick help please.

    Hi
    You haven't escaped your quotes in the string. Try this...
    DECLARE
    l_query VARCHAR2(32767);
    BEGIN
    l_query:= 'select to_char(recording_date,''MM'') from re_productive';
    RETURN l_query;
    END;Cheers
    Ben

  • How to optimise the intermedia search query  when using contains?

    HI there,
    I have a query to search my database in two tables on eight columns. So that I have eight indexes which are in a different tablespace. Now I have written a query like
    select * from table1,table2 where
    contains(col1,'wordlist1', 1)>0 and
    contains(col2,'wordlist2', 2)>0 and
    contains(col8,'wordlist2', 8)>0 ;
    When I tried to execute this query, my databae is getting very very slow. As soon as I started the database its working fine, with in five munites of continuous checking, the database going to be slow. So
    How can I optimise my query? Is there any better way to search the database using intermedia?
    Any help or any sites list on intermedia searching utilities, other than the Oracle documentation is thankful.
    waiting...
    khaleel

    Thank you Thomas,
    I need some more from you...
    If I have 8 tables for 8 columns, then how do i proceed?
    Also could u tell me some query optimization techniques while working with intermedia text.
    Thanks you once again,
    waiting...
    Khaleel Hi Khaleel,
    I think this depends on your data model (relationship between the tables) and how you like to search later.
    The optimization begins also with the create index statement (memory clause and storage clause).
    If you like me to help I need more information about your hardware, os, datamodel and what kind of searches you will have later.
    Cheers,
    Thomas

  • How to wirte query when using transaction tables.

    Hello,
    I am new to the database and working as java developer.
    I am saving the data in transaction table. when the component is deleted or added to the kit.
    Id kit_id comp_id trans_type
    1 k_01 c_01 added
    2 k_01 c_02 added
    3 k_01 c_01 deleted.
    4 k_01 c_05 added.
    5 k_02 c_06 added.
    6 k_01 c_02 deleted.
    i need to write query to get the all the components are attached to kit(k_01).
    Please help me write the query.
    Thanks,
    RK

    885176 wrote:
    Hello,
    I am new to the database and working as java developer.
    I am saving the data in transaction table. when the component is deleted or added to the kit.
    Id kit_id comp_id trans_type
    1 k_01 c_01 added
    2 k_01 c_02 added
    3 k_01 c_01 deleted.
    4 k_01 c_05 added.
    5 k_02 c_06 added.
    6 k_01 c_02 deleted.
    i need to write query to get the all the components are attached to kit(k_01).
    Please help me write the query.
    Thanks,
    RKSELECT <column list>
    FROM <table name>
    WHERE kit_id='k_01'
    I'd suggest you spend some time here ==> http://download.oracle.com/docs/cd/B19306_01/server.102/b14200/toc.htm

  • Why should we select all key fields when using for all entries

    Hi,
    Why should we select all key fields in our select query when using for all entries statement?
    I read about for all entries but this point was not clear in any post.
    Please explain me
    Regards,
    Subhashini

    Dear Subhasini,
    It is because FOR ALL ENTRIES deletes the duplicate entries before populating the target internal table.
    Please do an F1 on FOR ALL ENTRIES & read the SAP documentation.
    I mean how duplicate entries will not get deleted when we use this?
    Quite simple, if you select  all key fields then each entry will be unique & there will not be any duplicate entries to delete !!
    BR,
    Suhas
    Edited by: Suhas Saha on Oct 16, 2009 9:41 AM

  • Error in SQL Query The text, ntext, and image data types cannot be compared or sorted, except when using IS NULL or LIKE operator. for the query

    hi Experts,
    while running SQL Query i am getting an error as
    The text, ntext, and image data types cannot be compared or sorted, except when using IS NULL or LIKE operator. for the query
    select  T1. Dscription,T1.docEntry,T1.Quantity,T1.Price ,
    T2.LineText
    from OQUT T0  INNER JOIN QUT1 T1 ON T0.DocEntry = T1.DocEntry INNER JOIN
    QUT10 T2 ON T1.DocEntry = T2.DocEntry where T1.DocEntry='590'
    group by  T1. Dscription,T1.docEntry,T1.Quantity,T1.Price
    ,T2.LineText
    how to resolve the issue

    Dear Meghanath,
    Please use the following query, Hope your purpose will serve.
    select  T1. Dscription,T1.docEntry,T1.Quantity,T1.Price ,
    CAST(T2.LineText as nvarchar (MAX))[LineText]
    from OQUT T0  INNER JOIN QUT1 T1 ON T0.DocEntry = T1.DocEntry LEFT OUTER JOIN
    QUT10 T2 ON T1.DocEntry = T2.DocEntry --where T1.DocEntry='590'
    group by  T1. Dscription,T1.docEntry,T1.Quantity,T1.Price
    ,CAST(T2.LineText as nvarchar (MAX))
    Regards,
    Amit

  • Dealy in query when i use timestamp

    Hello all
    I have a query like
    " select * from table where create_date > (select max(update) from tableb) )
    The above query is taking a long long time.
    Createdate and update are timestamps
    So i have tried the below query
    " select * from table where create_date > SYSDATE"
    this is pret quick. So i figured out that the inner query is causing the problem. So i have rewritten it using a join like
    select * from (
    (select col1, col2, createdate from table) a, (select max(update) from tableb) b
    where a.createdate>b.update).
    Even this is taking a long time.
    Can somebod please help me how i can tune this query....

    Read this post:
    When your query takes too long ...

  • Error when trying to add a hint to inner query in WHERE clause

    I have a form where the WHERE clause in a block starts like:
    where seqno in (select seqno from nddf n, restriction r...
    I need to add a hint to the inner query like following:
    where seqno in (select /*+ ORDERED */ seqno from nddf n, restriction r...
    When the query executes. I gets an error message and when I look at the detail error I see: ORA-01722: invalid number
    Does anybody know the cause for this. Can I not use hints in inner queries?
    Thanks,
    Thomas

    Did you mean something like this,
    i have tried the below code in forms 10g , as the where clause of 'EMP' block there was no problem.
    deptno in (select /*+ ORDERED */ deptno from dept where rownum<2);
    Also tried in SQLPlus like below
    SQL> select * from emp where deptno in (select /*+ ORDERED */ deptno from dept where rownum<2);
    EMPNO ENAME JOB MGR HIREDATE SAL COMM DEPTNO
    7782 CLARK MANAGER 7839 09-JUN-81 2450 10
    7839 KING PRESIDENT 17-NOV-81 5000 10
    7934 MILLER CLERK 7782 23-JAN-82 1300 10

  • Not able to create a universe when using nav. att. 0MATL_TYPE in the query

    Dear experts,
    A few days ago I posted a message in the BO General Category due to this error and I was adviced to install SP19 in BW (3.5). We've allready installed it but the issue is still arising. I am posting this thread now in this category since maybe the other category was too general and this one a little bit more specified.
    The error we are having is the following:
    We are having an issue when trying to create a universe over a BEx query which uses navigational attribute 0MATL_TYPE of 0MATERIAL (0MATERIAL__0MATL_TYPE).
    No matter where do we insert this nav. attribute in the query (lines, columns, free characteristics...) that we are not able to create the universe. We receive a message when trying to create it such as "error without message"
    We have other navigational attributes from several characteristics which are not giving us any problems in universes, just nav attributes 0MATL_TYPE and a Z characteristic (ZMATPR) which is the same as 0MATL_TYPE (it is defined the same way, not related).
    We are working with:
    BW 3.5 - SP19, BEx 3.x
    BOBJ XI 3.0 (without service pack or fix pack)
    Does any one have any clue on what could be the reason for this issue??
    Thanks in advance for your interest!
    Best regards!!!!
    Cecilia

    Hello Ingo,
    First of all thanks for your help, since we are really concerned about this issue.
    We have been analysing the file you have talked us about. The thing is that a week and a half ago we had to write an OSS message to SAP concerning another issue, and we were recommended to install note 1260004 which involves editing the registry in order to show SOFA logs, and if we have understood correcty, the file you have given us modifies as well the server registry in order to show sofa logs.
    Does the file you have given us includes new information in the SOFA logs, what is the difference between what we have changed with the SAP note and what you have given us?
    Nevertheless, we have retrieved two logs from two executions (having navigational attribute 0MATL_TYPE in the query from which we want to create the universe) in case you could help us to interpret the informations given since we are not able to understand it. (You can seen them below my signature.....haven't find a way to attach files....sorry....)
    Thank's very much in advance for your help!!!! This is so disconcerting.......
    Best regards!
    No way , I cannot copy the logs since the message format is destroyed when I copy it..... If you need it please inform me and we will send it to you!
    Thanks again for the help!!!
    Cecilia
    Edited by: Cecilia Guerra on May 11, 2009 1:56 PM
    Edited by: Cecilia Guerra on May 11, 2009 2:09 PM

  • Query don't use the right index when using bind variables

    Hi people !
    I need some help because I have an issue with a query that don t use the right Indexes as it should
    First of all, I have mainly three tables :
    ORDER : Table that contains description for each Order (approximately 1 000 000 Records)
    ORDER_MVTS : Table that contains the tasks made (called movements) to set up each Orders
    with quantity of packages prepared for each product (approximately 10 000 000 Records)
    PRODUCT : Tables that contains the products (approximately 50 000 Records)
    When I launch the query with hard coded values, it brings back response very fast
    because it uses the right index (ORDER_DHR_VALID) which represent the date and hour of the order
    (with format 'DD/MM/YYYY HH24:MI:SS'). The selectivity for this index is good.
    NB 1: I have to use the trick " >= Trunc(date) and < trunc(date) +1 " to filter on a simple date because
    the index contains hour and minutes (I know it wasn't probably a bright idea at conception time).
    NB 2: The index on ORDER_MVTS.PRODUCT_CODE is'nt discriminating enough because there is'nt enough different products.
    It's the same for index on CUSTOMER_CODE and on MVT_TYPE so only the index on ORDER.DHR_VALID is good.
    Here is the correct explain plan when I execute the query with hard coded values :
    SELECT SUM(ORDER_MVTS.NB_PACKAGE)
    FROM ORDER_MVTS, PRODUCT, ORDER
    WHERE ORDER.DHR_VALID >= TRUNC(to_date('14/11/2008 10:04:56','DD/MM/YYYY HH24:MI:SS'))
    AND ORDER.DHR_VALID < TRUNC(to_date('14/11/2008 10:04:56','DD/MM/YYYY HH24:MI:SS')) + 1
    AND ORDER_MVTS.MVT_TYPE = 'DELIVERY'
    AND PRODUCT.CODE = ORDER_MVTS.PRODUCT_CODE
    AND ORDER_MVTS.ORDER_CODE = ORDER.CODE
    AND ORDER.CUSTOMER_CODE = 'ADIDAS'
    AND PRODUCT.CODE = 1234
    Rows Row Source Operation
    1 SORT AGGREGATE
    2 NESTED LOOPS
    4 NESTED LOOPS
    2 INDEX UNIQUE SCAN (object id 378548) --> PRODUCT_PK
    4 TABLE ACCESS BY INDEX ROWID ORDER
    777 INDEX RANGE SCAN (object id 378119) --> ORDER_DHR_VALID
    2 TABLE ACCESS BY INDEX ROWID ORDER_MVTS
    30 INDEX RANGE SCAN (object id 377784) --> ORDER_MVTS_ORDER_FK
    Now the problem is when the query is used in a Cursor with bind variables.
    It seems like Oracle don't use index on ORDER.DHR_VALID because he can't figure out that he have
    to actually filter on a short period of time (only one day).
    So Oracle uses the index on ORDER_MVTS.PRODUCT_CODE which is'nt a bright idea (it takes 10 secondes instead of just one)
    Here is the bad explain plan :
    Rows Row Source Operation
    1 SORT AGGREGATE
    2 NESTED LOOPS
    722 NESTED LOOPS
    2 INDEX UNIQUE SCAN (object id 378548) --> PRODUCT_PK
    722 TABLE ACCESS BY INDEX ROWID ORDER_MVTS
    1790 INDEX RANGE SCAN (object id 377777) --> ORDER_MVTS_PRODUCT_FK
    2 TABLE ACCESS BY INDEX ROWID ORDER
    1442 INDEX UNIQUE SCAN (object id 378439) --> ORDER_PK
    Now I have found two solutions to this problem :
    1) using a Hint to force the use of index on ORDER.DHR_VALID (with /*+ INDEX(ORDER ORDER_DHR_VALID) */ )
    2) Using Dynamic SQL and keeping the date hard coded (but not the other values except mvt_type)
    For example :
    QUERY :=
    'SELECT SUM(ORDER_MVTS.NB_PACKAGE)
    FROM ORDER_MVTS, PRODUCT, ORDER
    WHERE ORDER.DHR_VALID >= TRUNC(TO_DATE('''||To_char(P_DTE_VAL,'DD/MM/YYYY')||''',''DD/MM/YYYY'')) '||
    AND ORDER.DHR_VALID < TRUNC(TO_DATE('''||To_char(P_DTE_VAL,'DD/MM/YYYY')||''',''DD/MM/YYYY'')) + 1 '||
    AND ORDER_MVTS.MVT_TYPE = 'DELIVERY'
    AND PRODUCT.CODE = ORDER_MVTS.PRODUCT_CODE
    AND ORDER_MVTS.ORDER_CODE = ORDER.CODE
    AND ORDER.CUSTOMER_CODE = :CUSTOMER
    AND PRODUCT.CODE = :CODE ';
    These two solutions work but Number 1 is bad in theory because it uses a Hint
    and Number 2 may be difficult to code.
    So my question is : Does someone knows another solution to force the use of index ORDER_DHR_VALID that can be simple and reliable.
    Thank you very much for support
    Edited by: remaï on Apr 1, 2009 4:08 PM

    What version of oracle you have? CBO work is different in 9i and 10g.
    Usually cost based optimizer do not want to use index for >< condition with binding variables because optimizer can not use statistic to determine selectivity, and by default selectivity of <> operators is low.
    (As I remember '>' selectivity by default is 5%, you have two conditions > and <, therefore resulting selectivity will be 0.05*0.05=0.0025 as two independent events, but selectivity of other conditions
    ORDER_MVTS.MVT_TYPE = 'DELIVERY' or ORDER.CUSTOMER_CODE = 'ADIDAS' looks much better for CBO)
    The best solution I see is do not use binding variables. Actually your query looks as searching query, which executes not so often, therefore you will not have perfomance win along of skipping execution plan creation.
    Edited by: JustasVred on Apr 1, 2009 10:10 AM

  • Cursors are not closed when using Ref Cursor Query in a report  ORA-01000

    Dear Experts
    Oracel database 11g,
    developer suite 10.1.2.0.2,
    application server 10.1.2.0.2,
    Windows xp platform
    For a long time, I'm hitting ORA-01000
    I have a 2 group report (master and detail) using Ref Cusor query, when this report is run, I found that it opens several cursors (should be only one cursor) for the detail query although it should not, I found that the number of these cursors is equal to the number of master records.
    Moreover, after the report is finished, these cursors are not closed, and they are increasing cumulatively each time I run the report, and finally the maximum number of open cursors is exceeded, and thus I get ORA-01000.
    I increased the open cursors parameter for the database to an unbeleivable value 30000, but of course it will be exceeded during the session because the cursors are increasing cumulatively.
    I Found that this problem is solved when using only one master Ref Cursor Query and create a breake group, the problem is solved also if we use SQL Query instead of Ref Query for the master and detail queries, but for some considerations, I should not use neither breake group nor SQL Query, I have to use REF Cursor queries.
    Is this an oracle bug , and how can I overcome ?
    Thanks
    Edited by: Mostafa Abolaynain on May 6, 2012 9:58 AM

    Thank you Inol for your answer, However
    Ref Cursor give me felxibility to control the query, for example see the following query :
    function QR_1RefCurDS return DEF_CURSORS.JOURHEAD_REFCUR is
    temp_JOURHEAD DEF_CURSORS.JOURHEAD_refcur;
              v_from_date DATE;
              v_to_date DATE;
              V_SERIAL_TYPE number;
    begin
    SELECT SERIAL_TYPE INTO V_SERIAL_TYPE
    FROM ACC_VOUCHER_TYPES
    where voucher_type='J'
    and IDENT_NO=:IDENT
    AND COMP_NO=TO_NUMBER(:COMPANY_NO);
         IF :no_date=1 then
                   IF V_SERIAL_TYPE =1 THEN     
                   open temp_JOURHEAD for select VOCH_NO, VOCH_DATE
                   FROM JOURHEAD
                   WHERE COMP_NO=TO_NUMBER(:COMPANY_NO)
                   AND IDENT=:IDENT
              AND ((TO_NUMBER(VOCH_NO)=:FROM_NO and :FROM_NO IS NOT NULL AND :TO_NO IS NULL)
              OR (TO_NUMBER(VOCH_NO) BETWEEN :FROM_NO AND :TO_NO and :FROM_NO IS NOT NULL AND :TO_NO IS NOT NULL )
              OR (TO_NUMBER(VOCH_NO)<=:TO_NO and :FROM_NO IS NULL AND :TO_NO IS NOT NULL )
              OR (:FROM_NO IS NULL AND :TO_NO IS NULL ))
                   ORDER BY TO_NUMBER(VOCH_NO);
                   ELSE
                   open temp_JOURHEAD for select VOCH_NO, VOCH_DATE
                   FROM JOURHEAD
                   WHERE COMP_NO=TO_NUMBER(:COMPANY_NO)
                   AND IDENT=:IDENT               
              AND ((VOCH_NO=:FROM_NO and :FROM_NO IS NOT NULL AND :TO_NO IS NULL)
              OR (VOCH_NO BETWEEN :FROM_NO AND :TO_NO and :FROM_NO IS NOT NULL AND :TO_NO IS NOT NULL )
              OR (VOCH_NO<=:TO_NO and :FROM_NO IS NULL AND :TO_NO IS NOT NULL )
              OR (:FROM_NO IS NULL AND :TO_NO IS NULL ))     
                   ORDER BY VOCH_NO;          
                   END IF;
         ELSE
                   v_from_date:=to_DATE(:from_date);
                   v_to_date:=to_DATE(:to_date);                         
              IF V_SERIAL_TYPE =1 THEN
                   open temp_JOURHEAD for select VOCH_NO, VOCH_DATE
                   FROM JOURHEAD
                   WHERE COMP_NO=TO_NUMBER(:COMPANY_NO)
              AND IDENT=:IDENT                         
                   AND ((voch_date between v_from_date and v_to_date and :from_date is not null and :to_date is not null)
                   OR (voch_date <= v_to_date and :from_date is null and :to_date is not null)
                   OR (voch_date = v_from_date and :from_date is not null and :to_date is null)
                   OR (:from_date is null and :to_date is null ))     
                   ORDER BY VOCH_DATE,TO_NUMBER(VOCH_NO);     
              ELSE
                   open temp_JOURHEAD for select VOCH_NO, VOCH_DATE
                   FROM JOURHEAD
                   WHERE COMP_NO=TO_NUMBER(:COMPANY_NO)
                   AND IDENT=:IDENT                         
              AND ((voch_date between v_from_date and v_to_date and :from_date is not null and :to_date is not null)
                   OR (voch_date <= v_to_date and :from_date is null and :to_date is not null)
                   OR (voch_date = v_from_date and :from_date is not null and :to_date is null)
                   OR (:from_date is null and :to_date is null ))     
                   ORDER BY VOCH_DATE,VOCH_NO;          
              END IF;
         END IF;               
         return temp_JOURHEAD;
    end;

Maybe you are looking for

  • Save As Dialog not responding - PDF Printer

    Whenever I try and print to the PDF printer, (If preferences are set to prompt for file name) the "Save As " dialog locks up. The only way to clear this is to stop the Acrotray.exe. process. I have tried changing the printer preferences, but the only

  • How to display profit center name in report?

    Hi all, I use report line item KE5Z. Would it be possible to display the Profit Center Name as a column beside Profit center column? I don't know, please help me. Thanks a lot.

  • How to track changes to longtexts (in tables STXH, STXL) ?

    Hello everybody, I need to track changes made to the long texts in sales orders. Reading change documents tables (CDHDR, CDPOS) does not work for the long texts tables STXH, STXL as no relevant data is written. Only the latest entry is stored in STXH

  • How do you add RAM to a Macbook 2.1

    I have a Macbook 2.1 thats about a 2006 model. It's running MAC OS X 10.5.8 and has 512mb of memory 667 MHz DDR2 SD Ram. I  want to install Mac OS X Snow Leopard 10.6.3 but it says that I require at least 1GB of RAM. Can anyone tell me how to do this

  • SQL in XML out

    hi folks Any one know of any db package that takes sql and puts xml tags around it like the XMLELEMENT in 9i. I am working on 8i db. Cheers Tappies