ISC APPS FORMS BY SWAROOP

27
Copyright @ Immense Source Institutes, 2011. All rights reserved

description

 

Transcript of ISC APPS FORMS BY SWAROOP

Page 1: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Page 2: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

New Form Development

Form Customization

Form Personalization

Oracle Application Forms

Page 3: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Contents in Oracle Application Forms

• Oracle 11i Product top• Architecture for Forms• Standard form vs Custom form• Standard Library file• Template.fmb• Query find• Custom.pll• New form Development process• Step to Resister the New Form • Form Customization Process• Form Personalization• Form Personalization vs CUSTOM.pll

Page 4: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

What is Form Personalization

The Form Personalization feature allows you to declaratively alter the behavior of Forms-based screens, including…

Changing propertiesExecuting built-insDisplaying messagesAdding menu entries.

Form Personalization is independent to each form. This means the personalization done on one form will not reflect on other form.

The form mainly contains four sections. They are…Rules, Conditions, Context, Actions

Page 5: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Most of the customers wish to modify the way the forms look and behave. Like changing the labels on the form fields, hiding fields, hiding buttons, etc.

The motives could beManaging un-necessary fields.To match the customer specific business requirements.

The Need

Page 6: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Menu Navigation: Help Diagnostics Custom Code

Personalize

Page 7: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Condition

Trigger Object

Trigger Event

Condition

Processing Mode

Validate

Page 8: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

» Each condition mainly contains three sections. They are…

» Trigger Event: Trigger Event specifies the occurrence where the rule should be executed.» Trigger Object: Trigger Object is the object on the form to determine at what level the rule should be executed. The values can be “<Form Name>”, ‘<Block Name>” or “<Item Name>”

» Condition: Condition is any SQL statement to control the execution of rule when the mentioned criterion is met.

Condition

Page 9: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Condition : Trigger Event & Trigger Object

Page 10: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

All E-Business Suite forms send the following events: WHEN-NEW-FORM-INSTANCE: Once, when the form starts up. Trigger Object does not apply.WHEN-NEW-BLOCK-INSTANCE: Each time the cursor moves to a new block. Trigger Object must contain the blockname of interest.WHEN-NEW-RECORD-INSTANCE: Each time the cursor moves to a new record. Trigger Object must contain the blockname of interest.WHEN-NEW-ITEM-INSTANCE: Each time the cursor moves to a new item. Trigger Object must contain the blockname.itemname of interest.WHEN-VALIDATE-RECORD: each time the current record has any change that needed to be validated. Trigger Object must contain the blockname of interest.

Form Personalization

Page 11: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Processing Mode:

1. Not in Enter Query Mode: The Rule will not be executed in Enter Query Mode.

2. Only in Enter Query Mode: The Rule will be executed in Enter Query Mode only.

3. Both: The Rule will be executed in both the Enter & Execute query modes.

Validate :

1. When you press the Validate button, the Condition will process immediately and return either True, False, or an Error.

2. Errors are in standard ORACLE error format, with an ORA error number.

Condition: Processing Mode & Validate

Page 12: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Context

Page 13: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Context manages to whom the personalization should apply.

This is similar to the concept of using profile options in Oracle Applications with a slight difference. We will see this in next slide.

The various levels are Site, Responsibility, Industry and User.

During runtime, the values provided in the context are evaluated and personalization rules will be applied.Usage of context is very vital in implementing the personalization to prevent the inappropriate users accessing these personalization of the form.

Example : Context = Responsibility Value = Customer Support

Context

Page 14: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

If a Rule has a context of ‘Site’, it will be applied for everyone.

A rule with a context of Responsibility does not ‘override’ Site.

A rule with a context of User does not ‘override’ Site or Responsibility.

If 2 rules have the same Trigger Event, and Actions that change the same property, the rule with the higher sequence number will be performed last, thus it will ‘WIN’.

Context

Page 15: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Actions

Page 16: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Actions decide the exact operation to be performed when the conditions and context return TRUE during the runtime.

The types of actions available are…PropertyMessageBuilt-inSpecial

Each Action contains a Sequence number, Description and Language.

Based on the action type selected, the fields on the right sector of the actions tab will be refreshed where the action parameters are entered.

Actions can be enabled, disabled or deleted.

Actions

Page 17: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

The action type “Property” is used to set the properties of the objects.The various objects include “Item, Window, and Block etc”.Property Name is the Property to be changed.Value is the new desired value for the property.

Example: Object Type = “Item”, Target Object = “:ORDER.ORDER_NUMBER” Property Name = “PROMPT_TEXT” Value = “Claim Number”

The value can be interpreted at runtime, so you can use SQL functions and operators.Any value start with “=” operator will be interpreted at runtime, otherwise the value is treated as is entered in the value field. Example: Value => =’Welcome to the Sales Order Entry Mr. ‘||user.

