Archive

Archive for the ‘Apps R12 Fundermental’ Category

EBS Customization Case V: Lookups in Oracle Apps

06月 21, 2010 发表评论

 

Q60: What is the main purpose of lookups in Oracle Apps?
Q61: What is the differences between system, extensible, and userlookup types?
Q62: How can a lookup type be directly attached to a flexfield segment to do validations?
Q63: Please give a couple of examples and use cases where we use lookups.

——————————————————————————–

Q60: What is the main purpose of lookups in Oracle Apps?
The main purpose of a lookup is to keep programs flexible and easier to configure. Lookups are an approach of creating a configurable “list of values” in E-Business Suite.One of the simplest examples of a lookup type is gender. A “gender lookup” will have definitions as shown next:
Code       Meaning
M             Male
F              Female
U             Unknown

Let us assume that there is a table for employees named PER_ALL_PEOPLE_F and it has the following columns:
FIRST_NAME
LAST_NAME
DATE_OF_BIRTH
GENDER

The screen that displays an employee’s gender will display a value of Male, Female, or Unknown. However, the database column PER_ALL_PEOPLE_F.GENDER will store a value of M, F, or U. Hence, the screen displays the meaning, whereas the database columns reference the lookup via a lookup code.

If in the future your organization wants the users to see “Undisclosed” instead of “Unknown,” you will have to make a change to just one record in the lookups table via the lookup screen. By doing so, you will avoid having to update thousands of records in PER_ALL_PEOPLE_F. Your new lookup will look like the following:
Code       Meaning
M             Male
F              Female
U             Undisclosed

Here lies the power of the lookups; you do not need to modify thousands of records in a transactional table. A simple change via the lookup screen will suffice. Using the lookup screen, you can either create new custom lookups or modify existing lookups.

 
Q61: What is the differences between system, extensible, and userlookup types?
The following table shows the differences between system, extensible, and user lookup types:
Access Level     Change Text of Meaning     Add New Lookup Codes       Modify Enabled Flag
User                      Yes                                              Yes                                                 Yes
Extensible          Yes                                              Yes                                                 No
System                 Yes                                              No                                                   No

Briefly to say, Some preseeded lookups given by Oracle cannot be modified. For example,Oracle has a lookup type called a termination type as shown in above figure. Oracle has some rules defined within the Payroll Engine program that read the value of a termination type code for employees before calculating their final salaries. Obviously,such lookup codes, if changed, can affect the logic within the Payroll Engine. For this reason, Oracle flags some lookups as system lookups, and the Lookup Entry screen will not let you modify those lookup codes.

Q62: How can a lookup type be directly attached to a flexfield segment to do validations?
To do this, create a value set of Table type that validates against FND_LOOKUP_VALUES using the desired lookup. In this manner, you can validate flexfield segments against lookup values.
The point here is that a lookup type cannot be directly attached to a flexfield segment to do validations, however, it is indirectly possible to do so.
Q63: Please give a couple of examples and use cases where we use lookups.
Example I: Interfacing Data to Third-Party Systems
Sometimes there is a need to create a database view that becomes the source of information for data transfer to other third-party systems. You might have to put filtration rules in place; for example, for HRMS Extract, people with person types Employee and Applicant should be extracted. To achieve this, instead of hard-coding Employee and Applicant in the database view, you can do the following:
1. Create a lookup type XX_EXTRACT_EMP_TYPES.
2. Add lookup codes Employee and Applicant to this lookup type.
3. In the database view, join the HR Person Types from HR Tables with FND_LOOKUP_VALUES for this lookup type.

Example II:Development of Custom Screens
In custom screen development, there is often a need to provide a list of values (LOV) on a field, as per business requirements. If the LOV data is not available in standard Oracle tables, then it is recommended you maintain a lookup that drives such a lookup value.
(Quoted From Anil Passi&Vladimir Ajvaz)

EBS Customization Case IV: Key Flexfields (KFFs)

06月 20, 2010 发表评论

 

Q52: What’s Key Flexfields (KFFs)? What’s the difference between KFFs and DFFs?
Q53: What if there is no such thing as key flexfields?
Q54: What if consider a new approach using a key flexfield?
Q55: Does Every Key Flexfield Always Have a Dedicated Table?
Q56: Do All the Tables That Are Used for Storing Key Flexfields Have Columns Named SEGMENT1, SEGMENT2…SEGMENTX?
Q57: Does Oracle Deliver Key Flexfields out of the Box?
Q58: What Are the Steps for Configuring a Key Flexfield?
Q59: Is there anything that can prevent the creation of invalid segment combinations?
——————————————————————————–

