Resovle 00904 with instruction box

Hello

Maybe a stupid question, but I got the following situation. I have an update query, and I tried to solve a message 00904 with a case statement. Would this be possible?

I use a case because in a version a specific field cannot exist.

Query

UPDATE xp table

SET of xp. ATTRIBUTE =

CASE

((select version from_parameters) = 1') THEN "//FIELD IS NOT EXISTING

WHEN ((version select à partir de paramètres) = '2') THEN

SELECT THE EXISTING FIELD

ELSE "

END

However the request always fails with 00904 even when version = "1". It could be possible that I ask or is there just no solution for this?

Best regards

Richard

Hello

user12235295 wrote:

Hi Frank,.

Thnak you for your comments, will keep in mind the next time.

My question is more general. For example, if you have an application that communicates with Oracle Financials R11 or R12 it can be diffence in the fields in the tables. R12 was generally more fields.

My question is if you use a case statement, do all the fields must be present in order to compile the query, even if these fields are not used in this specific version.

It seems that, even when you use a case statement, every field must be present must be present.

Exactly!  The SQL statements are compiled first; then, if there is no error in compilation, they are executed.  Verify that all the columns exist is part of the compilation, so there is nothing you can do in the exercise of the against (an expression BOX, for example) which can avoid the error: the error prevents the CASE expression (and the rest of the statement) still running.

If a column exists in some versions of your software, you need dynamic SQL statements.  There are so many problems with dynamic SQL that most people find that this isn't punishment; they write different different code for different versions.

PL/SQL has a feature of conditional compilation; in other words, you can put the precompilation directives in your code that say some sections are made only in certain circumstances (for example, you have a certain version) and ignored otherwise.  SQL and SQL * more no feature of this

Tags: Database

Similar Questions

  • Problem with instruction box (order by case expression)

    Hi friends, I'm stuck in a strange problem. My query is like below

    OPEN FOR Cursor_prnt_req
    SELECT
    LTRIM (to_char (sprq.stit_numb)). ' - ' || substr (IH. (Name, 1, 35).
    sprq.event_key,
    sprq.planogram_key,
    TO_CHAR (sprq.request_date, 'HH12:MI:SS') requested_time,-asked on time
    TO_CHAR (plano2.desc2) desc2,-department
    TO_CHAR (plano2. Desc4) desc4,-in subcategory
    CASE)
    SELECT sp.status
    OF v1sprq01 sp
    WHERE sp.event_key = sprq.event_key
    AND sp.planogram_key = sprq.planogram_key
    AND to_char (sp.request_date, 'YYYYMMDD') = to_char (sprq.request_date, 'YYYYMMDD')
    AND ROWNUM = 1
    ORDER BY sp.status ASC
    )
    WHEN 'R '.
    THEN "ready."
    WHEN 'P '.
    THEN 'print '.
    WHEN THE A '
    And THEN "pattern".
    Status of END,
    CASE)
    SELECT count (DISTINCT planogram_key)
    OF v1sprq01
    WHERE stit_numb = sprq.stit_numb
    AND to_char (request_date, 'YYYYMMDD') = to_char (sprq.request_date, 'YYYYMMDD')
    )
    WHEN 1
    THEN "N".
    ELSE 'Y '.
    END dual_sited
    (
    SELECT MAX (request_date)
    OF v1sprq01
    WHERE event_key = sprq.event_key
    AND planogram_key = sprq.planogram_key
    ) latest_requested_time,.
    CASE sprq.status
    WHEN THE A '
    THEN "N".
    ELSE 'Y '.
    Printable END
    Of
    v1sprq01 sprq,
    dplapro1.ix_spc_planogram plano2,
    dplapro1.ix_spc_product ih - Ver 1.1
    WHERE sprq.event_key = plano2.dbkey5
    AND sprq.planogram_key = plano2.dbkey
    AND sprq.status IN ('R', 'P', the from ')
    AND sprq.stit_numb = ih.ID
    AND sprq.store_key = p_dbstorekey
    AND to_char (sprq.request_date, 'YYYYMMDD') = to_char (SYSDATE, 'YYYYMMDD')

    UNION

    SELECT
    LTRIM (to_char (sprq.stit_numb)). ' - ' || NVL (substr (IH. ((Name, 1, 35), cm).
    sprq.event_key,
    sprq.planogram_key,
    TO_CHAR (sprq.request_date, 'HH12:MI:SS') requested_time,-asked on time
    "& nbsp" desc2,-Department
    "& nbsp" desc4,-in subcategory
    "No direct Plan."
    N AS dual_sited,
    (
    SELECT MAX (request_date)
    OF v1sprq01
    WHERE event_key = sprq.event_key
    AND planogram_key = sprq.planogram_key
    ) AS latest_requested_time,
    "N" AS printable
    Of
    v1sprq01 sprq
    LEFT OUTER JOIN dplapro1.ix_spc_product ih - Ver 1.2
    WE (sprq.stit_numb = ih.ID)
    WHERE sprq.status = ' don't
    AND sprq.store_key = p_dbstorekey
    AND to_char (sprq.request_date, 'YYYYMMDD') = to_char (SYSDATE, 'YYYYMMDD')

    ORDER BY
    requested_time DESC,
    desc2 CSA,
    Desc4 CSA,
    latest_requested_time / / DESC
    ;

    When I compile my inner... I get an error ORA-00936: lack of expression (it points to the first case statement) but when I take the ORDER BY clause, it works very well.

    Can ne1 plz help (I tried google, but which did not help at all)

    Hey Suman,

    Order preference allows for the display of your need, or to access the data in a cursor in your SQL, a sort order is not necessary in cases and case statement does not support order them by in anyway.

    * 009 *.

  • Problem with calculation of measurement using instruction box

    Hello Experts

    I have a measure that calculates the percent of sales by State - "sale by States" / "Total sales" * 100 and the requirement is when the numerator of the measure is < 11 then it should be ' *'. I tried to write a next case statement case when sales by State < 11 THEN ' *' ELSE sales by State END / "Total sales" * 100. I get an error saying incompatibility of data type of ideas how I can make it work.

    Thank you
    RC

    Published by: user1146711 on July 12, 2012 07:39

    Published by: user1146711 on July 12, 2012 09:17

    Hi RC,.

    I used to have the same than the one that I solved it using the following statement hope, that it will aid.

    BOX WHEN ((ARRAY. NUMERATORCOLUMN< 11))="" then="" '*'="" else="" concat(cast(round((((numerator="" column)/(denominator="" column))*100),1)="" as="" char(50)),'%')="">

    Here the results of instruction box in the two values is * Alternatively, value (which is stored as varchar instead of the number data type).
    Have, so the results are varchar. you get no data type mismatch error.

    That, by your statement the case... A case get varchar and another survey number which is the offset. (Logic)

    I have concatenated with the '%' sign to show results under 15%, 16% and stores the same results (Varchar).

    I hope that this solves your problem. Please, attribute points. :) :)

    Let me know, if you still find problems.

  • Problem with variable referencing of presentation (KEY Date) in the instruction box

    Hello

    I'm trying to reference variables of presentation created on a Date column in the instruction box to one of the columns in the query, as shown below:

    -case when '-citation details. "" "Created" between ' @{of} {1999-1-1}' and ' @{until} {2999-1-1} "then"-quote Metrics. " "" end of number of citations.

    I m getting a view displays error message with the following error message:

    State: HY000. Code: 10058. [NQODBC] [SQL_STATE: HY000] [nQSError: 10058] A general error occurred. [nQSError: 17001] Oracle error code: 1861, message: ORA-01861: literal does not match the format string to the call of the OIC OCIStmtExecute

    SQL issued: SELECT "-quote Types '." Name of level 2 Saw_0', case when '-citation details. "" Created "between" 01/04/2009 ' and ' 15 / 04/2009 ' then '-quote Metrics ' "." number of citations"end saw_1"(unit) - CATALOGUE of quotes"WHERE"-citation details "". "" Date of creation"BETWEEN timestamp ' 2009-04-01 00:00:00 ' timestamp AND ' 2009-04-15 00:00:00 ' ORDER BY saw_0


    When I created the prompt on the date field, I put the following in the command prompt:
    Cast ("-time".) Day)

    When I apply a filter on the query using these variables, it works fine.

    If anyone has faced this kind of question earlier and have a resolution, please help me.

    Thank you
    Kitenge

    Hello.

    Select the double - A NON-VALIDE MONTHS TO_DATE('1999-1-1','mm/dd/yyyy')

    Try this:

    OLD: EVALUATE ('TO_DATE (%1, %2)', ' @{of} {1999-1-1} ", mm/dd/yyyy)
    NEW: EVALUATE ('TO_DATE (%1, %2)', ' @{of} {01/01/1999} ", mm/dd/yyyy)

    and

    OLD: EVALUATE ('TO_DATE (%1, %2)', ' @{of} {2999-1-1} ", mm/dd/yyyy)
    NEW: EVALUATE ('TO_DATE (%1, %2)', ' @{of} {1, 1, 2999} ", mm/dd/yyyy)

    and if not ok after that, after an error in query SQL of NQQuery.log.

    Kind regards

    Goran Ocko

    http://108obiee.blogspot.com/

  • Distinct count in the instruction box

    -------------------------------------------------------------------------------------------------
    SELECT A.P_ID,
    B.P_NAME,
    C.P_DESC,

    SUM (CASE
    WHEN A.DATE BETWEEN TRUNC (ADD_MONTHS (LAST_DAY (SYSDATE),-4) + 1) AND ADD_MONTHS (LAST_DAY (TO_DATE (SYSDATE)),-1)
    AND A.M_ID IS NOT NULL
    THEN 1
    0 OTHERWISE
    END) AS COUNT,
    SUM (CASE
    WHEN A.DATE BETWEEN TRUNC (ADD_MONTHS (LAST_DAY (SYSDATE),-4) + 1) AND ADD_MONTHS (LAST_DAY (TO_DATE (SYSDATE)),-1)
    AND A.M_ID IS NOT NULL
    THEN COUNT (DISTINCT A.M_ID)
    0 OTHERWISE
    END) AS UNIQUE_COUNT, / * is not possible * /.
    SUM (CASE
    WHEN A.DATE BETWEEN TRUNC(SYSDATE,'YEAR') AND ADD_MONTHS (LAST_DAY (TO_DATE (SYSDATE)), - 1).
    THEN A.AMT_1
    0 OTHERWISE
    END) AS TOTAL_AMT_1,
    SUM (CASE
    WHEN A.DATE BETWEEN TRUNC(SYSDATE,'YEAR') AND ADD_MONTHS (LAST_DAY (TO_DATE (SYSDATE)), - 1).
    THEN A.AMT_2
    0 OTHERWISE
    END) AS TOTAL_AMT_2

    FROM TABLE_A A,.
    TABLE_B B,.
    C TABLE_C


    WHERE A.P_ID = B.P_ID
    AND B.PT_ID = C.PT_ID
    A.P_ID GROUP,
    B.P_NAME,
    C.P_DESC

    ----------------------------------------------------------------------------------------------------------

    Hello

    It is a simplified version of my request.
    I'm doing 4 things here,
    1. the County A.M_ID
    2 County has separate .M_ID, is where I have a problem.
    3 and 4. It is just the sum of 2 diff columns.

    Note that the dates for the County and the amt are different and I can't hard-code the.
    Can someone help me step of distinct count?
    This query runs also a bit slow.
    So all suggestions, comments are welcome.
    Note: TABLE_A REB 700 million, TABLE_B 4 million and TABLE_c is located only 500 RECS
    Thank you!

    Advantage of the fact that aggregate functions more ignore nulls, you could do something like:

    SELECT a.p_id, b.p_name, c.p_desc,
           COUNT(CASE WHEN a.date BETWEEN TRUNC(ADD_MONTHS(LAST_DAY(sysdate),-4) + 1) AND
                                          ADD_MONTHS(LAST_DAY(TO_DATE(sysdate)),-1) AND
                           a.m_id IS NOT NULL THEN m_id END) AS countall,
           COUNT(DISTINCT CASE WHEN a.date BETWEEN TRUNC(ADD_MONTHS(LAST_DAY(sysdate),-4) + 1) AND
                                        ADD_MONTHS(LAST_DAY(TO_DATE(sysdate)),-1) AND
                         a.m_id IS NOT NULL THEN a.m_id END) AS unique_count, /* entirely possible */
           SUM(CASE WHEN a.date BETWEEN TRUNC(sysdate,'YEAR') AND
                                        ADD_MONTHS(LAST_DAY(TO_DATE(sysdate)),-1) THEN a.amt_1
                    ELSE 0 END) AS total_amt_1,
           SUM(CASE WHEN A.DATE BETWEEN TRUNC(sysdate,'YEAR') AND
                                        ADD_MONTHS(LAST_DAY(TO_DATE(sysdate)),-1) THEN A.AMT_2
                    ELSE 0 END) AS TOTAL_AMT_2
    FROM table_a a, table_b b, table_c c
    WHERE a.p_id = b.p_id and
          b.pt_id = c.pt_id
    GROUP BY a.p_id, b.p_name, c.p_desc
    

    The two statements inside the COUNTY box return a.m_id or NULL. A simplified test case is:

    SQL> WITH t as (
      2     SELECT 1 m_id, 9 dt FROM dual UNION ALL
      3     SELECT 1 m_id, 6 dt FROM dual UNION ALL
      4     SELECT 2 m_id, 9 dt FROM dual UNION ALL
      5     SELECT 2 m_id, 6 dt FROM dual UNION ALL
      6     SELECT 1 m_id, 5 dt FROM dual UNION ALL
      7     SELECT 2 m_id, 5 dt FROM dual UNION ALL
      8     SELECT null m_id, 9 dt FROM dual)
      9  SELECT count(CASE WHEN dt BETWEEN 6 and 9 THEN m_id end) cid,
     10         count(distinct CASE WHEN dt BETWEEN 6 and 9 THEN m_id end) cdid
     11  FROM t;
    
           CID       CDID
    ---------- ----------
             4          2
    

    I'm not entirely sure that you really need the IS NOT NULL predicate a.m_id in the instructions BOX, but I left it for more security.
    John

  • Why Responsive mode Design might disagree with the box of the HTML element model?

    In the web page, I am writing right now, number of width of the sensitive design view does not match the width specified in the view of the box model (meaning that my questions of media do not seem to be triggered the breakpoints of good width). See the attached screenshot that displays the Appointment page, view the box model and a ToolTip with dimensions of the HTML element.

    I have yet to reproduce it in a simpler page, although I'm still trying. I dismissed the possible influence inland iframes and the viewport metatag.

    So, I would like to know what could cause two tools to account for the figures of different widths.

    See you soon,.
    Jordan

    said jscher2000

    Ah, I tried using 38.0.5.

    This could be a problem of zoom?

    Oh! That's all! I was slightly zoomed-out and after a Cmd + 0, RDV now accepts exactly with the box model, and queries of the media are behaving as they should.

    Quick Note: the zoom was causing a second problem, since she has been scaling 430px for a number between 481px and 480px wide, triggering neither of my media queries (which had max-width: 480px, the other min-width: 481px). It was almost as confusing as the numbers is not the first place.

    Thanks again!

  • iOS 9.3 do bluetooth hands-free connection to my Audi stuttering. Using google maps with instructions of the Tower burn on bluetooth still works very well. It's an iPhone 6. Another 6s to 9.2 iOS iPhone works very well with the hands-free bluetooth.

    iOS 9.3 made connection kit hands free bluetooth to my Audi stuttering.

    Both the speaker and the stuttering/pulse microphone so that you cannot speak/hear.

    Using googlemap-app with instructions of the Tower burn via bluetooth still works very well, his is perfect.

    It's an iPhone 6s and the car is an Audi A6 2010 with the Moose Bluetooth adapter business.

    Another 6s to 9.2 iOS iPhone works fine with bluetooth hands-free, just like my phone before the upgrade.

    I tried to disable the twinning, remove all old in the car and the iPhone and pair Bluetooth devices again.

    Anyone alse experinceing this?

    And tip on how to fix it?

    I have the same problem with Audi Q7 2008 and iPhone-6s - iOS - 9.3.

  • I can't change the questions to reset password also helps. In almost did not receive a letter with instructions

    I can't change the questions to reset password also helps. In almost did not receive a letter with instructions

    For a long time I don't remember creating answers to the questions that they tried to lose on the email I wrote not just the 2nd day.

    help solve the problem. I live in Ukraine. And there is no way to contact support.

    Hello! It is quite difficult to understand you.

    To reset the security questions, follow these steps:

    If you forgot the answers to your questions of security of Apple ID - Apple Support

    To have access to your forgotten Apple ID, follow these steps:

    If you have forgotten your Apple - Apple Support ID

    If you forgot your Apple ID - Apple Support password

    https://iforgot.Apple.com/appleid

    Also, take a look at this:

    On your Apple ID email addresses - Apple Support

  • On closure of my MacBook Pro always get question "continue application"? with the boxes option to cancel or continue the request.

    On my Mac Book Pro to always stop get question "continue application"? with the boxes option to cancel or continue the request.

    Selection of abandonment does not prevent the following message appears when closing next down.

    Activity monitor shows all the applications that you have

    installed, running in the background? Something can be...

    If you open the force quit, are there topics other than the Finder

    and maybe a browser?

    You repaired the disk from disk utility permissions lately?

    We could also see other boot options on the use in

    Recovery of OS X to use the "OS X Utilities" in there. Be careful.

    Is there more than one user account on your computer? If you

    Start in another user account and have auto login for

    the fact that it is one that rises at the start, a piece

    similar issues or is it just works fine on shut down?

    The question may take some trial and error troubleshooting. This

    may include some basic startup keyboard shortcuts for

    the computer to start in Safe Mode, to do more test, etc.

    If you have access to an official Apple store, you can be

    able to set up an engineering appointment & have someone closer.

    Good luck anyway...

  • Some of my desktop icons with white boxes dotted around them, how are they removed?

    Some of my desktop icons with white boxes dotted around them, how are they removed?

    Hello

    1. Since when are you facing this problem?

    2. have you made changes on the computer recently?

    I would suggest trying the following methods and check if it helps.

    Method 1:

    Run Microsoft Safety Scanner and check if it helps.

    Microsoft safety scanner: http://www.microsoft.com/security/scanner/en-us/default.aspx

    Method 2:

    Try these steps and see if it helps.

    a. click Start.

    b. right click on computer , then click Properties.

    c. click Advanced system of parameters.

    d. click on the Advanced tab.

    e. click settings under performance.

    f. uncheck the option: shadows fall usage labels icon on the desktop.

    g. click apply and Ok.

    I also suggest that you send the screenshot of the icons, so that we can help you.

    How can I post a screen shot on this forum?

    http://answers.Microsoft.com/en-us/Windows/Forum/Windows_7-security/how-do-i-post-a-screen-shot-on-this-forum/c86de820-C620-401c-A804-9f6337cd3053

    Hope the information is useful.

  • I'm opening a JPEG in Adobe Photoshop, but 'Open with' dialog box does not Photoshop

    I'm opening a JPEG in Adobe Photoshop, but the 'Open with' dialog box does not Photoshop in the list of available programs. I have attempte

    Original title: file association

    When Adobe Photoshop is installed it is automatically added to the open with command and usually it is the editor who is added, okay, so in your case, it is not added.

    Right click of your peak, point to open with, click on choose program.

    Put a check mark in the box, always use... If you wish.

    Click on browse, it opens the program files, double-click Adobe, double-click on Photoshop Elements.

    PhotoShopElementsEditor.exe-click, and then click Open

  • My Lexmark S400 prints with black boxes

    Original title: print
    My Lexmark S400 prints with black boxes

    My Lexmark S400 prints with black boxes

    It is still the case?

    If this isn't the case, which happened just before this behavior started?

    What application you are printing from?

    The behavior occurs when you print from other applications?

    Open Printers and faxes, right-click on the icon for your S400 and select Properties.  In the 'Général' tab, click 'Print the Test Page.'  Do you always have black squares?

  • In XP, when you try to open any file, get the "Open with" dialog box

    After a virus infection that I cleaned up, I now have the 'open with' dialog box popping up whenever I want to open a file.  I tried a restore of the system, but to no avail.  What do you suggest to me.  Thank you

    Hello

    Try the methods listed in the section below and check if that helps.
    How to change or choose the program that starts when you double-click a file in Windows XP
    http://support.Microsoft.com/kb/307859

    I hope this helps.

  • CD, how to make the CD to play? It's a CD with instructions on how to install my printer.

    How to make a CD to play?  It's a CD with instructions on how to install my printer

    Insert the CD in your optical drive (if you have a DVD or CD drive)

    The CD should auto run and invites you to play or open the disk.

    If it isn't, try the following:

    Click Start > computer > open disk > and double click on the installation file or the MSI installer.

    The disc should come with instructions on how to use it.

  • How can I add a program to the "open with" dialog box?

    I tried to "change program" and then passed to the program but it does not appear in the box or associate with the file extension?

    Hello

    These should help:

    How to add a program to 'Open with' in Vista and Windows 7
    http://www.Vistax64.com/tutorials/126340-open-add-program.html

    How to add any Application in the Windows desktop right-click Menu
    http://www.howtogeek.com/HOWTO/Windows-Vista/add-any-application-to-the-desktop-right-click-menu-in-Vista/

    Record the programs with the open with dialog box
    http://WindowsXP.MVPs.org/openwithadd.htm

    I hope this helps.

Maybe you are looking for