Key Flexfields and related tables in Oracle EBS

Here are the different key flexfields in Oracle EBS and related tables information to store KFF Data Information,

Accounting Flexfield                                                                    GL_CODE_COMBINATIONS
Asset Category Flexfield                                                             FA_CATEGORIES_B
Asset Key Flexfield                                                                        FA_ASSET_KEYWORDS
Location Flexfield                                                                          FA_LOCATIONS
Oracle Inventory Item Flexfield                                             MTL_SYSTEM_ITEMS_B
Territory Flexfield                                                                        RA_TERRITORIES
Sales Tax Location Flexfield                                                     AR_LOCATION_COMBINATIONS
Item Categories                                                                               MTL_CATEGORIES_B
Account Aliases                                                                              MTL_GENERIC_DISPOSITIONS
Item Catalogs                                                                                   MTL_ITEM_CATALOG_GROUPS
Sales Orders                                                                                      MTL_SALES_ORDERS
Stock Locators                                                                                MTL_ITEM_LOCATIONS
Grade Flexfield                                                                               PER_GRADE_DEFINITIONS
Job Flexfield                                                                                    PER_JOB_DEFINITIONS
Personal Analysis Flexfield                                                       PER_ANALYSIS_CRITERIA
Position Flexfield                                                                           PER_POSITION_DEFINITIONS
Soft Coded Key Flexfield                                                            HR_SOFT_CODING_KEYFLEX
Bank Details Key FlexField                                                        PAY_EXTERNAL_ACCOUNTS
Cost Allocation Flexfield                                                             PAY_COST_ALLOCATION_KEYFLEX
People Group Flexfield                                                                PAY_PEOPLE_GROUPS

Here are few important frequently asked questions on KFFs and DFFs useful for Oracle EBS Beginners and Developers,

Does Every Key Flexfield Always Have a Dedicated Table?

Yes. Every key flexfield has a table dedicated to store the unique combination for a group of fields. For the GL accounting key flexfield, there is a table named GL_CODE_COMBINATIONS. Another example is grades in Oracle Human Resources. An HR grade can be defined as a combination of, say, Clerk + Senior or Clerk + Junior. These combinations will be stored in the PER_GRADES table.

Do All the Tables That Are Used for Storing Key Flexfields have Columns Named SEGMENT1, SEGMENT2…SEGMENTX?

Yes. It is a standard practice used by Oracle to give generic names like SEGMENT1, SEGMENT2…SEGMENTX to these columns. These segment columns are generic columns so that each E-Business Suite customer can reference them by whatever name he or she likes and by giving the desired prompt name to the key flexfield segment.

Does Oracle Deliver Key Flexfields out of the Box?

Oracle delivers many KFFs out of the box, but you will have to configure their segments as per business needs. You can also create new KFFs in Oracle EBS.

What Are the Steps for Configuring a Key Flexfield?

Navigate to the Application Developer responsibility:

Flexfield >> Key >> Register

In this screen, you can get the title of the flexfield against a table name. Next, navigate to the KeyFlexfield segments screen (Flexfield | Key |Segments) and query using the flexfield title. In the KFF Segments screen, the desired segments can be configured in a manner similar to that for descriptive flexfields.

What Are Cross Validation Rules (CVRs)?

Cross validation rules (CVRs) are used to prevent the creation of invalid segment combinations. For example, a Location key flexfield can have two structures, say one for each country, the U.K. and the U.S. For the U.S. flexfield structure, you can define a cross validation rule that excludes COUNTY=NY and CITY=ABERDEEN. At the time of defining cross validation rules, you also specify the accompanying error message that the end user will receive if he or she uses the wrong combination of values in segments. Whenever any component of the Oracle EBS attempts to create a new segment combination, the flexfield engine checks all the cross validation rules against that KFF structure to ensure that the combination is valid. If the combination fails to pass a rule, the error message associated with that rule is displayed to the end user. CVRs are applied to all users in Oracle EBS, but they are not applied to existing combinations.

Source

Adding links of HTML pages in Oracle Apps login page

I got a requirement to edit or create the privacy link, FAQ and other links in the Oracle Applications Login page

Below is the Procedure to do it.

Once you have the content change or convert the Documents from any Format(document) to HTML format
Now move the html file to server in the below path
cd $OA_HTML
Now test the file whether it is opening or not by the below url

http://xxabcde.fghij.com:8010/OA_HTML/Login_Page_Links/About%20us.html