Q52: What’s Key Flexfields (KFFs)? What’s the difference between KFFs and DFFs?
Key flexfields in E-Business Suite allow businesses and other organizations to create user-definable, unique composite keys such as accounting codes, item codes, and many others.
The key difference between descriptive and key flexfields is that DFFs usually collect user-defined additional information related to entities, while KFFs provide user-defined, unique keys or identifiers for entities.

Q53: What if there is no such thing as key flexfields?
Assume for a minute that there is no such thing as key flexfields and all you have on a screen or inside a table is a descriptive flex.
Assume that the basic requirement is to be able to capture values in the following additional fields for a purchase order and invoices transaction:
Company name: GM
Cost Centre: IT
Project: OFP (Oracle Fusion Project)
Expense Type: OCC (Oracle Consultant Cost)

If you had only DFFs available as a configuration option, when the business raises a purchase order to IT Consulting Company, the PO_DISTRIBUTIONS_ALL table would store values for following columns in a record:
ATTRIBUTE1 : GM
ATTRIBUTE2 : IT
ATTRIBUTE3 : OFP
ATTRIBUTE4 : OCC

When an invoice is received from the consulting company, the payables clerk would capture the Invoice Line accounting as follows in AP_INVOICE_DISTRIBUTIONS_ALL:
ATTRIBUTE1 : GM
ATTRIBUTE2 : IT
ATTRIBUTE3 : OFP
ATTRIBUTE4 : OCC

In other words, if DFFs were used for capturing the accounting details as in the example, then the four text values for fields (ATTRIBUTE1…4) would be physically duplicated in each module for the related transactions.

Imagine further when this transaction flows to the Oracle General Ledger. Given the nature of DFF, the Oracle Database would again have to store the four columns physically into table GL_JE_LINES. If so, the table GL_JE_LINES would have the following values in its DFF (Descriptive Flex) columns:
ATTRIBUTE1 : GM
ATTRIBUTE2 : IT
ATTRIBUTE3 : OFP
ATTRIBUTE4 : OCC
As you can see, such a design using a descriptive flexfield is flawed, as it causes duplication of data at various places. It is also possible that the same combination of GM-IT-OFP-OCC would be required against thousands of other purchase order records, and the text GM-IT-OFP-OCC would be duplicated across many tables and many records in each such table.
Q54: What if consider a new approach using a key flexfield?
Clearly, the descriptive flexfield does not fit into above scenario. Let’s now consider a new approach using a key flexfield. In this example, you have a table named GL_CODE_COMBINATIONS with the following columns:
CODE_COMBINATION_ID
SEGMENT1
SEGMENT2
SEGMENT3
SEGMENT4
You capture a single record in the table GL_CODE_COMBINATIONS as shown:
Column Name    Column Value
CODE_COMBINATION_ID         50493    ** a unique number value
SEGMENT1    GM
SEGMENT2   IT
SEGMENT3    OFP
SEGMENT4    OCC
Now, in the PO_DISTRIBUTIONS_ALL table, you will have a column with the value CODE_COMBINATION_ID = 50493 that refers to the unique key combination of the record in the KFF table.
In the Account Payables module, even though a clerk enters the values for four columns (one for each segment), the database stores only the reference value 50493 in the column CODE_COMBINATION_ID of the Payables Distributions table.
Ditto
for the entry in the GL_JE_LINES table in the Oracle General Ledger module: only the ID that references those four columns will be stored. Therefore, all the tables (Purchase Order Distributions, Payables Distributions, and General Ledger Journal Lines) will reference just the CODE_COMBINATION_ID. This concept of having a unique ID that maps to a combination of othervalues is called key flexfields.

Q55: 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.

Q56: 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.

Q57: 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 Apps;however, this is a very rare requirement and is not covered in this book.

Q58: What Are the Steps for Configuring a Key Flexfield?
Navigate to the Application Developer responsibility and click the menu 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.
Unlike the descriptive flexfields setup, the configuration of key flexfields is usually a one-off exercise, normally performed by functional analysts during the initial implementation.
 

 Q59: Is there anything that can prevent the creation of invalid segment combinations?
Yes, it’s called Cross Validation Rules (CVRs). 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 Applications 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 Apps, but they are not applied to existing combinations.

(Quoted From Anil Passi&Vladimir Ajvaz)

EBS Customization Case III: Descriptive Flexfields (DFFs)

06月 20, 2010 发表评论

 

