This work is licensed under a Creative Commons Attribution-NonCommercial 2.5 License.








Thursday, September 07, 2006

Forms Personalization in Oracle Apps 11.5.10

>
My first article in the series of Forms Personalization is in response to a question raised in Oracle Forum under Oracle Human Resources (HRMS ). As per the Oracle forum request, If the Person Type is Employee, their clients wants Person Title field to become Mandatory ( lets assume it is the title field for now). When the Person Type field changes to a value that is anything but Employee, the person title field should then toggle back to become optional.

Please note that when Person type Employee is selected, value in field
PERSON.D_PTU_USER_PERSON_TYPE is assigned a value of “Employee”

Now the requirement is that for “Employee” field PERSON.D_TITLE must be made mandatory.

There are two possible ways the Person Type can change.
Either by picking a dropdown list of Action (e.g. Create Employee) or by directly picking up a value from LOV on field “Person Type for Action”. Whenever the person type changes, WHEN-NEW-ITEM-INSTANCE is fired for one for the below fields(depending upon how its changed). Hence forms personalization must check conditions for below three fields
PERWSHRG.PERSON.PTU_ACTION_TYPE
PERWSHRG.PERSON.D_PTU_USER_PERSON_TYPE
PERWSHRG.PERSON.SHOW_NUMBER

The demo below contains conditional check on “WHEN-NEW-ITEM-INSTANCE” of PERSON.PTU_ACTION_TYPE

When implementing this, you will have to replicate the steps in the demo for WNII on both PERWSHRG.PERSON.D_PTU_USER_PERSON_TYPE & PERWSHRG.PERSON.SHOW_NUMBER

I have tested the steps below myself, and they appear to work.



STEP 1.
Create Personalization as below( to make Title field mandatory)
Sequence: 50
Description: Make Person Title Mandatory when Person Type is Employee.
Trigger Event: WHEN-NEW-ITEM-INSTANCE
Trigger Object: PERSON.PTU_ACTION_TYPE
Condition: ${item.person.d_ptu_user_person_type.value} = 'Employee'


Action Sequence: 10
Action Type: Property
Action Object Type: Item
Action Target Object: PERSON.D_TITLE
Action Property Name: REQUIRED
Action Value: TRUE



STEP 2
Create another Personalization as below ( to make Title field Optional)
Sequence: 51
Description: Make Person Title Mandatory when Person Type is Employee.
Trigger Event: WHEN-NEW-ITEM-INSTANCE
Trigger Object: PERSON.PTU_ACTION_TYPE
Condition: NVL(${item.person.d_ptu_user_person_type.value},'xxyyzz') != 'Employee'


Action Sequence: 10
Action Type: Property
Action Object Type: Item
Action Target Object: PERSON.D_TITLE
Action Property Name: REQUIRED
Action Value: FALSE

Comments on ""

 

Anonymous Anonymous said ... (11:46 AM) : 

Anil,I have followed the same steps as shown in your article.And encountered the following error "FND_ICX_ID_MISMATCH" & "The FormsLauncher failed to connect to the existing forms session properly. A modal window may be open in the existing forms session, or your session may have become invalid."

Could you please look into it where actually went wrong.

 

Blogger Anil Passi said ... (11:54 AM) : 

Do you have certificates installed or do you see yellow bars appearing in the Apps window within the jinitiator?

 

Anonymous Anonymous said ... (9:28 AM) : 

Hi Anil

can we use FND LOAD utility to load the personization as form? function maybe?

Rocky

 

Blogger Anil Passi said ... (10:13 AM) : 

Indeed you can.

Have a look at examples in URL http://www.google.co.uk/url?sa=t&ct=res&cd=9&url=http%3A%2F%2Foracle.anilpassi.com%2Foracle-fndload-script-examples.html&ei=gJiTRf_zLpDKwQH954GFAw&usg=__fA_cugP-oiFg1YNBeLfgwO6Cadg=&sig2=elJ40qtLrCRbahNszBk14Q

 

Anonymous Anonymous said ... (10:25 AM) : 

Hi Anil,

Do you know whether FP can also be used for web forms?

Thanks for a reply.

- George -

 

Blogger Anil Passi said ... (10:41 AM) : 

Hi George

You can use FP only with Forms in eBusiness Suite, because the APPCORE.pll makes call to heck for metadata handlers registers in Personalizations registry

thanks
anil

 

Blogger Sanjay Singh said ... (12:25 PM) : 

Hi Anil

I am not able to find the Form Personalization window. Can you please mention the Navigation path before starting the Step 1 of Form Personalization

Thanks
Sanjay

 

Blogger Anil Passi said ... (12:35 PM) : 

Please use the link below

Link for Forms Personalizations

Thanks
Anil

 

Anonymous Anonymous said ... (9:15 PM) : 

Hi Anil,
First of all i would like you to thank you for all the help you have provided to us. I have no word of appreciation for the heck of a knowledge you have on oracle applications. i have just read your blog on this form personalization for HRMS module. i have a question for you regarding this condition you mentioned in the blog that is required to give in the personalization. So, the question is 'how do we write this conditon?'. here you have given the condition and so we have to just key it in but if we take an other personalization,how do we write the conditions?
Condition: ${item.person.d_ptu_user_person_type.value} = 'Employee'
I appreciate your help,
Thanks in advance,
Jay

 