Page 18: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

For Items (Fields):• PROMPT_TEXT: The prompt of the item, typically next to or above the item• DISPLAYED: If False, the item is hidden• INITIAL_VALUE: The value to default on a new record. This can only be set in the

WHEN-NEW-RECORD-INSTANCE event• LABEL: The label of a button, checkbox or radio button• REQUIRED: If True, the user must enter a value.• TOOLTIP_TEXT: The bubble tip on the item. X and Y_POS: The location on the

canvas, in inches.

Common Actions of type Property

Page 19: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

For Tab Pages:• DISPLAYED: If False, the tab page is hidden. Note that keyboard navigation may

need to be changed to prevent access to items on the page• LABEL: the title of the tab

For Canvases:• TOPMOST_TAB_PAGE: Determines the currently selected Tab Page.

For Windows:• TITLE: the title of the window• X and Y_POS: the location within the MDI window, in inches For Blocks:• DEFAULT_WHERE: the WHERE clause of the SQL statement controlling queried

records• ORDER_BY: the ORDER_BY clause of the SQL statement of the queried records• INSERT_ALLOWED: if False, prevents the user from creating new records• UPDATE_ALLOWED: if False, prevents the user from updating any item in a

queried record• DELETE_ALLOWED: if False, prevents the user from deleting queried records

Common Actions of type Property

Page 20: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Actions Type: Message

• The action type “Message” is used to display custom messages during runtime.• Message Type and Description should be entered after selecting the action type as

“Message”. • The available message types are

Show Hint Error Debug Warn• Depending on the response expected from the user, the appropriate message type should

be selected. Example: Message Type = “Hint”

Message Text = “Please Follow the Date format DD-MON-YYYY”

Page 21: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Show: Displays a message of type Note, with an OK button.

Hint: Displays text on the message line

Error: Displays a message of type Error, with an OK button. Processing is aborted afterwards.

Debug: Displays a message of type Note, with an OK button. Only displays when ‘Display Debug messages’ is checked.

Warn: Displays a message of type Question, with OK and Cancel buttons.

If the user selects Cancel, processing is aborted.

Common Actions of type Message

Page 22: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Actions Type: Builtin

The action type “Builtin” is used to execute the form and AOL API’s.

Depending on the API type selected, the parameters should be entered.

Example: Builtin Type = FND_UTILITIES.OPEN_URLArgument = http://dms.dell.com

Page 23: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

• GO_ITEM and GO_BLOCK: Move the cursor to a specific item or the first item in a block

• DO_KEY: Acts like a macro, simulating user actions. • Common Arguments:

• ENTER_QUERY: invoke QBE mode• EXECUTE_QUERY: execute the query• NEXT and PREVIOUS_BLOCK: move to another block• NEXT and PREVIOUS_ITEM: move to another item

• FND_UTILITIES.OPEN_URL: Launch a URL. Can be as simple as ‘www.yahoo.com’, or as complex as a Discoverer page

• FND_FUNCTION.EXECUTE: Open a function, applying security rules. Parameters can be passed if the target accepts them.

Common Actions of type Builtin

Page 24: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

A rule or action may not run for a variety of reasons:

• The Rule or Action is not enabled .• The Condition has evaluated to FALSE .• The Trigger Event and/or Trigger Object were not what you expected • The scope of the rule only consists of Responsibility, Industry and/or

User, and none is true for the current context • An action is executing the Builtin 'RAISE

FORM_TRIGGER_FAILURE' . That will abort all further processing for that event.

• The Language of the Action, if not ‘All’, is different than what you are currently running

• You have set Custom Code to ‘Off’ or ‘Core code only’ in the pulldown menu.

• Rules are created for a Function. You might be running the same form, but as a different function.

Debugging: Why isn’t it running ?

Page 25: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Personalization Customization

Not Require CUSTOM library Mainly use CUSTOM library

For a limited functionality like hiding columns, changing labels and showing custom messages etc. (Look & Feel)

To Implement the complex business logic

Easy, faster and requires minimum development effort.

Depends on the complexity of business logic and require considerable development effort.

Doesn’t violate the support from Oracle and these rules also conceded with the future upgrades without any additional effort.

Page 26: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Form Personalization: Database Tables

Some of the Important Database tables for personalization

FND_FORM_CUSTOM_RULES

FND_FORM_CUSTOM_ACTIONS

FND_FORM_CUSTOM_PARAMS

FND_FORM_CUSTOM_PROP_LIST

FND_FORM_CUSTOM_PROP_VALUES

FND_FORM_CUSTOM_SCOPES

Page 27: ISC APPS FORMS BY SWAROOP

Copyright @ Immense Source Institutes, 2011. All rights reserved

Thank You