Q45: What does screen usually consist of?
Q46: Does screen consist of fields which contain additional data?
Q47: It’s why to use DFFs?
Q48: How to activate these flexible fields?
Q49: If I add some segments/fields, then those segments/fileds will always be visible?
Q50: If I add some segments, those segments could appear on a screen based on the value of another field in that screen?
Q51: How Does the Reference Field Control Which Segments Are Displayed?

——————————————————————————–
Q45: What does screen usually consist of?
Each screen usually consists of a group of fields, and these fields capture the data entered by the user. Of course, most fields have a business purpose; for example, in the Purchase Order entry screen, the supplier field captures the name of the supplier from whom you purchase the goods. Oracle develops the screens in a generic manner, so that they can be used by any company in the world.

Q46: Does screen consist of fields which contain additional data?
Yes, different companies have different or additional needs to capture extra details about a transaction. For example, in purchasing, one company might require a Shipping Special Instructions field, whereas other company might require a Telephone Number of Purchaser field.

Q47: It’s why to use DFFs?
To meet the requirements of different companies, Oracle Applications comes with a preseeded set of flexible fields.These fields can be used to capture values for additional fields as per business requirements.Given that these are generic fields,  they are named ATTRIBUTE1, ATTRIBUTE2…ATTRIBUTEn.
In other words,o rganizations that implement E-Business Suite often want to capture additional information specific to their enterprise through the screens. This is achieved through the configuration of descriptive flexfields (DFF), which provide a mechanism for capturing additional data in application tables through user-defined fields without the need to customize the underlying database schema.

  

Q48: How to activate these flexible fields?
To activate these fields, you have to configure the descriptive flexfields, but before you can do that, you must ensure that you have access to the Application Developer responsibility. Follow these steps to identify the flexfield:
a) Identify the table into which you wish to capture additional information. Ensure that this table has columns named ATTRIBUTE1…n in the database.
b) Navigate to the responsibility Application Developer.


c) (reference picture “descriptive flexfield registration and relationship between the table and DFF tables title”) WithinApplication Developer responsibility,Click the menu option Flexfield | Descriptive | Register,Query the table that will capture the additional information,Note the title of the descriptive flexfield, as this will be used to perform the query in the Segments screen.

d) Once the descriptive flexfield title has been identified, you need to define the segments,in the Application Developer responsibility, (reference picture “Descriptive flexfield segments”) follow the navigation path (N)Flexfield | Descriptive |Segments, Query on the descriptive flexfield title that you noted from the Register DFF screen,Unfreeze the flexfield by unchecking the check box. (It is not possible to amend the flexfield segment if it is in a frozen state.),Select Global Data Elements and click the Segments button,Give a user-friendly name to this field and map this field to an ATTRIBUTE column. Also attach a value set. A value set is used to ensure that only validated values are entered into descriptive flexfields by the user.Make the flexfield segment required or nonrequired as per business requirements.
e) Freeze the flexfield again after making the changes.you should see the flexfield segment appear in the Purchase Order Entry screen.

 

Q49: If I add some segments/fields, then those segments/fileds will always be visible?
One flexfield can have multiple structures. A structure is a grouping of fields or segments. All DFFs have a default structure named Global Data Elements. If you add segments within global segments, then those segments will always be visible in the screen regardless of context (Reference). However, if you have other structures defined in a DFF, then at any given point in time, only the segments or fields within one of the structures will be displayed on screen.

 

Q50: If I add some segments, those segments could appear on a screen based on the value of another field in that screen?

Yes, you can. In certain cases you might want descriptive flexfield segments to appear on a screen based on the value of another field in that screen. For example, you may want to display Telephone Number Segment when the user is entering a purchase order that requires approval, but not for a purchase order that does not require approval.
We know that the field APPROVAL_REQUIRED_FLAG holds this value and therefore we would make this the REFERENCE field. This field must be enabled as a reference field in the descriptive flexfield register screen (accessed by clicking the Reference button). Please note that it is not mandatory for a descriptive flexfield to have a reference field.

 

Q51: How Does the Reference Field Control Which Segments Are Displayed?
Let’s assume that on the Purchase Order screen there is a field named Approval Required, and the internal name of the field is APPROVAL_REQUIRED_FLAG. Let’s further assume that our requirement is as listed:
Condition                                                        Fields to Be Displayed on the Purchasing
Screen
APPROVAL_REQUIRED_FLAG=‘Y’      Purchaser’s Telephone Number,Reason for Purchase
APPROVAL_REQUIRED_FLAG=‘N’      Verbally Agreed with Manager[Yes/No]
APPROVAL_REQUIRED_FLAG is Y      Special Delivery Instructions,Alternate Delivery Address
                                  or N or Blank

