Requirement:
We would like
to make a modification to this list. The idea is to modify the list based on
the responsibility so that different responsibilities get access to different
suppliers. So we have decided to show all suppliers whose names start with A if the Oracle user has logged
into the responsibility that starts with XXEBIZ
Personalization Steps
On the AP Invoice form click on
Help > Diagnostics > Custom Code > Personalize
Enter a new personalization as
shown below
Condition tab
Logic:
The triggering condition is when the user clicks on the Supplier Name
field on the form. Hence the Trigger Event is WHEN-NEW-ITEM-INSTANCE and the Trigger
Object is INV_SUM_FOLDER.VENDOR_NAME. The condition of personalization checks whether in the logged in
responsibility starts 'XXEBIZ%/ with or not
1
|
SELECT vendor_name,
vendor_number,
vendor_id,
vendor_type_lookup_code,
num_1099,
type_1099,
vat_registration_num,
employee_id,
awt_group_id,
allow_awt_flag,
hold_all_payments_flag,
num_active_pay_sites
FROM po_vendors_ap_v
WHERE active_flag = 'Y'
AND enabled_flag = 'Y'
AND num_active_pay_sites > 0
AND vendor_name LIKE 'A%'
ORDER BY UPPER (vendor_name)
|
Action 2: Set the new data set to
the LOV
The previously created data set
is now attached to the LOV which is called from the Supplier Name field.
Important:
How do we know the query of the
record group that needs to be changed? The structure of the query has to be
perfect else the form will throw an error each time we try to access the LOV.
To find the
original structure of the query we need to open the form in Forms builder. We
have come to know the name of the form from Personalization form itself. It is APXINWKB.fmb. You will find the form under $AU_TOP/forms/US folder on the
server.
We need to know the name of the
original record group being used on the form. On Action 2 of the
personalization step above we shall remove the Value as shown below,
with the crated GROUP_NAME -->XX_VENDOR_NAME
and test the form.