Query syntax corrections.

How can i  define fdate & tdate as input variables  instead of static data in  this query?
declare @FDate nvarchar(8)='20120201'
declare @TDate nvarchar(8)='20140331'
select OACT.AcctCode,OACT.AcctName,SUM(JDT1.Debit-JDT1.Credit)[Purchase Amount] from JDT1
inner join oact on JDT1.Account=OACT.AcctCode
--where TransType in ('18','19','20','21')
--and JDT1.RefDate between @FDate and @TDate
INNER JOIN (
select OPCH.TransId, OPCH.DocType, OPCH.ObjType FROM OPCH WHERE OPCH.DocDate BETWEEN @FDate and @TDate AND OPCH.DocType='I'
UNION ALL
select OPDN.TransId, OPDN.DocType, OPDN.ObjType FROM OPDN WHERE OPDN.DocDate BETWEEN @FDate and @TDate AND OPDN.DocType='I'
UNION ALL
select ORPD.TransId, ORPD.DocType, ORPD.ObjType FROM ORPD WHERE ORPD.DocDate BETWEEN @FDate and @TDate AND ORPD.DocType='I'
UNION ALL
select ORPC.TransId, ORPC.DocType, ORPC.ObjType FROM ORPC WHERE ORPC.DocDate BETWEEN @FDate and @TDate AND ORPC.DocType='I'
)TRANS ON JDT1.TransId=TRANS.TransId
group by OACT.AcctCode,OACT.AcctName

Nagarajan,
Im forgot to post my entire code in my previous reply.Please have a look in the following  code this report, contains  several sub queries for financial auditing purposes .For every execution i need to change the date range dynamically. Im always execute this query directly in sql.But i want to change this query and let everyone to access  and execute this from within SAP BI.Please help.
declare @FDate nvarchar(8)='20110101'
declare @TDate nvarchar(8)='20110131'
select OACT.AcctCode,OACT.AcctName,SUM(JDT1.Debit-JDT1.Credit)[Purchase Amount] from JDT1
inner join oact on JDT1.Account=OACT.AcctCode
--where TransType in ('18','19','20','21')
--and JDT1.RefDate between @FDate and @TDate
INNER JOIN (
select OPCH.TransId, OPCH.DocType, OPCH.ObjType FROM OPCH WHERE OPCH.DocDate BETWEEN @FDate and @TDate AND OPCH.DocType='I'
UNION ALL
select OPDN.TransId, OPDN.DocType, OPDN.ObjType FROM OPDN WHERE OPDN.DocDate BETWEEN @FDate and @TDate AND OPDN.DocType='I'
UNION ALL
select ORPD.TransId, ORPD.DocType, ORPD.ObjType FROM ORPD WHERE ORPD.DocDate BETWEEN @FDate and @TDate AND ORPD.DocType='I'
UNION ALL
select ORPC.TransId, ORPC.DocType, ORPC.ObjType FROM ORPC WHERE ORPC.DocDate BETWEEN @FDate and @TDate AND ORPC.DocType='I'
)TRANS ON JDT1.TransId=TRANS.TransId
group by OACT.AcctCode,OACT.AcctName
select OACT.AcctCode,OACT.AcctName,SUM(JDT1.Debit-JDT1.Credit)[Sales Amount] from JDT1
inner join oact on JDT1.Account=OACT.AcctCode
--where TransType in ('13','14','15','16')
--and JDT1.RefDate between @FDate and @TDate
INNER JOIN (
select ODLN.TransId, ODLN.DocType, ODLN.ObjType FROM ODLN WHERE ODLN.DocDate BETWEEN @FDate and @TDate AND ODLN.DocType='I'
UNION ALL
select ORDN.TransId, ORDN.DocType, ORDN.ObjType FROM ORDN WHERE ORDN.DocDate BETWEEN @FDate and @TDate AND ORDN.DocType='I'
UNION ALL
select OINV.TransId, OINV.DocType, OINV.ObjType FROM OINV WHERE OINV.DocDate BETWEEN @FDate and @TDate AND OINV.DocType='I'
UNION ALL
select ORIN.TransId, ORIN.DocType, ORIN.ObjType FROM ORIN WHERE ORIN.DocDate BETWEEN @FDate and @TDate AND ORIN.DocType='I'
)TRANS ON JDT1.TransId=TRANS.TransId
group by OACT.AcctCode,OACT.AcctName
select OACT.AcctCode,OACT.AcctName,SUM(JDT1.Debit-JDT1.Credit)[Stock Taking Amount] from JDT1
inner join oact on JDT1.Account=OACT.AcctCode where TransType in ('58')
and JDT1.RefDate between @FDate and @TDate
group by OACT.AcctCode,OACT.AcctName
select OACT.AcctCode,OACT.AcctName,SUM(JDT1.Debit-JDT1.Credit)[SO/SIAmount] from JDT1
inner join oact on JDT1.Account=OACT.AcctCode where TransType in ('59','60')
and JDT1.RefDate between @FDate and @TDate
group by OACT.AcctCode,OACT.AcctName
select OACT.AcctCode,OACT.AcctName,SUM(JDT1.Debit-JDT1.Credit)[Inventory Amount] from JDT1
inner join oact on JDT1.Account=OACT.AcctCode where TransType in ('67')
and JDT1.RefDate between @FDate and @TDate
group by OACT.AcctCode,OACT.AcctName
select OACT.AcctCode,OACT.AcctName,SUM(JDT1.Debit-JDT1.Credit)[ Inventory Revaluation Amount] from JDT1
inner join oact on JDT1.Account=OACT.AcctCode where TransType in ('162')
and JDT1.RefDate between @FDate and @TDate
group by OACT.AcctCode,OACT.AcctName
select OACT.AcctCode,OACT.AcctName,SUM(JDT1.Debit-JDT1.Credit)[ Landed cost Amount] from JDT1
inner join oact on JDT1.Account=OACT.AcctCode where TransType in ('69')
and JDT1.RefDate between @FDate and @TDate
group by OACT.AcctCode,OACT.AcctName