To meet this requirement, your DFF will be defined as follows:
Section                                  Field                                      Value
Context Field                      Reference Field                APPROVAL_REQUIRED_FLAG
Context Field                      Code                                      Global Data Elements
 Value                                                                                     Special Delivery Instructions
                                                                                                  Alternate Delivery Address
                                                                                                     Y
                                                                                                  Purchaser Telephone Number
                                                                                                  Reason for Purchase
                                                                                                     N
                                                                                                  Verbally Agreed with Manager

(Quoted From Anil Passi&Vladimir Ajvaz)

EBS Customization Case II: Custom Profile Options

06月 19, 2010 发表评论

 

Q40: How to create custom profile options?
Q41: Why to create custom profile options?
Q42: Which tables are used by Profile Options?
Q43: Can I update FND_% or any other tables in Oracle Applications directly?
Q44: Can I use the APIs to interact with profile options programmatically?
——————————————————————————–
Q40: How to create custom profile options?
To create custom profile options, navigate to the responsibility Application Developer and click the Profile menu. You can decide the levels at which to set your custom profile option. It is also possible to specify whether an end user will be able to view or edit the value of this profile option.

Q41: Why to create custom profile options?
Custom profile options are useful when you are building extensions to Oracle Applications Forms/Interfaces. In order to keep your code flexible and configurable, you can define custom profile options and then reference them in your source code.

Q42: Which tables are used by Profile Options?
Profile options definitions are stored in the tables FND_PROFILE_OPTIONS and FND_PROFILE_OPTIONS_TL. Column PROFILE_OPTION_NAME contains the short name of the profile option, whereas USER_PROFILE_OPTION_NAME contains the descriptive name of the profile option.
The values assigned to the profile options at different levels are stored in table
FND_PROFILE_OPTION_VALUES.
Q43: Can I update FND_% or any other tables in Oracle Applications directly?
No, you must update FND_% or any other tables in Oracle Applications directly.
You should always use the public API to access the profile options in programs or screens.
Q44: Can I use the APIs to interact with profile options programmatically?
Yes, in order to interact with profile options programmatically, you must use the APIs.
Some of the key APIs and their purpose are listed below:
fnd_profile.put 
Passes as parameters the name of the profile option and the value to which it must be set.
fnd_profile.value
Returns the value of the profile option for the current logged in context.
fnd_profile.save_user
Sets the value of the profile option into table FND_PROFILE_OPTION_VALUES for the current logged in user.
fnd_profile.save
Sets the value of the profile option into table FND_PROFILE_OPTION_VALUES at any level.
(Quoted From Anil Passi&Vladimir Ajvaz)

EBS Customization Case I: Profile Option

06月 18, 2010 发表评论

 

Q35: What are the requirements for a screen which is built in the Order Entry module ?
Q36: What are the steps to build the screen?
Q37: What are the steps to configure the system?
Q38: What is the Profile option in Oracle Applications?
Q39: What are the actions the Profile option can take?

——————————————————————————————-

Q35: What are the requirements for a screen which is built in the Order Entry module ?
a) The screen should be flexible enough to ensure that different users of the screen can give different levels of discounts. For example, a clerk Order Entry user can give no more than a 5 percent discount. But a Sales Manager can enter an order with 15 percent discount.
b) There should not be any hard-coding regarding the maximum permissible discount.
c) There will be a discount field in the screen.
d) When the discount value is entered in the discount field, an error will be raised if the user violates the maximum permissible discount.

Q36: What are the steps to build the screen?
a) Define a profile option named ONT Maximum Discount Allowed. This profile option will be created using the short name ONT_MAX_DISCOUNT.The short name is the internal name used by AOL.
b) Insert the following code in the when-validate-item of the discount field (assuming the screen is built in Oracle Forms):
IF :oe_line_block.discount_value >
fnd_profile.value(‘ONT_MAX_DISCOUNT’)
THEN
message( ‘You can’t give discount more than ‘
|| fnd_profile.value(‘ONT_MAX_DISCOUNT’) || ‘%’ ) ;
raise form_trigger_failure ; — raise error after showing message
END IF ;

