Branching after validation

I have a page with 2 region, where the second one is only shown when a request is in expression1.
On this second region, a date can be entered, and after submitting the page, a validation on the date is done. When the validation fails (returns false), i want the same page, including the second region, but it seems that, when htmldb returns with an error from a validation, it ignores the request , so i only see my first region. Because the required request var. for showing the second region is not found.
I cannot use an application level item (set when error) as a condition to display my second region as i already use the conditional display using the request=expression1 condition. And there is no way to mix both.
Anybody any ideas how that i can solve this simple problem ? (i just want an error on my region when the date is wrong )

Chris - You can code multiple conditions into one using the PL/SQL Expression condition type, e.g., :REQUEST = 'foo' and :ITEM1 = 'abc'.
You can also code validations so that they set session state (like page or app items) in the body of their PL/SQL implementation.
It's true that the request value is not maintained during the redisplay of the page when a validation error occurs. You have to design your page around that using other techniques.
Scott

Similar Messages

  • Conditional branch, after authentication

    We have recently implemented a list of passwords that users are not allowed to use. Basic stuff like 1234, abcd etc.
    I currently use a custom authentication, so i can quite easily stop a user from changing their password to a dissallowed one. But my issue is that i want to force current users to changer their current password if it breaks the new rules.
    I think that i should allow them to authenticate themselves using their current password, and then do a check to see if they should be branched to a specific screen to change their password.
    Basically i want to do a conditional branch after authentication.
    anybody implemented something similar? or anyone have any ideas?

    Create an application process - On Load: Before Header ....
    using a similar PL/SQL block like in my case:
    BEGIN
       IF NOT custom_authentication_pkg.password_valid (:app_user)
       THEN
          HTMLDB_APPLICATION.g_unrecoverable_error := TRUE;
          OWA_UTIL.redirect_url
                               ('f?p=&APP_ID.:102:&APP_SESSION.:PASSWORD_INVALID');
       END IF;
    END;and make this process conditional so it doesn't fire if the current page is in
    101 - login page
    102 - page for changing passwords
    Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.opal-consulting.de/training
    http://apex.oracle.com/pls/otn/f?p=31517:1
    ------------------------------------------------------------------------------

  • After validation want to state maintain of h:outputText /

    Hi,
    I have some fields with validation,
    after validation want to state maintain of <h:outputText />
    <h:outputText id="form_title" value="#{viewCDBean.form_title}"/>
    <h:outputText id="output1" value="Title"/><h:inputTextarea id="cd_title" value="#{viewCDBean.cd_title}" rows="2" cols="40" required="true"></h:inputTextarea><h:message for="cd_title" style="color:red"/>

    Add a h:inputHidden component which saves the h:outputText value for the next request.

  • Different style to InputText box after validation fails in JSF 1.0

    Hi, In JSF 1.0, I would like to change the style to the inputText box after validation fails. Pls kindly advise.
    Thanks

    You may find this article useful: [http://balusc.blogspot.com/2007/12/set-focus-in-jsf.html].
    That said, if you're using JSF 1.0, you can (and should) always upgrade to at least 1.1_02. It is available at [http://javaserverfaces.dev.java.net].

  • JSF keeps displaying old values after Validation Phase fails

    Hi all,
    I would like to ask some help in understanding a particular behaviour that JSF shows when Validation Phase fails.
    I'm using:
    - Tomcat 7.0.2
    - JSF 1.2_12
    - RichFaces 3.3.3
    Problem description.
    I wrote a form with 4 input fields: an inputText and 3 selectOneMenu. The inputText is required while the selectOneMenus don't require any validation.
    Attached to the first selectOneMenu (row 32), is an a4j:support tag so that, whenever the change event is fired, the list of items of the second
    and the third selectOneMenu (row 44 and 58) are correctly filled (note that the mandatory of the inputText is ignored thanks to the ajaxSingle attribute).
    In particular, after loading the two lists of items, the actionListener forces the value of the second and the third selectOneMenu to null.
    This mechanism seems to work fine until I submit the whole form without filling the input text: as expected, JSF validation fails but if I change the value of
    the first selectOneMenu again (causing a new submit), the page keeps displaying the values specified before JSF validation failed for the second and the third
    selectOneMenu (note that the actionListener is still called and the values of the second and the third selectOneMenu are still forced to null).
    Since I'm using a simple PhaseListener, I noticed the following: before JSF validation fails, every time I change the value of the first selectOneMenu, JSF life
    cycle always calls the get method for the second and the third selectOneMenu during the Render Response Phase. In this way, JSF is able to "see" that
    those values have been set to null during the Invoke Application Phase.
    After validation fails, JSF stops calling those getters when I change the value of the first selectOneMenu.
    I hope my explanation was clear enough, thanks a lot for your help.
    Regards,
    Nico
    Web Page
    <?xml version='1.0' encoding='UTF-8' ?>
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
                          "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml"
          xmlns:f="http://java.sun.com/jsf/core"
          xmlns:h="http://java.sun.com/jsf/html"
          xmlns:a4j="http://richfaces.org/a4j"
          xmlns:rich="http://richfaces.org/rich">
    <head>
      <title>Prove Rich</title>
    </head>
    <body>
      <h2>Prove Rich</h2>
      <f:view>
      <a4j:outputPanel ajaxRendered="true">
        <h:messages style="color:red" />
      </a4j:outputPanel>
      <h:form>
      <p>
         Input required: <h:inputText value="#{provaProbReplyBean.inputRequired}" required="true" />
      </p>
      <p>
           <h:outputText value="Scegli il canale:" />
           <h:selectOneMenu value="#{provaProbReplyBean.canale}">
            <f:selectItem itemLabel="--" itemValue="" />
            <f:selectItem itemLabel="Profamily" itemValue="Profamily" />
            <f:selectItem itemLabel="Captive" itemValue="Captive" />
            <a4j:support event="onchange" action="#{provaProbReplyBean.caricaProcBanche}"
                                  ajaxSingle="true" reRender="procedure, banche" />
         </h:selectOneMenu>
      </p>
      <p>
           <h:outputText value="Scegli la procedura:" />
           <h:selectOneMenu id="procedure" value="#{provaProbReplyBean.procedura}">
            <f:selectItem itemLabel="--" itemValue="" />
            <f:selectItems value="#{provaProbReplyBean.procedureList}" />
            <!-- immediately save the current value -->
            <a4j:support event="onchange" ajaxSingle="true" />
         </h:selectOneMenu>
      </p>
      <p>
           <h:outputText value="Scegli la banca:" />
           <h:selectOneMenu id="banche" value="#{provaProbReplyBean.banca}">
            <f:selectItem itemLabel="--" itemValue="" />
            <f:selectItems value="#{provaProbReplyBean.bancheList}" />
            <!-- immediately save the current value -->
            <a4j:support event="onchange" ajaxSingle="true" />
         </h:selectOneMenu>
      </p>
      <p><h:commandButton value="Submit" /></p>
      </h:form>
      </f:view>
    </body>
    </html>
    Bean
    public class ProvaProbReply {
         private String inputRequired;
         private String canale;
         private String procedura;
         private String banca;
         private Map<String, List<SelectItem>> canaliProc = new HashMap<String, List<SelectItem>>();
         private Map<String, List<SelectItem>> canaliBanche = new HashMap<String, List<SelectItem>>();
         private List<SelectItem> procedureList = new ArrayList<SelectItem>();
         private List<SelectItem> bancheList = new ArrayList<SelectItem>();
         public ProvaProbReply() {
              List<SelectItem> l = new ArrayList<SelectItem>();
              l.add(new SelectItem("Cessione del quinto"));
              l.add(new SelectItem("Credito al consumo"));
              l.add(new SelectItem("Mutui"));
              canaliProc.put("Profamily", l);
              l = new ArrayList<SelectItem>();
              l.add(new SelectItem("Credito al consumo"));
              canaliProc.put("Captive", l);
              l = new ArrayList<SelectItem>();
              canaliBanche.put("Profamily", l);
              l = new ArrayList<SelectItem>();
              l.add(new SelectItem("BDL"));
              l.add(new SelectItem("BM"));
              l.add(new SelectItem("BPM"));
              l.add(new SelectItem("CRA"));
              canaliBanche.put("Captive", l);
         public String getInputRequired() {
              return inputRequired;
         public void setInputRequired(String ir) {
              inputRequired = ir;
         public String getCanale() {
              return canale;
         public void setCanale(String c) {
              canale = c;
         public String getProcedura() {
              System.out.println("\ngetProcedura called\n");
              return procedura;
         public void setProcedura(String p) {
              procedura = p;
         public String getBanca() {
              System.out.println("\ngetBanca called\n");
              return banca;
         public void setBanca(String b) {
              banca = b;
         public List<SelectItem> getProcedureList() {
              return procedureList;
         public List<SelectItem> getBancheList() {
              return bancheList;
         public String caricaProcBanche() {
              System.out.println("\nListener called\n");
              procedureList.clear();
              bancheList.clear();
              if(canale != null && !canale.equals("")) {
                   procedureList.addAll(canaliProc.get(canale));
                   bancheList.addAll(canaliBanche.get(canale));
              System.out.println("BEFORE setting:\n");
              System.out.println("\nProcedura: "+procedura+"\n");
              System.out.println("Banca: "+banca+"\n");
              procedura = null;
              banca = null;
              System.out.println("\n\n\nAFTER setting:\n");
              System.out.println("\nProcedura: "+procedura+"\n");
              System.out.println("Banca: "+banca+"\n");
              return "";
    }Edited by: 869000 on 28-giu-2011 14.05

    I'm thinking this has to do with the fact that the UIComponents use the localValue after validation fails. This prevents the values from being overwritten when re-rendering the page, i.e. the inputs keep the value set by the user.
    The solution is to manipulate the components directly during the AJAX request when the first pull down is changed. Use the binding attribute to place them into your bean and clear the value directly. That way it will not matter that the expression is not evaluated.

  • Computation after Validation -  possible?

    I there any way to set that computation is triggered after validation.
    I have status field that is set as Draft when users submit form computation changes its value to Submitted.
    The problem is that I have also few fields that should be present before form is submitted.
    What happens is that because status has been changed to submitted, my button disappears also (its condition is to show when status field is Draft only).
    Any suggestions.
    Thanks

    Any process on submit (after computations and validations) is equal to a computation on submit. Only the process point is different. There is no computation after validation.
    Denes Kubicek
    http://deneskubicek.blogspot.com/
    http://www.opal-consulting.de/training
    http://apex.oracle.com/pls/otn/f?p=31517:1
    -------------------------------------------------------------------

  • User able to execute Tcode after validity of role is over

    Dear all,
    we have given a temporary access to the transaction MR21  to the user for one day but the user was able to use this transaction after validity of role is over.  screen in SU01 shows the role is already expired to her.Is this due to bug or incomplete maintenance nodes in the role

    Hi ,
    Use SUIM make sure that the user does not have that transaction in any other role in his profiles
    second find the role which has the transaction for him .
    Delete that specific role/roles
    Then run  SUPC and PFUD if its a development box or talk to basis  if your project policy is to run this as background job.
    If all the above steps were already done then use ST01(trace) to find what is allowing the user to succeed with the transaction and disable that object.
    Cheers

  • Clear Item Cache after validation failure

    Hi Guys,
    I have a page validation that fires when two items (P6_LOCATOR_ID & P6_NEW_LOCATION) are equal which is working OK.
    The field validation is on the P6_NEW_LOCATION field.
    When this validation is true, I want the validation message to appear as it is now, but I want the P6_NEW_LOCATION to be reset to null or the cache for that item cleared.
    I cant run it as a page process after computations and validations because it never gets passed the validations to initiate. I have also tried creating a clear item cache process after the button that initiates the validation is pressed, but again that doesnt work.
    Can anyone think of another way that it can be done?
    Thanks
    Chris

    VC wrote:
    Cashy wrote:
    Thanks for that VC,
    I am getting following error now when it is running
    Error ERR-1002 Unable to find item ID for item "2" in application "195".
    I have set :P6_LOCATOR_ID and :P6_NEW_LOCATION = 2 as the test. When I try to set them both to other numbers i.e. 1,3,4 etc the same error message is returned with the item in the quotes changing for each.
    when you are setting the value use assignment operator
    :P6_NEW_LOCATION := 2
    I am guessing that it might have something to do with the page branching back to itself after the validation is fired?
    Thanks
    HI VC,
    Thanks for that. I am not setting the value of :P6_NEW_LOCATION programatically, I am just putting the value 2 into the field item and pressing the 'submit' button behind which the validation is running.
    Thanks for your help

  • Conditional branching after page submit

    Hi all
    I have a page where I need to submit and process the page and items(insert and update database) then branch to a certain page depending on which button was pressed. I have 4 buttons and each button should go to a different page, each button also needs to submit the page and process data(using an Apex DML process and passing 'SAVE' request in each button). the problem I'm having is that no matter which button I press the 'app branches to the first branch. I have 4 branches set to run after the process. Each branch should go to a different page depending on the button pressed. In each branch I have made the branch conditional based on the button pressed.
    APEX seems to ignore the button condition(in Debug) it says unconditional even though the button is definitely conditional.
    I'm running Apex 4.2.2
    It seems as though when I pass a Request of 'SAVE' Apex treats all buttons with this request in the same manner?Regardless of which button was pressed?
    Any ideas or alternatives?
    Thankyou
    Andrew

    Your problem is with setting the request of all the buttons to "SAVE", it will always fire the first branch for all those buttons.
    If you edit the DML process you will see the following:
    Valid Update Request Values:
    SAVE, APPLY CHANGES, UPDATE, UPDATE ROW, CHANGE, APPLY, APPLY%CHANGES%, GET_NEXT%, GET_PREV%
    This tells you the request values that will perform an Update DML.
    You could have one button be "SAVE", another, "APPLY CHANGES", another "UPDATE", and another "CHANGE".  They will all do the update DML for you and then the branches will have different request values to trigger off of.
    Another option is to set the request of each button like this:
    Button 1 - APPLY_CHANGES_INV
    Button 2 - APPLY_CHANGES_SALE
    Button 3 - APPLY_CHANGES_DELIV
    Button 4 - APPLY_CHANGES_INSTALL
    These would satisfy the valid update request value of APPLY%CHANGES%

  • Refresh of Master/Detail does not work after validation failure

    After page validation stops further page processing of a Master Detail page,  I get the following Oracle Error on display of the Detail portion :
    <code>
    ORA:01445: Cannot select ROWID from, or sample, a join view without a key preserved table.
    ORA-06510 - PL/SQL unhandled user-defined exception.
    </code>
    Any clues as to why this might occur?  The Master portion of the page displays fine along with the appropriate custom validation error message. It is just the detail portion (from a SQL based report) that is causing the problem.  I do not use a ROWID either! 
    Thanks!

    Just an FYI for everybody who may have this very same problem in the future.  I fixed the error and it had nothing to do with ROWID or views or anything like that.  Under the Page Rendering section where you define the region definition under the source section, I had included the 'order by' clause in my SQL statement.  This was the cause of my ORA-01445 error!  When I removed the clause from the source definition and instead included it within the Report Attributes by checking the Sort box for the appropriate column (thus allowing APEX to generate the sort for me), the error disappeared!  The Oracle error message would NEVER have given me a clue into what caused the error.  I just happened to think 'what if I take the order by clause out'!  How's that for a flukey fix! 

  • VPD "Lost" after validation fails

    Hi,
    We have a custom in house VPD. In the application security section, under VPD, we call a procedure which sets our security context client_id in order to be used to make context references within secure views.
    In our page we have a simple select list which is run against a "secure" view. Once the user selects a value they hit continue to go on. A validation is put in place to make sure that a value has been selected.
    If the validation fails, we go back to the page and the validation error message displays (as it should) however the select list has no values. After doing a lot of testing, references to any view that uses the VPD returns no values when a validation fails.
    We've done some test and it appears that the following happens:
    - On a page submit the VPD function gets called (as per the application security / vpd)
    - Validations are performed
    - If validation fails, run: dbms_session.clear_identifier;
    - Load the page along with the appropriate error messages.
    Is this correct? Is their anyway around this?
    We have tried to set an application process to run before header which would run the same function as that called in the VPD section, however the process isn't run when a validation fails.
    Thank you,
    Martin

    APEX sets client identifier to: APP_USER:APP_SESSION. CLIENT_INFO is set to just APP_USER. Try the following query from the SQL Workshop as well as a region on a page to give you a better idea of what APEX sets:select sys_context('USERENV','CURRENT_SCHEMA') CURRENT_SCHEMA,sys_context('USERENV','SESSION_USER') SESSION_USER,
           sys_context('USERENV','MODULE') module,sys_context('USERENV','ACTION') action,
           sys_context('USERENV','CLIENT_INFO') CLIENT_INFO, sys_context('USERENV','CLIENT_IDENTIFIER') CLIENT_IDENTIFIER
      from dualI would probably include the IP Address of your HTTP Servers in the policy to make sure it's not someone connecting from SQL*Plus: sys_context('USERENV', 'IP_ADDRESS')
    Tyler

  • How do i call servlet from javascript after validation the javascript

    Hi ,
    Can anyone tell me how to call a servlet after the javascript is being validated. Here is my code to validate javascript i need to call a servlet inorder to save the data into the same form. I tried calling through the action method in the form but its directly taking me to the servlet but not validating the form. Is there any way that i can validate the form first then call the servlet.
    Thanks in advance.
    <html>
    <head>
    <title>Online Blog</title>
    <script language ="javascript" type ="text/javascript">
    function myfunction()
    var mesg = "";
    var dmesg = "";
    var dnumber = 0;
    var number = 0
    var Blogstr = document.onlineblog.BlogName;
    var Fnamestr = document.onlineblog.FirstName;
    var Lnamestr = document.onlineblog.LastName;
    var Datestr = document.onlineblog.Dateformat;
    var Imagestr = document.onlineblog.uploadimage;
    var Imageval = Imagestr.value;
    var flength = parseInt(Imageval.length) - 3;
    var fext = Imageval.substring(flength,flength + 3);
    var Dateval = Datestr.value;
    var Dformat = /^\d{2}\/\d{2}\/\d{4}/; //checks the date format.
    //splits date into mm, dd , yyyy format.
    var m = Dateval.split("/")[0];
    var d = Dateval.split("/")[1];
    var y = Dateval.split("/")[2];
    //Get today's date (removes time).
    var today = new Date();
    var dd = today.getDate();
    var mm = today.getMonth()+1;
    var yyyy = today.getFullYear();
    //checks if month and date are displayed in mm, dd format and if not sets to mm,dd.
    if (mm <10)
    mm = '0'+mm;
    if (dd <10)
    dd = '0'+dd;
    //checks if name of the blog is empty
    if(Blogstr.value == "")
    number = number+1;
    mesg += "\n" + number + "Name of the blog";
    //checks if value of Frist Name is empty;
    if(Fnamestr.value == "")
    number = number+1;
    mesg += "\n" + number + "First Name";
    //checks if value of Last Name is empty;
    if(Lnamestr.value == "")
    number = number+1;
    mesg += "\n" + number + "Last Name";
    //checks if value of date is empty;
    if(Datestr.value == "")
    number = number+1;
    mesg += "\n" + number + "Date of mm/dd/yyyy format";
    //checks if value of image field is empty;
    if(Imagestr.value == "")
    number = number+1;
    mesg += "\n" + number + "select an image";
    //displays all the error messages.
    if (number > 0)
    alert ("Please enter the following" + mesg);
    return false;
    //checks if entered date format is mm/dd/yyyy
    if(!Dformat.test(Dateval))
    dnumber = dnumber +1;
    dmesg += "\n" + dnumber + "please enter a valid date(mm/dd/yyyy)";
    //checks if date is greater than 12 and is 2 digits.
    if ((m>12 && m<100) || (m> = 100 && m<1000) || (m==0))
    dnumber = dnumber+1;
    dmesg += "\n" + dnumber + "Enter valid month(mm)";
    //checks if month has 31 or 30 days and is in dd format.
    if (((d>30) && (d<100) && (m == 04 || m == 06 || m == 9 || m == 11)) || ((m == 01 || m == 03 || m == 05 || m == 07 || m == 08 || m == 10 || m==12) && (d >31) && (d<100)) || d == 0)
    dnumber = dnumber+1;
    dmesg += "\n" + dnumber + "Enter valid date(dd)";
    //checks if month has 28 or 29 days and wheather is a leap year or not.
    if((m == 02 && d>29 && y%4 == 0) || (m == 02 && d>28 && y%4 != 0))
    dnumber = dnumber+1;
    dmesg += "\n" + dnumber + "Enter valid date(dd)";
    //checks if entered date is prior to the current date.
    if((m == mm && d == dd && y == yyyy) || (y > yyyy)|| (d>=dd && m>=mm && m<=12 && y==yyyy) || (d<=dd && m>mm && y == yyyy && m<=12))
    dnumber = dnumber + 1;
    dmesg += "\n" + dnumber + "Please enter a date prior to the current date";
    if (y == 0 || y < 1000 || y>9999) //checks if year is zero and is a 4 digit number.
    dnumber = dnumber + 1;
    dmesg += "\n" + dnumber + "Enter a valid year(yyyy)";
    //checks if image format is jpg or gif.
    if(fext != "jpg" && fext != "gif")
    dnumber = dnumber + 1
    dmesg += "\n" + dnumber + "You can only upload gif or jpg images.";
    if(dnumber>0)
    alert("please check the followin error messages"+dmesg);
    return false;
    </script>
    <style type="text/css">
    .style1 {color: #FF0000}
    body {
         background-color: #FFCCFF;
    h2 {
         color: #CC3399;
    h1 {
         color: cc3399;
    .style2 {
         font-family: Arial, Helvetica, sans-serif;
         font-weight: bold;
    .style5 {color: #000000; font-family: "Times New Roman", Times, serif;}
    </style>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1"><body>
    <h1 align="center">Webloggers space</h1>
    <p align="center">Home
    <p>
    <h4> Please enter the following details to register.</h4>
    <p> <b>Note:</b> All fields marked with <span class="style1">*</span>(astrick)
    are compulsory.</p>
    <form action="servlet/BlogServlet" name="onlineblog" onsubmit = "return myfunction()" method="post">
    <table width="60%" border="0" cellspacing="5" cellpadding="2">
    <tr>
    <td><span class="style1">*</span>Name of the Blog</td>
    <td><input type="text" name="BlogName"/></td>
    </tr>
    <tr>
    <td><span class="style1">*</span>First Name</td>
    <td><input type="text" name="FirstName"/></td>
    </tr>
    <tr>
    <td><span class="style1">*</span>Last Name</td>
    <td><input type="text" name="LastName"/></td>
    </tr>
    <tr>
    <td><span class="style1">*</span>Date(mm/dd/yyyy)</td>
    <td><input type="text" name="Dateformat"/></td>
    </tr>
    <tr>
    <td>Category</td>
    <td><select name="catagory" size="1">
    <option></option>
    <option>Business</option>
    <option>Education</option>
    <option>Entertainment</option>
    <option>Food</option>
    <option>Hobbies</option>
    <option>Personal</option>
    <option>Politics</option>
    <option>Sports</option>
    </select></td>
    </tr>
    <tr>
    <td>Enter your text here:</td>
    <td><textarea name="textarea" cols="45" rows="5"></textarea></td>
    </tr>
    <tr>
    <td><span class="style1">*</span>Upload Image <span class="style5">(.jpg
              or .gif)</span></td>
    <td><input type="file" name="uploadimage" /></td>
    </tr>
    <tr>
    <td></td>
    <td><input type="submit" value="save">
    <input type="reset" name="reset" value="Reset" /></td>
    </tr>
    </table>
    </form>
    </body>
    </html>

    Your javascript code contains a syntax error. That's why the function isn't being called. Take a look at this line in your code.
    if ((m>12 && m<100) || (m> = 100 && m<1000) || (m==0))Notice the space between > and =. Remove that space.
    m >= 100

  • Table Maintenance Generator : Editable Entry after validation fails

    Hi,
    I have created a Z table and a table maintenance generator to maintain the data.
    I have to carry out certain validations when user enters data on Key and Non- key fields.
    This is working fine, but the issue is with the key fields.
    If validation fails, the table maintenance screen is displayed the date-field is grayed out (non-editable) as it is the key field of the table.
    Now the user cannot change the data unlike the non-key fields were the user can modify the non-valid data and save again.
    How can make the date field (Key Field) editable after entry in case the validation fail, so that the user can make the changes.
    Please suggest the approach to handle the above scenario in events.
    Thanks,
    Keyur

    Thanks Kiran for your inputs.
    I have done the same thing what you have explained.
    I have used a Form Routine as CIP_SAVE with Event Number as 01, since on event SAVE i need to validate whether dates are
    overlapping the inputs dates or not.
    Fields are :
    Group ID (Key)
    Start Date (Key)
    End Date (Key)
    Value (Non -Key)
    Initial value in Table:
    Group ID = 12345
    Start Date = 01/01/2011
    End Date = 01/31/2011
    Value = 11.11
    Now if i try to enter value:
    Group ID = 12345
    Start Date = 01/02/2011
    End Date = 01/25/2011
    Value = 99.99
    & SAVE it... validation will fails because Start & End dates overlaps.
    Hence, on Table Maintainance Screen all key fields will be in non-editable display mode, whereas non-key field will be in editable mode.
    My requirement is that Start Date & End Date key fields must be Editable field.
    Thanks.

  • Page rendering process doesn't run after validation error

    I have a page rendering process (On Load - After Regions) that needs to be run for my page to be rendered properly; however, it doesn't run when the page is rendered after a validation error. In debug mode, I see the following line:
    "0.05: ......do not perform process because inline validation condition found."
    Is this a bug? Validations are meant to prevent execution of On Submit processes, but is there a reason to also not run rendering processes?
    I need to dynamically construct some javascript and insert it somewhere after a certain item on the page. Is there a workaround?
    Thanks.
    Rodney

    Rodney,
    Let me see if I understand your question:
    1. A page is rendered
    2. The page is submitted
    3. A validation fires and fails
    4. The page is re-rendered displaying the validation error message
    5. Your on-load after regions process did not fire
    You want to run a process in all cases; in the standard page load case (1) and in the re-load case (4).
    You can do this by creating a region of type PL/SQL. You can give the region a null template so that it will not display any values. The region can be the last one displayed on the page; so that it will be run last.
    You also asked if it is a bug that the on-load after regions process did not fire; as the debug message indicates this is proper. Here is an example that illustrates why you typically don't want to perform processes when rendering a page after it was posted causing a validation to fire.
    Lets take the following example:
    1. create a form on the emp table; assume a salary column called "SAL"
    2. create a validation that says the salary must be numeric
    3. edit a row of the EMP table
    4. change the employee job from clerk to manager; and enter a "X" in the salary item
    5. submit the page
    6. the validation will fire; page processing will stop; and the page will be re-displayed
    7. the process which fetches the rows will not fire; and the page will be re-displayed; the job item will display the change from "clerk" to "manager" and salary will still contain the invalid "X" value. If the process had fired it would have replaced the values in the form.
    My recommendation is that you use regions for any processing that is UI releated. I hope this helps.
    Mike

  • FCE crashes after validating audio data

    I have just started using FCE and I'm having a problem with it craahing. I am capturing from a DV tape that was recorded in 12bit audio. I got the audio synch warning message a few times and, after reading the manual, realized that I needed to change the NTSC setting in Easy Setup to NTSC 32kHz for 12 bit audio, which I did.
    I used the Capture Now button and pressd the Esc key to stop the capture. If the clip I capture is several minutes long I get a small window titled "Analyzing DV Audio" and the text in the window says "Validating Audio Data". This window remains in view for a minute or more and then FCE crashes. I have tried this several times and get the same result. I tried repairing permissions and rebooting and still it crashes. Any suggestions would be appreciated.
    Bob Switzer
    G4 Dual 867 Mac OS X (10.4.7)
    G4 Dual 867 Mac OS X (10.4.7)

    Thanks for your suggestion. I trashed all the prefs and tried capturing the same footage again and experienced another crash. I then moved to another section of the tape and tried again and it worked without crashing. I also captured footage from another tape without a problem. I suspect that particular section of tape is somehow corrupted and was causing the crash. I was able to take this section of tape into iMovie without a problem. I guess I'll bring it into FCE from iMovie.
    Thanks again for your help.
    G4 Dual 867 Mac OS X (10.4.7)

Maybe you are looking for