Blogger Anil Passi said ... (7:37 AM) : 

Please see this link below

Forms Personalization Examples

Thanks,
Anil

 

Anonymous Anonymous said ... (2:01 PM) : 

Hi Anil - Firstly thanks for this useful info.

BUT, Is it possible to prevent records deleting using FP ?

cheers

 

Blogger Unknown said ... (4:02 AM) : 

can i used forms personalization to restrict a lov?

 

Blogger Anil Passi said ... (6:09 AM) : 

Use this link, it has steps to change LOV query via FP

Forms Personalization
http://apps2fusion.com/apps/apps/21-technical/147-forms-personalizations


Thanks,
Anil

 

Anonymous Anonymous said ... (3:26 AM) : 

Anil
Would you have an article that shows how to do the following:

1. Make a field non-updatable (ORDERS.TERMS) with FP,
2. Use a public API in FP to prevent Sales Order from being Pick Released if no prepayments are entered,
3. Use a database function to loop through deliveries and pop a message if condition met.

Thanks,

Sanjib

 

Blogger Anil Passi said ... (6:55 AM) : 

Hi Sanjib

this is a very specific requirement, but all are doable.

Did you see http://apps2fusion.com/apps/apps/21-technical/147-forms-personalizations

Thanks,
Anil Passi

 

Blogger manoj said ... (1:01 PM) : 

Hi Anil,

In our project we got one requirement of form personlization that is in the assignment screen when the grade and grade step is not filled ..it should throw a warning in the assignment screen. i am able to throw a warning for grade through form personalization on assignment screen when it is blank or not filled. now my task is to throw same warning for the grade step if it is not filed.. but gradestep is in others of assignment screen which is another form.. how to get that warning message on the assignment screen..

can u help me in this..

Thanking you

 

Blogger Unknown said ... (8:12 PM) : 

To make the “Destination subinventory” field on PO form Distribution block a required field

I want to make the “Destination subinventory” field (PO_DISTRIBUTIONS.DESTINATION_SUBINVENTORY) mandatory on PO form Distribution block (PO_DISTRIBUTIONS).
I tried on the following things.
1. Property : Item-->PO_DISTRIBUTIONS.DESTINATION_SUBINVENTORY-->REQUIRED
2. Property : Item-->PO_DISTRIBUTIONS.DESTINATION_SUBINVENTORY-->REQUIRED (APPLICATIONS COVER)

The fields seems to be made mandatory(colour turned YELLOW). But, system allow me to save and Approve the PO without providing a value to this field. If I click on the “Destination subinventory” field at PO form Distribution and then try to save the PO without providing a value, system is displaying a message that the field is mandatory. Could any body please help me to make me fix this so that the system will not allow the user to save and Approve the PO without providing a value to this field?

Thank you very much in advance.

Thanks
Shankar

 

Blogger Unknown said ... (8:20 PM) : 

Hi Anil,

To make the “Destination subinventory” field on PO form Distribution block a required field

I want to make the “Destination subinventory” field (PO_DISTRIBUTIONS.DESTINATION_SUBINVENTORY) mandatory on PO form Distribution block (PO_DISTRIBUTIONS).
I tried on the following things.
1. Property : Item-->PO_DISTRIBUTIONS.DESTINATION_SUBINVENTORY-->REQUIRED
2. Property : Item-->PO_DISTRIBUTIONS.DESTINATION_SUBINVENTORY-->REQUIRED (APPLICATIONS COVER)

The fields seems to be made mandatory(colour turned YELLOW). But, system allow me to save and Approve the PO without providing a value to this field. If I click on the “Destination subinventory” field at PO form Distribution and then try to save the PO without providing a value, system is displaying a message that the field is mandatory. Could you please help me to make me fix this so that the system will not allow the user to save and Approve the PO without providing a value to this field?

Thank you very much in advance.

Thanks
Gowrishankar

 

Blogger Unknown said ... (5:25 PM) : 

Hi Anil,

To make the “Destination subinventory” field on PO form Distribution block a required field

I want to make the “Destination subinventory” field (PO_DISTRIBUTIONS.DESTINATION_SUBINVENTORY) mandatory on PO form Distribution block (PO_DISTRIBUTIONS).
I tried on the following things.
1. Property : Item-->PO_DISTRIBUTIONS.DESTINATION_SUBINVENTORY-->REQUIRED
2. Property : Item-->PO_DISTRIBUTIONS.DESTINATION_SUBINVENTORY-->REQUIRED (APPLICATIONS COVER)

The fields seems to be made mandatory(colour turned YELLOW). If I click on the “Destination subinventory” field at PO form Distribution and then try to save the PO without providing a value, system is displaying a message that the field is mandatory. But, if i do not open the PO Distributiobn field and save the PO, system allow me to save and Approve the PO without providing a value to this field. Could you please help me to make me fix this so that the system will not allow the user to save and Approve the PO without providing a value to this field?

Thank you very much in advance.

Thanks
Shankar

 

post a comment