Академический Документы
Профессиональный Документы
Культура Документы
Oracle Endeca
V4 and V5
ORACLE WHITE PAPER | OCTOBER 2015
Table of Contents
1. INTRODUCTION ................................................................................................................................ 5
2. E-BUSINESS SUITE EXTENSIONS FOR ENDECA OVERVIEW .............................................. 6
2.1 ORACLE E-BUSINESS SUITE EXTENSIONS FOR ORACLE ENDECA: RELEASE TIMELINE .................. 7
2.2 OVERVIEW OF ORACLE ENDECA INFORMATION DISCOVERY ......................................................... 7
2.3 ARCHITECTURE .............................................................................................................................. 8
3. DATA MODEL .................................................................................................................................. 10
3.1 RECORDS ..................................................................................................................................... 10
3.2 ATTRIBUTES ................................................................................................................................. 10
3.2.1 Attributes Metadata ..................................................................................................................... 10
3.2.1.1 Supported Data Types in Metadata ................................................................................................11
3.3 THE FND_EID SCHEMA .............................................................................................................. 11
4. GETTING STARTED WITH E-BUSINESS SUITE EXTENSIONS CUSTOMIZATIONS ..... 12
4.1 SETTING UP THE ADMIN USER FOR ORACLE ENDECA PAGES ...................................................... 12
4.2 BACKING UP AND RESTORING THE DASHBOARDS........................................................................ 15
4.2.1 Exporting the LAR File ............................................................................................................... 15
4.2.2 Importing a LAR File .................................................................................................................. 17
4.3 MODIFYING AN ORACLE ENDECA PAGE ....................................................................................... 18
4.3.1 Changing the Display Name of an Attribute ............................................................................... 18
4.3.2 Creating a New Attribute Group ................................................................................................. 20
4.3.3 Modifying a Hyperlink in a Results Table ................................................................................... 24
4.3.4 Enabling a Flexfield .................................................................................................................... 26
4.3.4.1 Enabling Descriptive Flexfield In Additional Component .............................................................26
4.3.4.2 Enabling Type-Ahead Search For Descriptive Flexfield Segments ...............................................28
5. ADDING NEW ATTRIBUTES ........................................................................................................ 29
5.1 ADDING A DATABASE ATTRIBUTE ............................................................................................... 29
5.1.1 Create a Custom Oracle E-Business Suite-Endeca View ............................................................ 29
5.1.2 Define Metadata .......................................................................................................................... 29
5.1.3 Enable the new Attribute in the Endeca UI ................................................................................. 30
5.2 ADDING A CALCULATED ATTRIBUTE ........................................................................................... 31
5.2.1 Export the View Definition .......................................................................................................... 31
5.2.2 Creating a Custom View ............................................................................................................. 33
6. ADDING NEW ENDECA PAGES ................................................................................................... 34
6.1 CREATING A NEW EMBEDDED ENDECA PAGE .............................................................................. 35
6.1.1 Create a New Endeca Page ......................................................................................................... 35
6.1.2 Add Endeca Content to an Existing Oracle Application Framework Page................................. 37
6.1.3 Using Component-Based Function Security in a Rich Content Container.................................. 38
6.1.4 Using the Auto-Resize Property in a Rich Content Container .................................................... 39
Pass Non-Oracle Application Framework Information to an Oracle Application Framework
Page 39
6.1.5 39
6.2 REPLACE AN EMBEDDED ENDECA PAGE WITH A NEW ENDECA PAGE.......................................... 39
6.2.1 Create an FND Function............................................................................................................. 39
6.2.2 Grant Access to the FND Function ............................................................................................. 41
6.2.3 Personalize the Oracle Application Framework Page ................................................................ 42
6.2.4 Point to The New Page ................................................................................................................ 43
6.3 CREATE A NEW ENDECA PAGE AND LINK TO IT USING THE LINKS LIST COMPONENT ................. 44
6.3.1 Create a New Child Page ............................................................................................................ 44
List of Tables
Table 1: Supported Data Types in Metadata ................................................................................................ 11
Table 2: OA.jsp Parameters .......................................................................................................................... 24
Table 4: Sandbox Attributes ......................................................................................................................... 51
Table 5: Descriptive Flexfield Metadata Database Tables ............................................................................ 60
Table 7: Descriptive Flexfield Parameters in workspace.prm File .......................................................... 64
Table 9: Oracle E-Business Suite Security Handler Interface ........................................................................ 69
Table 10: Final Inner Class RecordFilterExperession..................................................................................... 69
Table 11:Inner Class RecordFilterExpressionHelper ..................................................................................... 70
Table 12: EbsAbstractSecurityHandler abstract class ................................................................................... 71
Table 14: FNDLOAD Parameters ................................................................................................................... 95
For more information, please refer to the solution brief Oracle E-Business Suite Extensions for Endeca:
http://www.oracle.com/us/products/applications/ebusiness/ebiz-suite-endeca-solution-brief-1896945.pdf.
For information about the functional coverage and data content of each of the extensions, please refer to
Oracle E-Business Suite Extensions for Oracle Endeca Integration and System Administration Guide
Release 12.2 V5:https://docs.oracle.com/cd/E26401_01/doc.122/e49519/toc.htm.
Oracle E-Business Suite Extensions for Oracle Endeca Integration and System Administration Guide
Release 12.1 V5: http://docs.oracle.com/cd/E18727_01/doc.121/e37993/toc.htm.
Figure 1: The Release Timeline for Oracle E-Business Suite Extensions for Oracle Endeca
Oracle E-Business Suite Extensions for Oracle Endeca is an Endeca tier integrated into the existing Oracle
E-Business Suite deployment architecture. The extensions can be deployed on existing hardware running the
Oracle E-Business Suite middle tier or on a dedicated box. To install Oracle E-Business Suite Extensions for
Endeca, download the E-Business Suite Endeca QuickInstall. The quick install package contains the Endeca
Information Discovery software as well as Oracle E-Business Suite artifacts like ETL sandboxes, Endeca
Studio Applications, and a security code for each extension.
For details about installing Oracle E-Business Suite Extensions for Oracle Endeca, refer to the My Oracle
Support document for your current release:
Installing Oracle E-Business Suite Extensions for Oracle Endeca, Release 12.1 V5 (Doc ID 1683053.1)
Installing Oracle E-Business Suite Extensions for Oracle Endeca, Release 12.2 V5 (Doc ID 1614014.1)
When the setup process is complete, you will run a full load for the extensions that you have licensed. The
full load will connect to the Oracle E-Business Suite database and load all of the data and metadata from the
Oracle E-Business Suite database to the data domains in the Oracle Endeca Server, where Oracle E-Business
Suite data is stored and indexed. Each extension may have one or more data domains.
Figure 4: Oracle Endeca Information Discovery Components and Oracle E-Business Suite Artifacts
Oracle E-Business Suite users can access embedded Oracle Endeca pages in Oracle Application Framework
applications through the responsibility to which you assign the relevant Oracle Endeca role. When a user
accesses an Oracle Application Framework page with embedded Oracle Endeca content, the content request
is redirected to the Oracle E-Business Suite Oracle Endeca tier. Request response is created in the Oracle
Endeca server and sent back to the Oracle E-Business Suite user. The user can perform queries on this page
and can navigate to an Oracle Application Framework page or to an Oracle Forms page by clicking on the
transaction. This is a seamless integration.
Oracle E-Business Suite data stored on the Oracle Endeca tier is refreshed through the incremental loads that
are shipped as part of the sandboxes. You can also schedule incremental loads to run as frequently as needed
depending on your usage patterns, on how often data changes in the Oracle E-Business Suite, or on other
business requirements. Some extensions may require a refresh as frequently as every five to ten minutes,
while others may require one refresh per day.
3.1 Records
Records are the fundamental units of data. Almost all information that is consumed by the Oracle Endeca
Server, including raw data and the data schema, is represented by records.
3.2 Attributes
An attribute is the basic unit of a record schema. Each attribute is identified by a unique name. Each
attribute on a data record is itself represented by a record that describes this attribute.
Oracle Endeca uses a Property Description Record (PDR) to store metadata about a standard attribute.
Standard attributes are described by system records known as Property Description Records (PDRs), You
must have a PDR for each attribute in order to build a schema for your data.
For each standard attribute, the associated PDR defines the attribute characteristics, including:
Name
Type
Display name
Language
Configuration parameters such as searchability
Navigability settings such as whether to show record counts for available refinements, whether to
enable multi-select, and how to sort refinements
You may want to modify a default Oracle Endeca page in order to:
Enable attributes that are shipped by Oracle but that are not displayed in the Oracle Endeca
dashboards. For example, flexfield attributes are displayed in the Guided Navigation, but not in
other components such as charts, results tables, and pivot tables.
Hide attributes that are shipped by Oracle but that are not used in your business.
Hide or display components such as charts and pivot tables.
Add or remove the ability to perform certain actions on a record, such as to drill down into the
Oracle E-Business Suite.
Create new Oracle Endeca dashboards.
Enable Role Based Access Control (RBAC) for new pages you create.
Add support for additional descriptive flexfields.
Click
Figure 7 shows what the Oracle Order Management dashboard looks like to an E-Business Suite user who
does not have the administrator role.
For an Oracle E-Business Suite user with administrative privileges, the same Oracle Order Management
dashboard will look like the following:
In Figure 8, note the Welcome MFG EBS dropdown menu. This menu allows the user to enhance the UI by
adding, removing, or modifying components.
To perform more advanced modifications in the Endeca pages, you will need an Endeca Developer
background.
For more information about modifying Oracle Endeca dashboards, view the demonstrations on the Oracle
Endeca Information Discovery (EID) YouTube channel at https://www.youtube.com/user/OracleEID
When modifying Oracle E-Business Suite Extensions for Oracle Endeca dashboards, some tasks must be
completed within the E-Business Suite. The most common of these tasks are:
To view the data domain names for all of the extensions, refer to Appendix D in Installing Oracle E-
Business Suite Extensions for Oracle Endeca, Release 12.1 V5 (Doc ID 1683053.1):
https://support.oracle.com/rs?type=doc&id=1683053.1
Figures 13 through 15 show an example of how to change the attribute display name.
1. In the Update column, click the pencil icon for the desired attribute.
6. Click Apply.
3. Click the Search By dropdown list and select Data Domain Name.
4. In the search field, enter the name of the data domain in which you want to search for attributes.
There are two hyperlink actions that can be used in a results table:
Row-level action
Attribute action
1. Click Configuration.
2. Click Actions.
3. Click In Record Action.
4. Click Action > Hyperlink
5. Click the edit icon. The New Hyperlink window opens.
6. Enter an Action Name.
7. In the URL field, type the URL of the page that you want to link to. Use the following format:
/OA_HTML/OA.jsp?OAFunc=<function name>
For example, the following URL links to the Oracle Order Management Open Orders page:
/OA_HTML/OA.jsp?OAFunc=ONT_ENDECA_ACTIONS_DELEGATOR
OAFunc Mandatory The function code for the page you want to
invoke
Dynamic Variable per Optional Can be referenced by the attribute name using the
Record following syntax: &{0}
Static Parameters Optional Other static parameters you want to send to the
target Oracle E-Business Suite function
Table 2: OA.jsp Parameters
The URL generated in Figure 24 opens the Open Orders page for the order number of the
associated record in the results table.
Figure 26: The Target Page for the Hyperlink from Order #72931 in Figure 25
For example:
/Endeca/html/ebs/callForms.jsp?functionCode=ONT_OEXOEORD
functionCode Mandatory Set the function code for the function you want to
invoke.
respId Optional Set this if you want to use a responsibility other than the
one used by the current Oracle Endeca page.
respApplId Optional Set this if you want to use a different responsibility and
a different application than the ones used by the current
Oracle Endeca page.
securityGroupId Optional Set this if you want to use a different security group than
your current one.
languageId Optional Set this if you want to use a language other than the
default language of the Oracle Forms installation.
Table 3: CallForm.jsp Parameters
Note: You can use other parameters to pass values to forms. These parameters must be understood by the
destination form. For example, you could pass the order number using (ORDER_NUMBER=${0}).
For a list of the descriptive flexfields registered for use by Oracle E-Business Suite Extensions for Oracle
Endeca products, see: Product Descriptive Flexfields, Oracle E-Business Suite Extensions for Oracle Endeca
Integration and System Administration Guide, Release 12.2 V5.
Descriptive flexfield support is available by default in the guided navigation component. After you run a
graph, the descriptive flexfield appears in the guided navigation as an attribute group.
You can enable descriptive flexfield support for additional components such as charts and results tables. You
must enable descriptive flexfields for these components manually because they depend on attribute keys that
are generated dynamically the first time you run a full load.
By default, descriptive flexfield segments do not support type-ahead search. To enable type ahead-search for
descriptive flexfield segments, perform the following steps:
1. After running a full load, open the application page through the Endeca Studio Administrator UI.
2. Click the configuration icon for the search box.
3. Select the descriptive flexfield segment attributes from the list. You can use the Attribute Group
Manager to determine the attribute keys, as described in the previous section.
Note: Always make a copy of the BD view and ETL before modifying it. If you do not make a copy, you
risk losing your changes when a new patch is applied.
Figure 30: Create an Attribute from the Extensions for Endeca DeveloperResponsibility
Figure 31 shows the user interface for creating new attributes. The Endeca Profile field stores information
about unique combinations of search options to be applied to the attribute. Select one of the following
options from the dropdown list:
Dimension: Used to enable the creation of hierarchical standard attribute values, to provide a
predefined list of allowed values, and as a placeholder for metadata about the attribute values.
Metric: Provides a list of suggested metric elements. The metric element may contain zero or more
metrics. Each metric must contain at least one aggregation function.
RecSpec: Represents the primary key, which is used to uniquely identify records.
Hierarchy: Represents a hierarchical relationship in which records assigned to a particular value
are implicitly assigned to all of the ancestors of that value.
Select from the following check boxes to define the behavior of the new attribute:
In Endeca Studio, verify the new attribute in the base view. Navigate to Application Setting and then to
View and to Attributes.
After you verify the new attribute, you can add it to any component on the page.
4. On the navigation tree, click graph and then Views. Click ExportViewDefinitions.grf.
5. Click on the green arrow to run the graph.
Oracle
Application
Framework
page
Endeca page
inside rich
content
container
In Figure 36, the Endeca page is in a rich content container. The container points to the same Endeca page
deployed in Endeca Studio.
Create a new Endeca page by one of the following approaches:
Create a new Endeca page and show it inside an Oracle Application Framework container using a
new Oracle Application Framework page.
Use this approach to meet the requirements of a particular set of users. Create a new Endeca page
and assign it to a new responsibility for a defined set of users
Create a new Endeca page and use Oracle Application Framework Personalization to replace the
Endeca page shipped by Oracle with the new one.
Use this approach when you want to replace an existing Endeca page with another Endeca page that
has similar functionality.
Create a new Endeca page and link to it using the Quick Links Component.
Use this approach to extend the functionality of an existing Endeca page.
2. For the Application to which you want to add a page, click Action.
3. Select Manage Pages. In this example, the Application is ont (Order Management).
Note: Make sure that you have the latest version of Oracle JDeveloper before you perform the
following steps.
*Destination Function: The Destination Function should have the following web-html call:
Set the profile option FND_ENDECA_PORTAL_URL to point to the Endeca Server URL.
Note: The function code must be the same as the page name (for example,
ont_Endeca_opn_ordr_new).
Note: the HTML Call syntax following targetPage must be the same as the friendly URL in
Endeca Endeca Studio:
GWY.jsp?targetAppType=Endeca&targetPage=web/ont/
ont_Endeca_opn_ordr_new
A message appears confirming that the FND function has been created.
4. Add the newly created FND function for the new page.
5. Click Apply.
A message appears confirming that the permission set has been updated.
Note: You can also use the Copy Page dropdown list to create a copy of the existing page.
Figure 53: The Page After Adding the EBS Links List Component
Use the new blank page to design your UI. You can add the EBS Links list component and provide a link to
the previous page so that users can navigate back.
Note: Always make a copy of the sandbox before modifying it. If you do not make a copy, you risk losing
your changes when a new patch is applied.
For a list of view names for each extension, see Oracle E-Business Suite Extensions for Oracle Endeca
Integration and System Administration Guide:
Release 12.1 V5: http://docs.oracle.com/cd/E18727_01/doc.121/e37993/toc.htm
Release 12.2 V5: https://docs.oracle.com/cd/E26401_01/doc.122/e49519/toc.htm
EID_ENDECA_ID: This column uniquely identifies each record within the EID data domain
that is returned by the view.
EID_LAST_UPDATE_DATE: For all tables referred to by the view, this column identifies all
records in which data has changed since the most recent load. During an incremental load, this
information is used to synchronize data between the Oracle E-Business Suite database and the
Endeca data domains.
Each view also contains security-related attributes. Security-related attributes ensure that Endeca pages
honor the same data security as the Oracle E-Business Suite pages.
To customize an Oracle E-Business Suite-Endeca database view, create a copy of the view and then modify
the copy.
Note: Do not change the shipped Oracle E-Business Suite views. Modifications to the shipped views are
not supported and will be overwritten during patching.
The ZIP file contains all readable sandbox files in the same hierarchy that exists on the file system. You can
use this ZIP file for uploading files to the same sandbox or to another sandbox on a different server instance.
3. If the graph has a reformat component, add the new attribute in the transform editor.
4. Save all.
For example, you can view the Order Management extension metadata by looking up the Order Management
data domain name ont.
To navigate to the Data Domain page:
1. Click the pencil icon in the Assign Flexfields column.
1. Compile the flexfield definition to generate the Endeca metadata on the Oracle E-Business Suite
side. This metadata controls the behavior of the flexfield through attributes such as Display Name,
Type, and Dependencies.
2. Verify that the business event oracle.apps.fnd.flex.dff.compiled is triggered for the
descriptive flexfield that you compiled.
Use the Attributes tab shown in Figure 71 to verify that the metadata has been generated.
The Attribute Group Code is the name of the descriptive flexfield. Each group is assigned a unique sequence
number. In Figure 71, for OE_ORDER_HEADERS, the sequence number is 23. All attributes under the
OE_HEADER_ATTRIBUTES group will have the prefix F23. The zero after the prefix indicates the context
or global descriptive flexfield segments. The number one indicates the first context and the number two
indicates the second context. From Figure 71 we can infer that OE_HEADER_ATTRIBUTES has one
global descriptive flexfield segment. It has two descriptive flexfield contexts, each having a single attribute.
The descriptive flexfield title is shown in the Available Refinements component as a group, and the contexts
are shown when the group is expanded. When a context is selected, the segments registered under the
context are displayed.
Next, write the descriptive flexfield data from the first output port into the Clover-readable temporary file.
This is done by adding a CLOVER_WRITER component. The input for the CLOVER_WRITER component
is the descriptive flexfield data. Connect the first output port of the reformat component as input to the
CLOVER_WRITER. Provide the path to the sandbox where the temporary files should be written. For
example, the path might be ${PROJECT}/data-out/NewDffName.out.
The graph in Figure 72 shows a case in which a descriptive flexfield was shipped as part of the standard
solution. As described above, it has a database_INPUT_TABLE component to read from the database view.
Reformat the component to separate descriptive flexfield and non descriptive flexfield attributes into two
output ports. Finally, the graph has the CLOVER_WRITER component to write the descriptive flexfield
attributes into a temporary file, and the ENDECA_BULK_ADD_OR_REPLACE_RECORDS component to
write non- descriptive flexfield attributes to the data domain.
8.1.4 Add Parameters in the Workspace Parameter File for The New Descriptive Flexfield
Add the parameters in Table 7 to the workspace.prm file.
If the parameters listed above already exist in the workspace.prm, use a unique identifier such as
DFF_NAME1 for all of the above parameters.
In this step, Call the Common Sandbox graph DFF_GetFlexFieldData.grf with the descriptive
flexfield parameters specified in workspace.prm for the new descriptive flexfield.
To do this, add a RUN_GRAPH component as shown below. Provide the parameters of the graph to run as
sandbox://Common/graph/DFF_GetFlexFieldData.grf.
Figure 75: Load the Descriptive Flexfield Data Component for the New Descriptive Flexfield
In Table 8, The suffix _1 in a parameter name denotes that the parameter is applicable for the first
invocation of the descriptive flexfield central graph DFF_GetFlexfieldData.grf. Similarly, if there
are other descriptive flexfields that need to be processed, the product graph will invoke the central graph
again in the next phase with parameter names such as DFF_NAME_2, DFF_IN_DATAFILE_2, etcetera.
In Oracle E-Business Suite, the default Endeca handler is replaced with an Oracle E-Business Suite security
handler. The purpose of the Oracle E-Business Suite handler is to inject Oracle E-Business Suite-specific
data security rules before any data is sent back as a response to a user request. The Oracle E-Business Suite
handler uses the Endeca data source ID to look for the corresponding security handler class. Providing a
specific data security handler is optional. If the data security handler is missing, Endeca defaults to executing
the main filter conditions that are part of the data source definition. In Endeca, these are referred to as role-
based filters.
The EbsSecurityHandler interface (refer to Appendix E for Java documentation of this interface):
Interface oracle.apps.fnd.Endeca.portal.security.extensions.handlers.EbsSecurityHandler
Method signature Description
public RecordFilterExpression This method must be implemented by the
getFilterAttributeValues(String userId, String security handler class. This returns the
orgId, String respId, String respAppId, String security EQL expression encapsulated in
secId); RecordFilterExpression instance.
Table 9: Oracle E-Business Suite Security Handler Interface
o The final inner class RecordFilterExpression, which encapsulates the EQL expression that is
returned from calling the security handler. (Refer to Appendix E for Java documentation of this
class.)
oracle.apps.fnd.Endeca.portal.security.extensions.handlers.Ebs
SecurityHandler.RecordFilterExpression
Method signature Description
protected void setExpression(String This method used to set the encapsulated
expression); EQL expression in the
RecordFilterExpression instance.
public String getExpression(); This method used to return the
encapsulated EQL expression from the
RecordFilterExpression instance.
Table 10: Final Inner Class RecordFilterExperession
For example:
oracle.apps.fnd.Endeca.portal.security.extensions.handlers.EbsAbstractSecurityHandler
Method signature Description
public void setConnection(Connection connection); This method used to set the encapsulated
database connection in the security
handler instance.
protected Connection getConnection(); This method used to return the
encapsulated database connection from
the security handler instance.
protected String getSessionParamValue(String This method used to get the value of the
paramName) paramName attribute/parameter from the
Oracle E-Business Suite session.
public void setSession(AppsSession session) This method used to set the encapsulated
Oracle E-Business Suite session in the
security handler instance.
Table 12: EbsAbstractSecurityHandler abstract class
5. Create a new class. The class name should begin with the data source ID without non-
alphanumeric characters like the hyphen. Capitalize only the first character. Finally, append
SecurityHandler to the end. For example, for the data source ID Prj-Pjt the class name must
be PrjpjtSecurityHandler. This new class must be within the package created in step 4.
6. This new class must implement the EbsSecurityHandler interface and extend the
EbsAbstractSecurityHandler abstract class. The declaration for the new class is:
public class <CLASS_NAME> extends EbsAbstractSecurityHandler
implements EbsSecurityHandler {}.
7. Because the class implements the EbsSecurityHandler interface, it must add implementation to
getFilterAttributeValues method. The security manager provides the Oracle E-Business Suite
session ID and the database connection to the class before calling this method. The helper
methods at RecordFilterExpressionHelper helper class are used to construct the final EQL
expression.
8. Generate the jar file from this project using your IDE.
1. Because the studio is based on Java 6, you must compile code in Java 6.
2. To use an existing security handler for a new data source, create a new security handler that
extends the existing one. For example, to use the existing security handler
EamwoSecurityHandler with the new data source eam-wr, you would use the following code:
package
oracle.apps.eam.Endeca.portal.security.extensions.handlers.impl
;
public class EamwrSecurityHandler extends EamwoSecurityHandler
{
}
4. When binary operations are used extensively, page loading can slow down as the number of
records increases. To prevent performance degradation, limit the use of OR and AND
operations.
5. The database connection must not be closed. The security handler does not own the database
connection; the connection is provided by the security manager.
6. To enable future diagnostics with debugging turned on, add debug messages for filter
conditions, as in the following code:
package
oracle.apps.prj.endeca.portal.security.extensions.handlers.impl;
import java.sql.CallableStatement;
import java.sql.Connection;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import org.apache.log4j.Logger;
import
oracle.apps.fnd.endeca.portal.security.extensions.handlers.EbsAbstra
ctSecurityHandler;
import
oracle.apps.fnd.endeca.portal.security.extensions.handlers.EbsSecuri
tyHandler;
public EbsSecurityHandler.RecordFilterExpression
getFilterAttributeValues(
String userId, String orgId, String respId, String
resAppId,
String secId) {
getLogger().debug(
"PrjpjtSecurityHandler -->
getFilterAttributeValues : Start");
StringBuilder strBuilder = new StringBuilder(
"PrjpjtSecurityHandler -->
getFilterAttributeValues : received parameters : ");
strBuilder.append("User Id: " + userId + "\n");
strBuilder.append("Organization Id: " + orgId + "\n");
strBuilder.append("Responsibility Id: " + respId +
"\n");
strBuilder.append("Responsible Application Id: " +
resAppId + "\n");
strBuilder.append("Sec Group Id: " + secId + "\n");
getLogger().debug(strBuilder.toString());
recordFilterExpression =
EbsSecurityHandler.RecordFilterExpressionHelper
.createRecordFilterExpressionOR("ORG_ID", orgIds);
getLogger()
.info("PrjpjtSecurityHandler -->
getFilterAttributeValues : EQL expression constructed
successfully.");
} catch (Exception exception) {
getLogger().error(
"PrjpjtSecurityHandler -->
getFilterAttributeValues : Exception : "
+ exception.getMessage());
} finally {
getLogger().debug(
"PrjpjtSecurityHandler -->
getFilterAttributeValues : End");
}
return recordFilterExpression;
}
Please refer to the following resources for general information about working with Oracle E-Business Suite
Extensions for Oracle Endeca.
Installing Oracle E-Business Suite Extensions for Oracle Endeca, Release 12.1 V5 (Doc ID 1683053.1)
https://support.oracle.com/rs?type=doc&id=1683053.1
Oracle E-Business Suite Extensions demo on YouTube
https://www.youtube.com/user/OracleEBSdemos
Oracle E-Business Suite Extensions for Oracle Endeca Integration and System Administration Guide
https://docs.oracle.com/cd/E26401_01/doc.122/e49519/toc.htm
FND_EID_INSTANCES
This table stores information about all the instances registered in Oracle E-Business Suite. Each row
includes the application identifier,which uniquely identifies n Oracle E-Business Suite, instance ID and
Data Domain Name.
FND_EID_RECORD_TYPES
This table stores information about all record data types that are defined in the EID application.
Each EID instance can contain one or more record types, and each type is loaded by a database view.
This table contains the following information:
The record type of the Oracle E-Business Suite application for EID
The name of the database view used during ETL to extract data for this record type into the EID
data store
The name of the ETL graph for full and incremental loads.
FND_EID_PDR_ATTR_PROFILES
This table stores information about unique combinations of search options to be applied to attributes in
Endeca. These profiles are grouped by function name and are shared across all participating applications.
The seeded profiles include those listed in the following table.
FND_EID_DDR_MGD_ATT_VALS
This table contains the managed attribute values. It contains the managed attribute ID, the attribute display
name, and the ID of the parent attribute.
FND_EID_PDR_ATTRS_B
This is the base table for Property Description Record (PDR) attributes. A Property Description Record is a
system record that defines and stores metadata about a standard or managed attribute in an Endeca data
domain. You must have a PDR created in order to build a schema for your data records.
A PDR contains attribute details that are independent of the language, such as profile code and instance
group. PDRs have required attributes and can also have user-defined attributes.
For each standard attribute, the associated PDR defines the following:
Name
Type
Display Name
Language
FND_EID_PDR_ATTRS_TL
This is a translatable table that consists of language-specific attribute details like attribute display name and
user display name. This forms the attribute view for the Endeca content.
FND_EID_GROUPS_B
This the base table for the attribute group. It contains attribute group details that are independent of the
language, such as EID instance group and group sequence.
FND_EID_GROUPS_TL
This is a translatable table that consists of language-specific attribute group details including attribute
group display name and user display name.
FND_EID_ATTR_GROUPS
This table is a join table that creates many-to-many relationship between the FND_EID_PDR_ATTRS_B
table and the FND_EID_GROUPS_B table.
An attribute group is an ordered collections of attributes. Attribute groups are stored in the Oracle Endeca
Server as records. They are useful for organizing a large number of attributes in the user interface of a
front-end application like Endeca Studio.
You can define a set of attribute groups to be displayed, assign attributes to each group, and determine the
display order of the groups and attributes. You can assign an attribute to more than one attribute group.
FND_EID_MGD_AT_VAL_ADL
This table contains additional synonyms (meanings or similar search words) for a managed attribute value.
The first synonym is stored in the FND_EID_DDR_MGD_ATT_VALS table. Any additional synonyms
are stored in this table.
FND_EID_PRECEDENCE_RULES
Precedence rules provide a way to progressively display certain attributes until they offer a useful
refinement of the navigation state. Precedence rules are defined in terms of a trigger attribute and a target
attribute, where a user's selection of the trigger reveals the previously unavailable target attribute to the
user. That is, precedence rules are triggered by implicit or explicit selections of either managed attribute
values or standard attribute values. This table holds the trigger attributes that are used in precedence rules.
FND_EID_SANDBOXES
A sandbox is a base storage unit for a project. It is a server-side analogue to a CloverETL Designer project.
A sandbox is a dedicated directory on the server file system. This table contains information about every
sandbox defined.
FND_EID_GRAPHS
A graph is a pipeline of components that process data. A graph has a Reader component to read in the
source data, and an Integrator connector to write the data to the Oracle Endeca Server. This table contains
information about the graphs defined in every sandbox.
FND_EID_DFF_REG
This table is used for registering a descriptive flexfield for Endeca uptake. Not all descriptive flexfields are
supported by Endeca by default.
FND_EID_DFF_CTX_REG_B
This base table stores translated information about descriptive flexfield context.
FND_EID_DFF_CTX_REG_TL
This table stores translated information about descriptive flexfield context. Each row also includes the
language code of the translation. For each descriptive flexfield context, there is a row for each of the
installed languages.
5. Enter a caption for the Links list that will appear on the page.
6. Enter the target page URL, with the following syntax:
/endeca/web/<page name>
7. Click Save.
Now you can navigate to the target page from the links list component
The EBS Results Grid component reflects the current refinement state of the data. For example, if an end
user has used a Guided Navigation component or a search to refine the data, the EBS Results Grid
component only displays the matching records. When you use a search to refine the data, the component
highlights the search text in the attribute values.
Configuration
When the EBS Results Grid component is first added, it does not display any records. You determine how
the component is displayed and how end users can interact with each displayed attribute.
1. Login to Oracle Endeca Studio with Admin user. The EBS Result Grid is available from the
Information Discovery section in the Add Components menu.
1. To display the pagination bar, check Enable Pagination. The box is checked by default. This
enables users to navigate through the results.
2. Check Results per Page to allow end users to select the number of records to display per page.
3. In the Available results per page options field, type a comma-separated list of available values for
the number of results to display per page.
4. By default, the available options are 10, 20, and 30 records per page.
5. From the Default Results per Page dropdown list, select the default number of records to display
per page.
To show the Add to Cart button, check the Show Add to Cart Button checkbox.
Check the Show Quantity Box checkbox to allow the end user to show the quantity box.
To show the Add to Favorites button, check the Show Add to Favorites checkbox.
Check the Show Compare Checkbox to allow the end user compare records.
Enter the Condition attribute to hide Compare Action.
Grid View:
Carousel View:
- Click Finish.
1. Log in to Oracle E-Business Suite as sysadmin and select the Functional Administrator
responsibility.
2. Navigate to the Core Services tab and then the Caching Framework sub-tab.
3. Click on the Global Configuration link from the left navigation pane.
We will give you an answer to the following question: What do I need to do to migrate my changes from
test/dev to production?
FNDLOAD Download/Upload
You can download and upload the seed data using the FNDLOAD executable, which takes the following
parameters:
FNDLOAD apps/pwd 0 Y mode configfile datafile entity [ param ... ]
Variable Description
<apps/pwd> The APPS schema and password in the form username/password
<0Y> Concurrent program flags
mode UPLOAD or DOWNLOAD.
UPLOAD causes the datafile to be uploaded to the database.
DOWNLOAD causes the loader to fetch rows and write them to the datafile.
<configfile> The control file to use (usually with a suffix of .lct).
<datafile> The data file to write (usually with a suffix of .ldt). If the data file already exists,
it will be overwritten.
<entity> The entity(ies) to upload or download. When uploading, you should always
upload all entities, so specify a "-" to upload all entities.
< [param] > Zero or more additional parameters are used to provide bind values in the access
SQL (both UPLOAD and DOWNLOAD). Each parameter is in the form
NAME=VALUE. NAME should not conflict with an attribute name for the
entities being loaded.
Table 14: FNDLOAD Parameters
To download definitions for your customization using the FND Loader, specify the control file, the name of
an LDT file in which to save the downloaded data
To download all Endeca attributes for your extension, specify the instance id for that extension in
the EID_INSTANCE_ID download parameter. For example:
To download the attribute groups, specify the instance id for that extension in the
EID_INSTANCE_ID download parameter.
To download the newly registered DFF, specify the instance id for that extension in the
EID_INSTANCE_ID download parameter.
To download the ETL graphs, specify the instance id for that extension in the
EID_INSTANCE_ID download parameter.
To download the record types, specify the instance id for that extension in the
EID_INSTANCE_ID download parameter .
To download the attributes precedence rules, specify the instance id for that extension in the
EID_INSTANCE_ID download parameter.
Uploading Definitions
To upload definitions using the FND Loader, specify the control file, the name of the LDT file that contains
the definition or definitions to upload, and - to upload all entities in the LDT file.
To upload all Endeca attributes for your extension, specify the instance id for that extension in the
EID_INSTANCE_ID upload parameter. For example:
To upload the attribute groups, specify the instance id for that extension in the
EID_INSTANCE_ID upload parameter.
To upload the newly registered DFF, specify the instance id for that extension in the
EID_INSTANCE_ID upload parameter.
To upload the ETL graphs, specify the instance id for that extension in the EID_INSTANCE_ID
upload parameter.
To upload the attributes hierarachy, specify the instance id for that extension in the
EID_INSTANCE_ID upload parameter.
To upload the attributes precedence rules, specify the instance id for that extension in the
EID_INSTANCE_ID upload parameter.
To upload the sandbox, specify the sandbox id for that extension in the Sandbox_Id upload
parameter.
oracle.apps.fnd.endeca.portal.security.extensions.handlers.EbsSecurityHandler
oracle.apps.fnd.endeca.portal.security.extensions.handlers
Interface EbsSecurityHandler
Method Details
oracle.apps.fnd.endeca.po getFilterAttributeValues(String userId, String orgId, String respId,
rtal.security.extensions. String respAppId, String secId)
handlers.EbsSecurityHandl Returns the security EQL expression that will be injected into the
er.RecordFilterExpression query using the security manager.
getFilterAttributeValues
oracle.apps.fnd.endeca.portal.security.extensions.handlers.EbsSecurityHa
ndler.RecordFilterExpression getFilterAttributeValues(String userId,
String orgId, String respId, String respAppId, String secId)
This returns the security EQL expression that will be injected into the query using the security manager.
Parameters:
userId - a String specifying the Oracle E-Business Suite user ID.
orgId - a String specifying the ORG_ID attribute which exists at the Oracle E-Business Suite session.
respId - a String specifying the RESPONSIBILITY_ID attribute which exists at the Oracle E-Business Suite
session.
respAppId - a String specifying the RESPONSIBILITY_APPLICATION_ID attribute which exists at the
Oracle E-Business Suite session.
secId - a String specifying the SECURITY_GROUP_ID attribute which exists at the Oracle E-Business
Suite session.
Returns:
a RecordFilterExpression object which encapsulates the EQL expression to be injected into the query.
oracle.apps.fnd.endeca.portal.security.extensions.handlers.EbsSecurityHa
ndler.RecordFilterExpression
oracle.apps.fnd.endeca.portal.security.extensions.handlers
Class EbsSecurityHandler.RecordFilterExpression
java.lang.Object
Constructor Summary
RecordFilterExpression(java.lang.String expression)
Constructs a filter expression object wrapping the given expression.
Method Summary
java.lang.String getExpression()
Returns the encapsulated expression.
Method Detail
getExpression
java.lang.String getExpression()
This returns the encapsulated EQL expression.
setExpression
void getExpression(java.lang.String expression)
This sets the encapsulated EQL expression.
Parameters:
expression - a string specifying EQL expression to be encapsulate.
oracle.apps.fnd.endeca.portal.security.extensions.handlers.EbsSecurityHa
ndler.RecordFilterExpressionHelper
oracle.apps.fnd.endeca.portal.security.extensions.handlers
EbsSecurityHandler.RecordFilterExpressionHelper
static createRecordFilterExpressionAND(oracle.apps.fnd.endeca.portal
oracle.apps.fnd.endeca.portal.security.ext .security.extensions.handlers.EbsSecurityHandler.RecordFilterE
ensions.handlers.EbsSecurityHandler.Rec xpression leftExpression,
ordFilterExpression oracle.apps.fnd.endeca.portal.security.extensions.handlers.EbsSe
curityHandler.RecordFilterExpression rightExpression)
This helper method constructs EQL expression by ANDing two
EQL expressions.
static createRecordFilterExpressionOR(oracle.apps.fnd.endeca.portal.s
oracle.apps.fnd.endeca.portal.security.ext ecurity.extensions.handlers.EbsSecurityHandler.RecordFilterExp
ensions.handlers.EbsSecurityHandler.Rec ression leftExpression,
ordFilterExpression oracle.apps.fnd.endeca.portal.security.extensions.handlers.EbsSe
curityHandler.RecordFilterExpression rightExpression)
This helper method constructs EQL expression by ORing two
EQL expressions.
createRecordFilterExpressionOR(java.lang.String key,
static java.util.List<java.lang.String> values)
oracle.apps.fnd.endeca.portal.security.ext This helper method constructs EQL expression that fulfills this:
ensions.handlers.EbsSecurityHandler.Rec The supplied key matches any of the supplied text values.
ordFilterExpression
java.lang.Object
EbsSecurityHandler.RecordFilterExpressionHelper
Method Detail
createRecordFilterExpressionAND
static
oracle.apps.fnd.endeca.portal.security.extensions.handlers.EbsSecurityHa
ndler.RecordFilterExpression
createRecordFilterExpressionAND(oracle.apps.fnd.endeca.portal.security.e
xtensions.handlers.EbsSecurityHandler.RecordFilterExpression
leftExpression,
oracle.apps.fnd.endeca.portal.security.extensions.handlers.EbsSecurityHa
ndler.RecordFilterExpression rightExpression)
This helper method constructs EQL expression by ANDing two EQL expressions.
Parameters:
leftExpression- a RecordFilterExpression specifying left operand of the AND operation
rightExpression- a RecordFilterExpression specifying right operand of the AND expression
Returns:
The expression that results from ANDing the two operands expressions
createRecordFilterExpressionOR
static
oracle.apps.fnd.endeca.portal.security.extensions.handlers.EbsSecurityHa
ndler.RecordFilterExpression
createRecordFilterExpressionOR(oracle.apps.fnd.endeca.portal.security.ex
Method Summary
java.sql.Connection getConnection()
Returns the encapsulated connection object
Method Detail
getConnection
java.sql.Connection getConnection()
This returns the encapsulated connection object.
setConnection
void setConnection(java.sql.Connection connection)
This sets the encapsulated connection object.
Parameters:
connection - a Connection specifying the connection object to the Oracle E-Business Suite database.
getSessionParamValue
java.lang.String getSessionParamValue(java.lang.String paramName)
CONNECT WITH US
blogs.oracle.com/oracle Copyright 2015, Oracle and/or its affiliates. All rights reserved. This document is provided for information purposes only, and the contents
hereof are subject to change without notice. This document is not warranted to be error-free, nor subject to any other warranties or conditions,
whether expressed orally or implied in law, including implied warranties and conditions of merchantability or fitness for a particular purpose. We
facebook.com/oracle specifically disclaim any liability with respect to this document, and no contractual obligations are formed either directly or indirectly by this
document. This document may not be reproduced or transmitted in any form or by any means, electronic or mechanical, for any purpose, without
twitter.com/oracle our prior written permission.
Oracle and Java are registered trademarks of Oracle and/or its affiliates. Other names may be trademarks of their respective owners.
oracle.com
Intel and Intel Xeon are trademarks or registered trademarks of Intel Corporation. All SPARC trademarks are used under license and are
trademarks or registered trademarks of SPARC International, Inc. AMD, Opteron, the AMD logo, and the AMD Opteron logo are trademarks or
registered trademarks of Advanced Micro Devices. UNIX is a registered trademark of The Open Group. 1015