Q37: What are the steps to configure the system?
a) Navigate to System Administration and click the System Profile menu.
b) For the Clerk user JOHN, set the value of profile ONT Maximum Discount Allowed to 5. For Sales Manager User SMITH, set the value of profile ONT Maximum Discount Allowed to 15.
c) In this example, each Order Entry Clerk can be assigned the responsibility XX
Order Entry Clerk Responsibility. Each Sales Manager can be assigned the responsibility named “XX Order Entry Sales Manager Responsibility.” Thereafter, you can assign the profile option value to both of these responsibilities.
XX Order Entry Clerk Responsibility can have a profile value of 5 percent assigned against it, and XX Order Entry Sales Manager Responsibility can have a profile option value of 15 percent assigned.
d) In the when-validate-item of the discount field, the following code could be written:
IF :oe_line_block.discount_value > fnd_profile.value(‘ONT_MAX_DISCOUNT’)
THEN
message( ‘You can’t give discount more than ‘
|| fnd_profile.value(‘ONT_MAX_DISCOUNT’) || ‘%’ ) ;
raise form_trigger_failure ;– raise error after showing message
END IF ;
Q38: What is the Profile option in Oracle Applications?
Profile options provide a great deal of flexibility to Oracle Applications developers.
Profile options could be thought as a global variable in Oracle Applications, and the value of this global variable changes depending upon factors like the following:
The user who has logged in
The responsibility used by the user
The application being used by the user via the responsibility
The server to which that user is connected
Note, The order of precedence is very important. The applications check the user value
first, then responsibility, application, and site levels, in that order. Its logic similar to this:
Does the profile option value exist for the user?
Yes  Use the profile option value defined for the user.
No Does the profile option value exist for the responsibility?
 Yes  Use the profile option value defined for the current responsibility
  that user has logged into.
 No  Use the profile option value defined for the site level.

Q39: What are the actions the Profile option can take?
a) Say one of one thousand users reports a problem, and you wish to enable debugging for
that specific user. In this case, you can turn on the debugging profile option for that specific user.
b) For example, a profile option can control which user can give discounts to his or her customers at the time of data entry. The profile option Discount Allowed could be created and set to a value of either Yes or No for each order entry user
c) Let’s assume an organization has departments D1 and D2. Managers of both departments have the HRMS Employee View responsibility. But you do not want the manager of D2 to be able to see the list of employees in organization D1. You can set a profile option for the
username of each of these users. The value assigned to such a profile option will be Name of the Organization, for which they can see the employees.
Of course, the SQL in the screen that displays a list of employees will filter the data based on the “logged in user’s profile option value.” (In reality, this functionality is implemented in Oracle HRMS using the Security Profiles profile option.)
(Quoted From Anil Passi&Vladimir Ajvaz)

EBS Customization Overview

06月 18, 2010 发表评论

 

Q29: What is Oracle EBS customization?
Q30: Do I have to register my executables to application?
Q31: Each application is mapped to a specific directory? And why?
Q32: Each application has a base path?
Q33: If customize a report in a Purchasing module, how to set the application directory?
Q34: If customize a report in a Purchasing module, how to set the application name?

———————————————————————————————-

Q29: What is Oracle EBS customization?

Oracle E-Business Suite is a combination of various applications such as Payables,
General Ledger, Payroll, Human Resources, and many others. You can do customization to any of thoes modules/applications. Oracle EBS customizations are about creating applications which are defined by their long (full) name, short name, and base path. After the custom applications were registered, they should be created to host the extensions and custom modules.

The grouping of custom objects under the custom application helps protect them from upgrades and patches.

Q30: Do I have to register my executables to application?
Yes, for example, the report’s executables are RDF files, SQL*Plus executables are SQL files, and Unix Shell Scripts are PROG files (in Oracle Apps). All these executables must be registered with an application.
Q31: Each application is mapped to a specific directory? And why?
Yes, each application is mapped to a specific directory path on the server. For example, application XXPO (which, for example, holds PO Customizations) may map to directory /home/oracle/apps/appl/xxpo.An application is defined by its long (full) name, short name, and base path, which points to the top directory for that application on the file system structure.That way of grouping of custom objects under the application helps protect them from upgrades and patches.

Q32: Each application has a base path?
Yes, each application has a base path, which is also the name of a corresponding operating system environment variable. These environment variables are also called top directories, and there is one for each module. For example, the Purchase Order application has a corresponding environment variable named $PO_TOP.

Q33: If customize a report in a Purchasing module, how to set the application directory?
To develop or customize a report in a Purchasing module, assuming the executable name is XXPOPRINT.rdf, you need to register the executable with the XXPO application. As we said, each application is mapped to a specific directory path on the server, for example, application XXPO (which, for example, holds PO Customizations) may map to directory /home/oracle/apps/appl/xxpo. Hence, this RDF must be transferred to directory /home/oracle/apps/appl/xxpo/reports/.

