Is this valid

public static boolean main(String args[] )
}

you cannot place
public static void main(String[] args) and
public static boolean main(String[] args) in same class, and will cause error to compile.
'main(java.lang.String[]) is already defined '

Similar Messages

  • Where i can find this validator oracle.iam.requestactions.plugins.dataval ?

    Hi,
    I need to modify this validator -> oracle.iam.requestactions.plugins.datavalidator.CreateUserDataValidator.
    this is possible?
    when i create a new validator the create user template doesn't work.
    error:
    [2012-10-10T14:28:13.548-05:00] [oim_server1] [NOTIFICATION] [IAM-0080006] [oracle.iam.platform.kernel.impl] [tid: [ACTIVE].ExecuteThread: '0' for queue: 'weblogic.kernel.Default (self-tuning)'] [userId: oiminternal] [ecid: e48b78a1878c940d:-1d5fbd71:13a4b638645:-8000-00000000000022b6,0] [APP: oim#11.1.1.3.0] Orchestration process moved to failed stage, and the corresponding error is - {0}[[
    oracle.iam.platform.kernel.EventFailedException: IAM-3050096:An error occurred while generating the Username. Invalid values passed for attribute Email.:Email
         at oracle.iam.identity.usermgmt.utils.UserManagerUtils.createEventFailedException(UserManagerUtils.java:660)
         at oracle.iam.identity.usermgmt.utils.UserManagerUtils.createEventFailedException(UserManagerUtils.java:640)
         at oracle.iam.identity.usermgmt.impl.handlers.create.CreateUserPreProcessHandler.execute(CreateUserPreProcessHandler.java:407)
         at oracle.iam.platform.kernel.impl.OrchProcessData.runPreProcessEvents(OrchProcessData.java:899)
         at oracle.iam.platform.kernel.impl.OrchProcessData.runEvents(OrchProcessData.java:634)
         at oracle.iam.platform.kernel.impl.OrchProcessData.executeEvents(OrchProcessData.java:227)
         at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.resumeProcess(OrchestrationEngineImpl.java:749)
         at oracle.iam.platform.kernel.impl.OrchestrationEngineImpl.resumeProcess(OrchestrationEngineImpl.java:780)
         at oracle.iam.platform.kernel.impl.OrhestrationAsyncTask.execute(OrhestrationAsyncTask.java:129)
         at oracle.iam.platform.async.impl.TaskExecutor.executeUnmanagedTask(TaskExecutor.java:101)
         at oracle.iam.platform.async.impl.TaskExecutor.execute(TaskExecutor.java:71)
         at oracle.iam.platform.async.messaging.MessageReceiver.onMessage(MessageReceiver.java:68)
         at sun.reflect.GeneratedMethodAccessor1738.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:597)
         at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:182)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:149)
         at com.bea.core.repackaged.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:89)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.doProceed(DelegatingIntroductionInterceptor.java:131)
         at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:119)
         at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
         at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
         at $Proxy352.onMessage(Unknown Source)
         at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:574)
         at weblogic.ejb.container.internal.MDListener.transactionalOnMessage(MDListener.java:477)
         at weblogic.ejb.container.internal.MDListener.onMessage(MDListener.java:379)
         at weblogic.jms.client.JMSSession.onMessage(JMSSession.java:4659)
         at weblogic.jms.client.JMSSession.execute(JMSSession.java:4345)
         at weblogic.jms.client.JMSSession.executeMessage(JMSSession.java:3821)
         at weblogic.jms.client.JMSSession.access$000(JMSSession.java:115)
         at weblogic.jms.client.JMSSession$UseForRunnable.run(JMSSession.java:5170)
         at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:528)
         at weblogic.work.ExecuteThread.execute(ExecuteThread.java:209)
         at weblogic.work.ExecuteThread.run(ExecuteThread.java:178)
    Caused by: oracle.iam.identity.exception.UserNameGenerationException: IAM-3050096 : An error occurred while generating the Username. Invalid values passed for attribute Email.:Email
         at oracle.iam.identity.usermgmt.utils.UserNameGenerationUtil.checkEmailFormat(UserNameGenerationUtil.java:439)
         at oracle.iam.identity.usermgmt.utils.UserNameGenerationUtil.validateInputData(UserNameGenerationUtil.java:290)
         at oracle.iam.identity.usermgmt.utils.UserNameGenerationUtil.generateUserName(UserNameGenerationUtil.java:111)
         at oracle.iam.identity.usermgmt.utils.UserNameGenerationUtil.generateUserName(UserNameGenerationUtil.java:95)
         at oracle.iam.identity.usermgmt.impl.handlers.create.CreateUserPreProcessHandler.execute(CreateUserPreProcessHandler.java:386)
         ... 33 more
    any idea??
    thanks.!

    The DataSetValidator element is an optional element in request dataset. It is one of the child elements of the request-data-set element that describes the user-defined plug-in details meant for validating the dataset attribute values. The request engine runs the implemented plug-in to validate request data during submission. If the validation is successful, then the request gets created. Otherwise, the request is not created. You must implement the plug-in logic. Each dataset can have only one DataSetValidator defined.
    These are the attributes:
    name: This attribute specifies a logical name of the DataSetValidator plug-in.
    classname: This attribute specifies the fully qualified name of the implemented plug-in class.
    The following example shows the DataSetValidator element:
    <DataSetValidator name="CreateUserDataValidator" classname="oracle.iam.requestactions.plugins.datavalidator.CreateUserDataValidator"/>
    And yes, The classname in the DataSetValidators in these default request datasets can be changed to a customized class to have customized validation.
    Check this out:
    http://docs.oracle.com/cd/E21764_01/doc.1111/e14309/request.htm#CIHCFIAE
    I hope this really helps you,
    Thiago Leoncio.

  • How to make this validation ?

    Dear all
    In my Entity Object I have 4 attributes:
    ID , AccomplishDate ,cancelDate,Status
    I want to make a validation on the Status attribute , which is:
    if status = "CAN" then the CancelDate attribute value will be current date and the AccomplishDate attribute value be null.
    Please can any one tell me how to make this validation.
    Thanks

    Thank you so much for replaying
    The original method was
        public void setProcStatus(String value) {
                 setAttributeInternal(PROCSTATUS, value);
        }I changed it to be like this
          public void setProcStatus(String value) {
            if (value.equals("CAN")){
              setAccomplishDate(new Date());
              setCancelDate(null);
            setAttributeInternal(PROCSTATUS, value);
        }is this right
    please tell me how to set the value of AccomplishDate attribute to the current date

  • "Mac-computer-alerts" # for live tech. Is this valid?

    Mac-computer-alerts  suspicious activity found due to pop up ads and invasive links. 888# given. Is this valid?

    It's probably not malware, but rather a Web scam that only affects your browser, and only temporarily. There are several ways to recover.
    1. Some of those scam pages can be dismissed very easily. Press the key combination command-W to close the tab or window. A huge box will pop up. Press the return key and both the box and the page will close. If that doesn't happen, continue.
    2. Press and hold command-W. You may hear repeating alert sounds. While holding the keys, click the OK button in the popup. A different popup may appear, which you can cancel out of as usual.
    3. From the Safari menu bar, select
              Safari ▹ Preferences... ▹ Security
    and uncheck the box marked Enable JavaScript. Leave the preferences dialog open.
    Close the malicious window or tab.
    Re-enable JavaScript and close the preferences dialog.
    4. If the Preferences menu item is grayed out, quit Safari. Force quit if necessary. Relaunch it by holding down the shift key and clicking its icon in the Dock. None of the windows and tabs will reopen.
    After closing the malicious page, from the menu bar, select
              Safari ▹ Preferences... ▹ Privacy ▹ Remove All Website Data
    to get rid of any cookies or other data left by the server. Open your Downloads folder and delete anything you don't recognize.

  • How do I interpret this validation result?

    How do I interpret this validation result?
    13366 [Element <7>] [Rings 3, 4][Edge <0> in ring <3>][Edge <0> in ring <4>]
    --ORA-13366: invalid combination of interior exterior rings
    --Cause: In an Oracle Spatial geometry, interior and exterior rings are not used consistently.
    --Action: Make sure that the interior rings corresponding to an exterior ring follow the exterior ring in the ordinate array.
    I think it means that rings 3 and 4 in element 7 have interior vs exterior issues, but element 7 does not have rings 3 or 4; it does have rings 1 and 2.
    I am using Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production

    here is the result...
    SQL> select c.geom.sdo_elem_info from de_lec c where c.lec_gcode = '9417';
    SDO_ELEM_INFO_ARRAY(1, 1003, 1, 69097, 2003, 1, 70747, 2003, 1, 74383, 1003, 1, 122715, 2003, 1, 124
    , 1003, 1, 233915, 2003, 1, 235071, 2003, 1, 236407, 2003, 1, 236469, 1003, 1, 252279, 1003, 1, 2652
    1003, 1, 290105, 1003, 1, 301625, 2003, 1, 302471, 1003, 1, 309783, 1003, 1, 320973, 1003, 1, 33194
    1003, 1, 354945, 1003, 1, 374059, 1003, 1, 378163, 1003, 1, 392505, 1003, 1, 394375, 1003, 1, 398463
    003, 1, 416955, 1003, 1, 419939, 1003, 1, 422193, 1003, 1, 423811, 1003, 1, 425763, 1003, 1, 428065,
    03, 1, 433357, 1003, 1, 436003, 1003, 1, 441597, 1003, 1, 442599, 1003, 1, 450817, 1003, 1, 453779,
    3, 1, 459279, 1003, 1, 460957, 1003, 1, 463733, 1003, 1, 472079, 1003, 1, 473515, 1003, 1, 475225, 1
    , 1, 477279, 1003, 1, 478213, 1003, 1, 480013, 1003, 1, 482317, 1003, 1, 484677, 1003, 1, 485797, 10
    1, 487885, 1003, 1, 489137, 1003, 1, 490473, 1003, 1, 494967, 1003, 1, 495533, 1003, 1, 496545, 100
    1, 502053, 1003, 1, 502731, 1003, 1, 507419, 1003, 1, 509385, 1003, 1, 510463, 1003, 1, 511541, 1003
    , 513055, 1003, 1, 515103, 1003, 1, 515485, 1003, 1, 516215, 1003, 1, 518501, 1003, 1, 518893, 1003,
    521707, 1003, 1, 522173, 1003, 1, 523241, 1003, 1, 523753, 1003, 1, 524655, 1003, 1, 525181, 1003,
    526689, 1003, 1, 527041, 1003, 1, 527631, 1003, 1, 528079, 1003, 1, 529339, 1003, 1, 529505, 1003, 1
    30239, 1003, 1, 530351, 1003, 1, 531627, 1003, 1, 531835, 1003, 1, 532029, 1003, 1, 532363, 1003, 1,
    3919, 1003, 1, 534317, 1003, 1, 534755, 1003, 1, 535307, 1003, 1, 535545, 1003, 1, 536431, 1003, 1,
    117, 1003, 1, 537379, 1003, 1, 537871, 1003, 1, 538127, 1003, 1, 538459, 1003, 1, 539661, 1003, 1, 5
    89, 1003, 1, 540359, 1003, 1, 540585, 1003, 1, 540713, 1003, 1, 541065, 1003, 1, 541391, 1003, 1, 54
    1, 1003, 1, 543035, 1003, 1, 545329, 1003, 1, 545743, 1003, 1, 546109, 1003, 1, 546209, 1003, 1, 546
    , 1003, 1, 546945, 1003, 1, 546991, 1003, 1, 547333, 1003, 1, 547969, 1003, 1, 548239, 1003, 1, 5483
    1003, 1, 549721, 1003, 1, 550091, 1003, 1, 550203, 1003, 1, 550417, 1003, 1, 550511, 1003, 1, 55062
    1003, 1, 550915, 1003, 1, 551459, 1003, 1, 551701, 1003, 1, 551889, 1003, 1, 552763, 1003, 1, 552957
    003, 1, 555273, 1003, 1, 555331, 1003, 1, 555489, 1003, 1, 556235, 1003, 1, 556551, 1003, 1, 556699,
    03, 1, 557223, 1003, 1, 558425, 1003, 1, 558735, 1003, 1, 558825, 1003, 1, 559043, 1003, 1, 559237,
    3, 1, 559513, 1003, 1, 559679, 1003, 1, 559829, 1003, 1, 559977, 1003, 1, 560099, 1003, 1, 560877, 1
    , 1, 561599, 1003, 1, 561667, 1003, 1, 562085, 1003, 1, 562361, 1003, 1, 563011, 1003, 1, 564005, 10
    1, 564445, 1003, 1, 564587, 1003, 1, 564659, 1003, 1, 564775, 1003, 1, 564959, 1003, 1, 565105, 100
    1, 565535, 1003, 1, 565591, 1003, 1, 565679, 1003, 1, 565881, 1003, 1, 566451, 1003, 1, 566575, 1003
    , 566871, 1003, 1, 566987, 1003, 1, 567231, 1003, 1, 567885, 1003, 1, 568059, 1003, 1, 568227, 1003,
    568493, 1003, 1, 569317, 1003, 1, 569449, 1003, 1, 569805, 1003, 1, 569859, 1003, 1, 570097, 1003,
    570547, 1003, 1, 570815, 1003, 1, 570863, 1003, 1, 570961, 1003, 1, 571089, 1003, 1, 571143, 1003, 1
    71669, 1003, 1, 572099, 1003, 1, 572195, 1003, 1, 572319, 1003, 1, 572425, 1003, 1, 572531, 1003, 1,
    2729, 1003, 1, 572929, 1003, 1, 573087, 1003, 1, 573137, 1003, 1, 573255, 1003, 1, 573611, 1003, 1,
    747, 1003, 1, 573813, 1003, 1, 574339, 1003, 1, 574425, 1003, 1, 574485, 1003, 1, 574579, 1003, 1, 5
    83, 1003, 1, 574925, 1003, 1, 575035, 1003, 1, 575211, 1003, 1, 575361, 1003, 1, 575803, 1003, 1, 57
    1, 1003, 1, 576015, 1003, 1, 576103, 1003, 1, 576203, 1003, 1, 576299, 1003, 1, 576759, 1003, 1, 576
    , 1003, 1, 577073, 1003, 1, 577277, 1003, 1, 577339, 1003, 1, 577463, 1003, 1, 577541, 1003, 1, 5777
    1003, 1, 578153, 1003, 1, 578301, 1003, 1, 578529, 1003, 1, 578737, 1003, 1, 578805, 1003, 1, 57893
    1003, 1, 579223, 1003, 1, 579353, 1003, 1, 579431, 1003, 1, 579491, 1003, 1, 579561, 1003, 1, 579629
    003, 1, 579735, 1003, 1, 579815, 1003, 1, 579857, 1003, 1, 580577, 1003, 1, 580803, 1003, 1, 580837,
    03, 1, 580997, 1003, 1, 581059, 1003, 1, 581367, 1003, 1, 581479, 1003, 1, 581547, 1003, 1, 581903,
    3, 1, 582299, 1003, 1, 582417, 1003, 1, 582729, 1003, 1, 582911, 1003, 1, 583379, 1003, 1, 583459, 1
    , 1, 583769, 1003, 1, 583951, 1003, 1, 584011, 1003, 1, 584057, 1003, 1, 584113, 1003, 1, 584211, 10
    1, 584437, 1003, 1, 584841, 1003, 1, 584859, 1003, 1, 585043, 1003, 1, 585277, 1003, 1, 585371, 100
    1, 585521, 1003, 1, 585625, 1003, 1, 585681, 1003, 1, 585815, 1003, 1, 586027, 1003, 1, 586149, 1003
    , 586623, 1003, 1, 586777, 1003, 1, 586819, 1003, 1, 586929, 1003, 1, 587171, 1003, 1, 587289, 1003,
    587823, 1003, 1, 587855, 1003, 1, 587983, 1003, 1, 588155, 1003, 1, 588321, 1003, 1, 588379, 1003,
    588547, 1003, 1, 588873, 1003, 1, 588939, 1003, 1, 588999, 1003, 1, 589347, 1003, 1, 589389, 1003, 1
    89643, 1003, 1, 589971, 1003, 1, 590289, 1003, 1, 590481, 1003, 1, 590565, 1003, 1, 590627, 1003, 1,
    0797, 1003, 1, 590877, 1003, 1, 590953, 1003, 1, 591033, 1003, 1, 591393, 1003, 1, 591703, 1003, 1,
    873, 1003, 1, 591917, 1003, 1, 592019, 1003, 1, 592047, 1003, 1, 592345, 1003, 1, 592461, 1003, 1, 5
    49, 1003, 1, 592689, 1003, 1, 592745, 1003, 1, 592783, 1003, 1, 592963, 1003, 1, 593009, 1003, 1, 59
    7, 1003, 1, 593415, 1003, 1, 593475, 1003, 1, 593513, 1003, 1, 593789, 1003, 1, 593915, 1003, 1, 593
    , 1003, 1, 594165, 1003, 1, 594215, 1003, 1, 594243, 1003, 1, 594311, 1003, 1, 594349, 1003, 1, 5944
    1003, 1, 594589, 1003, 1, 594825, 1003, 1, 595109, 1003, 1, 595139, 1003, 1, 595199, 1003, 1, 59534
    1003, 1, 595447, 1003, 1, 595611, 1003, 1, 595743, 1003, 1, 595811, 1003, 1, 595995, 1003, 1, 596097
    003, 1, 596239, 1003, 1, 596291, 1003, 1, 596445, 1003, 1, 596553, 1003, 1, 596625, 1003, 1, 596789,
    03, 1, 596877, 1003, 1, 596959, 1003, 1, 596993, 1003, 1, 597057, 1003, 1, 597181, 1003, 1, 597293,
    3, 1, 597459, 1003, 1, 597547, 1003, 1, 597651, 1003, 1, 597863, 1003, 1, 597999, 1003, 1, 598075, 1
    , 1, 598337, 1003, 1, 598379, 1003, 1, 598517, 1003, 1, 598547, 1003, 1, 598875, 1003, 1, 599093, 10
    1, 599201, 1003, 1, 599385, 1003, 1, 599491, 1003, 1, 599513, 1003, 1, 599649, 1003, 1, 599705, 100
    1, 600221, 1003, 1, 600255, 1003, 1, 600355, 1003, 1, 600461, 1003, 1, 600553, 1003, 1, 600617, 1003
    , 600737, 1003, 1, 600799, 1003, 1, 600825, 1003, 1, 600923, 1003, 1, 601157, 1003, 1, 601199, 1003,
    601281, 1003, 1, 601335, 1003, 1, 601471, 1003, 1, 601517, 1003, 1, 601725, 1003, 1, 601859, 1003,
    602315, 1003, 1, 602403, 1003, 1, 602577, 1003, 1, 602815, 1003, 1, 602909, 1003, 1, 603097, 1003, 1
    03275, 1003, 1, 603335, 1003, 1, 603357, 1003, 1, 603857, 1003, 1, 603941, 1003, 1, 604079, 1003, 1,
    4293, 1003, 1, 604377, 1003, 1, 604441, 1003, 1, 604537, 1003, 1, 604581, 1003, 1, 604749, 1003, 1,
    913, 1003, 1, 604997, 1003, 1, 605025, 1003, 1, 605103, 1003, 1, 605157, 1003, 1, 605241, 1003, 1, 6
    65, 1003, 1, 605443, 1003, 1, 605743, 1003, 1, 605929, 1003, 1, 606129, 1003, 1, 606203, 1003, 1, 60
    9, 1003, 1, 606635, 1003, 1, 606789, 1003, 1, 606849, 1003, 1, 606879, 1003, 1, 607021, 1003, 1, 607
    , 1003, 1, 607441, 1003, 1, 607629, 1003, 1, 607747, 1003, 1, 607819, 1003, 1, 607845, 1003, 1, 6079
    1003, 1, 608123, 1003, 1, 608177, 1003, 1, 608341, 1003, 1, 608389, 1003, 1, 608691, 1003, 1, 60879
    1003, 1, 608849, 1003, 1, 609019, 1003, 1, 609037, 1003, 1, 609233, 1003, 1, 609319, 1003, 1, 609373
    003, 1, 609671, 1003, 1, 609757, 1003, 1, 609857, 1003, 1, 609881, 1003, 1, 609907, 1003, 1, 609941,
    03, 1, 610051, 1003, 1, 610105, 1003, 1, 610215, 1003, 1, 610347, 1003, 1, 610463, 1003, 1, 610587,
    3, 1, 610797, 1003, 1, 610877, 1003, 1, 610903, 1003, 1, 610999, 1003, 1, 611371, 1003, 1, 611465, 1
    , 1, 611629, 1003, 1, 611659, 1003, 1, 611683, 1003, 1, 611831, 1003, 1, 611919, 1003, 1, 612049, 10
    1, 612153, 1003, 1, 612289, 1003, 1, 612411, 1003, 1, 612481, 1003, 1, 612509, 1003, 1, 612603, 100
    1, 612791, 1003, 1, 612813, 1003, 1, 612927, 1003, 1, 613015, 1003, 1, 613041, 1003, 1, 613085, 1003
    , 613245, 1003, 1, 613381, 1003, 1, 613411, 1003, 1, 613433, 1003, 1, 613459, 1003, 1, 613485, 1003,
    613809, 1003, 1, 613831, 1003, 1, 613909, 1003, 1, 613949, 1003, 1, 614049, 1003, 1, 614115, 1003,
    614407, 1003, 1, 614499, 1003, 1, 614613, 1003, 1, 614637, 1003, 1, 614687, 1003, 1, 614761, 1003, 1
    14803, 1003, 1, 614837, 1003, 1, 614909, 1003, 1, 614981, 1003, 1, 615011, 1003, 1, 615147, 1003, 1,
    5221, 1003, 1, 615303, 1003, 1, 615415, 1003, 1, 615435, 1003, 1, 615515, 1003, 1, 615601, 1003, 1,
    661, 1003, 1, 615729, 1003, 1, 615811, 1003, 1, 615865, 1003, 1, 615979, 1003, 1, 616065, 1003, 1, 6
    55, 1003, 1, 616413, 1003, 1, 616485, 1003, 1, 616593, 1003, 1, 616673, 1003, 1, 616759, 1003, 1, 61
    5, 1003, 1, 617001, 1003, 1, 617065, 1003, 1, 617117, 1003, 1, 617245, 1003, 1, 617327, 1003, 1, 617
    , 1003, 1, 617513, 1003, 1, 617633, 1003, 1, 617715, 1003, 1, 617783, 1003, 1, 617805, 1003, 1, 6178
    1003, 1, 618007, 1003, 1, 618085, 1003, 1, 618149, 1003, 1, 618167, 1003, 1, 618263, 1003, 1, 61832
    1003, 1, 618389, 1003, 1, 618463, 1003, 1, 618489, 1003, 1, 618511, 1003, 1, 618575, 1003, 1, 618603
    003, 1, 618739, 1003, 1, 618771, 1003, 1, 618867, 1003, 1, 618885, 1003, 1, 618943, 1003, 1, 619005,
    03, 1, 619115, 1003, 1, 619167, 1003, 1, 619243, 1003, 1, 619291, 1003, 1, 619335, 1003, 1, 619415,
    3, 1, 619507, 1003, 1, 619571, 1003, 1, 619597, 1003, 1, 619625, 1003, 1, 619745, 1003, 1, 619855, 1
    , 1, 619979, 1003, 1, 620025, 1003, 1, 620133, 1003, 1, 620193, 1003, 1, 620243, 1003, 1, 620411, 10
    1, 620535, 1003, 1, 620693, 1003, 1, 620747, 1003, 1, 620803, 1003, 1, 620865, 1003, 1, 620935, 100
    1, 621075, 1003, 1, 621149, 1003, 1, 621171, 1003, 1, 621197, 1003, 1, 621273, 1003, 1, 621349, 1003
    , 621441, 1003, 1, 621463, 1003, 1, 621583, 1003, 1, 621651, 1003, 1, 621701, 1003, 1, 621753, 1003,
    621911, 1003, 1, 621933, 1003, 1, 621989, 1003, 1, 622125, 1003, 1, 622183, 1003, 1, 622253, 1003,
    622337, 1003, 1, 622387, 1003, 1, 622415, 1003, 1, 622497, 1003, 1, 622545, 1003, 1, 622577, 1003, 1
    22641, 1003, 1, 622731, 1003, 1, 622795, 1003, 1, 622845, 1003, 1, 622893, 1003, 1, 622951, 1003, 1,
    3099, 1003, 1, 623163, 1003, 1, 623269, 1003, 1, 623345, 1003, 1, 623485, 1003, 1, 623541, 1003, 1,
    765, 1003, 1, 623829, 1003, 1, 623869, 1003, 1, 623931, 1003, 1, 623951, 1003, 1, 623967, 1003, 1, 6
    87, 1003, 1, 624143, 1003, 1, 624193, 1003, 1, 624363, 1003, 1, 624407, 1003, 1, 624447, 1003, 1, 62
    5, 1003, 1, 624601, 1003, 1, 624619, 1003, 1, 624675, 1003, 1, 624759, 1003, 1, 624817, 1003, 1, 624
    , 1003, 1, 625069, 1003, 1, 625099, 1003, 1, 625145, 1003, 1, 625181, 1003, 1, 625277, 1003, 1, 6253
    1003, 1, 625403, 1003, 1, 625453, 1003, 1, 625527, 1003, 1, 625585, 1003, 1, 625635, 1003, 1, 62568
    1003, 1, 625715, 1003, 1, 625775, 1003, 1, 625841, 1003, 1, 625855, 1003, 1, 626021, 1003, 1, 626079
    003, 1, 626167, 1003, 1, 626229, 1003, 1, 626307, 1003, 1, 626357, 1003, 1, 626423, 1003, 1, 626529,
    03, 1, 626651, 1003, 1, 626667, 1003, 1, 626737, 1003, 1, 626801, 1003, 1, 626867, 1003, 1, 626887,
    3, 1, 627123, 1003, 1, 627167, 1003, 1, 627185, 1003, 1, 627207, 1003, 1, 627225, 1003, 1, 627269, 1
    , 1, 627437, 1003, 1, 627483, 1003, 1, 627539, 1003, 1, 627657, 1003, 1, 627707, 1003, 1, 627721, 10
    1, 627817, 1003, 1, 627897, 1003, 1, 627961, 1003, 1, 628015, 1003, 1, 628127, 1003, 1, 628145, 100
    1, 628197, 1003, 1, 628237, 1003, 1, 628289, 1003, 1, 628345, 1003, 1, 628391, 1003, 1, 628457, 1003
    , 628533, 1003, 1, 628585, 1003, 1, 628611, 1003, 1, 628683, 1003, 1, 628735, 1003, 1, 628753, 1003,
    628823, 1003, 1, 628849, 1003, 1, 628919, 1003, 1, 628999, 1003, 1, 629031, 1003, 1, 629079, 1003,
    629115, 1003, 1, 629129, 1003, 1, 629179, 1003, 1, 629251, 1003, 1, 629295, 1003, 1, 629319, 1003, 1
    29567, 1003, 1, 629647, 1003, 1, 629681, 1003, 1, 629723, 1003, 1, 629765, 1003, 1, 629783, 1003, 1,
    9879, 1003, 1, 629895, 1003, 1, 629945, 1003, 1, 629995, 1003, 1, 630037, 1003, 1, 630093, 1003, 1,
    173, 1003, 1, 630217, 1003, 1, 630295, 1003, 1, 630371, 1003, 1, 630409, 1003, 1, 630465, 1003, 1, 6
    65, 1003, 1, 630623, 1003, 1, 630695, 1003, 1, 630737, 1003, 1, 630755, 1003, 1, 630803, 1003, 1, 63
    7, 1003, 1, 630931, 1003, 1, 630959, 1003, 1, 631037, 1003, 1, 631113, 1003, 1, 631205, 1003, 1, 631
    , 1003, 1, 631343, 1003, 1, 631361, 1003, 1, 631375, 1003, 1, 631389, 1003, 1, 631453, 1003, 1, 6314
    1003, 1, 631647, 1003, 1, 631715, 1003, 1, 631747, 1003, 1, 631791, 1003, 1, 631853, 1003, 1, 63186
    1003, 1, 631955, 1003, 1, 631989, 1003, 1, 632003, 1003, 1, 632067, 1003, 1, 632125, 1003, 1, 632165
    003, 1, 632273, 1003, 1, 632309, 1003, 1, 632323, 1003, 1, 632361, 1003, 1, 632399, 1003, 1, 632429,
    03, 1, 632493, 1003, 1, 632507, 1003, 1, 632575, 1003, 1, 632635, 1003, 1, 632665, 1003, 1, 632709,
    3, 1, 632809, 1003, 1, 632833, 1003, 1, 632875, 1003, 1, 632909, 1003, 1, 632921, 1003, 1, 632967, 1
    , 1, 633001, 1003, 1, 633027, 1003, 1, 633091, 1003, 1, 633119, 1003, 1, 633159, 1003, 1, 633195, 10
    1, 633259, 1003, 1, 633287, 1003, 1, 633325, 1003, 1, 633361, 1003, 1, 633387, 1003, 1, 633443, 100
    1, 633539, 1003, 1, 633589, 1003, 1, 633619, 1003, 1, 633697, 1003, 1, 633717, 1003, 1, 633737, 1003
    , 633853, 1003, 1, 633895, 1003, 1, 633937, 1003, 1, 633967, 1003, 1, 634011, 1003, 1, 634049, 1003,
    634093, 1003, 1, 634115, 1003, 1, 634145, 1003, 1, 634177, 1003, 1, 634221, 1003, 1, 634281, 1003,
    634349, 1003, 1, 634379, 1003, 1, 634407, 1003, 1, 634471, 1003, 1, 634497, 1003, 1, 634529, 1003, 1
    34567, 1003, 1, 634597, 1003, 1, 634617, 1003, 1, 634653, 1003, 1, 634683, 1003, 1, 634695, 1003, 1,
    4741, 1003, 1, 634789, 1003, 1, 634817, 1003, 1, 634899, 1003, 1, 634969, 1003, 1, 635009, 1003, 1,
    105, 1003, 1, 635143, 1003, 1, 635183, 1003, 1, 635217, 1003, 1, 635229, 1003, 1, 635263, 1003, 1, 6
    01, 1003, 1, 635327, 1003, 1, 635349, 1003, 1, 635387, 1003, 1, 635399, 1003, 1, 635425, 1003, 1, 63
    7, 1003, 1, 635481, 1003, 1, 635509, 1003, 1, 635539, 1003, 1, 635615, 1003, 1, 635635, 1003, 1, 635
    , 1003, 1, 635699, 1003, 1, 635713, 1003, 1, 635751, 1003, 1, 635801, 1003, 1, 635841, 1003, 1, 6358
    1003, 1, 635931, 1003, 1, 635953, 1003, 1, 635965, 1003, 1, 636001, 1003, 1, 636041, 1003, 1, 63607
    1003, 1, 636217, 1003, 1, 636239, 1003, 1, 636281, 1003, 1, 636365, 1003, 1, 636377, 1003, 1, 636399
    003, 1, 636439, 1003, 1, 636465, 1003, 1, 636499, 1003, 1, 636537, 1003, 1, 636555, 1003, 1, 636589,
    03, 1, 636631, 1003, 1, 636649, 1003, 1, 636671, 1003, 1, 636731, 1003, 1, 636799, 1003, 1, 636819,
    3, 1, 636893, 1003, 1, 636909, 1003, 1, 636995, 1003, 1, 637029, 1003, 1, 637105, 1003, 1, 637163, 1
    , 1, 637193, 1003, 1, 637211, 1003, 1, 637273, 1003, 1, 637303, 1003, 1, 637319, 1003, 1, 637375, 10
    1, 637437, 1003, 1, 637451, 1003, 1, 637467, 1003, 1, 637535, 1003, 1, 637549, 1003, 1, 637575, 100
    1, 637625, 1003, 1, 637679, 1003, 1, 637713, 1003, 1, 637733, 1003, 1, 637769, 1003, 1, 637829, 1003
    , 637907, 1003, 1, 637945, 1003, 1, 637995, 1003, 1, 638029, 1003, 1, 638077, 1003, 1, 638119, 1003,
    638183, 1003, 1, 638217, 1003, 1, 638245, 1003, 1, 638275, 1003, 1, 638299, 1003, 1)
    1 row selected.
    SQL>

  • Regarding this Validation Error   JBO-29000

    Hi, I am using JDeveloper 10.1.2.1.0. when i run the page i am getting this error. can any one help me in this.plzzz
    Validation Error
    You must correct the following error(s) before proceeding:
    JBO-29000: Unexpected exception caught: java.lang.ClassCastException, msg=oracle.jbo.common.ws.WSViewObjectImpl
    oracle.jbo.common.ws.WSViewObjectImpl
    regards
    Nag
    Message was edited by:
    user477479

    JBO-29000: JboException
    Cause: If an unexpected exception occurs during a framework operation, this exception is thrown, with the unexpected exception included in the details of this exception.
    Action: Fix the cause for the exception in the details for this JboException.
    You probably need to narrow this down a bit more...is this happening on all pages? has it just started happening? Does it happpen in a simple test case. If you can narrow that down you will have a better chance of getting a solution.
    Regards
    Grant Ronald
    Oracle Product Management

  • How to prepare a query for this validation

    I am supposed to implement the below validation using query:
    retrieve emp_no from employee table where emp_desgn='MANAGER' and emp_status='OFFSHORE'
    1. if the emp_no exists display emp_first_name,emp_last_name,emp_remarks.
    2. if the emp_no doesn't exists then display emp_first_name, emp_last_name as blanks and emp_remarks as "EMPLOYEE not available in OFFSHORE'.
    tablename: employee
    can any one please give me the query with this condition. the validation should be implemented in queries and not using functions or procedures.

    i have tried with this
    select emp_no,(
    case emp_no
    when null then emp_first_name
    else 'SPACE'
    end) empfirst_name,
    (case emp_no
    when null then emp_last_name
    else 'SPACE '
    end
    ) emplast_name,
    (case emp_no
    when null then emp_remarks
    else 'EMPLOYEE NOT AVAILABLE IN OFFSHORE'
    end
    ) empremarks
    from employee
    where emp_design='MANAGER' and emp_status='OFFSHORE'
    here emp_no is PK so the emp_no in case statement will execute only if the where condition satisifies. but i am looking the results for the below data.
         EMP_NO     EMP_FIRST_NAME     EMP_LAST_NAME     EMP_DESIGN     EMP_STATUS     EMP_REMARKS
         1     john     Andrey     SRDEVELOPER     ONSITE     DOING GOOD
         2     Peter     Andrey     MANAGER     ONSITE     DOING GOOD
         3     Samuel     Andrey     MANAGER     OFFSHORE     DOING GOOD
         4     Joseph     Andrey     DELIVERYHEAD     OFFSHORE     DOING GOOD
         5     Paul     Andrey     SRARCHITECT     OFFSHORE     DOING GOOD
    i am expecting the results like for emp_no 3 it should display firsname, last name as blank spaces and remarks should be "EMPLOYEE Not availabe in OFFSHORE' but for all it should show the firstnname,lastname,remarks.

  • Is this valid java?

    I just ran across this java code fragment, and I'm a little confused by it.
    int;}.intI'm 100% positive if I could see it in context it would be valid java. Any ideas?

    The following compiles:
    public class X {
        public static void main(String[] args)
              int;}.int
    }

  • CreateOraObject("type_name", "package_name"). Is this valid?

    Can someone help me how to call the following package/procedure using OO4O? FYI - I tried the above syntax, but it is not working.
    Here is the procedure specification: I am trying to call the save_message() procedure from VB6.0 using OO4O 8.1.6.3.13
    Any help would be appreciated!
    CREATE OR REPLACE PACKAGE broadmsg_pkg AS
    TYPE t_SMsgRec IS RECORD (
    MessageGrd_0 VARCHAR2(1),
    MessageGrd_2 VARCHAR2(1999),
    MessageGrd_3 VARCHAR2(11),
    MessageGrd_4 VARCHAR2(10) );
    TYPE t_SMsgTable IS TABLE OF t_SMsgRec;
    PROCEDURE save_message(ErrorCode OUT NUMBER,
    v_SMsgs IN broadmsg_pkg.t_SMsgTable);
    END broadmsg_pkg;

    Hi Zane Schott
    You are right. I posted this question to Oracle Staff and got this reply. I still don't understand why there is no support for RECORD/TABLE type in OO4O. The sample codes have no clue. If anyone succeeded in this PL/SQL through OO4O, please let me know. Thanks. Krishnan
    Here is the REPLY from Oracle: QUOTE
    Krishnan,
    The Record you posted in your pl/sql code can only be used in pl/sql it can not be called from Oracle Objects for OLE. If you want a collection of data, use either a varray or a nested table.
    Thanks,
    Jill
    Oracle Support Services
    From: Venkatakrishnan Krishnan 28-Feb-02 21:39
    Subject: Re : OO4O & RECORD/TABLE TYPE
    Jil
    Is this what you mean by VARRAY's / NESTED tables?
    CREATE OR REPLACE PACKAGE broadmsg_pkg AS
    TYPE VCHARARRAY is TABLE OF VARCHAR2(1999) index by BINARY_INTEGER;
    PROCEDURE save_message(ErrorCode OUT NUMBER,
    MessageGrd_0 IN VCHARARRAY,
    MessageGrd_2 IN VCHARARRAY,
    MessageGrd_3 IN VCHARARRAY,
    MessageGrd_4 IN VCHARARRAY);
    END broadmsg_pkg;
    P.S.: Does this mean OO4O does not support my previous PL/SQL block? I am wondering if OO4O can support the new OBJECT type, why not this as I see this RECORD type most widely used in all PL/SQL blocks. Do you see any future versions /under development release of OO4O can support this type.?
    Thanks for your time and reply.
    From: Oracle, Jill Nickerson 01-Mar-02 14:18
    Subject: Re : Re : OO4O & RECORD/TABLE TYPE
    Sir,
    Please see our samples in the metalink under top tech docs -> Oracle Objects for ole -> scripts/sample code.
    Also since record is a PL/sql ONLY type Oracle Objects for OLE is not going to implement it. Remember Record type is for use within pl/sql ONLY, it is NOT used by an other tool.
    Thanks,
    Jill
    Oracle Support Services
    --- UNQUOTE

  • The security validation for this page is invalid – Infopath 2010

    Hello Experts,
    I have created browser enabled Infopath form and written a custom code (infopath 2010). I have a “Save” button on a form that submits the data into multiple relational sharepoint list. While debugging through VSTA everything goes well and successfully submits
    the data, but after publishing a form(browser enabled) I am not able to save a data to sharepoint list. When I Clicked on save button, it just refreshing a page, even the same was getting after
     made it to full trust and approved by Admin.
    Before this I was using “Submit” button to submit a form, that time I was getting a popup with the message “There has been an error while processing the form”. And in log files it was showing error message as “The security validation
    for this page is invalid”.
    I referred many blogs regarding validation error and tried almost everything in every way, some of shortly mentioned below,
    Formdigest (It not works for me)
    Security Validation (It works perfectly)
    The second option is working for me.  (But this is not a good practice and also not recommended)
    Just want to know “Without making Security Validation Off” how can I resolved this validation issue from infopath 2010 form.
    Please share your thoughts on this. Any help is appreciated.
    Regards,
    Uday

    Hi Uday,
    Have you tried SPWebapplication.FormDigestSettings.Enabled = false to turn off the digest setting property for the web application? See this blog for the details.
    http://ktskumar.wordpress.com/2009/03/09/the-security-validation-for-this-page-is-invalid-click-back-in-your-web-browser-refresh-the-page-and-try-your-operation-again/
    Thanks & Regards,
    Emir
    Emir Liu
    TechNet Community Support

  • Why is my validation working in this way?

    I have a form which consists of Invoice Header data.
    -For the Invoice header it consists of Multiple Invoice Line Details.
    -For each of these line Detail, i have multiple Invoice Distribution Lines
    Now For each Invoice Line we have Line Amount.
    Also For each Distribution line we have to enter Distribution Amount.
    Now the Line Amount should be equal to the Sum of the Distribution Amount of each Distribution Line under the Invoice Lines.
    Here is the code that i wrote for this validation in the validateEntity() method of the EO for the Invoice Lines.
    RowIterator rowset=getDistEO();// get the rowset for the Distribution Lines EO
    System.out.println("the number of rows are ="+rowset.getRangeSize());
    Row row=null;
    int distLineTotal=0;//set the variable for Total Distribution amt as 0
    int lineAmt=getAmount().intValue();// get the Line Amount for the Invoice Line
    System.out.println("in Line EO Line amt is = "+ lineAmt);
    //do the validation only if the any Distribution Line is present
    if( rowset.getRangeSize()&gt;0){
    while((row=rowset.next())!=null){
    //Loop and set the Distribution Amount total
    distLineTotal=distLineTotal+((Number)row.getAttribute("Amount")).intValue();
    System.out.println("distLineTotal is = "+ distLineTotal);
    if(distLineTotal&gt;lineAmt &&distLineTotal==0){
    // Throw the exception if the Line Amount is less than Distribution Amount Total
    throw new OAAttrValException(OAException.TYP_ENTITY_OBJECT,getEntityDef().getFullName(),getPrimaryKey(),"Amount",getAmount(),"XXLBCARC","XXLBC_LINE_GREATER_THAN_DIST" );
    }else if(distLineTotal&lt;getAmount().intValue()&&distLineTotal==0){
    // Throw the exception if the Line Amount is greater than Distribution Amount Total
    throw new OAAttrValException(OAException.TYP_ENTITY_OBJECT,getEntityDef().getFullName(),getPrimaryKey(),"Amount",getAmount(),"XXLBCARC","XXLBC_LINE_LESSER_THAN_DIST" );
    Also for the Invoice Lines i have a Image by pressing which we would go to the Distribution Lines page.
    For this button i have set the disable the server side and client side validation to TRUE
    Now the validation works fine and suppose for the Invoice Line which is an Advanced table, if for rows 1 and 2 the Following exception is thrown.
    Error
    Row 1 Error - The Line Amount is Greater than the Distribution Line Amount Total.
    Row 2 Error - The Line Amount is Lesser than the Distribution Line Amount Total.
    Now this is fine.
    But Now suppose i click on the Image for Distribution Line, for the Invoice line 1 i.e. Row 1
    , it wont let me go to the Distribution Page.
    Instead the the error lines get added at the top of my screen like the following:
    Row 1 Error - The Line Amount is Greater than the Distribution Line Amount Total.
    Row 2 Error - The Line Amount is Lesser than the Distribution Line Amount Total.
    Row 2 Error - The Line Amount is Lesser than the Distribution Line Amount Total.
    Row 2 Error - The Line Amount is Lesser than the Distribution Line Amount Total.
    I have to first click on the Image for Distribution Line, for the Invoice line 2 i.e. Row 2, make the correction in the Distribution Page for that, then come back to the Invoice Line page and then I can make changes for the
    Invoice line 1 i.e. Row 1.
    Why cant i make changes to Invoice line 1 i.e. Row and the go to Invoice line 1 i.e. Row 2?
    Edited by: Pradeep on Jan 5, 2009 3:58 AM

    Does any body have any idea?

  • JDev11g: ADFBC EO "collection" validator - anybody have this working?

    Hi gang
    I'm having a play with the new ADFBC entity object "collection" entity-level validator in JDev 11g as described in the Fusion Dev 11g guide section 7.4.14. Has anybody got this working? I can't seem to get any accessors or attributes to appear in the relevant poplists for this validator, even though I've created an accessor between my 2 EOs. I'm thinking I've done something wrong here.
    Regards,
    CM.

    In order for it to appear in the list of Accessors the Association between the EOs must be defined as a Composition Association.
    Penny

  • Trying to create a Field Validation Expression and need help

    I have a picklist field and another field that are in question. I want to set some sort of rule that forces the second field to be populated only If specific values are selected from the picklist field.
    I was going the route of a field validation Rule, but everything i've tried so far does not produce the results i am trying to achieve.
    The first type of expression i tried was:
    ([<plProduction_Print_Account_Category_ITAG>] <> LookupValue("OCC_CUST_LOV_ACCOUNT_1", "No Production Print") AND ([<stSIC_Code_ITAG>] IS NULL))
    This is generating the field validation error message when i select any of the correct values from the picklist. the problem is still the second field, which will generate the error if a value is entered into the second field, regardless of the picklist value selected. Switching the "IS NULL" to "IS NOT NULL" only reverses the problem on the second field, causing the error to generate when the second field is updated to a NULL or blank value.
    I also tried :
    = 'No Production Print' AND [<stSIC_Code_ITAG>] IS NOT NULL
    and got similar results.
    ([<plProduction_Print_Account_Category_ITAG>] = LookupValue("OCC_CUST_LOV_ACCOUNT_1", "No Production Print"))
    Similar results as well.
    Does this need to be an IIF statement? Do I need to make this a workflow expression instead? i could really use some help as I have tried everything i can think of and admit, i'm not the expression guru!!!. Any assistance would be appreciated.
    TeknoMan

    Yes we have the same request and we used the following expression. Example we have a field "Método de pago" ( [<plMtodo_de_pago_ITAG<]), it's values are "CHEQUE and DEPOSITO" if we select DEPOSITO three more fields were requiered Route, Sucursal de banco and Clabe so we have to put this validation in the four fields including Metodo de pago.
    [<plMtodo_de_pago_ITAG>] <> "DEPOSITO" OR ([<Route>] IS NOT NULL AND [<nSucursal_de_banco_ITAG>] IS NOT NULL AND [<stCLABE_ITAG>] IS NOT NULL)
    well in the field CLABE we put the following [<plMtodo_de_pago_ITAG>] <> "DEPOSITO" OR ([<Route>] IS NOT NULL AND [<nSucursal_de_banco_ITAG>] IS NOT NULL AND [<stCLABE_ITAG>] IS NOT NULL AND Len([<stCLABE_ITAG>])=18) this was because the len of the value must be 18 characters.
    I hope this works for you
    Regards Catalina Valadez
    Edited by: CatalinaV on 12/03/2009 10:54 AM
    Edited by: CatalinaV on 12/03/2009 10:55 AM

  • Why this code is not working??? java script

    gen_validatorv2.js
         JavaScript Form Validator
    Version 2.0.2
         Copyright 2003 JavaScript-coder.com. All rights reserved.
         You use this script in your Web pages, provided these opening credit
    lines are kept intact.
         The Form validation script is distributed free from JavaScript-Coder.com
         You may please add a link to JavaScript-Coder.com,
         making it easy for others to find this script.
         Checkout the Give a link and Get a link page:
         http://www.javascript-coder.com/links/how-to-link.php
    You may not reprint or redistribute this code without permission from
    JavaScript-Coder.com.
         JavaScript Coder
         It precisely codes what you imagine!
         Grab your copy here:
              http://www.javascript-coder.com/
    function Validator(frmname)
    this.formobj=document.forms[frmname];
         if(!this.formobj)
         alert("BUG: couldnot get Form object "+frmname);
              return;
         if(this.formobj.onsubmit)
         this.formobj.old_onsubmit = this.formobj.onsubmit;
         this.formobj.onsubmit=null;
         else
         this.formobj.old_onsubmit = null;
         this.formobj.onsubmit=form_submit_handler;
         this.addValidation = add_validation;
         this.setAddnlValidationFunction=set_addnl_vfunction;
         this.clearAllValidations = clear_all_validations;
    function set_addnl_vfunction(functionname)
    this.formobj.addnlvalidation = functionname;
    function clear_all_validations()
         for(var itr=0;itr < this.formobj.elements.length;itr++)
              this.formobj.elements[itr].validationset = null;
    function form_submit_handler()
         for(var itr=0;itr < this.elements.length;itr++)
              if(this.elements[itr].validationset &&
         !this.elements[itr].validationset.validate())
              return false;
         if(this.addnlvalidation)
         str =" var ret = "+this.addnlvalidation+"()";
         eval(str);
    if(!ret) return ret;
         return true;
    function add_validation(itemname,descriptor,errstr)
    if(!this.formobj)
         alert("BUG: the form object is not set properly");
              return;
         }//if
         var itemobj = this.formobj[itemname];
    if(!itemobj)
         alert("BUG: Couldnot get the input object named: "+itemname);
              return;
         if(!itemobj.validationset)
         itemobj.validationset = new ValidationSet(itemobj);
    itemobj.validationset.add(descriptor,errstr);
    function ValidationDesc(inputitem,desc,error)
    this.desc=desc;
         this.error=error;
         this.itemobj = inputitem;
         this.validate=vdesc_validate;
    function vdesc_validate()
    if(!V2validateData(this.desc,this.itemobj,this.error))
    this.itemobj.focus();
              return false;
    return true;
    function ValidationSet(inputitem)
    this.vSet=new Array();
         this.add= add_validationdesc;
         this.validate= vset_validate;
         this.itemobj = inputitem;
    function add_validationdesc(desc,error)
    this.vSet[this.vSet.length]=
         new ValidationDesc(this.itemobj,desc,error);
    function vset_validate()
    for(var itr=0;itr<this.vSet.length;itr++)
         if(!this.vSet[itr].validate())
              return false;
         return true;
    function validateEmailv2(email)
    // a very simple email validation checking.
    // you can add more complex email checking if it helps
    if(email.length <= 0)
         return true;
    var splitted = email.match("^(.+)@(.+)$");
    if(splitted == null) return false;
    if(splitted[1] != null )
    var regexp_user=/^\"?[\w-_\.]*\"?$/;
    if(splitted[1].match(regexp_user) == null) return false;
    if(splitted[2] != null)
    var regexp_domain=/^[\w-\.]*\.[A-Za-z]{2,4}$/;
    if(splitted[2].match(regexp_domain) == null)
         var regexp_ip =/^\[\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}\]$/;
         if(splitted[2].match(regexp_ip) == null) return false;
    }// if
    return true;
    return false;
    function V2validateData(strValidateStr,objValue,strError)
    var epos = strValidateStr.search("=");
    var command = "";
    var cmdvalue = "";
    if(epos >= 0)
    command = strValidateStr.substring(0,epos);
    cmdvalue = strValidateStr.substr(epos+1);
    else
    command = strValidateStr;
    switch(command)
    case "req":
    case "required":
    if(eval(objValue.value.length) == 0)
    if(!strError || strError.length ==0)
    strError = objValue.name + " : Required Field";
    }//if
    alert(strError);
    return false;
    }//if
    break;
    }//case required
    case "maxlength":
    case "maxlen":
    if(eval(objValue.value.length) > eval(cmdvalue))
    if(!strError || strError.length ==0)
    strError = objValue.name + " : "+cmdvalue+" characters maximum ";
    }//if
    alert(strError + "\n[Current length = " + objValue.value.length + " ]");
    return false;
    }//if
    break;
    }//case maxlen
    case "minlength":
    case "minlen":
    if(eval(objValue.value.length) < eval(cmdvalue))
    if(!strError || strError.length ==0)
    strError = objValue.name + " : " + cmdvalue + " characters minimum ";
    }//if
    alert(strError + "\n[Current length = " + objValue.value.length + " ]");
    return false;
    }//if
    break;
    }//case minlen
    case "alnum":
    case "alphanumeric":
    var charpos = objValue.value.search("[^A-Za-z0-9]");
    if(objValue.value.length > 0 && charpos >= 0)
    if(!strError || strError.length ==0)
    strError = objValue.name+": Only alpha-numeric characters allowed ";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
    }//if
    break;
    }//case alphanumeric
    case "num":
    case "numeric":
    var charpos = objValue.value.search("[^0-9]");
    if(objValue.value.length > 0 && charpos >= 0)
    if(!strError || strError.length ==0)
    strError = objValue.name+": Only digits allowed ";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
    }//if
    break;
    }//numeric
    case "alphabetic":
    case "alpha":
    var charpos = objValue.value.search("[^A-Za-z]");
    if(objValue.value.length > 0 && charpos >= 0)
    if(!strError || strError.length ==0)
    strError = objValue.name+": Only alphabetic characters allowed ";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
    }//if
    break;
    }//alpha
              case "alnumhyphen":
    var charpos = objValue.value.search("[^A-Za-z0-9\-_]");
    if(objValue.value.length > 0 && charpos >= 0)
    if(!strError || strError.length ==0)
    strError = objValue.name+": characters allowed are A-Z,a-z,0-9,- and _";
    }//if
    alert(strError + "\n [Error character position " + eval(charpos+1)+"]");
    return false;
    }//if                
                   break;
    case "email":
    if(!validateEmailv2(objValue.value))
    if(!strError || strError.length ==0)
    strError = objValue.name+": Enter a valid Email address ";
    }//if
    alert(strError);
    return false;
    }//if
    break;
    }//case email
    case "lt":
    case "lessthan":
    if(isNaN(objValue.value))
    alert(objValue.name+": Should be a number ");
    return false;
    }//if
    if(eval(objValue.value) >= eval(cmdvalue))
    if(!strError || strError.length ==0)
    strError = objValue.name + " : value should be less than "+ cmdvalue;
    }//if
    alert(strError);
    return false;
    }//if
    break;
    }//case lessthan
    case "gt":
    case "greaterthan":
    if(isNaN(objValue.value))
    alert(objValue.name+": Should be a number ");
    return false;
    }//if
    if(eval(objValue.value) <= eval(cmdvalue))
    if(!strError || strError.length ==0)
    strError = objValue.name + " : value should be greater than "+ cmdvalue;
    }//if
    alert(strError);
    return false;
    }//if
    break;
    }//case greaterthan
    case "regexp":
                   if(objValue.value.length > 0)
         if(!objValue.value.match(cmdvalue))
         if(!strError || strError.length ==0)
         strError = objValue.name+": Invalid characters found ";
         }//if
         alert(strError);
         return false;
         }//if
    break;
    }//case regexp
    case "dontselect":
    if(objValue.selectedIndex == null)
    alert("BUG: dontselect command for non-select Item");
    return false;
    if(objValue.selectedIndex == eval(cmdvalue))
    if(!strError || strError.length ==0)
    strError = objValue.name+": Please Select one option ";
    }//if
    alert(strError);
    return false;
    break;
    }//case dontselect
    }//switch
    return true;
         Copyright 2003 JavaScript-coder.com. All rights reserved.
    example.html
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
    <head>
    <title>Example for Validator</title>
    <script language="JavaScript" src="gen_validatorv2.js" type="text/javascript"></script>
    </head>
    <body>
    <form action="" name="myform" >
    <table cellspacing="2" cellpadding="2" border="0">
    <tr>
    <td align="right">First Name</td>
    <td><input type="text" name="FirstName"></td>
    </tr>
    <tr>
    <td align="right">Last Name</td>
    <td><input type="text" name="LastName"></td>
    </tr>
    <tr>
    <td align="right">EMail</td>
    <td><input type="text" name="Email"></td>
    </tr>
    <tr>
    <td align="right">Phone</td>
    <td><input type="text" name="Phone"></td>
    </tr>
    <tr>
    <td align="right">Address</td>
    <td><textarea cols="20" rows="5" name="Address"></textarea></td>
    </tr>
    <tr>
    <td align="right">Country</td>
    <td>
         <SELECT name="Country">
              <option value="" selected>[choose yours]
              <option value="008">Albania
              <option value="012">Algeria
              <option value="016">American Samoa
              <option value="020">Andorra
              <option value="024">Angola
              <option value="660">Anguilla
              <option value="010">Antarctica
              <option value="028">Antigua And Barbuda
              <option value="032">Argentina
              <option value="051">Armenia
              <option value="533">Aruba     
         </SELECT>
         </td>
    </tr>
    <tr>
    <td align="right"></td>
    <td><input type="submit" value="Submit"></td>
    </tr>
    </table>
    </form>
    <script language="JavaScript" type="text/javascript">
    //You should create the validator only after the definition of the HTML form
    var frmvalidator = new Validator("myform");
    frmvalidator.addValidation("FirstName","req","Please enter your First Name");
    frmvalidator.addValidation("FirstName","maxlen=20",
         "Max length for FirstName is 20");
    frmvalidator.addValidation("FirstName","alpha");
    frmvalidator.addValidation("LastName","req");
    frmvalidator.addValidation("LastName","maxlen=20");
    frmvalidator.addValidation("Email","maxlen=50");
    frmvalidator.addValidation("Email","req");
    frmvalidator.addValidation("Email","email");
    frmvalidator.addValidation("Phone","maxlen=50");
    frmvalidator.addValidation("Phone","numeric");
    frmvalidator.addValidation("Address","maxlen=50");
    frmvalidator.addValidation("Country","dontselect=0");
    </script>
    </body>
    </html>
    documentation.html
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
    <html>
    <head>
         <title>JavaScript Form Validator Documentation</title>
    <Style>
    BODY, P,TD{ font-family: Arial,Verdana,Helvetica, sans-serif; font-size: 10pt }
    H1{ font-family: Arial,Verdana,Helvetica, sans-serif; font-size: 18pt; color : #000066}
    H3{ font-family: Arial,Verdana,Helvetica, sans-serif; font-size: 12pt; color : #000066 }
    A{font-family: Arial,Verdana,Helvetica, sans-serif;}
    B {     font-family : Arial, Helvetica, sans-serif;     font-size : 12px;     font-weight : bold;}
    CODE {font-family : Courier,monospace;font-size: 10pt;color : #800000;}
    CODE.htm {font-family : "Courier New", Courier, monospace;     font-size : x-small;     color : #000080;}
    </Style>
    </head>
    <body>
    <center>
    <table cellspacing="2" cellpadding="2" border="0" width="600">
    <tr><td>
         <h1>JavaScript Form Validations Made Easy!</h1>
         <h3>Documentation for JavaScript Form Validator</h3>
         <HR size=1>
         <P>
         The Form validation script is distributed free from JavaScript-Coder.com<br>
         You can use the script in your web pages for free.
         </P>
         <P>
         You may please add a link to JavaScript-Coder.com,
         making it easy for others to find this script.<br>
         Checkout the <A href="http://www.javascript-coder.com/links/how-to-link.php
         target="_blank">Give a Link & Get a Link!</A> page.
         </P>
         <P>
         <B>JavaScript Coder</B><br>
         It precisely codes what you imagine!<br>
         Grab your copy here: http://www.javascript-coder.com
         </P>
         <HR size=1>
         <P>
         Using client side JavaScript is an efficient way to validate the user input
         in web applications. When there are many fields in the form, the JavaScript
         validation becomes too complex.
         </P>
         <P>
    The JavaScript class presented here makes the form validations many times easier.
         </P>
         <P>
         The idea is to create a set of "validation descriptors" associated with each element
         in a form. The "validation descriptor" is nothing but a string specifying the type of
         validation to be performed.
         </P>
         <P>
         Each field in the form can have 0, 1, or more validations. For example, the input should
         not be empty, should be less than 25 chars, should be alpha-numeric, etc
         </P>
         You can associate a set of validation descriptors for each input field in the form.
         <a name="3"></a>
         <h3>Using The Script</h3>
         1.Include gen_validatorv2.js in your html file just before closing the HEAD tag<br><br>
         <CODE>
         <script language="JavaScript" src="gen_validatorv2.js" type="text/javascript"></script><BR>
         </head><BR>
         </CODE><br>
         2. Just after defining your form,
         Create a form validator object passing the name of the form<br><br>
         <CODE class='htm'>
          <FORM name='myform' action=""><BR>
          <!----Your input fields go here --><BR>
          </FORM><BR>
         </CODE><CODE>
          <SCRIPT language="JavaScript"><BR>
          var frmvalidator  = new Validator("myform");<BR>
         </CODE>
         <br>
         <br>
         3. Now add the validations required<br><br>
         <CODE>
              frmvalidator.addValidation("FirstName","alpha");
         </CODE><br><br>
         the first argument is the name of the field and the second argument is the
         validation descriptor, which specifies the type of validation to be performed.<br>
         You can add any number of validations.The list of validation descriptors are provided
         at the end of the documentation.<br>
         The optional third argument is the error string to be displayed if the validation
         fails.<br>
         <br>
         <CODE>
              frmvalidator.addValidation("FirstName","alpha");<br>
              frmvalidator.addValidation("FirstName","req","Please enter your First Name");<br>
              frmvalidator.addValidation("FirstName","maxlen=20",<br>
                   "Max length for FirstName is 20");          <br>
         </CODE>     <br>
         <br>
         4. Similarly, add validations for the fields where validation is required.<br>
         That's it! You are ready to go.
         <A name="3"></A>
         <h3>Example</h3>
         The example below will make the idea clearer<br>
         <CODE class="htm">
                   <form action="" name="myform" ><BR>
                   <table cellspacing="2" cellpadding="2" border="0"><BR>
                   <tr><BR>
                     <td align="right">First Name</td><BR>
                     <td><input type="text" name="FirstName"></td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right">Last Name</td><BR>
                     <td><input type="text" name="LastName"></td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right">EMail</td><BR>
                     <td><input type="text" name="Email"></td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right">Phone</td><BR>
                     <td><input type="text" name="Phone"></td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right">Address</td><BR>
                     <td><textarea cols="20" rows="5" name="Address"></textarea></td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right">Country</td><BR>
                     <td><BR>
                          <SELECT name="Country"><BR>
                             <option value="" selected>[choose yours]<BR>
                             <option value="008">Albania<BR>
                             <option value="012">Algeria<BR>
                             <option value="016">American Samoa<BR>
                             <option value="020">Andorra<BR>
                             <option value="024">Angola<BR>
                             <option value="660">Anguilla<BR>
                             <option value="010">Antarctica<BR>
                             <option value="028">Antigua And Barbuda<BR>
                             <option value="032">Argentina<BR>
                             <option value="051">Armenia<BR>
                             <option value="533">Aruba     <BR>
                         </SELECT><BR>
                        </td><BR>
                   </tr><BR>
                   <tr><BR>
                     <td align="right"></td><BR>
                     <td><input type="submit" value="Submit"></td><BR>
                   </tr><BR>
                   </table><BR>
                   </form><BR>
                   </CODE><CODE>
                   <script language="JavaScript" type="text/javascript"><BR>
                    var frmvalidator = new Validator("myform");<BR>
                    frmvalidator.addValidation("FirstName","req","Please enter your First Name");<BR>
                    frmvalidator.addValidation("FirstName","maxlen=20",<BR>
                        "Max length for FirstName is 20");<BR>
                    frmvalidator.addValidation("FirstName","alpha");<BR>
                    <BR>
                    frmvalidator.addValidation("LastName","req");<BR>
                    frmvalidator.addValidation("LastName","maxlen=20");<BR>
                    <BR>
                    frmvalidator.addValidation("Email","maxlen=50");<BR>
                    frmvalidator.addValidation("Email","req");<BR>
                    frmvalidator.addValidation("Email","email");<BR>
                    <BR>
                    frmvalidator.addValidation("Phone","maxlen=50");<BR>
                    frmvalidator.addValidation("Phone","numeric");<BR>
                    <BR>
                    frmvalidator.addValidation("Address","maxlen=50");<BR>
                    frmvalidator.addValidation("Country","dontselect=0");<BR>
                   </script><BR>     
         </CODE>
         <A name="4"></A>
         <h3>Some Additional Notes</h3>
         <LI type="disc">The form validators should be created only after defining the HTML form
         (only after the </form> tag. )<br>
         <LI type="disc">Your form should have a distinguished name.
         If there are more than one form
         in the same page, you can add validators for each of them. The names of the
         forms and the validators should not clash.
         <LI type="disc">You can't use the javascript onsubmit event of the form if it you are
         using this validator script. It is because the validator script automatically overrides the
         onsubmit event. If you want to add a custom validation, see the section below
         </LI>
         <A name="5"></A>
         <h3>Adding Custom Validation</h3>
         If you want to add a custom validation, which is not provided by the validation descriptors,
         you can do so. Here are the steps:
         <LI type="disc">Create a javascript function which returns true or false depending on the validation.<br>
         <CODE>
              function DoCustomValidation()<BR>
              {<BR>
                var frm = document.forms["myform"];<BR>
                if(frm.pwd1.value != frm.pwd2.value)<BR>
                {<BR>
                  alert('The Password and verified password does not match!');<BR>
                  return false;<BR>
                }<BR>
                else<BR>
                {<BR>
                  return true;<BR>
                }<BR>
              }<BR>
         </CODE><br>
         <LI type="disc">Associate the validation function with the validator object.<br>
         <CODE>
         frmvalidator.setAddnlValidationFunction("DoCustomValidation");
         </CODE><br>
         </LI>
         <P>
         The custom validation function will be called automatically after other validations.
         </P>
         <P>
         If you want to do more than one custom validations, you can do all those
         validations in the same function.
         </P>
         <CODE>
              function DoCustomValidation()<BR>
              {<BR>
                var frm = document.forms["myform"];<BR>
                if(false == DoMyValidationOne())<BR>
                {<BR>
                  alert('Validation One Failed!');<BR>
                  return false;<BR>
                }<BR>
                else<BR>
                if(false == DoMyValidationTwo())<BR>
                {<BR>
                  alert('Validation Two Failed!');<BR>
                  return false;<BR>
                }<BR>
                else<BR>
                {<BR>
                  return true;<BR>
                }<BR>
              }<BR>
         </CODE><br>
         where DoMyValidationOne() and DoMyValidationTwo() are custom functions for
         validation.
         <A name="6"></A>
         <h3>Clear All Validations</h3>
         In some dynamically programmed pages, it may be required to change the validations in the
         form at run time. For such cases, a function is included which clears all validations in the
         validator object.<br><br>
         <CODE>
         frmvalidator.clearAllValidations();
         </CODE><br>
         <br>
         this function call clears all validations you set.<br>
         You will not need this method in most cases.
         <a name="7"></a>
         <h3>Table of Validation Descriptors</h3>     
    <table cellspacing="2" cellpadding="2" border="1" width="520px">
    <tr>
    <td><FONT face=Arial size=2>
         required<BR>
         req </FONT>
         </td>
    <td><FONT face=Arial size=2>The field should not be
    empty </FONT>
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>
         maxlen=???<BR>
         maxlength=???
         </td>
    <td><FONT face=Arial size=2>checks the length entered data to the maximum. For
    example, if the maximum size permitted is 25, give the validation descriptor as "maxlen=25"
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>
         minlen=???<BR>
         minlength=???
         </td>
    <td><FONT face=Arial size=2>checks the length of the entered string to the
    required minimum. example "minlen=5"
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>
         alphanumeric /<BR>
         alnum </FONT>
         </td>
    <td><FONT face=Arial size=2>Check the data if it
    contains any other characters other than alphabetic or numeric characters
    </FONT>
         </td>
    </tr>     
    <tr>
    <td><FONT face=Arial size=2>num <BR>
         numeric </FONT>
         </td>
    <td><FONT face=Arial size=2>Check numeric data
    </FONT>
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>alpha <BR>
         alphabetic </FONT>
         </td>
    <td><FONT face=Arial size=2>Check alphabetic data.
    </FONT>
         </td>
    </tr>     
    <tr>
    <td><FONT face=Arial size=2>email </FONT>
         </td>
    <td><FONT face=Arial size=2>The field is an email
    field and verify the validity of the data. </FONT>
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>lt=???<BR>
         lessthan=???
         </td>
    <td><FONT face=Arial size=2>
         Verify the data to be less than the value passed.
         Valid only for numeric fields. <BR>
         example: if the
    value should be less than 1000 give validation description as "lt=1000"
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>gt=???<BR>
         greaterthan=???     </td>
    <td><FONT face=Arial size=2>
         Verify the data to be greater than the value passed.
         Valid only for numeric fields. <BR>
         example: if the
    value should be greater than 10 give validation description as "gt=10"
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>regexp=??? </FONT>
         </td>
    <td><FONT face=Arial size=2>
         Check with a regular expression the value should match the regular expression.<BR>
         example: "regexp=^[A-Za-z]{1,20}$" allow up to 20 alphabetic
         characters.
         </td>
    </tr>
    <tr>
    <td><FONT face=Arial size=2>dontselect=?? </FONT>
         </td>
    <td><FONT face=Arial size=2>This
    validation descriptor is valid only for select input items (lists)
    Normally, the select list boxes will have one item saying 'Select One' or
    some thing like that. The user should select an option other than this
    option. If the index of this option is 0, the validation description
    should be "dontselect=0"
         </td>
    </tr>
    </table>
         <P>
              <table cellspacing="2" cellpadding="2" border="1" width="520">
              <tr>
              <td>
                   <B>NOTE:</B><br>
                   The HTML Form Wizard included in JavaScript Coder contains still more
                   number of validations
                   (comparison validations, check box & radio button validations and more)<br>
                   Using the wizard, you can add validations to your forms
                   without writing a single line of code! <br>
                   JavaScript Coder takes care of
                   generating the code and inserting the code in to the HTML file.<br>
                   <A href="http://www.javascript-coder.com/index.phtml
                   target="_blank">Read more about JavaScript Coder</A>
                   </td>
              </tr>
              </table>
         </P>
         <A name="8"></A>
         <h3>Example Page</h3>     
         See the <a href="example.html target="_blank"
         >JavaScript form validation example here</a>
    </td>
    </tr>
    <tr><td align="center">
         <HR><br>
         Copyright &copy; 2003 JavaScript-Coder.com. All rights reserved.
    </td></tr>
    </table>     
    </center>
    </body>
    </html>

    The code is not working because you made a mistake somewhere, duh! So figure out what (hint: firefox javascript console, it's your friend) and fix it!
    And next time when you post code: use the [ code ]  tags to pretty format your code, as it is now it's unreadable.
    http://forum.java.sun.com/help.jspa?sec=formatting

  • Null Validation in Tabular Form in APEX 4.2.2

    Hi to all respected Gurus of this Forum!
    Recently downloaded APEX 4.2.2. As we know that this version has some improved features and one is the best is i.e. *"Validation on Tabular Form".*
    For test purpose I succeeded to apply validation on field of tabular form and I am not allowed to "SUBMIT" data as per Validation Rule.
    But now, I want to customize that validation as per below logic.
    If required field is null than a message-box should appear with two buttons , as under:
    Blank field not allowed. Do you really want to submit? (Buttons should be = YES NO)
    If user press "YES" then validation should be false and record should be saved
    AND
    If user press "NO" then no data should be submitted/inserted as per validation logic.
    Please help. Your as usual cooperation is highly appreciated in advance.
    Regards
    Muhammad Uzair Awan
    ORACLE APEX Developer
    Pakistan

    Hello Sabine,
    >> I read about enhanced validation in 4.1 and would love to get rid of g_f-programming.
    The major “trick” is to associate the validation/process with a Tabular Form. On the first screen of both wizards, the first field is Tabular Form. You must select the tabular form on your page (currently there can be only one. In future versions this will change).
    Another factor that might influence the behavior of Tabular Form validation/process is the new attribute of Execution Scope. Unfortunately, you must enter Edit mode to gain access to this attribute (i.e., it can’t be set directly from the Tabular Form create wizard). Set it according to your need.
    The rest is very simple. You should treat your Tabular Form as a simple form, where every column header stands for a form item. The following is a very simple example of validating the SAL column:
    if :SAL < 1500 then
      return 'Sal Value is under 1500';
    else
      return null;
    end if;In this validation I’m using the Function Returning Error Text type.
    Regards,
    Arie.
    &diams; Please remember to mark appropriate posts as correct/helpful. For the long run, it will benefit us all.
    &diams; Author of Oracle Application Express 3.2 – The Essentials and More

Maybe you are looking for