Time(0) returns decreasing value??

Hi,
On a SunOS version 5.8, my application reads the unix system time using the time(0) call and on some runs, the value is not alwasy monotonically increasing. I see a jump backwards by say 60seconds once in a while.
There is no NTP running on this machine and there is no user intervention (to change the time)
Are there are any known bugs that might cause this..we are having serious problems with this :), and the problem is not easy to replicate..
any comments ?
thanks

Hmmm,,
The effect is the same but the symptoms are not similar.
Moreover I am seeing this problem on a sun sparc.
anyways, thanks for the response, I'll keep searching / waiting..

Similar Messages

  • The Popup dialog Page needs two times to return the selected value[10.1.3]

    Hi All,
    I have problem in an JSF Application that uses the EMP and DEPT tables .
    the Application contains two pages
    page 1 : a calling page uses EmpView as ADF Table .
    page 2 : a popup List of Values (LOV) dialog page uses DeptView
    These cause the popup dialog page to return to the calling page and to set the selected value into the Deptno attribute .
    the calling page includes :deptno and dname columns as
    <af:column headerText="#{bindings.EmpView1.labels.Deptno}">
    <af:selectInputText value="#{row.Deptno}"
    required="#{bindings.EmpView1.attrDefs.Deptno.mandatory}"
    columns="#{bindings.EmpView1.attrHints.Deptno.displayWidth}"
    action="dialog:ChooseDept1" id="deptnoField"
    autoSubmit="true">
    <f:convertNumber groupingUsed="false"
    pattern="#{bindings.EmpView1.formats.Deptno}"/>
    </af:selectInputText>
    </af:column>
    <af:column headerText="#{bindings.EmpView1.labels.Dname}">
    <af:inputText value="#{row.Dname}" simple="true"
    required="#{bindings.EmpView1.attrDefs.Dname.mandatory}"
    columns="#{bindings.EmpView1.attrHints.Dname.displayWidth}"
    partialTriggers="deptnoField" autoSubmit="true"/>
    </af:column>
    and popup dialog page includes : Submit Button to return selected value to calling page :-
    <af:tableSelectOne text="Select and">
    <af:commandButton text="Submit">
    <af:returnActionListener value="#{row.Deptno}"/>
    <af:setActionListener from="#{row.Deptno}"
    to="#{bindings.Deptno.inputValue}"/>
    </af:commandButton>
    </af:tableSelectOne>
    the problem is
    I have to press ( two times ) the select button in the calling page to
    return the selected value into the Dname attribute .
    best regards,

    Hi,
    However, I am using the Jdeveloper 10.1.3.3, but still getting this error. I could not find any threads related to this problem and hence I wrote up here. Anyway I have also logged an SR #7179012.993 for the same with the testcase. I hope the issue will be resolved soon.
    Thanks,
    Neeraj

  • How to pass a function with the same argument multiple times and return values in variables?

    The problem I have is I created a function which really is some kind of database.  Basically a bunch of:
    if (a.value == "this number"){
    b.value = "this expression";
    Inside the form are 2 dropdown lists that return numerical values which I want to process through that function and put the return value inside separate variables.
    var a = this.getField("OPE003.EVEN.1.MIP");
    Mip(a);
    var result1 = Mip();
    I tried to overwriting *a* to process the second field
    a = this.getField("OPE003.EVEN.2.MIP");
    Mip(a);
    var result2 = Mip();
    result1 and result2 are put in an array, joined as a string.
    Doing so, I always get the last processing twice as the final result.
    Can I use a function as a batch processing tool that way?

    You are right, I changed the code to what you said but how do I pass another value through my fonction so I can get Result1 and Result2?
    is it
    var a = this.getField("OPE003.EVEN.1.MIP");
    var b = this.getField("OPE003.EVEN.2.MIP");
    var result1 = Mip(a);
    var result2 = Mip(b);
    var c = new Array[result1, result2]

  • [UIX] How To: Return multiple values from a LOV

    Hi gang
    I've been receiving a number of queries via email on how to return multiple items from a LOV using UIX thanks to earlier posts of mine on OTN. I'm unfortunately aware my previous posts on this are not that clear thanks to the nature of the forums Q&A type approach. So I thought I'd write one clear post, and then direct any queries to it from now on to save me time.
    Following is my solution to this problem. Please note it's just one method of many in skinning a cat. It's my understanding via chatting to Oracle employees that LOVs are to be changed in a future release of JDeveloper to be more like Oracle Forms LOVs, so my skinning skills may be rather bloody & crude very soon (already?).
    I'll base my example on the hr schema supplied with the standard RDBMS install.
    Say we have an UIX input-form screen to modify an employees record. The employees record has a department_id field and a fk to the departments table. Our requirement is to build a LOV for the department_id field such that we can link the employees record to any department_id in the database. In turn we want the department_name shown on the employees input form, so this must be returned via the LOV too.
    To meet this requirement follow these steps:
    1) In your ADF BC model project, create 2 EOs for employees and departments.
    2) Also in your model, create 2 VOs for the same EOs.
    3) Open your employees VO and create a new attribute DepartmentName. Check “selected in query”. In expressions type “(SELECT dept.department_name FROM departments dept WHERE dept.department_id = employees.department_id)”. Check Updateable “always”.
    4) Create a new empty UIX page in your ViewController project called editEmployees.uix.
    5) From the data control palette, drag and drop EmployeesView1 as an input-form. Notice that the new field DepartmentName is also included in the input-form.
    6) As the DepartmentName will be populated either from querying existing employees records, or via the LOV, disable the field as the user should not have the ability to edit it.
    7) Select the DepartmentId field and delete it. In the UI Model window delete the DepartmentId binding.
    8) From the data controls palette, drag and drop the DepartmentId field as a messageLovInput onto your page. Note in your application navigator a new UIX page lovWindow0.uix (or similar) has been created for you.
    9) While the lovWindow0.uix is still in italics (before you save it), rename the file to departmentsLov.uix.
    10) Back in your editEmployees.uix page, your messageLovInput source will look like the following:
    <messageLovInput
        model="${bindings.DepartmentId}"
        id="${bindings.DepartmentId.path}"
        destination="lovWindow0.uix"/>Change it to be:
    <messageLovInput
        model="${bindings.DepartmentId}"
        id="DepartmentId"
        destination="departmentsLov.uix"
        partialRenderMode="multiple"
        partialTargets="_uixState DepartmentName"/>11) Also change your DepartmentName source to look like the following:
    <messageTextInput
        id=”DepartmentName”
        model="${bindings.DepartmentName}"
        columns="10"
        disabled="true"/>12) Open your departmentsLov.uix page.
    13) In the data control palette, drag and drop the DepartmentId field of the DepartmentView1 as a LovTable into the Results area on your page.
    14) Notice in the UI Model window that the 3 binding controls have been created for you, an iterator, a range and a binding for DepartmentId.
    15) Right click on the DepartmentsLovUIModel node in the UI Model window, then create binding, display, and finally attribute. The attribute binding editor will pop up. In the select-an-iterator drop down select the DepartmentsView1Iterator. Now select DepartmentName in the attribute list and then the ok button.
    16) Note in the UI Model you now have a new binding called DCDefaultControl. Select this, and in the property palette change the Id to DepartmentName.
    17) View the LOV page’s source, and change the lovUpdate event as follows:
    <event name="lovSelect">
        <compound>
            <set value="${bindings.DepartmentId.inputValue}" target="${sessionScope}" property="MyAppDepartmentId" />
            <set value="${bindings.DepartmentName.inputValue}" target="${sessionScope}" property="MyAppDepartmentName" />
        </compound>
    </event>18) Return to editEmployees.uix source, and modify the lovUpdate event to look as follows:
    <event name="lovUpdate">
        <compound>
            <set value="${sessionScope.MyAppDepartmentId}" target="${bindings.DepartmentId}" property="inputValue"/>
            <set value="${sessionScope.MyAppDepartmentName}" target="${bindings.DepartmentName}" property="inputValue"/>     
        </compound>
    </event>That’s it. Now when you select a value in your LOV, it will return 2 (multiple!) values.
    A couple things to note:
    1) In the messageLovInput id field we don’t use the “.path” notation. This is mechanism for returning 1 value from the LOV and is useless for us.
    2) Again in the messageLovInput we supply “_uixState” as an entry in the partialTargets.
    3) We are relying on partial-page-refresh functionality to update multiple items on the screen.
    I’m not going to take the time out to explain these 3 points, but it’s worthwhile you learning more about them, especially the last 2, as a separate exercise.
    One other useful thing to do is, in your messageLovInput, include as a last entry in the partialTargets list “MessageBox”. In turn locate the messageBox control on your page (if any), and supply an id=”MessageBox”. This will allow the LOV to place any errors raised in the MessageBox and show them to the user.
    I hope this works for you :)
    Cheers,
    CM.

    Thanks Chris,
    It took me some time to find the information I needed, how to use return multiple values from a LOV popup window, then I found your post and all problems were solved. Its working perfectly, well, almost perfectly.
    Im always fighting with ADF-UIX, it never does the thing that I expect it to do, I guess its because I have a hard time letting go of the total control you have as a developer and let the framework take care of a few things.
    Anyway, I'm using your example to fill 5 fields at once, one of the fields being a messageChoice (a list with countries) with a LOV to a lookup table (id , country).
    I return the countryId from the popup LOV window, that works great, but it doesn't set the correct value in my messageChoice . I think its because its using the CountryId for the listbox index.
    So how can I select the correct value inside my messageChoice? Come to think of it, I dont realy think its LOV related...
    Can someone help me out out here?
    Kind regards
    Ido

  • SAP Web Service error text : The database returned a value containing an error , type  CX_SY_OPEN_SQL_DB

    Hello Guru's,
    we are creating sales order in SAP from a quote created in .NET,  through Web Service created in SAP, and consumed in .NET.
    When ever a order is created in SAP for a given quote, SAP returns the sales order number to .NET.
    Orders are getting created as expected, but once in a while we are getting the following error from webservice :
    Web service processing error; more details in the web service error log on provider side (UTC timestamp 20140609173429; Transaction ID 4DFCEFE33301F1EBB5CE00155D0B4530)
    But the problem is order is getting created in SAP for the perticular quote for which we are getting the above error and this order number is not getting returned to .NET.
    Upon analysis in TCODE  SRT_UTIL for the above transaction ID, has the following details , which are hardly help full to resolve the error.
    ----TYPE                                  CX_SY_OPEN_SQL_DB
    ----ERROR_TEXT                   The database returned a value containing an error
    ----CX_SY_NO_HANDLER
    -----CLASSNAME                     CX_SY_OPEN_SQL_DB
    This Exception raised by Web Service application
    Could you please help in resolving this issue or alteast provide an approach for the same.
    Thank you,
    Suresh.

    Thank you Bhaskar,
    How can we clarify whether the error is from SAP or Web part.
    I have checked ST22, but there is not entry for the perticular  exception transaction ID
    My exception time stamp is
    -------------------START-------------6/9/2014 1:34:33 PM
    Error :Web service processing error; more details in the web service error log on provider side (UTC timestamp 20140609173429; Transaction ID 4DFCEFE33301F1EBB5CE00155D0B4530)
    -------------------END-------------6/9/2014 1:34:33 PM
    In al11, i found the following for the perticular exception time stamp
    **** Trace file opened at 20140609 133431 Eastern Daylight Time, by disp+work
    **** Versions SAP-REL 720,0,500 RFC-VER U 3 1442251 MT-SL
    XRFC> Begin of user trace
    XRFC> ---------------------------------------------------------------------
    XRFC>                                                                     <
    XRFC> TRACE SOAP RUNTIME - header                                         <
    XRFC>                                                                     <
    XRFC> ------------------------------------------------------------------  <
    XRFC> REQ_SIZE   : 2685                                                   <
    XRFC> RESP_SIZE  : 0                                                      <
    XRFC> PARENT_ID  : ROOT_CALL_ID                                           <
    XRFC> TRC_KEY    : 40FCEFE3BD6EF184B5CE00155D0B4530                       <
    XRFC> REQ_BASED  :                                                        <
    XRFC> SESSION_ID : 0003925540FCEFE3BD6EF17DB5CE00155D0B4530               <
    XRFC> TS_CALL    : 20140609173408.2880000                                 <
    XRFC> SY_UNAME   :                                            <
    XRFC> HOSTNAME   :                                              <
    XRFC> SY_SID     : PRD                                                    <
    XRFC> SY_MANDT   : 300                                                    <
    XRFC> SYS_NR     : 19                                                     <
    XRFC> APPLSERVER :                                      <
    XRFC> ISPRESCHED : X                                                      <
    XRFC> DURATION   : 21810                                                  <
    XRFC> NETHDRTIME : 21810                                                  <
    XRFC> CALL_STATE : 2                                                      <
    XRFC> ERRORTYPE  : APPLFAIL                                               <
    XRFC> ERRORAREA  : APPL                                                   <
    XRFC> CTXDP_TYPE : SOAP_RUNTIME                                           <
    XRFC> SYNC_ASYNC : S                                                      <
    XRFC> LOCATION   : P                                                      <
    XRFC> DIRECTION  : I                                                      <
    XRFC> REQ_ID     : 91C57815916E421CA9F3D652FFACE9C7                       <
    XRFC> RESP_ID    : 00155D0B45301EE3BBFF89A0267EB5CE                       <
    XRFC> MSG_STATE  : 114                                                    <
    XRFC> IF_NAME_I  : ZSD_CS_CREATE_SALESORDER_SERVI                         <
    XRFC> IF_NS_E    : urn:sap-com:document:sap:soap:functions:mc-style       <
    XRFC> IF_NAME_E  : ZSD_CS_CREATE_SALESORDER_SERVI                         <
    XRFC> ISSHORTCUT :                                                        <
    XRFC> TRC_PATT   : WSTEST                                                 <
    XRFC> TRC_SSID   : PRD_19                                                 <
    XRFC> TRC_USER   :                                           <
    XRFC> TRC_TS     : 20140609173409                                         <
    XRFC> TRC_COUNT  : 99                                                     <
    XRFC> TRC_EXT    :                                                        <
    XRFC> COMPLETE   : OK                                                     <
    XRFC> CALLEDPROG : ZSD_CS_CREATE_SALESORDER_SERVI                         <
    XRFC> SOAP_APPLI : urn:sap-com:soap:runtime:application:rfc:710           <
    XRFC> CONF_ID    : 00155D0B45301EE3AEFDAD78756555CE                       <
    XRFC> BIND_ID    : 00155D0B45301EE3AEFDAD787565B5CE                       <
    XRFC> OP_NAME    : ZsdCsCreateSalesorder                                  <
    XRFC> COMM_PATRN : Method:ZsdCsCreateSalesorder                           <
    XRFC> OP_NS      : urn:sap-com:document:sap:soap:functions:mc-style       <
    XRFC> REMADDRESS : 172.16.11.43                                           <
    XRFC> DT_OBJ     : ZSD_CS_CREATE_SALESORDER_SERVI                         <
    XRFC> MEMCONSUMP : 296291                                                 <
    XRFC> WSHOST     :                                                        <
    XRFC> WSPORT     :                                                        <
    XRFC> WSPROT     :                                                        <
    XRFC> WSCLIENT   :                                                        <
    XRFC> WSPATH     :                                                        <
    XRFC> PXYHOST    :                                                        <
    XRFC> PXYPORT    :                                                        <
    XRFC> USEDRFCDES :                                                        <
    XRFC> BONAME     :                                                        <
    XRFC> PROCCOMP   :                                                        <
    XRFC> DEPLOYUNIT :                                                        <
    XRFC> ------------------------------------------------------------------  <
    XRFC>                                                                     <
    XRFC> TRACE SOAP RUNTIME - trace records                                  <
    XRFC>                                                                     <
    XRFC> ------------------------------------------------------------------  <
    XRFC> E SOAP_RUNTIME 20140609173429.7400000 : CL_SOAP_RUNTIME_SERVER      <
    XRFC> ->EXECUTE_PROCESSING Exception handling for IF "ZSD_CS_CREATE       <
    XRFC> _SALESORDER_SERVI" OP name "ZsdCsCreateSalesorder" MSG ID           <
    XRFC> "91C57815916E421CA9F3D652FFACE9C7" user "STULZWEBSERV"              <
    XRFC>                                                                     <
    XRFC>                                                                     <
    XRFC> E SOAP_RUNTIME 20140609173429.7240000 : CL_SOAP_RUNTIME_SERVER      <
    XRFC> ->EXECUTE_PROCESSING CX_SOAP_ROOT : An exception has occurred. |    <
    XRFC> program: CL_SOAP_RUNTIME_ROOT==========CP include: CL_SOAP          <
    XRFC> _RUNTIME_ROOT==========CM004 line: 120                              <
    XRFC>                                                                     <
    XRFC>                                                                     <
    XRFC> E SOAP_RUNTIME 20140609173429.7400000 : CL_SOAP_RUNTIME_SERVER      <
    XRFC> ->EXECUTE_PROCESSING CX_SY_NO_HANDLER : An exception with the type  <
    XRFC> CX_SY_OPEN_SQL_DB occurred, but was neither handled locally, nor    <
    XRFC> declared in a RAISING clause | program: SAPLSTXD include: LSTXDFDB  <
    XRFC> line: 200                                                           <
    XRFC>                                                                     <
    XRFC>                                                                     <
    XRFC> E SOAP_RUNTIME 20140609173429.7400000 : CL_SOAP_RUNTIME_SERVER      <
    XRFC> ->EXECUTE_PROCESSING CX_SY_OPEN_SQL_DB : The database returned a    <
    XRFC> value containing an error | program: SAPLSTXD include: LSTXDFDB     <
    XRFC> line: 227                                                           <
    XRFC>                                                                     <
    XRFC> ---------------------------------------------------------------------
    XRFC> End of user trace

  • Whats the difference between producing output and returning a value?

    I've just started learning Java. I am having difficulty understanding what it means to "return a value".
    If a method has an argument, then whenever this method is called the variable named will be used for output.
    If you create a method to return a new value rather than display it, you would exchange the 'void' for 'double' e.g. public static double predictRaise(double moneyAmount). My book states that a return statement causes a value to be sent from a called method back to the calling method. Their example is not clear to me. Here is what they show for when only 'output' is produced:
    <code>
    Public static void predictRaiseUsingRate (double money, double rate)// 2 arguments
              double newAmount;
              newAmount = money * (1 + rate);
              System.out.println (?With raise, new salary is ? + newAmount);
    </code>
    And their example of a returned value:
    <code>
    public static double predictRaise(double moneyAmount)
              double newAmount;     
              newAmount = moneyAmount * 1.10;
              return newAmount;
    </code>
    Their explanation: "This return statement causes a value to be sent from a called method back to the calling method. The value stored in newAmount is      sent back to any method that calls predictRaise() method."
    For some reason this is just not sinking in. Does anyone have a better example/explanation? I could not find anything with a better explanation in archives.
    Are they tring to tell me: "if the original method declares an argument that is declared as 257 in the method call, that when that same method is called again, it will always be 257? But if you do a return statement, any changes in the return statement will now always be used in all methods calling that method?
    Thanks for your help.
    Gizelle

    To use an older and possibly more easily understood terminology. Methods can either be "functions" almost in the mathematical sense or they can be "procedures" in the sense of a process.
    A function is a mapping between a "domain", its arguments, and a "range", its result. An example of a function in mathematics is cosine, which takes an argument in degrees or radians and returns a result between -1 and 1. In java functions are just methods that declare a result type. eg. public int foo(int arg).
    A procedure is a program that doesn't return any result, it's not something that fits well into mathematics, but it occurs all the time in real life. For example, walking the dog does not map something from a domain to a range, but it may have some side effects, which is why I always carry a plastic bag with me. Procedures in java are methods that are declared as "void". eg. public void foo(int arg).
    All the well known arithmetic operations are functions, they take one or two arguments in the domain of numbers and return a result in the same set. Eg, x = a + b, the operator + is a function that takes two numbers, calculates the arithmetic sum of them and returns a result. Functions are very handy since you can string them together, eg. z = a+foo(b)*max(c+d). This doesn't work with procedures.
    Procedures are often used for much longer and more involved operations, there is no immediate result, but a lot of things may occur while they run. Data may be printed on a screen or paper, a database or file may get updated and email messages might get send. But no other expession is waiting for a resulting value so it can carry on. Procedures may also happen asynchonously, ie. outside the timeframe of their caller, see threads. Functions cannot do this, or if they do, they turn into procedures by throwing away their result. For example, you can schedule a procedure to send an email to your friends every Friday inviting them to go out for drinks, but you don't wait around for the result.
    In a way functions are a bit like phone calls, you wait for a response, procedures are more like snail mail, you send it off and check on what happened later.
    I hope this helps.

  • T-SQL: SET Statement Using a Case Statement is not returning a value

    SQL VER:  2008
    Please see the attached screenshot from SSMS.  The Set statement  below is not returned a value or may be returning a zero value.  The AllocPercent field is set to zero in code preceeding this Update Statement:
    AllocPercent
    =
    CASE
    WHEN AllocBase
    IS
    NULL
    OR AllocBase
    = 0
    THEN 0
    ELSE PM_Input/AllocBase
    END
    As you can see by the screen shot from the Select Statement that is displaying the results after the Update Statement is completed, the value of AllocPercent is = 0 even though all the values necessary for it to compute a value > 0 are present in the
    table.  Incidentally, the values in both the AllocBase and PM_Input fields are the same before the Update Statement is ran, as shown in the Select ran after the Update Statement.
    I have ran this type of code several times with never a problem.  This seems really simple, but I just can't seem to get it to compute. 
    Any help would be greatly appreciated.
    Regards,
    bob sutor
    Bob Sutor

    Yep--This statement is running in a Stored Procedure and inside its own block statement.
    I did get a response that suggested I change the SET statement as follows, that worked:
    AllocPercent
    = CASE WHEN AllocBase IS NULL OR AllocBase = 0 THEN 0.00 ELSE cast(PM_Input*1.0/AllocBase*1.0
     as decimal(6,2)) END
    Your response did get me thinking which was great!  I appreciate your help.
    Regards,
    ...bob sutor
    Bob Sutor

  • Will a sequence return same value for two different sessions?

    Is there a possibility that a sequence will return same value to two different sessions when it is referred exactly at the same instance of time?

    @Justin... Thanks for your insight; indeed, we too feel this shouldn't ever happen and never heard of it either, but there it is. (No, we haven't logged a TAR yet -- whatever that is -- partly because it didn't occur to us and partly because we only recently came across the issue and sensibly want to do some testing before we cry foul.)
    However, the code is pretty straight-forward, much like this (inside a FOR EACH ROW trigger body):
    SELECT <seqname>.NEXTVAL INTO <keyvar> FROM DUAL;
    INSERT INTO <tblname> (<keyfield>, <... some other fields>)
    VALUES(<keyvar>, <... some other values> );
    (where <tblname> is NOT the table on which the trigger is fired). This is the only place where the sequence is ever accessed. The sequence state is way below its limits (either MAXVALUE or <keyfield>/<keyvar> datatype size).
    In this setup, end users sometimes got an out-of-the-blue SQL error to the effect that uniqueness constraint has been violated -- as I said, we used to have a unique index on <keyfield> -- which leads us to assume that the sequence generated a duplicate key (only way for the constraint to be violated, AFAIK). We released the constraint and indeed, using a simple SELECT <keyfield>, COUNT(*) FROM <tblname> GROUP BY <keyfield> HAVING COUNT(*)>1 got us some results.
    Unfortunately, the <tblname> table gets regularly purged by a consumer process so it's hard to trace; now we created a logger trigger, on <tblname> this time, which tracks cases of duplicate <keyfield> inserts... We'll see how it goes.
    @Laurent... winks at the CYCLE thing Our sequence is (needless to say) declared as NOCYCLE and the datatype is large enough to hold MAXVALUE.

  • Parameter not returning all values

    I have a crystal report built off an oracle DB.  For one parameter it is not returning all values.  I can display data or the entire table it shows me all values, but when i build a parameter it only shows me through August.  It is a date/time field.

    check the following thread
    [Dynamic Parameter only showing 1000 records when Crystal report is run.;
    regards,
    Raghavendra.G

  • How to get a function to return a value occuring after a character

    I need to write a function to return the next value occurring after the ":" character in a column. If multiple values of ":" occurs then the function should return the sum of the next value occurring after each ":" in the column.
    For example a rating value of 4:1 would return the value of 1. However, the rating of "5:1:1" should return a value of 1+1 = 2, and 6:2:1 will return of 2+1 = 3.
    I have the below function skeletion and trying to figure out how the select statement will compute based on the position of : in the column and add the values and return the value back to function.
    Function fn_check_internalrating(p_internalrating IN VARCHAR2)
          RETURN number
    IS
        cnumber number;
        cursor c1 is
       select ................................
    BEGIN
    open c1;
    fetch c1 into cnumber;
    close c1;
    RETURN cnumber;
    EXCEPTION
    WHEN OTHERS
    THEN RETURN NULL;
    END;

    Hi,
    You don't need a cursor: there's no table involved in this function, and no point in using any table.
    Here's one way:
    CREATE OR REPLACE FUNCTION  fn_check_internalrating
    (   p_internalrating   IN   VARCHAR2
    ,   p_delimiter            IN   VARCHAR2     DEFAULT     ':'
    RETURN  NUMBER
    DETERMINISTIC          -- Same input always produces same output
    IS
        cnumber     NUMBER     := 0;               -- value to be returned
        pos          PLS_INTEGER := INSTR ( p_internalrating
                                        , p_delimiter
                             );          -- position where delimiter was found
    BEGIN
        WHILE  pos != 0
        LOOP
            cnumber := cnumber + TO_NUMBER ( SUBSTR ( p_internalrating
                                                  , pos + 1
                                         , 1
         pos := INSTR ( p_internalrating
                          , p_delimiter
                   , pos + 1
        END LOOP;
        RETURN cnumber;
    END fn_check_internalrating;
    SHOW ERRORSThis assumes the function is a stand-alone function. If it's part of a package, you don't say CREATE OR REPLACE at the beginning.
    Try to make functions generic, so that if a similar (but not identical) situation comes up in 6 months from now, you can use the same function. I'm guessing that somethimes you may want to do the same thing with some character other than ':' before each number, so I added the 2nd (optional) argument p_delimiter. You can call the fucntion with either 1 or 2 arguments.
    If an error occurs in a PL/SQL fucntion, an error message (showing the exact location of the error) is displayed, and execution halts. If you use an EXCEPTION sectinn, you lose all that functionality, or have to code it yourself. Only use an EXCEPTION handler when you really have to.
    For this function, you may or may not want to. For example, if the character right after a delimiter is not a digit, the call to TO_NUMBER in function will raise "ORA-01722: invalid number". You may want to catch that error in an exception handler, and return 0 or NULL. On the other hand, you may want to test that the character after the delimiter is a digit before calling TO_NUMBER, and not have an EXCEPTION section.
    What else could go wrong? Try to think of potential problems and fix them when you first write the function. If you discover an error next year, you'll have to spend a fair amount of time finding the function, and getting acquainted with it again.
    What should the function return if p_internalrating is NULL, or doesn't contain any delimiters?
    What if there's a number longer than 1 digit after a delimiter, e.g. '6:78:9'?

  • Help with an SQL Expression - Return field value where Datetime is Min or First datetime

    Hello,
    I'm extracting results for a patient population.
    I have 6 SQL expressions that pull back the first date for specific procedures or Medications being ordered.
    These Expressions work perfect - One of the expressions return the first time a lab was ordered.
    I'm using SQL that return
    Min(OrderDatetime)
    From OrderTable
    Where
    LABCode = XXX
    I've now been ask to return the value of this lab result.
    Question: How do I write an SQL expression that return the Lab value of the Min(OrderDatetime)
    Example Data
    PATID* LABID * OrderDatetime * ResultValue
    Pat1*133 * 12/12/2013 11:00:pm * 77
    Pat1*145 * 12/12/2013 11:45:pm * 45
    Pat1*147 * 12/13/2013 12:10:AM * 78
    I was to return 77
    Thanks
    Steve

    Here is what I came up with but I'm getting an error -
    Subquery returned more than 1 value. This is not permitted when the subquery follows =, !=, <,>,>= or when the subquery is used as an expression.
    Any thoughts on what I'm doing wrong?
    SELECT LABRESULTS.ORDER_VALUE as LabResult
      FROM   LABRESULTS, ORDERS_PROD, PATIENT_HSP
      WHERE
    "ORDERS_PROD"."CSN_ID" = "LABRESULTS"."CSN_ID" AND
    "ORDERS_PROD"."ORDER_PROC_ID" = "LABRESULTS"."ORDER_PROC_ID" AND
    ORDERS_PROD.ORDER_INST IN     (
                                  SELECT Min(ORDERS_PROD.ORDER_INST)
                                  FROM   ORDERS_PROD
                                  WHERE "PATIENT_HSP"."CSN_ID" = "ORDER_PROD"."CSN_ID" AND
                                  ("ORDERS_PROD"."ORDER_STATUS_C"<>4 OR
                                  "ORDERS_PROD"."ORDER_STATUS_C"<>9) AND
                                  "ORDERS_PROD"."FUTURE_OR_STAND" IS  NULL AND
                                  "ORDERS_PROD"."REASON_FOR_CANC_C" IS  NULL AND
                                  ("ORDERS_PROD"."PROC_CODE" = 'LAB7764' OR
                                  "ORDERS_PROD"."PROC_CODE" = 'LAB7765' OR
                                  "ORDERS_PROD"."PROC_CODE" = 'LAB7766' OR
                                  "ORDERS_PROD"."PROC_CODE" = 'LAB7767')

  • UPDATE ... RETURNING does not return new value

    Hi all,
    I've created the following objects in Oracle DB 10.2.0.3.0:
    CREATE TABLE TAB1
         ID          NUMBER          PRIMARY KEY,
         EDITED_AT     DATE,
         VALUE          VARCHAR2(64)
    CREATE SEQUENCE S_TAB1
         INCREMENT BY 1
         START WITH 1;
    CREATE TRIGGER T_TAB1_BIE
    BEFORE INSERT OR UPDATE ON TAB1
    FOR EACH ROW
    BEGIN
         IF INSERTING THEN
              SELECT S_TAB1.NEXTVAL INTO :NEW.ID FROM DUAL;
         END IF;
         :NEW.EDITED_AT := SYSDATE;
    END;
    /Then I tried to do the following in SQL Plus:
    SQL> insert into tab1(value) values('ddd');
    1 row created.
    SQL> commit;
    Commit complete.
    SQL>
    SQL> select * from tab1;
            ID EDITED_AT           VALUE
             1 27.03.2008 17:01:24 ddd
    SQL>
    SQL> declare dt date; val varchar2(64);
      2  begin update tab1 set value = 'ddd' where id = 1 returning edited_at, value into dt, val;
      3  dbms_output.put_line('txt = ' || dt || ', ' || val);
      4  end;
      5  /
    txt = 27.03.2008 17:01:24, ddd
    PL/SQL procedure successfully completed.
    SQL>
    SQL> select * from tab1;
            ID EDITED_AT           VALUE
             1 27.03.2008 17:02:12 ddd
    SQL>As it can be seen Returning clause of an Update statement does not return a new date, i.e. 27.03.2008 17:02:12, that was updated by the trigger, it returns an old one - 27.03.2008 17:01:24. Please advise me why Database returns an old value? I do believe that UPDATE ... RETURNING ... statement should return new, generated by the trigger, value.
    Thanks in advance.
    Regards,
    Yerzhan.

    you need to explicitly include the column in your UPDATE statement SET clause that you expect to return the result you want it to be. here's what i think what happened even though you have a trigger the first statement that was processed was your update statement. at the time of the update it has to return the current values to the returning clause that is the values on the table. now comes next the trigger which gives edited_at column a new value. when the trigger got fired the process don't return anymore to the UPDATE RETURNING statement. it's like each sequence of codes does not executes in parallel.
      SQL> CREATE TABLE TAB_1
        2  (
        3   ID  NUMBER  PRIMARY KEY,
        4   EDITED_AT DATE,
        5   VALUE  VARCHAR2(64)
        6  );
      Table created.
      SQL> CREATE SEQUENCE S_TAB1
        2   INCREMENT BY 1
        3   START WITH 1;
      Sequence created.
      SQL> CREATE TRIGGER T_TAB1_BIE
        2  BEFORE INSERT OR UPDATE ON TAB_1
        3  FOR EACH ROW
        4  BEGIN
        5   IF INSERTING THEN
        6    SELECT S_TAB1.NEXTVAL INTO :NEW.ID FROM DUAL;
        7   END IF;
        8   :NEW.EDITED_AT := SYSDATE;
        9  END;
       10  /
      Trigger created.
      SQL> insert into tab_1(value) values('ddd');
      1 row created.
      SQL> commit;
      SQL> select * from tab_1;
              ID EDITED_AT            VALUE
               1 28-mar-2008 10:31:18 ddd
      SQL> declare dt date; val varchar2(64);
        2  begin update tab_1 set value = 'ddd', edited_at = sysdate
        3        where id = 1 returning edited_at, value into dt, val;
        4  dbms_output.put_line('txt = ' || dt || ', ' || val);
        5  end;
        6  /
      txt = 28-mar-2008 10:32:39, ddd
      PL/SQL procedure successfully completed.
      SQL> select * from tab_1;
              ID EDITED_AT            VALUE
               1 28-mar-2008 10:32:39 ddd
      SQL>

  • MessageChoice does not return correct value

    Hi
    I am problem with MessgeChoiceBean's improver beharior
    For the first time it retunrs blank and subsequently In one page if I select Yes, it returns No.
    In another page it does not return any thing for the first two selections. And I reciev flip values.
    I ran VO outside, VO is returning correct values.
    MessageChoice attributes and associated PPR:
    Data Type: Varchar2
    Initial Value: N
    Pick List view Definition: oracle.apps.xxx.docs.common.lov.server.YesNoVO
    Pick List View Instance: YesNoVO3
    Pick List Display Attribute: Meaning
    Pick List Value AttributeL LookupCode
    ActionType: firePartialAction
    Event: handleNewLocationFlagChange
    Parameter Name: newLocationFlag
    Parameter Value: ${oa.CustomerInfoVO1.NewShipToLocationFlag}
    ProcessParameterForm Code:
    if ("handleNewLocationFlagChange".equals(event))
    String newLocationFlag = pageContext.getParameter("newLocationFlag");
    Serializable[] parameters = { ""+newLocationFlag};
    Class[] paramTypes = { String.class};
    am.invokeMethod("handleNewLocationFlagChange", parameters, paramTypes);
    VO definition:
    select LOOKUP_CODE,MEANING
    FROM ONLINE_DOCS_LOOKUPS
    WHERE ONLINE_DOCUMENT_CODE = 'ALL'
    AND LOOKUP_TYPE = 'YESNO'
    ORDER BY ATTRIBUTE1
    View output:
    LOOKUP_CODE     MEANING
    N     No
    Y     Yes
    I have quite a bit number of columns to change render property.
    Any help will be appreciated.
    Thanks
    Prasad

    Your question is not clear, are you saying the values in the messageChoiceBean is not displayed properly. As far as I can see from the definition the poplist picks the values from a lookup(Yes, No) values and has a PPR action associated with it. Did you check what this method handleNewLocationFlagChange is doing in the AM ?

  • Is that posible: return a value and AFTER THAT calculate next one?

    I would like for better performance have a functionality to, first, return a value (prepared already), after that calculate a next one for next call.
    Is that any way to perform it some how in PL/SQL?
    After some time I have guess the next way:
      Have a table with current and next value
      On request read and return next.
      To update have a trigger on select to move the next value to the current and calculate the next-to-current into the 'next' column.
      Thus, I would need to have 'init'-procedure to set: table, if not exist; trigger, if not exist; set current (the first one) and next one into that table.
    It just a plan; I am not sure if all doable.
    But it seems kind of heavy.
    Is it possible to have it simpler?

    - I do not ask you to judg my task, processing, reasonability or an idea of sequence implementation.
    That's the beauty of the forums - you get that extra help without having to ask!
    Also I am not asking to help me in anything!
    I do not have any assignment and do not need to anyone resolve my requirements!
    Of course you are asking for help when you post on the forums; that is what they are here for.
    And to get the best help you need to respond to the questions of the people that are trying to help you. You never responded to what both ramin and gaverill ask you above:
    What is your objective? What problem are you trying to solve? Why is it not 'acceptable' to simply calculate the 'next' value when you need it?
    For some reason you think using the DBMS_SCHEDULER is 'helpful' but you don't seem to realize that a job is going to be asynchronous to whatever else you are doing. Your code may need a value before the job is finished computing it.
    Without knowing the PROBLEM you are trying to solve no one can help you find the most appropriate solution. And using a custom table to roll your own sequence generator is almost ALWAYS the wrong thing to do for both performance and scalability reasons.

  • Vanilla dashboard prompt returns no values

    Hi,
    An existing simple dashboard prompt, which worked perfectly before, has now stopped returning any values for a text field from the time dimension, though other dimensions work normally on the same prompt.
    The behaviour is that the prompt drops but never displays any values to select, clicking search gives similar lack of values.
    Creating an analysis on the same dimension member shows that values exist, and functionality here seems entirely normal.
    Recreating the dashboard prompt does not fix this, and certain other dimensions (though not all) also manifest this behaviour.
    The version of OBIEE is 11.1.1.6.5
    Anyone experienced this, have we run into a bug?
    (Edit => Sorry - meant to add that identical repository and same OBIEE version installed on a local client does not manifest the same behaviour with identical looking data though different version of underlying database which in this case is sqlserver)
    thanks for any help,
    Robert.
    Edited by: Robert Angel on Jan 24, 2013 1:53 AM

    Hi,
    the client tried changing a repository setting that they had suspicions about by reloading a new version of the repository, this action would clear the caches would it not?
    regards,
    Robert.

Maybe you are looking for

  • How to use a 3rd party source control tool with RoboHelp?

    Hello, I would like to set our RoboHelp users up with source control.  They are using RoboHelp HTML 8.0. Our software developers are using the AccuRev scm system; I'd like the doc team to use AccuRev, too. Can someone direct me to RoboHelp documentat

  • Do i have to delete all files on my external hard drive, to make a Backup of my Macbook?

    Hi! I Have a MacBook Pro, and i want to make a Backup of it (with help from Time Machine.) - To a external hard drive, but, i have one little issue, and that is that i already have other files on that external hard drive, (from other computers..) but

  • How to change calender format in portal

    Hi, I have a leave request screen in ESS of portal. The calender pops up in the field select from and to date. I would like to change the format of this calender popup which currently displays week from Monday - Sunday   to Saturday - Friday. Is ther

  • Buying iPod touch – how to find out whether it is a box with FW 1.1.3?

    Hi, does anyone know from which serial number on the iPod touch 16 GB model does come with firmware 1.1.3 or higher from factory? How can I find out whether firmware 1.1.3 is shipped on a sealed iPod touch in retail stores? Want to buy in Germany. Ch

  • Remove carriage return between text two objects

    How to remove carriage return between objects.  I have a text box and table  I want to remove carriage return between them.  Also I have a table with two columns and I want to remove carriage return between these two columns. Thank You in advance.