Q34: If customize a report in a Purchasing module, how to set the application name?
The name of the application will help the Oracle Apps environment locate the executable file on the server. For example, when the end user runs this report from the application mentioned above, this application have a short name of XXPO and is mapped to directory /home/oracle/apps/appl/xxpo/reports/US for reports, which is where the file XXPOPRINT.rdf resides on the server. Hence,Oracle Apps will identify the executable XXPOPRINT as being attached to the XX Purchase Order application.

(Quoted From Anil Passi&Vladimir Ajvaz)

EBS Security Architecture Overview

06月 17, 2010 发表评论

Q21: What represents hierarchy of the function security in Oracle Applications?
Q22: What is responsibility?
Q23: What is function?
Q24: What is menu?
Q25: Is a menu item always attached to a function?
Q26: Give an example about the relationship of responsibility,function and menu?
Q27: Give an example about the difference between developing a screen and creating a menu?
Q28: What is request group?
——————————————————————————–

Q21: What represents hierarchy of the function security in Oracle Applications?
The hierarchy of the function security in Oracle Applications includes:
FND User
    |
Responsibility
    |          |
Request Group  Menu
               | 
               Menu
               |   |
               |   Function
               |   Function
               |   Function
               Function
Q22: What is responsibility?
A responsibility is a collection of business functionalities, such as UI screens and reports, that is granted to Oracle Applications users for the purpose of access control to the screens and data that are related to the user’s role within the organization.
What a user can do in Oracle Applications is determined by assigned responsibilities.

Q23: What is function?
You can think of functions as units of an application’s functionality such as UI screens.

Q24: What is menu?
A menu is a reusable grouping of application functionality and consists of functions and other menus. Menus can have multiple functions attached to them.

Q25: Is a menu item always attached to a function?
No. Sometimes a menu item is attached to another menu. By doing so, you effectively create submenus within the menu, which creates a menu nesting. However, a function must be attached to a menu in order for it to be accessed by the end user.

Q26: Give an example about the relationship of responsibility,function and menu?
For example, every HTML and Forms-based screen is associated with a corresponding function, which can get attached to menus so that users can access it through an assigned responsibility. To recap, a responsibility is attached to a menu, and a menu can have several menu items. Each menu item can be attached to a function, and the function is attached to a screen. At the time of defining a function, you specify a screen name and optional parameters with their default values.

Q27: Give an example about the relationship between screen and menu?
a) Menus never pass parameters to the screens, but a function can.
b) A function does not always pass parameters and parameter values to a screen. If the screen has not been developed to be dependent on any parameter, then of course there is no need to pass any parameters.
c) Screen can be developed in a manner that its functionalities can differ depending upon the parameters that are passed into that screen.
d) When a given screen is attached to two different functions, each function can pass different parameters to the screen.
e) Even though the same screen is reachable via two different menus, the functionality exposed by the screen can vary, depending upon the parameters passed by the function to the screen.
f) The typical example is when a screen is developed to cater to both Data Entry and Read Only modes. For example, if the page flow requires this screen in Read Only mode, you can create a function for this screen and pass parameter to it so that the underlying code can pick it up at runtime and render the screen in Read Only mode

Q28: What is request group?
A request group is a grouping of reports and concurrent programs that is assigned to a responsibility. For example, custom reports have to be attached to a request group before the end users can access them through the responsibility.

(Quoted From Anil Passi&Vladimir Ajvaz)

EBS Architecture Overview

06月 12, 2010 发表评论

 
Q13: What is system overview of Oracle E-Business Architecture?
Q14: What are the main differences between Oracle Applications 11i and R12 system?
Q15: Is E-Business Suite multi-tier?
Q16: What are the principal components of Application tier?
Q17: How many Oracle Home Directories and File System in EBS?
Q18: What is the environment files in Oracle Applications?
Q19: why Oracle E-Business have two distinctly different user interfaces?
Q20: I heard Oracle JInitiator is obsolete in post-R11i, why?
——————————————————————————–