Here in the below link the
xxabcde.fghij.com      => Refers to host name
8010                               => Refers to Port of the Server
OA_HTML                     => Path where the HTML file picks up(cd $OA_HTML)
Login_Page_Links/About%20us.html => folder and file path inside server

Now once the page is opening go to Functional Administrator Responsibility  and then give the below pathscreenshot
/oracle/apps/fnd/framework/webui/OAFooter

Now Edit the privacy link footer and Include the above link and click apply.
Now the link would be changed.

TOAD shortcut or Auto complete for select * from

Most of the people find it useful to have shortcuts or auto complete  so it makes coding faster, particularly for typing select * from _(table_name)_. So to make your own autocomplete navigate in TOAD to

GOto View–> TOAD Options –> Behaviour –> AutoReplace Button

Now in the opened window add s and give select * from

Also you can view some of template by the below navigation

GOto View–> TOAD Options –> Behaviour –> Code Templates Button

 

TOAD Autocomplete

Turning off column autosuggestion in TOAD

Some people feel that when writing a query in TOAD, it tries to give autosuggestion but it takes a long time so it will be helpful sometimes to get the suggestion off.

To turn off go to View –> Toad Options –> Code Assist and then disable the checkbox in the particular link as shown.

Toad Disable column suggestion

Comparison in Excel using vlookup function

We can compare the values in Excel sheet using vlookup function

By the Below Formula

=VLOOKUP(E1,E1:F1,1,FALSE)

Here we the first parameter is the value to b compared

Second is the Range from which cell to which cell

Third parameter is that the column index number

Fourth when false(Searches for the exact match) when true just tries to find the range near

 

 

 

Oracle apps PG or region XML file path

Usually we will find the java files in $JAVA_TOP but the xml files will not be in the $JAVA_TOP. The xml files will be in respective application top, for example im woking in SubLedger Accounting Application and the shortname is XLA and top is XLA_TOP so go to the top by

cd $XLA_TOP/mds/linesinquiry/webui/JeLinesInquiriesPG.xml

Installing fedora tool groups in fedora 23

In fedora they have grouped packages according the needs like for an example if a person is interested in he has to download a distribution or he has to get a fedora lab of his choice for example Audio Editing or he can go for some other distro which has Audio Editing  tools and now he is also interested in security tools so he has to search all the tools and then he will install with audio editing tools. So to simplify this fedora provides group. So there are many groups users can get specialized tools in the groups.

Now type the below command to search the list of groups in fedora

$ dnf groups list

Now Install the needed group to your system by firing the below command

# dnf groups install “Security Lab”

Note: this command will not support the versions below fedora 21

Enjoy..

 

Creating Role and attaching role in Oracle Workflow

If there is requirement that you have to send a notification to some users in a group you can use this AdHocRole concept so you can stitch a group of users and attach to one role.

In the below code wf_directory.CreateAdHocRole creates a new role and we loop the users and send it to wf_directory.AddUsersToAdHocRole so that users will b attached to the particular role

lc_adhoc_role3 := ‘DPC_MAITENANCE_SUPERVISOR’||itemkey;
wf_directory.CreateAdHocRole(       role_name                 => lc_adhoc_role3,
role_display_name         => lc_adhoc_role3);

for i in c1(‘DPC Maintenance Engineer’) loop
wf_directory.AddUsersToAdHocRole(   role_name                 => lc_adhoc_role3,
role_users                => i.USER_NAME
);
end loop;
wf_engine.setitemattrtext (itemtype   => itemtype,itemkey    => itemkey,aname      => ‘DPC_MAITENANCE_SUPERVISOR’,avalue     => lc_adhoc_role3);

Make sure the attribute type is ROLE instead of text and call the above line to assign the role programmatically

Creating attribute at runtime

Below is script to Create attribute at run time in Oracle apps Workflow.

if ( funmode = ‘RESPOND’ OR funmode = ‘TIMEOUT’) then
create_item_attrib_if_notexist(itemtype=>p_item_type,
itemkey=>p_item_key,
aname=>’HR_CONTEXT_NID_ATTR’,
text_value=>null,
number_value=>wf_engine.context_nid,
date_value=>null);
end if;

Responding a response from backend

To programatically respond to a Notification use the below script replacing with the appropriate notification Id and status

begin

wf_notification.setattrtext ( nid => i.notification_id
, aname => ‘RESULT’
, avalue => ‘RETRY’ );
wf_notification.respond( nid => i.notification_id
, respond_comment =>’Approved from our end’
, responder =>fnd_profile.value (‘USERNAME’));

end

Follow

Get every new post delivered to your Inbox.

Join 365 other followers