Form Personalization: How to validate record?

Hi,
We need your help. We have developed one custom form which captures data for Inter-Org transfer in Oracle Inventory. User enters Source Organization Code, Destination Organization Code, Item Number and rest of all other information. Source & Destination Organization are in one block of the form and Item number , Quantity etc are in another block on the same form. Item Number field is showing LOV of all list of items from mtl_system_items_b from master Org and that's the requirement of the form.
Through Form Personalization, User wants while saving the record on the form, it should validate item-Organization assignment for both Source & Destination organization. Item should exist in Source & Destination organization else it should display error message while saving the record.
Please help me how we can achieve this through Form Personalization.
Thanks
Rajesh

trigger = when-validate-record
condition =
not exists (select 1 from mtl_system_items msi, mtl_parameters mp
where mp.organization_code = :dest_org
and mp.organization_id = msi.organization_id
and msi.segment1 = :item_number)
Action = message
type = error
message text = Item not assigned to dest. org.
Sandeep Gandhi

Similar Messages

  • Forms Personalization: how to Set default value to field

    Hi all,
    I have trouble with to fill in a field with an initial value where in defined an LOV.
    When I open the screen "Contract Commitment" via the responsibility "Contract Commitment Super User" I would like to see a initial value in the "Type" field in "Details" tab. I have tried some cases but with no result.
    Could someone point me to a solution or give me a hint how to solve this issue via forms personalization?
    field to be filled in:CC_ACCESS_NAME
    screen: IGCCENTR
    Block: ACCESS
    LOV: ACCESS_TYPE_LOV
    GROUP_NAME of LOV: ACCESS_TYPE_RG
    EBS version 12.0.4
    Many thanks,
    Cafer

    Thanks Fassi for your information.
    I can use INITIAL VALUE only with WHEN-NEW-RECORD-INTANCE trigger. In my case this is not usefull but wel correct advise.
    I need the trigger WHEN-NEW-FORM-INSTANCE and I have used VALUE property
    I could notice that there are 2 other fields which have also LOV on them in the same screen.
    if I gave these fields (ACCESS.NAM and ACCESS.CC_ACCESS_LEVEL_DESC) a defualt value then it was working for them but not for the first field (ACCESS.CC_ACCESS_TYPE_NAME)
    I have solved my issue with a trick as follows:
    In the same personalization I have created a new action row with a sequence earlier than ACCESS.CC_ACCESS_TYPE_NAME action and the field CC_DESC is also earlier in the screen than ACCESS.CC_ACCESS_TYPE_NAME. So I have given this field (CC_DESC ) a value as '' (SPACE). So I could manange to see the defualt value in ACCESS.CC_ACCESS_TYPE_NAME field.
    Regards,
    Cafer

  • Form personlization using WHEN-VALIDATE-RECORD to call PLSQL Package

    Hi
    I am writing a Form Personalization on master Item Form for New Records Only.
    Once Item Is defined and saved, it should Invoke the Custom Procedure to insert the same record in Custom Table.
    ===========
    Trigger Event - WHEN-VALIDATE-RECORD
    Trigger Block:MTL_SYSTEM_ITEMS
    Condition: :MTL_SYSTEM_ITEMS.INVENTORY_ITEM_ID<>-1 AND 0=(SELECT COUNT(inventory_item_id ) FROM Custom table
    WHERE inventory_item_id = :MTL_SYSTEM_ITEMS.inventory_item_id
    AND Organization_id=:MTL_SYSTEM_ITEMS.organization_id )
    ACTION
    Built In type = Execute Procedure
    Argument = ='DECLARE
    v_field_value VARCHAR2(200);
    BEGIN
    UPDATE_CUSTOM('''||${item.MTL_SYSTEM_ITEMS.ORGANIZATION_ID.Value}||''','''||${item.MTL_SYSTEM_ITEMS.INVENTORY_ITEM_ID.Value}||''');
    END'
    ============
    Here its not firing as required for evey required.
    Please advice.
    Thanks in advance.

    Hi Srini,
    Yes, it does work...but in a Form Session if i Create more then one Item, in some cases it fires for the first records and not sleeps for the second.
    Sometimes it doesn't give any response.
    Appreciated if you divert to the link to check the Pacthes for 11.5.10 on Form Personalization.
    Please share any ideas/example if yiou have to achieve the below requirement.
    Requirement:
    Once New record is created , a Custom Procedure should be invoked.
    with out closing Form i am able to create n number of Items, so for every Item it should invoke Custom PLSQL Code on Save.
    Let me know if i can achieve the same in Custom.pll .....as i can use either of Options.(Form Personalization/Custom.pll)
    Thanks & regards,
    Edited by: user632004 on Mar 16, 2010 7:50 PM
    Edited by: user632004 on Mar 16, 2010 8:09 PM

  • Forms Personalizations - How to navigate to a specific tab

    I am trying to do a forms personalization in Oracle Financials.
    The business requirements is have a menu option in AR Account Details form which takes the user to the Customers - Standard (ARXCUDCI) form and then queries back the customer and displays a particular tab.
    I have everything working except the tab navigation. I do not know how to navigate to a particular tab using forms personalizations.
    I'm not even sure that the 'Tabs' I'm thinking of are the same as Forms 'Tabs' as, when I try to look at the 'Tabs' in Forms Personalization it doesn't appear there are any. It looks like each tab the user sees is a different Canvas.
    The canvas my 'tab' is on is called CUST_MKT.
    As you can prob tell, I'm a functional consultant with limited forms dev experience. I expect the answer is simple - so hoping someone can help me out???
    Thanks,
    - Matt

    Hi Matt,
    You can use the action 'GO_ITEM' (type BuiltIn). In the argumen, you should write MYBLOCK.MYITEM where MYITEM should be an navigable item in the tab to which you want to navigate. To check the actual name of MYBLOCK and MYITEM, go to that item in the screen and check the menu Help > Diagnostics > Examine...
    I hope it helps.
    Regards.

  • Forms Personalization - How to refer to the current form

    Hi,
    I have created a Custom Form for Element Entries, and the associated function.
    I want to then personalize this specific form to hide a column. I don't want to hide the column in all the Element Entries forms, just the Custom form .
    My thinking is to add a statement somehting like
    :CTL_GLOBALS.DESTINATION_FORM = "MY_CUSTOM_FORM_NAME"
    Is this possible?
    Bernard

    Just do the forms personalization at your custom function level.
    -Open your custom function in front end
    -Help > Examine > Personalize
    Go on creating your personalization record. Ensure the level set as "Function".
    Will work surely. No need to write anything in the Condition tab. Just add your field hiding action in Action tab.

  • AP Form Personalization - How to default Values.

    Hi All,
    I am trying to Personalize the *"Payment Batch"* Form in AP Super User.
    (Navigation : Payments > Entry> Payment Batches.)
    My Requirement is:
    *"Once the Bank Account(LOV) is selected, the Pay Group(LOV) should get defaulted."*
    There is a ONE-TO-ONE Relationship with the Bank Account and Pay Group given by the user.
    1. How can I default the Pay Group corresponding to a Bank Account.
    2. Is there any table which links Bank Account and Pay Group to accomplish the same.
    3. Can i do it by creating LOOK-UPS
    Please help me start with this personalization.
    Thanks a TON in Advance.

    Please post your question in the [EBS General Discussion|http://forums.oracle.com/forums/forum.jspa?forumID=475] forum as this forum is dedicated to NON-EBS Forms development.
    Craig...

  • Forms Personalization - How to pass parameter to a Report

    Hi All,
    I am trying to run a report from a menu entry in the AP Invoice entry form. For this I have done the necessary steps of creating the menu entry and am assigning the values for the 2 parameters to a global variable and then launching SRS form.
    In SRS form created an action to assign the global variable value to work_order.parameters. I can invoke the SRS OK except that my 2 parameter values appear concatenated in the first parameter itself and are not getting assigned to each of them seperately.
    my global variable assignment is as follows :
    =${item.inv_sum_folder.vendor_name.value}||'.'||${item.inv_sum_folder.vendor_site_code.value}
    and my work_order.parameters value assignment is as follows :
    =select nvl(${global.kmg_invalid_po_gv.value}, ${item.work_order.parameters.value}) from dual
    Any ideas why this is not working ?
    Thanks in advance.
    Shankar

    Hi Prudhvi,
    Thanks for reply.
    I have actually seen it work for another report 'Supplier Payment Listing' (there are a few ppt presentations of this on the internet, can dig it out if reqd)
    The Select of the Single Query is assigned using INTO to the output variables. Just as you can use these output variables anywhere in the message you can also use them as parameters to pass to a concurrent prorgam or a function.
    However, when I try to mimick what i saw with above report for my custom report it somehow cannot distinguish between the parameters and treats them as 1 parameter value.
    I believe the parameters need to be seperated by a period(.) when assigning to global variables.
    Thanks
    Shankar

  • Form personalization : sales order form (line) to make subinventory field mandatory

    I have requirement to make sub inventory field mandatory in Sales Order Line, I tried using Form Personalization on 'When Validate Record' and making the fields required. But even though the field is showing as yellow but system allowing me to save the order line without this fields? Any input?
    thanks
    challa

    Forms Personalization is a feature of the Oracle Enterprise Business Suite (EBS) not a feature of Oracle Forms.  Please post your question in the EBS General Discussion forum.  If you have a general Forms question, by all means, ask it here!
    Craig...

  • Forms Personalization -LOV

    Hi all,
    I am new to forms personalization.How to restrict the LOV in forms personlaization.
    I gave like below.
    TriggerEvent: WHEN-NEW-ITEM-INSTANCE
    TriggerOBject:RCV_TRANSACTION.VENDOR_LOT_NUM
    Condition::RCV_TRANSACTION.VENDOR_LOT_NUM is null
    Actions:
    9)Builtin:Create Record Group from Query
    Arugument:
    select 'Dmage Issue' Transaction_Reason,'For Damage' Description from dual
    union all
    select 'POST' Transaction_Reason,'Increase and Decrease' Description from dual
    union all
    select 'Scrap Sales' Transaction_Reason,'For Scrap Sales' Description from dual
    union all
    select 'Self Consumption' Transaction_Reason,'Self Consumption' Description from dual
    union all
    select 'Theft Issue' Transaction_Reason,'For Theft' Description from dual
    union all
    select 'Vendor Debitable' Transaction_Reason,'for Vendor Debitable' Description from dual
    Group_Name :REASON_CODE_XX
    10)Property
    Object Type :LOV
    Target Object :REASON_CODE
    Property Name :GROUP_NAME
    Value:REASON_CODE_XX
    I am getting error Line column doesnt match with LOV.
    Please help me in this.
    Thanks ,
    Muthu

    Hi,
    My friend this issue is because that the new record group query is not matching the old record group query in the form. Can u share the record group query in the form.Or try to modify the newly created query in form personalization.
    Ie: Try to match the same columns in the both query.
    Check this link might be use full.
    http://oraclemaniac.com/2012/08/11/how-to-modify-a-form-lov-using-forms-personalization/
    Thanks & Regards
    Srikkanth

  • How to use when-validate-item in the form personalization?

    Dear all,
    I want to use when-validate-item trigger in the form personalization on a specific item. while in the same time the when-validate-item is not included in the trigger event list.
    Please advice & Thanks in advance
    Ashraf Ashour

    Use condition. If you are validating a record, just out the desired check in the condition field for that specific item.
    Thanks
    Nagamohan

  • How to validate multiple lines which is exist in the form builder at the same session

    Hi All,
    we are working on oracle Forms personalization to trigger the message at the point of saving multiple lines rather than requiring each line to be save individually. Currently the oracle form is allowing to user to enter two distinct lines that have same resource and basis type in BOM.
    Currently the Oracle form is allowing to enter the duplicate combination and not giving any error message even we enter the same combination of data.
    As per the customer requirement, they don’t want to validate the data while creating the records but when they try to save the form, in that case it should validate all the records at a time then need to display the appropriate message.
    Customer don’t want to customize the Oracle standard form. Here we have only option to use form personalization or through custom.pll.
    Any idea on how to validate multiple lines which is exist in the form builder at the same session as before inserting the record itself need to perform the validations for all the records.
    Thanks for your help in this regard.
    Regards,
    Thirupathi

    you can write a post script which will do the necessary tasks.
    I mean, once you are done with inserting records into these tables, exeute another procedure which will insert these "extra" records, based on some logic.
    you may not be able use DB trigger as it may generate mutating error or if you don't write it carefully, it will go into recursive loops as you are refering to same tables.
    HTH

  • Validate certain fields through Form Personalizations on hitting Save

    Hi,
    Everytime the user clicks on Save I need to validate if certain fields have been populated based on the value of another field.
    For instance, if Category is changed to Active or is currently Active and the user hits save, then before the record is saved, I need to make sure that certain other fields on the form are not null.
    How can I do this ?
    The trigger event am assuming will be when validate record, but that the trigger block can be anything in the form or sub forms as the save button is only in one place on the main menu. Also for the actions, if I define the Execute function, how do i ensure that based on the function result the record is not saved and an error message is generated ?
    Thanks for your help
    Preeti

    Thanks Gerald.
    I tried this -
    In the Form Personalization screen, I set the trigger_event to Key_commit,
    entered a conditon and on the Action tab, i chose builtin with the builtin_type being raise form_trigger_failure. It saves the personalization but on Apply Now I get the error message : FND_CUSTM_REQUIRED.
    Have you seen this before ?
    Thanks
    Preeti

  • Avoid forms personalization/trigger during record update

    Hi all,
    I am trying to use forms personalization restrict users not to duplicate invoice numbers for a given supplier in Oracle Payables(Oracle Apps
    R 12.1.3).
    Here are my details,
    Trigger Event: WHEN-VALIDATE-RECORD
    Trigger Object: INV_SUM_FOLDER
    Condition: 0<(SELECT count(*) FROM ap_invoices_all WHERE invoice_num =:INV_SUM_FOLDER.INVOICE_NUM AND vendor_id = :INV_SUM_FOLDER.VENDOR_ID) AND :SYSTEM.RECORD_STATUS='INSERT'
    Processing Mode: Not in Enter-Query Mode
    Actions:
    Type: Message
    Message Type: Error
    Message Text: Duplicate Invoice Number
    This trigger shoud only for new record inserts so, I have used the condition, *:system.record_status = 'INSERT'* but this trigger is still firing during update of existing invoices, say when i wanna change terms for the AP invoice.
    I couldnt figure out where the error is, if anyone has any idea, please help.
    Thanks.
    Edited by: Kwin on Oct 10, 2012 9:12 AM
    Edited by: Kwin on Oct 10, 2012 9:21 AM

    You can have one more condition like
    0<(SELECT count(*) FROM ap_invoices_all WHERE invoice_num =:INV_SUM_FOLDER.INVOICE_NUM AND vendor_id = :INV_SUM_FOLDER.VENDOR_ID) AND :SYSTEM.RECORD_STATUS='INSERT'
    AND
    :INV_SUM_FOLDER.INVOICE_ID is null
    because Invoice Id will be not not null for existing Invocies and for new invoices , it will be null.
    Thanks
    Pradeep

  • How to do this Form Personalization in oracle purchasing

    Hi All,
    Am using oracle E-Buz -R12.1.3.
    I trying to do one small form personalization
    Resp --> Purchasing--> Requisitions--> Requisitions.
    Now i ill query for one REQ number for example 1130011. Next ill enter a new line in the line level.
    Requirement:
    Once the line level data entry is completed, User will try to save the line.
    So at this time. I need to fire one message that.
    When the Destination Type is "Expense" and the user didn't enter the project details in the Distribution tab. Then i need to fire a popup message.
    So i tried like this
    Created a new FORM Personalization
    Trigger event :WHEN-VALIDATE-RECORD
    Trigger Object : LINES
    Condition :
    :SYSTEM.RECORD_STATUS IN ('INSERT' ,'CHANGED') AND :LINES.DESTINATION_TYPE_DISP = 'Expense' AND :DISTRIBUTIONS.REQ_LINE_QUANTITY IS NOT NULL AND :DISTRIBUTIONS.PROJECT IS NULL
    And in Action i have created a message type and mentioned to show.
    So Now the problem is when the user click the save button without entering the project detail the message is firing and i clicking three to four times ok and the record is getting saved.
    So my requirement is when the pop messages comes when i click ok i need to go back to the Project block.
    Can any one help in the requirement to get solved.
    Thanks & Regards
    Srikkanth.M

    Hi;
    1. I suggest check:
    Setting Up - Using - Demonstrationg - Personalizations In Oracle Purchasing [ID 1391679.1]
    2. You may get more quick response at Forum Home » Application Development in PL/SQL » Forms
    Regard
    Helios

  • How to calculate sum of quantities of same item in po release using form personalization?

    I am doing one form personalization in which an item can be entered multiple times in with different released quantity and need by date.
    I want to calculate the sum of release quantity of items.
    How I can achieve this using form personalization?
    Thanks
    Sunny

    Hi Gayatri,
    I'm not too sure why this isn't working as the logic seems correct.
    Here's another way to do this:
    1) Create another formula and place this on the Details Section:
    whileprintingrecords;
    numbervar x;
    if onfirstrecord then
    x := {Field_to_summarize}
    else if {ExcisePur.ItemCode} <> Previous({ExcisePur.ItemCode}) And {ExcisePur.Batchnum} <> Previous({ExcisePur.Batchnum}) then
    x := x + {Field_to_summarize};
    2) Create another formula and place this on the Report Footer:
    whileprintingrecords;
    numbervar x;
    -Abhilash

Maybe you are looking for