Q13: What is system overview of Oracle E-Business Architecture?
I.The applications(Oracle Financials,Oracle Human Resources,Supply Chain Management,Customer Relationship Management,Project Management)
II.Applications Foundation Layer/Applications Object Library
III.Oracle Tools and JDeveloper Components(Oracle Forms,Oracle Reports,BI Publisher,OA Framework/BC4J
IV.Oracle Database Server

Q14: What are the main differences between Oracle Applications 11i and R12 system?
Yes,the main differences between Oracle Applications R11i and R12 are in the application tier.
In 11i, Web Server(Apache 1.3.19), OracleAS 1.0.2.2.2,Apache JServ 1.1.2 Servlet Engine.
In R12,Web Server(Apache 1.3.34), Oracle Application Server 10gR3, OC4J (Oracle Components for Java 10.1.3—a J2EE-compliant engine)
In 11i, Forms Developer 6i installed in ORACLE_HOME 8.0.6,BI Pulisher, Reports 6i.
In R12, Forms Server 10gR2 installed in ORACLE_HOME 10.1.2,BI Publisher, Reports 10gR2

Q15:  Is E-Business Suite multi-tier?
Yes, it is. Oracle Applications R11i and R12 are based on a three-tier architecture, which is client tier, application tier, also known as the middle or mid-tier, and database tier.

Q16: What are the principal components of Application tier?
The principal components of the Oracle Applications application tier include following:
Web server
Forms server
Concurrent Processing server(multiple jobs can be run simultaneously on one or more nodes)
Reports server(R11i)
BI Publisher
Admin server(R11i)(maintain the apps db objects, apply patches, perform upgrades)

Q17: How many Oracle Home Directories and File System in EBS?
APP_TOP contains Oracle Applications product directories such as General Ledger (GL), Purchasing (PO), and many others.

COMMON_TOP contains common directories and files such as log files and Java libraries shared across different products.For example, the admin directory under COMMON_TOP is the default location where Concurrent Managers write the output and log files from concurrent program requests.

ORACLE_HOME  refers to the installation directory where an Oracle software component is installed. In 11i, ORACLE_HOME 8.1.7(OracleAS 1.0.2.2.2), ORACLE_HOME 8.0.6(Oracle Developer 6i),ORACLE_HOME 10.2(Oracle Database). In R12, ORACLE_HOME (OracleAS 10.1.3),ORACLE_HOME 10.1.2(Oracle Developer 10g),ORACLE_HOME 10.2(Oracle Database).
DATA_TOP contains database data files for Oracle Applications.

INST_TOP is new to R12. It contains various configuration files to provide the ability to share Applications and technology stack code between multiple instances.

Q18: What is the environment files in Oracle Applications?
Environment files are the type of configuration files usually used to set up a working environment to point to the various top-level directory structures such as COMMON_TOP and other environment variables such as NLS_LANG relevant to Oracle Applications configuration.

 For applications developers, the most important environment file is the consolidated environment file APPS<CTX_NAME>.env in the APPL_TOP directory.

Q19: Why Oracle E-Business have two distinctly different user interfaces?

Two different user interfaces are the Forms-based and HTML-based interface.
The Forms-based or Professional interface is better suited for users who interact with the system daily,such as an accounts clerk who is required to enter the data quickly. On the other hand, the HTML-based Self-Service interface is better suited for casual users, such as an employee who infrequently enters expense claims and subsequently checks the progress of the expense claim in the system through the Self Service HTML-based screens.

 This is particularly evident in R12, where most of the application’s user interfaces are converted into HTML-based screens.

Q20: I heard Oracle JInitiator is obsolete in post-R11i, why?
Oracle JInitiator is a Java Runtime Environment (JRE) that is delivered to the client desktop computers. It replaces the default JVM in browsers such as Internet Explorer. At the time it was released, it provided a number of additional features over the standard JVM plug-in, such as JAR file caching and on-demand loading.

 This approach has become obsolete in post-R11i releases in favor of using the standard Java plug-in.  Oracle’s JInitiator has its own JVM which, on occasion, conflicted withJVMs from other vendors.

(Quoted From Anil Passi&Vladimir Ajvaz)

EBS Environments Overview

06月 12, 2010 发表评论

 

Q7: How many copies of Oracle E-Business Suite installations do we need?
Q8: So many of them, could we just have some of them?
Q9: Is it possible to share the existing data with other applications? Is it hard to maintain?
Q10: Are Oracle Applications built around a single data model?
Q11: What does it(A single data model) mean to developer?
Q12: Can you give some example of data sharing between the different products in Oracle Applications?

——————————————————————————–

Q7: How many copies of Oracle E-Business Suite installations do we need?
Development environment is where developers design and build extensions and customizations. Testing environment (also known as UAT) is where users sign off on customizations and configuration changes. Patches/scripts can then be promoted there before applying code changes to a Production instance. 
Finally, Production environment, you runs business day-to-day operations.

Q8: So many of them, could we just have some of them?
Yes, you could, simply to put it, the developer performs the development and unit testing in the development environment, and the code gets promoted to the testing environment.Following successful testing, the changes are applied to the production environment.

Q9: Is it possible to share the existing data with other applications? Is it hard to maintain?
First, it is possible, but second, it is hard.  Now, organizations tend to build or implement new applications to meet their business needs as they grow, ending up with “point-to-point” solutions between the systems because new applications need to share the existing data with other applications in the organization. It might be having a domino effect on some components of the system and make it more expensive to maintain when major changes occur in one application while it shares data with others.

Q10: Are Oracle Applications built around a single data model?
Yes, Oracle E-Business Suite is trying to address this issue by integrating around a single common data model.
It means that within a single database you can find a single definition of your customers, suppliers, employees, inventory items, products, and all the other important aspects of a business or an organization.

Q11: What does it(A single data model) mean to developer?
It is important for developers to keep this in mind, as almost all of the custom development efforts in Oracle Applications will reference the common or shared entities.For example, suppliers defined in Oracle Payables are shared between Payables, Assets, and Purchasing applications. Similarly, items defined in Oracle Inventory are shared by Purchasing,
Order Management, and Receivables. Further examples of the shared entities are Organizations, Locations, Employees, Units of Measure, and Items.

Q12: Can you give some example of data sharing between the different products in Oracle Applications?
There are three common entities that are shared across the modules: Items, Customers, and Suppliers.
Items,they are usually the things that an organization or a company makes,purchases, or sells. Order Management and Purchasing and many other Oracle applications use the definitions of items configured in Oracle Inventory.
Different applications use items for different purposes.In Oracle Inventory, items are used for stocking process, planning, and cost;in Payables, items are used in supplier invoices; in Receivables, they are used as units to bill the customers.
Customers, they purchase orders are created in Order Management (OM). Sales orders define what products are shipped to the customers. After shipping the products to your customers, you invoice the customers through Receivables, and Oracle Inventory adjusts the quantity of the products currently held. The customers created in Order Management are shared with Receivables and vice versa.
Suppliers, they are defined through the Oracle Purchasing module. The suppliers are business or trading partners that deliver goods or services of some kind. The supplier invoices are entered into the Oracle Payables and matched to the purchase orders in the Oracle Purchasing module. You can create suppliers in different modules such as Payables or Purchasing.

(Quoted From Anil Passi&Vladimir Ajvaz)

What’s Oracle E-Business Suite?

06月 12, 2010 发表评论

 

Q1: What Is Oracle E-Business Suite?
Q2: Is Oracle E-Business Suite known by other names?
Q3: Give an example, to explain why someone need Oracle E-Business Suite?
Q4: Name the product Families of Oracle E-Business Suite?
Q5: Is there any individual application for each product family?
Q6: Where can I get the resources for further study?

———————————————————————————————-

Q1: What Is Oracle E-Business Suite?
Oracle E-Business Suite is a software package that allows organizations to manage key business processes

Q2: Is Oracle E-Business Suite known by other names?
it is known on the market by various names such as Oracle Enterprise Resource Planning (ERP), Oracle Apps, Oracle Applications, Oracle Financials, e-Biz and EBS (E-Business Suite).

Q3: Give an example, to explain why someone need  E-Business Suite?
For example, most organizations require a system to make purchases from suppliers and a system to make payments to the suppliers,events known as transactions that need to be accounted for in the financial reporting.
Enterprise Resource Planning (ERP) software prepackages different types of these functionalities into out-of-the-box software package, so that customers who purchase such software packages do not have to develop the same software applications time and again.
In other words,In the past, Most of the software that was developed in-house largely matched the precise needs of the business. However, the fundamental business flows and processes such as accounting, procurement, human resource/employee management, and order management are based on common principles across all organizations. That’s what E-Business do for you.

Q4: Name the product Families of Oracle E-Business Suite?
Some of the key product families are as follows:
Financials
Procurement
Customer Relationship Management (CRM)
Project Management
Supply Chain Planning and Management
Discrete Manufacturing
Process Manufacturing
Order Management
Human Resources Management System (HRMS)
Applications Technology

Q5: Is there any individual application for each product family?
Yes,In E-Business Suite, each product family usually consists of individual applications. For example, some of the applications that make up the Oracle Financials product family are General Ledger, Payables, Receivables, Cash Management,iReceivables,iExpenses, and others.

Q6: Where can I get the resources for further study?
Oracle Technology Network (Documentation section) http://www.oracle.com/technology/documentation/applications.html
Oracle E-Business Suite http://www.oracle.com/applications/e-business-suite.html
Oracle Metalink (requires registration) metalink.oracle.com

(Quoted From Anil Passi&Vladimir Ajvaz)

关注

每发布一篇新博文的同时向您的邮箱发送备份。