Similar Messages

  • Is this Join Query Syntax Correct???

    Is this syntax correct for this query question?  Would "used Vista cards" reflect the OrderDate Column in the where clause.  The table is from Adventureworks2012.
    How many Sales Orders (Headers) used Vista credit cards in October 2002 
    SELECT C.CardType, COUNT(*)
    FROM Sales.SalesOrderHeader S 
    JOIN Sales.CreditCard
      C
    ON S.CreditCardID=c.CreditCardID
    WHERE C.CardType = 'Vista'
    AND S.OrderDate  between '10/1/2002' and '10/31/2002'
    GROUP BY c.CardType
      

    That is correct, but be careful when writing queries where a datetime column is compared to a period of time.  In this case it looks like the time portions of OrderDate are all set to the beginning of day (00:00:00.000) so your query works as long as
    that assumption is correct.  The better way is to use an upper boundary of the next day (which means you cannot use between).  E.g., 
    select ... where S.OrderDate >= '20021001' and S.OrderDate < '20021101' 
    group by ...
    order by ...;
    If you search for the forum for "Tibor" you should be able to find a link to his website where he goes into much more detail about the tricky usage of the datetime datatype. 

  • Database Toolkit Sub query Syntax and file path expectation question.

    I need some assistance from those of you smarter than I. 
    I have two database files (not two tables in the same database file) one represents information delivered from an external interface, and the other is used by the internal interface associated with the processing half of my application.  Data is received (i.e. fields are populated)  from the external interface to one database file and that data is then copied to another database file where the information will be processed by the internal interface. This is being done because I am worried about  file access issues that might occur if two different interfaces (external & internal) try to access the same file at the same time (without dealing with semaphores). I am not too worried about the sanctity of the data since each record supplied from the external interface should not effect any of the data being used by the internal interface.  So the first question is , am I being to primitive in my thinking assuming that I would run into file access issues if I were to just use two tables in the same database file for the same purpose ?
    My second question is related to my current implementation where I have two separate database files representing the external and internal interface data. Currently when a new set of data is entered into the External Interface Database file, an alert is issued, and another task copies the data from that file into Internal Interface Database, then the data is deleted from the External Interface Database file. My question is related to the syntax that I am using to provide the described functionality. I am currently using a INSERT with a subquery to the External Interface Database file i.e. INSERT INTO InternalDB FROM  ExternalDB.ExternalTable WHERE Order =  '06306049'; .
    My question is when I run this query with both database files in same directory I get an error stating that the ODBC driver can not find the ExternalDB.ExternalTable in the Parent Directory of the subdirectory where the files are actually located. The system DSN is set up correctly for the ExternalDB, and if I move it to the parent directory the query works correctly, my question is why would I have to put the two database files in seperate directories for this to work and is there a way to avoid this ?
    Thanks..
    Brad W

    Thanks for responding Brian -
    The message I get is Error Code -2147467259
    Conn Execute.vi->InsertIntoFrom.vi<ERR>Exception occured in Microsoft OLE DB Provider for ODBC Drivers: [Microsoft][ODBC Microsoft Access Driver] Could not find file 'C:\Project\APDSS\DataBase\ExternalInterface.mdb'. in Conn Execute.vi->InsertIntoFrom.vi
    When my query looks like
    INSERT INTO InternalInterface SELECT Field1, Field2 FROM ExternalInterface.ExternalTable WHERE Id = '065649-101-750';

  • Question about WebLogic query syntax

    Hello,
    I am using WebLogic Server 6.0, which came as part of the WebGain
    Studio SE 4.5 development kit. My question regards the Web Logic query
    syntax, which I have not yet mastered.
    I am trying to create a finder method that takes a single argument
    of type "char" and finds all matching fields of the column "keyword" in
    which the argument is the first letter of keyword. That is, if I were
    only looking for fields beginning with the letter "M", I'd use:
    (like keyword 'M%')
    However, I'm looking for all fields beginning with the first letter
    defined by the first argument. Sadly, this syntax:
    (like keyword '$0%')
    doesn't seem to be working. Any suggestions on the correct syntax?
    If this is not the right forum for this question, could someone
    suggest an appropriate newsgroup?
    Thanks, Dave

    962466 wrote:
    Hi all,
    I have an issue I need help with. I have created a script for an automated partition create on a monthly basis. It creates a monthly partition containing all dates within the respective month. The script is essentially this:
    ALTER TABLE SCHEMA.TABLE
    ADD PARTITION &&1
    VALUES LESS THAN (to_number(to_char(to_date('&&2', 'DD-MON-YY'), 'YYYYMMDD')))
    TABLESPACE LARGE_DATA94 COMPRESS;
    I continually get this error message "ORA-14019: partition bound element must be one of: string, datetime or interval literal, number, or MAXVALUE"
    The variable &&2 is passing in character data for the first of the month (E.G. '01-SEP-12'). &&1 passes character data for the month in MONYY (AUG12) I can run this query:
    select
    (to_number(to_char(to_date('&&2', 'DD-MON-YY'), 'YYYYMMDD')))
    from dual;
    With the output of 20120801. I cannot understand why I am able to run this partition create statement by hardcoding 20120901 but passing it in as a variable I receive the error. Note that I am not having problems with the &&1 variable. If anyone has any ideas please let me know. Thanks!I don't understand why you are taking a string, converting it to a date, then converting the date BACK TO a string ... then trying to convert that string to a number.
    What is the data type of the partitioning key? It appears that it is a NUMBER, but actually represents a DATE. If so, that is a fundamentally flawed design.

  • Is the syntax correct to export tables using shell script

    can you please tell me the syntax to plaxce the exp utility in shelle script.
    Appreciate your help
    Is the syntax correct for export.
    It is throwing errors
    vi test.sh
    echo migrating data...
    echo Exporting ADDRESS_COUNTRY_CODE ...
    exp userid=scott/tiger@orcl file=address_country_code log=exp_address_country_code tables=ADDRESS_COUNTRY_CODE compress=n indexes=n constraints=n grants=n triggers=n statistics=none consistent=y query='where org_grp_i in ( 66 )' > /dev/null
    echo Exporting ASSUMPTION_DETAIL_SUMMARY ...
    exp userid=scott/tiger@orcl file=assumption_detail_summary log=exp_assumption_detail_summary tables=ASSUMPTION_DETAIL_SUMMARY compress=n indexes=n constraints=n grants=n triggers=n statistics=none consistent=y query='where org_grp_i in ( 66 )' > /dev/null

    Just follow the notes and the example in the utilities guide
    http://download-uk.oracle.com/docs/cd/B10501_01/server.920/a96652/ch01.htm#1005843
    exp scott/tiger TABLES=emp QUERY=\"WHERE job=\'SALESMAN\' and sal \<1600\"

  • Ora-01704 string literal too long error  on long query syntax

    I have a query with more than 4000 characters. I can't seem to get ociparse to accept it. The bind variables are not an issue as I am not concatenating any strings to the query syntax. It is just that my query will all the columns and unions etc exceeds 4000 characters. Any way around this short of hiding it in a view ( which I have already done for other long queries ).
    System:
    PHP 4.3.10
    OCI driver
    Oracle 9i Release 2
    Thanks,
    Bryan

    Misread your post, sorry. Oracle limits literal strings to 4,000 chars. According to the documentation it's required that you use bind variables where possible to shorten literal strings below 4,000. You could also try a pl/sql block.
    The error you're getting is being returned by Oracle, not PHP. I've seen it pop up on bugtraq a couple of times for PHP, but the answer is always the same. I'm more of a programmer than a database expert, so forgive me for not having a better answer. You may want to try posting this to one of the more specific oracle forums where someone will probably have a better answer for you.
    http://www.stanford.edu/dept/itss/docs/oracle/9i/server.920/a96525/toc.htm

  • XPATH Database Query Syntax in an Assign

    Trying to get an XPATH Database query to work by assigning the Input variable value in a simple BPEL Process to my query condition. I keep getting invalid XPATH errors. I cannot seem to figure out how get write it out.
    Here is what I have:
    <from expression="orcl:query-database( 'select ename from emp where ename = bpws:getVariableData('inputVariable','payload','/client:ReadDBProcessRequest/client:input')' ,false(),false(),'jdbc:oracle:thin:scott/tiger@localhost:1521:ORCL')"/>
    Here is my error:
    Error(30): [Error ORABPEL-10039]: invalid xpath expression [Description]: in line 30 of "C:\OraBPELPM_1\integration\jdev\jdev\mywork\BPELws\ReadDB\ReadDB.bpel", xpath expression "orcl:query-database( 'select ename from emp where ename = bpws:getVariableData('inputVariable','payload','/client:ReadDBProcessRequest/client:input')' ,false(),false(),'jdbc:oracle:thin:scott/tiger@localhost:1521:ORCL')" specified in <from> is not valid, because XPath query syntax error. Syntax error while parsing xpath expression "orcl:query-database( 'select ename from emp where ename = bpws:getVariableData('inputVariable','payload','/client:ReadDBProcessRequest/client:input')' ,false(),false(),'jdbc:oracle:thin:scott/tiger@localhost:1521:ORCL')", at position "80" the exception is Expected: ). Please verify the xpath query "orcl:query-database( 'select ename from emp where ename = bpws:getVariableData('inputVariable','payload','/client:ReadDBProcessRequest/client:input')' ,false(),false(),'jdbc:oracle:thin:scott/tiger@localhost:1521:ORCL')" which is defined in BPEL process. . [Potential fix]: Please make sure the expression is valid.
    Any help?
    Thanks!!!

    Ok. I have figured out how to place the condition (variable value) inside a concatentated string. So my final result is the actual XPATH Query-Database statement. But the problem is it is being returned as a String. How can I turn that final string into the XPATH expression I need? I suspect another <COPY> block could pull this off but I am not sure how to do it.
    Here is my code:
    <process name="QueryBuild" targetNamespace="http://xmlns.oracle.com/QueryBuild" xmlns="http://schemas.xmlsoap.org/ws/2003/03/business-process/" xmlns:bpws="http://schemas.xmlsoap.org/ws/2003/03/business-process/" xmlns:xp20="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.Xpath20" xmlns:ns1="http://www.w3.org/2001/XMLSchema" xmlns:ldap="http://schemas.oracle.com/xpath/extension/ldap" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:bpelx="http://schemas.oracle.com/bpel/extension" xmlns:client="http://xmlns.oracle.com/QueryBuild" xmlns:ora="http://schemas.oracle.com/xpath/extension" xmlns:orcl="http://www.oracle.com/XSL/Transform/java/oracle.tip.pc.services.functions.ExtFunc">
    <partnerLinks>
    <partnerLink name="client" partnerLinkType="client:QueryBuild" myRole="QueryBuildProvider"/>
    </partnerLinks>
    <variables>
    <variable name="inputVariable" messageType="client:QueryBuildRequestMessage"/>
    <variable name="outputVariable" messageType="client:QueryBuildResponseMessage"/>
    <variable name="QueryText" type="ns1:string"/>
    </variables>
    <sequence name="main">
    <receive name="receiveInput" partnerLink="client" portType="client:QueryBuild" operation="process" variable="inputVariable" createInstance="yes"/><!-- Generate reply to synchronous request -->
    <assign name="Assign_1">
    <copy>
    <from expression="concat(&quot;orcl:query-database('select ename from emp where empno = &quot;, bpws:getVariableData('inputVariable','payload','/client:QueryBuildProcessRequest/client:input'), &quot;,false(),false(),'jdbc:oracle:thin:scott/tiger@localhost:1521:ORCL)'&quot;)"/>
    <to variable="QueryText"/>
    </copy>
    <copy>
    <from variable="QueryText"/>
    <to variable="outputVariable" part="payload" query="/client:QueryBuildProcessResponse/client:result"/>
    </copy>
    </assign>
    <reply name="replyOutput" partnerLink="client" portType="client:QueryBuild" operation="process" variable="outputVariable"/>
    </sequence>
    </process>

  • Simple database query syntax question

    Hi experts,
    I am just stucked here...
    e.g.
    String Name = "John Doe";
    String query =
    "select * from table where NameCol = "+Name;
    ResultSet rs =stmt.executeQuery(query);
    while (rs.next()) {
    System.out.println(rs.getString(NameCol);
    The complier complains that "Syntax error !" at
    " NameCol = ....." ?!?!
    Why this is happening ? What is the correct syntax ?
    Thanks in advance !
    Philip

    finally figured it out. thanks...

  • Query Syntax for Dynamic Navigation Menu

    I'm trying to build a Navigation menu from a query using the following syntax:
    select LEVEL,
           LABEL,
           LINK,
           'NO' as IS_CURRENT,
           null as IMAGE
      from V$RC_MENUS
    where CLUB = :APP_CLUB
    start with PID is null
    connect by prior ID = PID
    order by SEQUENCE, LABEL
    The query itself works fine for all values of APP_CLUB but it only generates the menu entries for some values of APP_CLUB, but not others. The SEQUENCE value determines the order of the entries within each level. Is this the correct syntax for a query-based navigation menu? How does it determine which sub-levels belong to a parent?  Does the ordering of the resultset have any impact on how the menu is generated?

    Jritschel-Oracle wrote:
    I'm trying to build a Navigation menu from a query using the following syntax:
    select LEVEL, 
          LABEL, 
          LINK, 
          'NO' as IS_CURRENT, 
          null as IMAGE 
      from V$RC_MENUS 
    where CLUB = :APP_CLUB 
    start with PID is null 
    connect by prior ID = PID 
    order by SEQUENCE, LABEL 
    The query itself works fine for all values of APP_CLUB but it only generates the menu entries for some values of APP_CLUB, but not others. The SEQUENCE value determines the order of the entries within each level. Is this the correct syntax for a query-based navigation menu? How does it determine which sub-levels belong to a parent?  Does the ordering of the resultset have any impact on how the menu is generated?
    As stated in the documentation:
    ...do not specify either ORDER BY or GROUP BY, because they will destroy the hierarchical order of the CONNECT BY results. If you want to order rows of siblings of the same parent, then use the ORDER SIBLINGS BY clause.
    Try:
    select LEVEL,
          LABEL,
          LINK,
          'NO' as IS_CURRENT,
          null as IMAGE
      from V$RC_MENUS
    where CLUB = :APP_CLUB
    start with PID is null
    connect by prior ID = PID
    order siblings by SEQUENCE, LABEL

  • Select query is correct or not

    hai to all iam software trainee in core java
    i have doubt on select query please give gudiance
    select * from StudentDetails where Admnno=' "
    i connected my application with ms-access db using jdbc-odbc
    my question is i want retrieve data from ms-access so i use this select query is it correct or not
    because
    select * from StudentDetails this query working but it's working with where condition please help and try to understand my question
    In advanced
    thanks

    ("select * from StudentDetails where Admnno ='' "+Admnno+"'")Is Admnno a numeric or character field? Either way, that syntax looks wonky.
    For a numeric field:("select * from StudentDetails where Admnno = " + Admnno)and for a character field("select * from StudentDetails where Admnno = '" + Admnno + "'")db
    Use code tags to post codes -- [code]CODE[/code] will display asCODEOr click the CODE button and paste your code between the tags that appear.

  • MySQL query syntax

    I'm trying to get a date field to display in the format 01
    Jan 2007 rather than mySQLs default format.
    My original query looks like :
    <?php
    mysql_select_db($database_connOriental, $connOriental);
    $query_rsOrders = "SELECT * FROM Orders INNER JOIN Customers
    WHERE OrderCustomerID = CustomerID ORDER BY OrderID ASC";
    $rsOrders = mysql_query($query_rsOrders, $connOriental) or
    die(mysql_error());
    $row_rsOrders = mysql_fetch_assoc($rsOrders);
    $totalRows_rsOrders =
    mysql_num_rows($rsOrders);
    ?>
    Which works fine, but with the mySQL default format.
    So I added a separate query to convert it to the reformatted
    version :
    <?php
    mysql_select_db($database_connOriental, $connOriental);
    $query_DateFormat = "SELECT date_format(OrderDate, '%D %b
    %Y') as formatted_date FROM Orders INNER JOIN Customers WHERE
    OrderCustomerID = CustomerID";
    $DateFormat = mysql_query($query_DateFormat, $connOriental)
    or die(mysql_error());
    $row_DateFormat = mysql_fetch_assoc($DateFormat);
    $totalRows_DateFormat = mysql_num_rows($DateFormat);
    ?>
    It works fine in that the format is correct, but it's only
    showing the first date in the recordset for each order, rather than
    the correct date for each order.
    I'm not sure why, as other than the date format the query is
    the same.
    My best guess is that I need to reference the OrderID, but
    I'm not sure of the correct syntax....?

    In the end it just needed the
    , date_format(OrderDate, '%d %M %Y') as formatted_date
    added into the original query and that's working fine.
    I have another page however, where a customer logs in to an
    account section, which does it slightly differently, ie they click
    on 'View orders' link, which displays their orders based in
    matching the customer ID of the customer currently logged in.
    So I thought it would be a simple case of adding in the
    date_format bit above, but that's giving an error.
    It uses SPRINTF which I'm not quite sure is, and the whole
    query looks like :
    [code]<php
    $colname_rsOrders = "1";
    if (isset($_SESSION['CustomerID'])) {
    $colname_rsOrders = (get_magic_quotes_gpc()) ?
    $_SESSION['CustomerID'] : addslashes($_SESSION['CustomerID']);
    mysql_select_db($database_connOriental, $connOriental);
    $query_rsOrders = sprintf("SELECT * FROM Orders WHERE
    OrderCustomerID = %s ORDER BY OrderID Asc", $colname_rsOrders);
    $rsOrders = mysql_query($query_rsOrders, $connOriental) or
    die(mysql_error());
    $row_rsOrders = mysql_fetch_assoc($rsOrders);
    $totalRows_rsOrders = mysql_num_rows($rsOrders);
    ?>[/code]
    So i changed it to :
    [code]<php
    $colname_rsOrders = "1";
    if (isset($_SESSION['CustomerID'])) {
    $colname_rsOrders = (get_magic_quotes_gpc()) ?
    $_SESSION['CustomerID'] : addslashes($_SESSION['CustomerID']);
    mysql_select_db($database_connOriental, $connOriental);
    $query_rsOrders = sprintf("SELECT *, date_format(OrderDate,
    '%d %M %Y') as formatted_date FROM Orders WHERE OrderCustomerID =
    %s ORDER BY OrderID Asc", $colname_rsOrders);
    $rsOrders = mysql_query($query_rsOrders, $connOriental) or
    die(mysql_error());
    $row_rsOrders = mysql_fetch_assoc($rsOrders);
    $totalRows_rsOrders = mysql_num_rows($rsOrders);
    ?>[/code]
    As per the other one, and that's giving the error :
    Warning: sprintf() [function.sprintf]: Too few arguments in
    /home/qdiizyfg/public_html/orderhistory.php on line 52
    Query was empty
    It's never straightforward!

  • Select-options in SELECT query - syntax error

    Hi all,
      I get the error below when I try to use the select options in a SELECT query . Please help me.
    "The IN operator with "SO_AWART" is followed neither by an internal
    table nor by a value list."
    The code i have used(Logical database  PNP is used):
    TABLES: pernr,
            catsdb.
    INCLUDE ztime_cwtr_top.    " global Data
    INCLUDE ztime_cwtr_f01.
    SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME.
    SELECT-OPTIONS SO_AWART FOR CATSDB-AWART.
    PARAMETERS P_THRES TYPE I.
    SELECTION-SCREEN END OF BLOCK B1.
    Get data from CATSDB table. Workdates within the date interval are considered.
      SELECT pernr workdate awart catsquantity beguz enduz status
      FROM catsdb
      INTO TABLE it_catsdb
      WHERE pernr  = pernr-pernr    AND
           workdate GE pn-begda     AND
           workdate LE pn-endda     AND
           status   IN ('20', '30') AND
           awart    IN  so_awart .
          awart    IN ('1100', '1137', '1138', '1139', '1140',
                      '1147', '1148', '1149', '1157', '2003' ).
    when I give the values directly i do not get any syntax error, but when I use select options in the where condition I get the syntax error.
    I have tried different options like using only the select-options in the where condition.
    Thanks in advance.....
    Madhu

    Solved.
    Code with syntax error:
    include z...top .
    include z...fo1.
    select-options: xxxxxxx
    Code  with no syntax error:
    select-options: xxxxxxx
    include z...top .
    include z...fo1.
    Thanks for all your help,
    Madhu

  • ABAP in BW Tranformations Syntax Correction

    Hi,
    As i am beginner in ABAP please correct the Start/End routine which i have written in Transformations for the below requirement
    DSO1------->DSO2
    While load data to DSO1-->DSO2 in need a look that refer active table of DSO3 and perform if condition to fill value to a field in DSO2
    DSO1 (SOURCE FIELDS)
    Field X
    Field Y (X,Y are Key fields)
    Field Z
    Field W
    DSO2 (Result Field)
    Field P (The field which i want to update with Value by routine)
    DSO3 (Look up)
    Field A
    Field B (A,B are Key fields) (A=X,B=Y)
    Field C
    Requirement: While loading data from DSO1-->DSO2...We should read active table of DSO3 and pass it to Internal Table (A,B,C)with a key (A=X,B=Y) and in the end routine First check wether
    if Field C is not initial...then Result Field P should be updated with E
    ELSE CHECK SOURCE FIELD Field Z = 1..then Result Field P should be updated with F
    ELSE CHECK SOURCE FIELD Field W = T..then Result Field P should be updated with G
    else if all the above conditions are not met .then Result Field P should be updated with H
    Syntax i wrote (Not working correctly)
    Declaration-Global
    TYPES: BEGIN OF ty_sou,
    W TYPE /bi0/W,
    Z TYPE /bi0/Z, END OF ty_sou,
    BEGIN OF ZDSO_3,
    A TYPE /bi0/oiA,
    B TYPE /bi0/oiB,
    C TYPE /bi0/oiC, END OF ZDSO_3.
    DATA : ty_ZDSO_3_wa TYPE ZDSO_3,
    ty_ZDSO_3_tab TYPE TABLE OF ZDSO_3,
    ty_ZDSO_3_tab_temp TYPE TABLE OF ZDSO_3.
    DATA : ty_sou_tab TYPE TABLE OF ty_sou,
    ty_sou_wa TYPE ty_sou.
    Routine Start
    LOOP AT SOURCE_PACKAGE ASSIGNING .
    IF -XIS NOT INITIAL AND -Y IS NOT INITIAL.
    ty_ZDSO_3_wa-A = -X.
    ty_ZDSO_3_wa-B = -Y.
    ty_sou_wa-Z = -Z.
    ty_sou_wa-W = -W.
    COLLECT ty_sou_wa INTO ty_sou_tab.
    COLLECT ty_ZDSO_3_wa INTO ty_ZDSO_3_tab.
    ENDIF.
    ENDLOOP.
    *Select Statement to select values from ZDSO_3 Active Table
    SELECT A B C FROM /bic/aZDSO_300 INTO TABLE ty_ZDSO_3_tab_temp FOR ALL ENTRIES IN ty_ZDSO_3_tab WHERE
    A = ty_ZDSO_3_tab-A.
    SORT ty_ZDSO_3_tab BY A B.
    But this is not working...i tried to debug but as i am a learner in ABAP i am not familiar.... Please advise me where or what is wrong with my code and greatful if you can make changes

    Routine End
    LOOP AT RESULT_PACKAGE ASSIGNING<RESULT-FIELD>-/ .
    Read table ty_ZDSO_3_tab_temp into ty_ZDSO_3_wa
    with key A = -P B = -Q binary search.
    If sy-subrc = 0.
    IF ty_ZDSO_3_wa-C IS NOT INITIAL.
    <RESULT-FIELD>-/BIC/P = 'E'.
    ELSEIF ty_sou_wa-Z = 1.
    <RESULT-FIELD>-/-/BIC/P = 'Fu2019.
    ELSEIF ty_sou_wa-W= 'T'.
    <RESULT-FIELD>-/-/BIC/P = 'G'.
    ELSE.
    <RESULT-FIELD>-/-/BIC/P = 'H'.
    ENDIF.
    Endif.

  • ABAP Routine in Transformations Syntax Correction

    Hi,
    As i am beginner in ABAP please correct the Start/End routine which i have written in Transformations for the below requirement
    DSO1------->DSO2
    While load data to DSO1-->DSO2 in need a look that refer active table of DSO3 and perform if condition to fill value to a field in DSO2
    DSO1 (SOURCE FIELDS)
    Field X
    Field Y (X,Y are Key fields)
    Field Z
    Field W
    DSO2 (Result Field)
    Field P (The field which i want to update with Value by routine)
    DSO3 (Look up)
    Field A
    Field B (A,B are Key fields) (A=X,B=Y)
    Field C
    Requirement: While loading data from DSO1-->DSO2...We should read active table of DSO3 and pass it to Internal Table (A,B,C)with a key (A=X,B=Y) and in the end routine First check wether
    if Field C is not initial...then Result Field P should be updated with E
    ELSE CHECK SOURCE FIELD Field Z = 1..then Result Field P should be updated with F
    ELSE CHECK SOURCE FIELD Field W = T..then Result Field P should be updated with G
    else if all the above conditions are not met .then Result Field P should be updated with H 
    Syntax i wrote (Not working correctly) 
         Declaration-Global
    TYPES: BEGIN OF ty_sou,
                   W TYPE /bi0/W,
                   Z TYPE /bi0/Z, END OF ty_sou,
    BEGIN OF ZDSO_3,
    A TYPE /bi0/oiA,
    B TYPE /bi0/oiB,
    C TYPE /bi0/oiC, END OF ZDSO_3. 
    DATA : ty_ZDSO_3_wa TYPE ZDSO_3,
    ty_ZDSO_3_tab TYPE TABLE OF ZDSO_3,
    ty_ZDSO_3_tab_temp TYPE TABLE OF ZDSO_3. 
    DATA : ty_sou_tab TYPE TABLE OF ty_sou,
                 ty_sou_wa TYPE ty_sou. 
    Routine Start
    LOOP AT SOURCE_PACKAGE ASSIGNING .
    IF -XIS NOT INITIAL AND -Y IS NOT INITIAL.
         ty_ZDSO_3_wa-A = -X.
         ty_ZDSO_3_wa-B = -Y.
      ty_sou_wa-Z = -Z.
      ty_sou_wa-W = -W. 
    COLLECT ty_sou_wa INTO ty_sou_tab.
    COLLECT ty_ZDSO_3_wa INTO ty_ZDSO_3_tab.
    ENDIF.
    ENDLOOP. 
    *Select Statement to select values from ZDSO_3 Active Table 
    SELECT A B C FROM /bic/aZDSO_300 INTO TABLE ty_ZDSO_3_tab_temp FOR ALL ENTRIES IN ty_ZDSO_3_tab WHERE
    A = ty_ZDSO_3_tab-A. 
    SORT ty_ZDSO_3_tab BY A B. 
    Routine End
    But this is not working...i tried to debug but as i am a learner in ABAP i am not familiar.... Please advise me where or what is wrong with my code and greatful if you can make changes
    Edited by: SAP7593 on Jan 21, 2010 7:56 AM
    Edited by: SAP7593 on Jan 21, 2010 7:56 AM

    Routine End
    LOOP AT RESULT_PACKAGE ASSIGNING<RESULT-FIELD>-/ . 
    Read table ty_ZDSO_3_tab_temp into ty_ZDSO_3_wa
    with key A = -P B = -Q binary search. 
    If sy-subrc = 0. 
    IF ty_ZDSO_3_wa-C IS NOT INITIAL.
    <RESULT-FIELD>-/BIC/P = 'E'.
    ELSEIF ty_sou_wa-Z = 1.
    <RESULT-FIELD>-/-/BIC/P = 'Fu2019.
    ELSEIF ty_sou_wa-W= 'T'.
    <RESULT-FIELD>-/-/BIC/P = 'G'.
    ELSE. 
    <RESULT-FIELD>-/-/BIC/P = 'H'.
    ENDIF.
    Endif.
    ENDLOOP.

  • 11g SQL query syntax/results differ from 10g

    Hello,
    A bit of an odd situation.  We have a report in 10g that is working as expected and when we run the same report in 11g we slightly different results.  The same physical tables and columns are being used between each report and the number of records (17) returned to OBI are the same.  Both queries are pulling from the same database with the same user id.  As there are differences in how 10g runs queries vs 11g, are there any odd behaviors that I should keep an eye out for in how 11g assembles the data that's returned from the db prior to presenting it on the Analysis?  
    10g Results (correct):
    Region...............Actuals (Prior Qtr).....Up...........Plan Amount....................% of Plan
    AP...........................10,489..............8,965..............................................................
    Americas................114,208...........110,779..................6...........................1969411% 
    EMEA.....................26,799..............23,976..............................................................
    UNASSIGNED....................................................149,957...........................0%
    Grand Total.............151,496...........143,721..........149,962.........................96%
    11g Results (incorrect):
    Region...............Actuals (Prior Qtr).....Up...........Plan Amount....................% of Plan
    AP...........................10,180..............8,965............................................................
    Americas.................90,878...........110,779............................................................ 
    EMEA.....................24,978.............23,976............................................................
    UNASSIGNED....................................................149,957...........................0%
    Grand Total.............126,037..........143,721..........149,957.........................96%
    Thank you!
    Mike
    -------------------- 10g query--------------------------
    -------------------- Sending query to database named EBS Rapid Data Store (id: <<5087545>>):
    WITH
    SAWITH0 AS (select T28761.PERIOD_NAME as c2,
         T28761.PERIOD_START_DATE as c3,
         T28761.QUARTER_RANK as c4,
         ROW_NUMBER() OVER (PARTITION BY T28761.QUARTER_RANK ORDER BY T28761.QUARTER_RANK DESC) as c5
    from
         XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */ ),
    SAWITH1 AS (select Case when case SAWITH0.c5 when 1 then SAWITH0.c3 else NULL end  is not null then Rank() OVER ( ORDER BY case SAWITH0.c5 when 1 then SAWITH0.c3 else NULL end  ASC NULLS LAST ) end as c1,
         SAWITH0.c2 as c2,
         SAWITH0.c4 as c3
    from
         SAWITH0),
    SAWITH2 AS (select min(SAWITH1.c1) over (partition by SAWITH1.c3)  as c1,
         SAWITH1.c2 as c2
    from
         SAWITH1),
    SAWITH3 AS (select distinct SAWITH2.c1 + 1 as c1,
         SAWITH2.c2 as c2
    from
         SAWITH2),
    SAWITH4 AS (select T28761.QUARTER_RANK as c2,
         T28761.QUARTER_YEAR_NAME as c3,
         T28761.PERIOD_START_DATE as c4,
         ROW_NUMBER() OVER (PARTITION BY T28761.QUARTER_RANK ORDER BY T28761.QUARTER_RANK DESC) as c5
    from
         XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */ ),
    SAWITH5 AS (select Case when case SAWITH4.c5 when 1 then SAWITH4.c4 else NULL end  is not null then Rank() OVER ( ORDER BY case SAWITH4.c5 when 1 then SAWITH4.c4 else NULL end  ASC NULLS LAST ) end as c1,
         SAWITH4.c2 as c2,
         SAWITH4.c3 as c3
    from
         SAWITH4),
    SAWITH6 AS (select distinct min(SAWITH5.c1) over (partition by SAWITH5.c2)  as c1,
         SAWITH5.c2 as c2,
         SAWITH5.c3 as c3
    from
         SAWITH5),
    SAWITH7 AS (select D1.c1 as c1,
         D1.c2 as c2,
         D1.c3 as c3,
         D1.c4 as c4,
         D1.c5 as c5,
         D1.c6 as c6
    from
         (select sum(case  when T37838.POL_VERSION_FLAG = 'C' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 then nvl(T37838.AMOUNT , 0) when T37838.PERIOD_NAME <> 'March-13' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 and T37838.POL_VERSION_FLAG is null then nvl(T37838.AMOUNT , 0) else 0 end ) as c1,
                   SAWITH6.c3 as c2,
                   T41894.ICN_GROUP as c3,
                   SAWITH6.c2 as c4,
                   T41894.ICN_GROUP_CODE as c5,
                   T30728.PARENT_REGION as c6,
                   ROW_NUMBER() OVER (PARTITION BY T30728.PARENT_REGION, T41894.ICN_GROUP_CODE, SAWITH6.c2 ORDER BY T30728.PARENT_REGION ASC, T41894.ICN_GROUP_CODE ASC, SAWITH6.c2 ASC) as c7
              from
                   SAWITH3 left outer join (
                                  XXFI.XXFI_REVFCST_POL_REPORTING_V T37838 /* Fact_POL_Snapshot */  left outer join
                                  XXFI.XXFI_GEO_REGION_ACCUM T30728 /* Dim_Regions */  On T30728.COUNTRY_CODE = T37838.SHIP_TO_COUNTRY_CODE2) left outer join
                             XXFI.XXFI_ICN_OWNERS_V T41894 /* Dim_ICN_Override */  On T37838.OVERRIDE_ICN = T41894.ICN_CODE) On SAWITH3.c2 = T37838.PERIOD_NAME,
                   SAWITH6
              where  ( SAWITH6.c1 = SAWITH3.c1 and SAWITH6.c3 = '2010-Q2' and (T37838.PROSPECT_NUMBER is null or T37838.PROSPECT_NUMBER not like '%Budget%') )
              group by T30728.PARENT_REGION, T41894.ICN_GROUP_CODE, T41894.ICN_GROUP, SAWITH6.c2, SAWITH6.c3
         ) D1
    where  ( D1.c7 = 1 ) ),
    SAWITH8 AS (select sum(case  when T37838.POL_VERSION_FLAG = 'C' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 then nvl(T37838.AMOUNT , 0) when T37838.PERIOD_NAME <> 'March-13' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 and T37838.POL_VERSION_FLAG is null then nvl(T37838.AMOUNT , 0) else 0 end ) as c1,
         sum(case  when T37838.POL_VERSION_FLAG = 'C' and T37838.FORECAST_PROBABILITY_PERCENT >= 50 then nvl(T37838.AMOUNT , 0) when T37838.PERIOD_NAME <> 'March-13' and T37838.FORECAST_PROBABILITY_PERCENT >= 50 and T37838.POL_VERSION_FLAG is null then nvl(T37838.AMOUNT , 0) else 0 end ) as c2,
         T30728.PARENT_REGION as c3,
         T28761.QUARTER_YEAR_NAME as c6,
         T41894.ICN_GROUP as c7,
         T28761.QUARTER_RANK as c8,
         T41894.ICN_GROUP_CODE as c9
    from
                        XXFI.XXFI_REVFCST_POL_REPORTING_V T37838 /* Fact_POL_Snapshot */  left outer join
                        XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */  On T28761.PERIOD_NAME = T37838.PERIOD_NAME) left outer join
                   XXFI.XXFI_GEO_REGION_ACCUM T30728 /* Dim_Regions */  On T30728.COUNTRY_CODE = T37838.SHIP_TO_COUNTRY_CODE2) left outer join
              XXFI.XXFI_ICN_OWNERS_V T41894 /* Dim_ICN_Override */  On T37838.OVERRIDE_ICN = T41894.ICN_CODE
    where  ( T28761.QUARTER_YEAR_NAME = '2010-Q2' and (T37838.PROSPECT_NUMBER is null or T37838.PROSPECT_NUMBER not like '%Budget%') )
    group by T28761.QUARTER_YEAR_NAME, T28761.QUARTER_RANK, T30728.PARENT_REGION, T41894.ICN_GROUP_CODE, T41894.ICN_GROUP),
    SAWITH9 AS (select D1.c1 as c1,
         D1.c2 as c2,
         D1.c3 as c3,
         D1.c4 as c4,
         D1.c5 as c5,
         D1.c6 as c6,
         D1.c7 as c7,
         D1.c8 as c8,
         D1.c9 as c9
    from
         (select sum(SAWITH8.c1) over (partition by SAWITH8.c3)  as c1,
                   sum(SAWITH8.c2) over (partition by SAWITH8.c3)  as c2,
                   SAWITH8.c3 as c3,
                   sum(SAWITH8.c1) over (partition by SAWITH8.c8, SAWITH8.c9, SAWITH8.c3)  as c4,
                   sum(SAWITH8.c2) over (partition by SAWITH8.c8, SAWITH8.c9, SAWITH8.c3)  as c5,
                   SAWITH8.c6 as c6,
                   SAWITH8.c7 as c7,
                   SAWITH8.c8 as c8,
                   SAWITH8.c9 as c9,
                   ROW_NUMBER() OVER (PARTITION BY SAWITH8.c3, SAWITH8.c8, SAWITH8.c9 ORDER BY SAWITH8.c3 ASC, SAWITH8.c8 ASC, SAWITH8.c9 ASC) as c10
              from
                   SAWITH8
         ) D1
    where  ( D1.c10 = 1 ) ),
    SAWITH10 AS (select sum(T34877.AMOUNT) as c1,
         T28761.QUARTER_YEAR_NAME as c3,
         T30728.PARENT_REGION as c4,
         T41894.ICN_GROUP as c5,
         T28761.QUARTER_RANK as c6,
         T41894.ICN_GROUP_CODE as c7
    from
                        XXFI.XXFI_REVENUE_BUDGET_ACCUM T34877 /* Fact_Revenue_Budgets */  left outer join
                        XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */  On T28761.PERIOD_NAME = T34877.PERIOD_NAME) left outer join
                   XXFI.XXFI_GEO_REGION_ACCUM T30728 /* Dim_Regions */  On T30728.COUNTRY_CODE = T34877.SHIP_TO_COUNTRY_CODE2) left outer join
              XXFI.XXFI_ICN_OWNERS_V T41894 /* Dim_ICN_Override */  On T34877.OVERRIDE_ICN = T41894.ICN_CODE
    where  ( T28761.QUARTER_YEAR_NAME = '2010-Q2' )
    group by T28761.QUARTER_YEAR_NAME, T28761.QUARTER_RANK, T30728.PARENT_REGION, T41894.ICN_GROUP_CODE, T41894.ICN_GROUP),
    SAWITH11 AS (select D1.c1 as c1,
         D1.c2 as c2,
         D1.c3 as c3,
         D1.c4 as c4,
         D1.c5 as c5,
         D1.c6 as c6,
         D1.c7 as c7
    from
         (select sum(SAWITH10.c1) over (partition by SAWITH10.c4)  as c1,
                   sum(SAWITH10.c1) over (partition by SAWITH10.c6, SAWITH10.c7, SAWITH10.c4)  as c2,
                   SAWITH10.c3 as c3,
                   SAWITH10.c4 as c4,
                   SAWITH10.c5 as c5,
                   SAWITH10.c6 as c6,
                   SAWITH10.c7 as c7,
                   ROW_NUMBER() OVER (PARTITION BY SAWITH10.c4, SAWITH10.c6, SAWITH10.c7 ORDER BY SAWITH10.c4 ASC, SAWITH10.c6 ASC, SAWITH10.c7 ASC) as c8
              from
                   SAWITH10
         ) D1
    where  ( D1.c8 = 1 ) ),
    SAWITH12 AS (select T28761.PERIOD_NAME as c2,
         T28761.PERIOD_START_DATE as c3,
         T28761.QUARTER_RANK as c4,
         ROW_NUMBER() OVER (PARTITION BY T28761.QUARTER_RANK ORDER BY T28761.QUARTER_RANK DESC) as c5
    from
         XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */ ),
    SAWITH13 AS (select Case when case SAWITH12.c5 when 1 then SAWITH12.c3 else NULL end  is not null then Rank() OVER ( ORDER BY case SAWITH12.c5 when 1 then SAWITH12.c3 else NULL end  ASC NULLS LAST ) end as c1,
         SAWITH12.c2 as c2,
         SAWITH12.c4 as c3
    from
         SAWITH12),
    SAWITH14 AS (select min(SAWITH13.c1) over (partition by SAWITH13.c3)  as c1,
         SAWITH13.c2 as c2
    from
         SAWITH13),
    SAWITH15 AS (select distinct SAWITH14.c1 + 1 as c1,
         SAWITH14.c2 as c2
    from
         SAWITH14),
    SAWITH16 AS (select T28761.QUARTER_YEAR_NAME as c2,
         T28761.PERIOD_START_DATE as c3,
         T28761.QUARTER_RANK as c4,
         ROW_NUMBER() OVER (PARTITION BY T28761.QUARTER_RANK ORDER BY T28761.QUARTER_RANK DESC) as c5
    from
         XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */ ),
    SAWITH17 AS (select Case when case SAWITH16.c5 when 1 then SAWITH16.c3 else NULL end  is not null then Rank() OVER ( ORDER BY case SAWITH16.c5 when 1 then SAWITH16.c3 else NULL end  ASC NULLS LAST ) end as c1,
         SAWITH16.c2 as c2,
         SAWITH16.c4 as c3
    from
         SAWITH16),
    SAWITH18 AS (select distinct min(SAWITH17.c1) over (partition by SAWITH17.c3)  as c1,
         SAWITH17.c2 as c2
    from
         SAWITH17),
    SAWITH19 AS (select sum(case  when T37838.POL_VERSION_FLAG = 'C' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 then nvl(T37838.AMOUNT , 0) when T37838.PERIOD_NAME <> 'March-13' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 and T37838.POL_VERSION_FLAG is null then nvl(T37838.AMOUNT , 0) else 0 end ) as c1,
         T30728.PARENT_REGION as c2
    from
         SAWITH15 left outer join (
                   XXFI.XXFI_REVFCST_POL_REPORTING_V T37838 /* Fact_POL_Snapshot */  left outer join
                   XXFI.XXFI_GEO_REGION_ACCUM T30728 /* Dim_Regions */  On T30728.COUNTRY_CODE = T37838.SHIP_TO_COUNTRY_CODE2) On SAWITH15.c2 = T37838.PERIOD_NAME,
         SAWITH18
    where  ( SAWITH18.c1 = SAWITH15.c1 and SAWITH18.c2 = '2010-Q2' and (T37838.PROSPECT_NUMBER is null or T37838.PROSPECT_NUMBER not like '%Budget%') )
    group by T30728.PARENT_REGION),
    SAWITH20 AS (select T28761.PERIOD_NAME as c2,
         T28761.PERIOD_START_DATE as c3,
         T28761.QUARTER_RANK as c4,
         ROW_NUMBER() OVER (PARTITION BY T28761.QUARTER_RANK ORDER BY T28761.QUARTER_RANK DESC) as c5
    from
         XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */ ),
    SAWITH21 AS (select Case when case SAWITH20.c5 when 1 then SAWITH20.c3 else NULL end  is not null then Rank() OVER ( ORDER BY case SAWITH20.c5 when 1 then SAWITH20.c3 else NULL end  ASC NULLS LAST ) end as c1,
         SAWITH20.c2 as c2,
         SAWITH20.c4 as c3
    from
         SAWITH20),
    SAWITH22 AS (select min(SAWITH21.c1) over (partition by SAWITH21.c3)  as c1,
         SAWITH21.c2 as c2
    from
         SAWITH21),
    SAWITH23 AS (select distinct SAWITH22.c1 + 1 as c1,
         SAWITH22.c2 as c2
    from
         SAWITH22),
    SAWITH24 AS (select T28761.QUARTER_YEAR_NAME as c2,
         T28761.PERIOD_START_DATE as c3,
         T28761.QUARTER_RANK as c4,
         ROW_NUMBER() OVER (PARTITION BY T28761.QUARTER_RANK ORDER BY T28761.QUARTER_RANK DESC) as c5
    from
         XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */ ),
    SAWITH25 AS (select Case when case SAWITH24.c5 when 1 then SAWITH24.c3 else NULL end  is not null then Rank() OVER ( ORDER BY case SAWITH24.c5 when 1 then SAWITH24.c3 else NULL end  ASC NULLS LAST ) end as c1,
         SAWITH24.c2 as c2,
         SAWITH24.c4 as c3
    from
         SAWITH24),
    SAWITH26 AS (select distinct min(SAWITH25.c1) over (partition by SAWITH25.c3)  as c1,
         SAWITH25.c2 as c2
    from
         SAWITH25),
    SAWITH27 AS (select sum(case  when T37838.POL_VERSION_FLAG = 'C' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 then nvl(T37838.AMOUNT , 0) when T37838.PERIOD_NAME <> 'March-13' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 and T37838.POL_VERSION_FLAG is null then nvl(T37838.AMOUNT , 0) else 0 end ) as c1
    from
         SAWITH23 left outer join XXFI.XXFI_REVFCST_POL_REPORTING_V T37838 /* Fact_POL_Snapshot */  On SAWITH23.c2 = T37838.PERIOD_NAME,
         SAWITH26
    where  ( SAWITH26.c1 = SAWITH23.c1 and SAWITH26.c2 = '2010-Q2' and (T37838.PROSPECT_NUMBER is null or T37838.PROSPECT_NUMBER not like '%Budget%') ) ),
    SAWITH28 AS (select sum(case  when T37838.POL_VERSION_FLAG = 'C' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 then nvl(T37838.AMOUNT , 0) when T37838.PERIOD_NAME <> 'March-13' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 and T37838.POL_VERSION_FLAG is null then nvl(T37838.AMOUNT , 0) else 0 end ) as c1,
         sum(case  when T37838.POL_VERSION_FLAG = 'C' and T37838.FORECAST_PROBABILITY_PERCENT >= 50 then nvl(T37838.AMOUNT , 0) when T37838.PERIOD_NAME <> 'March-13' and T37838.FORECAST_PROBABILITY_PERCENT >= 50 and T37838.POL_VERSION_FLAG is null then nvl(T37838.AMOUNT , 0) else 0 end ) as c2
    from
              XXFI.XXFI_REVFCST_POL_REPORTING_V T37838 /* Fact_POL_Snapshot */  left outer join
              XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */  On T28761.PERIOD_NAME = T37838.PERIOD_NAME
    where  ( T28761.QUARTER_YEAR_NAME = '2010-Q2' and (T37838.PROSPECT_NUMBER is null or T37838.PROSPECT_NUMBER not like '%Budget%') ) ),
    SAWITH29 AS (select sum(T34877.AMOUNT) as c1
    from
              XXFI.XXFI_REVENUE_BUDGET_ACCUM T34877 /* Fact_Revenue_Budgets */  left outer join
              XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */  On T28761.PERIOD_NAME = T34877.PERIOD_NAME
    where  ( T28761.QUARTER_YEAR_NAME = '2010-Q2' ) )
    select case  when SAWITH7.c2 is not null then SAWITH7.c2 when SAWITH9.c6 is not null then SAWITH9.c6 when SAWITH11.c3 is not null then SAWITH11.c3 end  as c1,
         case  when SAWITH9.c3 is not null then SAWITH9.c3 when SAWITH19.c2 is not null then SAWITH19.c2 when SAWITH7.c6 is not null then SAWITH7.c6 when SAWITH11.c4 is not null then SAWITH11.c4 end  as c2,
         case  when SAWITH7.c3 is not null then SAWITH7.c3 when SAWITH9.c7 is not null then SAWITH9.c7 when SAWITH11.c5 is not null then SAWITH11.c5 end  as c3,
         SAWITH9.c5 / nullif( 1000, 0) as c4,
         SAWITH7.c1 / nullif( 1000, 0) as c5,
         SAWITH11.c2 / nullif( 1000, 0) as c6,
         nvl(SAWITH9.c4 , 0) / nullif( nvl(SAWITH11.c2 , 0), 0) * 100 as c7,
         case  when SAWITH7.c4 is not null then SAWITH7.c4 when SAWITH9.c8 is not null then SAWITH9.c8 when SAWITH11.c6 is not null then SAWITH11.c6 end  as c16,
         case  when SAWITH11.c7 is not null then SAWITH11.c7 when SAWITH9.c9 is not null then SAWITH9.c9 when SAWITH7.c5 is not null then SAWITH7.c5 end  as c17,
         SAWITH27.c1 as c19,
         SAWITH28.c2 as c20,
         SAWITH29.c1 as c21,
         SAWITH28.c1 as c22,
         SAWITH19.c1 as c23,
         SAWITH9.c2 as c24,
         SAWITH11.c1 as c25,
         SAWITH9.c1 as c26
    from
                   SAWITH7 full outer join SAWITH9 On SAWITH7.c5 = SAWITH9.c9 and nvl(SAWITH7.c4 , 88.0) = nvl(SAWITH9.c8 , 88.0) and nvl(SAWITH7.c4 , 99.0) = nvl(SAWITH9.c8 , 99.0) and nvl(SAWITH7.c6 , 'q') = nvl(SAWITH9.c3 , 'q') and nvl(SAWITH7.c6 , 'z') = nvl(SAWITH9.c3 , 'z')) full outer join SAWITH11 On SAWITH11.c7 = case  when SAWITH7.c5 is not null then SAWITH7.c5 when SAWITH9.c9 is not null then SAWITH9.c9 end  and nvl(SAWITH11.c4 , 'q') = nvl(case  when SAWITH7.c6 is not null then SAWITH7.c6 when SAWITH9.c3 is not null then SAWITH9.c3 end  , 'q') and nvl(SAWITH11.c4 , 'z') = nvl(case  when SAWITH7.c6 is not null then SAWITH7.c6 when SAWITH9.c3 is not null then SAWITH9.c3 end  , 'z') and nvl(SAWITH11.c6 , 88.0) = nvl(case  when SAWITH7.c4 is not null then SAWITH7.c4 when SAWITH9.c8 is not null then SAWITH9.c8 end  , 88.0) and nvl(SAWITH11.c6 , 99.0) = nvl(case  when SAWITH7.c4 is not null then SAWITH7.c4 when SAWITH9.c8 is not null then SAWITH9.c8 end  , 99.0)) full outer join SAWITH19 On nvl(SAWITH19.c2 , 'q') = nvl(case  when SAWITH7.c6 is not null then SAWITH7.c6 when SAWITH9.c3 is not null then SAWITH9.c3 when SAWITH11.c4 is not null then SAWITH11.c4 end  , 'q') and nvl(SAWITH19.c2 , 'z') = nvl(case  when SAWITH7.c6 is not null then SAWITH7.c6 when SAWITH9.c3 is not null then SAWITH9.c3 when SAWITH11.c4 is not null then SAWITH11.c4 end  , 'z'),
         SAWITH27,
         SAWITH28,
         SAWITH29
    order by c2
    +++:cfa20000:cfa20015:----2013/08/14 10:31:12
    -------------------- Query Status: Successful Completion
    +++:cfa20000:cfa20015:----2013/08/14 10:31:12
    -------------------- Rows 21, bytes 34272 retrieved from database query id: <<5087545>>
    +++:cfa20000:cfa20015:----2013/08/14 10:31:12
    -------------------- Physical query response time 27 (seconds), id <<5087545>>
    +++:cfa20000:cfa20015:----2013/08/14 10:31:12
    -------------------- Physical Query Summary Stats: Number of physical queries 1, Cumulative time 27, DB-connect time 0 (seconds)
    +++:cfa20000:cfa20015:----2013/08/14 10:31:12
    -------------------- Rows returned to Client 17
    ---------------------------------------------  11g Query ----------------------------------------------------------
    Sending query to database named EBS Rapid Data Store (id: <<2779207>>), connection pool named EBS XXFI Connection Pool, logical request hash 1334563, physical request hash 292e1532: [[
    WITH
    OBICOMMON0 AS (select T28761.PERIOD_NAME as c2,
         T28761.PERIOD_START_DATE as c3,
         T28761.QUARTER_RANK as c4,
         ROW_NUMBER() OVER (PARTITION BY T28761.QUARTER_RANK ORDER BY T28761.QUARTER_RANK DESC) as c5,
         T28761.QUARTER_YEAR_NAME as c6
    from
         XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */ ),
    SAWITH0 AS (select Case when case D1.c5 when 1 then D1.c3 else NULL end  is not null then Rank() OVER ( ORDER BY case D1.c5 when 1 then D1.c3 else NULL end  ASC NULLS LAST ) end as c1,
         D1.c2 as c2,
         D1.c4 as c3
    from
         OBICOMMON0 D1),
    SAWITH1 AS (select min(D1.c1) over (partition by D1.c3)  as c1,
         D1.c2 as c2
    from
         SAWITH0 D1),
    SAWITH2 AS (select distinct D1.c1 + 1 as c1,
         D1.c2 as c2
    from
         SAWITH1 D1),
    SAWITH3 AS (select Case when case D1.c5 when 1 then D1.c3 else NULL end  is not null then Rank() OVER ( ORDER BY case D1.c5 when 1 then D1.c3 else NULL end  ASC NULLS LAST ) end as c1,
         D1.c6 as c2,
         D1.c4 as c3
    from
         OBICOMMON0 D1),
    SAWITH4 AS (select distinct min(D1.c1) over (partition by D1.c3)  as c1,
         D1.c2 as c2,
         D1.c3 as c3
    from
         SAWITH3 D1),
    SAWITH5 AS (select sum(case  when T37838.POL_VERSION_FLAG = 'C' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 then nvl(T37838.AMOUNT , 0) when T37838.PERIOD_NAME <> 'March-13' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 and T37838.POL_VERSION_FLAG is null then nvl(T37838.AMOUNT , 0) else 0 end ) as c1,
         D4.c2 as c2,
         T41894.ICN_GROUP as c3,
         T30728.PARENT_REGION as c4,
         D4.c3 as c5,
         T41894.ICN_GROUP_CODE as c6
    from
         SAWITH2 D6 left outer join (
                        XXFI.XXFI_REVFCST_POL_REPORTING_V T37838 /* Fact_POL_Snapshot */  left outer join
                        XXFI.XXFI_GEO_REGION_ACCUM T30728 /* Dim_Regions */  On T30728.COUNTRY_CODE = T37838.SHIP_TO_COUNTRY_CODE2) left outer join
                   XXFI.XXFI_ICN_OWNERS_V T41894 /* Dim_ICN_Override */  On T37838.OVERRIDE_ICN = T41894.ICN_CODE) On D6.c2 = T37838.PERIOD_NAME,
         SAWITH4 D4
    where  ( D4.c1 = D6.c1 and D4.c2 = '2010-Q2' and (T37838.PROSPECT_NUMBER is null or T37838.PROSPECT_NUMBER not like '%Budget%') )
    group by T30728.PARENT_REGION, T41894.ICN_GROUP_CODE, T41894.ICN_GROUP, D4.c2, D4.c3),
    SAWITH6 AS (select sum(case  when T37838.POL_VERSION_FLAG = 'C' and T37838.FORECAST_PROBABILITY_PERCENT >= 50 then nvl(T37838.AMOUNT , 0) when T37838.PERIOD_NAME <> 'March-13' and T37838.FORECAST_PROBABILITY_PERCENT >= 50 and T37838.POL_VERSION_FLAG is null then nvl(T37838.AMOUNT , 0) else 0 end ) as c1,
         sum(case  when T37838.POL_VERSION_FLAG = 'C' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 then nvl(T37838.AMOUNT , 0) when T37838.PERIOD_NAME <> 'March-13' and T37838.FORECAST_PROBABILITY_PERCENT >= 75 and T37838.POL_VERSION_FLAG is null then nvl(T37838.AMOUNT , 0) else 0 end ) as c2,
         T28761.QUARTER_YEAR_NAME as c3,
         T41894.ICN_GROUP as c4,
         T30728.PARENT_REGION as c5,
         T28761.QUARTER_RANK as c6,
         T41894.ICN_GROUP_CODE as c7
    from
                        XXFI.XXFI_REVFCST_POL_REPORTING_V T37838 /* Fact_POL_Snapshot */  left outer join
                        XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */  On T28761.PERIOD_NAME = T37838.PERIOD_NAME) left outer join
                   XXFI.XXFI_GEO_REGION_ACCUM T30728 /* Dim_Regions */  On T30728.COUNTRY_CODE = T37838.SHIP_TO_COUNTRY_CODE2) left outer join
              XXFI.XXFI_ICN_OWNERS_V T41894 /* Dim_ICN_Override */  On T37838.OVERRIDE_ICN = T41894.ICN_CODE
    where  ( T28761.QUARTER_YEAR_NAME = '2010-Q2' and (T37838.PROSPECT_NUMBER is null or T37838.PROSPECT_NUMBER not like '%Budget%') )
    group by T28761.QUARTER_YEAR_NAME, T28761.QUARTER_RANK, T30728.PARENT_REGION, T41894.ICN_GROUP_CODE, T41894.ICN_GROUP),
    SAWITH7 AS (select sum(T34877.AMOUNT) as c1,
         T28761.QUARTER_YEAR_NAME as c2,
         T41894.ICN_GROUP as c3,
         T30728.PARENT_REGION as c4,
         T28761.QUARTER_RANK as c5,
         T41894.ICN_GROUP_CODE as c6
    from
                        XXFI.XXFI_REVENUE_BUDGET_ACCUM T34877 /* Fact_Revenue_Budgets */  left outer join
                        XXFI.XXFI_GL_FISCAL_MONTHS_V T28761 /* Dim_Periods */  On T28761.PERIOD_NAME = T34877.PERIOD_NAME) left outer join
                   XXFI.XXFI_GEO_REGION_ACCUM T30728 /* Dim_Regions */  On T30728.COUNTRY_CODE = T34877.SHIP_TO_COUNTRY_CODE2) left outer join
              XXFI.XXFI_ICN_OWNERS_V T41894 /* Dim_ICN_Override */  On T34877.OVERRIDE_ICN = T41894.ICN_CODE
    where  ( T28761.QUARTER_YEAR_NAME = '2010-Q2' )
    group by T28761.QUARTER_YEAR_NAME, T28761.QUARTER_RANK, T30728.PARENT_REGION, T41894.ICN_GROUP_CODE, T41894.ICN_GROUP),
    SAWITH8 AS (select D1.c1 as c1,
         D1.c2 as c2,
         D1.c3 as c3,
         D1.c4 as c4,
         D1.c5 as c5,
         D1.c6 as c6,
         D1.c7 as c7,
         D1.c8 as c8,
         D1.c9 as c9,
         D1.c18 as c18,
         D1.c19 as c19,
         D1.c20 as c20,
         D1.c21 as c21,
         D1.c22 as c22
    from
         (select 0 as c1,
                   case  when D1.c2 is not null then D1.c2 when D2.c3 is not null then D2.c3 when D3.c2 is not null then D3.c2 end  as c2,
                   case  when D1.c3 is not null then D1.c3 when D2.c4 is not null then D2.c4 when D3.c3 is not null then D3.c3 end  as c3,
                   case  when D1.c4 is not null then D1.c4 when D2.c5 is not null then D2.c5 when D3.c4 is not null then D3.c4 end  as c4,
                   case  when D1.c5 is not null then D1.c5 when D2.c6 is not null then D2.c6 when D3.c5 is not null then D3.c5 end  as c5,
                   nvl(D2.c2 , 0) / nullif( nvl(D3.c1 , 0), 0) * 100 as c6,
                   D3.c1 / 1000 as c7,
                   D1.c1 / 1000 as c8,
                   D2.c1 / 1000 as c9,
                   case  when D1.c6 is not null then D1.c6 when D2.c7 is not null then D2.c7 when D3.c6 is not null then D3.c6 end  as c18,
                   D2.c2 as c19,
                   D3.c1 as c20,
                   D1.c1 as c21,
                   D2.c1 as c22,
                   ROW_NUMBER() OVER (PARTITION BY case  when D1.c2 is not null then D1.c2 when D2.c3 is not null then D2.c3 when D3.c2 is not null then D3.c2 end , case  when D1.c3 is not null then D1.c3 when D2.c4 is not null then D2.c4 when D3.c3 is not null then D3.c3 end , case  when D1.c4 is not null then D1.c4 when D2.c5 is not null then D2.c5 when D3.c4 is not null then D3.c4 end , case  when D1.c5 is not null then D1.c5 when D2.c6 is not null then D2.c6 when D3.c5 is not null then D3.c5 end , case  when D1.c6 is not null then D1.c6 when D2.c7 is not null then D2.c7 when D3.c6 is not null then D3.c6 end  ORDER BY case  when D1.c2 is not null then D1.c2 when D2.c3 is not null then D2.c3 when D3.c2 is not null then D3.c2 end  ASC, case  when D1.c3 is not null then D1.c3 when D2.c4 is not null then D2.c4 when D3.c3 is not null then D3.c3 end  ASC, case  when D1.c4 is not null then D1.c4 when D2.c5 is not null then D2.c5 when D3.c4 is not null then D3.c4 end  ASC, case  when D1.c5 is not null then D1.c5 when D2.c6 is not null then D2.c6 when D3.c5 is not null then D3.c5 end  ASC, case  when D1.c6 is not null then D1.c6 when D2.c7 is not null then D2.c7 when D3.c6 is not null then D3.c6 end  ASC) as c23
              from
                        SAWITH5 D1 full outer join SAWITH6 D2 On D1.c6 = D2.c7 and  SYS_OP_MAP_NONNULL(D1.c4) = SYS_OP_MAP_NONNULL(D2.c5)  and  SYS_OP_MAP_NONNULL(D1.c5) = SYS_OP_MAP_NONNULL(D2.c6) ) full outer join SAWITH7 D3 On D3.c6 = case  when D1.c6 is not null then D1.c6 when D2.c7 is not null then D2.c7 end  and  SYS_OP_MAP_NONNULL(D3.c4) = SYS_OP_MAP_NONNULL(case  when D1.c4 is not null then D1.c4 when D2.c5 is not null then D2.c5 end )  and  SYS_OP_MAP_NONNULL(D3.c5) = SYS_OP_MAP_NONNULL(case  when D1.c5 is not null then D1.c5 when D2.c6 is not null then D2.c6 end )
         ) D1
    where  ( D1.c23 = 1 ) )
    select D1.c1 as c1,
         D1.c2 as c2,
         D1.c3 as c3,
         D1.c4 as c4,
         D1.c5 as c5,
         D1.c6 as c6,
         D1.c7 as c7,
         D1.c8 as c8,
         D1.c9 as c9,
         D1.c18 as c19,
         D1.c19 as c21,
         D1.c20 as c22,
         D1.c21 as c23,
         D1.c22 as c24
    from
         SAWITH8 D1
    order by c4, c2, c5, c19, c3
    [2013-08-14T10:38:15.000-05:00] [OracleBIServerComponent] [TRACE:2] [USER-34] [] [ecid: 54a0696aeaefab88:-d74da91:1406506ef2a:-8000-00000000000151e6,0:1:9:6:1] [tid: a093e700] [requestid: cc480014] [sessionid: cc480000] [username: ] -------------------- Query Status: Successful Completion [[
    [2013-08-14T10:38:15.000-05:00] [OracleBIServerComponent] [TRACE:2] [USER-26] [] [ecid: 54a0696aeaefab88:-d74da91:1406506ef2a:-8000-00000000000151e6,0:1:9:6:1] [tid: a093e700] [requestid: cc480014] [sessionid: cc480000] [username: ] -------------------- Rows 17, bytes 27200 retrieved from database query id: <<2779207>>

    check the report for the columns which has incorrect values for any calculation, null handling.
    also check whether there is a difference in logical SQL between 10g and 11g.
    also check whether they are pointing to same db.
    check for null handling or default value not being set in 11g.
    try rebuilding the same report, to check the metrics individually verify they match with 10g.

Maybe you are looking for

  • How do you keep strokes, etc, from changing when copying & pasting?

    I am sure there is a simple solution to this problem, but I cannot figure it out and could use some help.  I have a graphic in one InDesign document (ID CS4 - using Windows XP Pro) and when I try to copy and paste it into another ID doc, it completel

  • Error Message: Copying files failed. The file name was invalid or too long.

    I get the above error message when trying to copy in my library into itunes. Is there a log file generated somewhere that says what this file is, or is there some way of locating it?

  • What is the other space on macbook pro?

    I keep getting a notification saying that my startup disk is almost full. I checked storage and it has over 273GB worth of "other" memory storage. I rarely download movies, or music. I've erased all my documents that I don't use. What could be this h

  • Critical error with default host

    Hi, I am relatively new to Web Logic and think I have made an error within the Web Logic Console with the default host parameter. As a result, I can no longer start up my WLS. Is there a way I can edit this parameter outside of the Web Logic Console?

  • Lost control file, how to recover them

    Hi All, I have Oracle 11G running on RHEL 5.2 server and unexpectedly I can't start database after a server reboot. I have executed the following commands, sqlplus /as sysdba SQL> startup ORA-01078: failure in processing system parameters LRM-00109: