Quantcast
Channel: Apps2Fusion Articles
Viewing all 930 articles
Browse latest View live

Data Wrangling in OAC

$
0
0

In this article I am going to explain as what is data wrangling and how to apply data wrangling functions in OAC.

Data wrangling is a new option in OAC to easily modify and aggregate data post-upload. Several options are available depending on each column type.

Below is a screenshot from OAC where you can apply data wrangling functions -

Below is a screenshot showing different data wrangling functions available for Date columns- 

Below is a screenshot showing different data wrangling functions available for Measure columns - 

Below is a screenshot showing different data wrangling functions available for Attribute columns- 

Applying Data Wrangling Functions for Date Column

Below is one example of how you can apply data wrangling function to a Date column -

Click Options button of Date column and select Year to extract year to a new column

To rename the column, click Options and select Rename. Enter new name and click OK.

Similarly you can extract Quarter, Month, and Day from Date Column.

Applying Data Wrangling Functions for Measures

Below is one example of how you can apply data wrangling function to a Measure column -

Click Options button of the column and select Conditional Group.

Applying Data Wrangling Functions for Attributes

Below is one example of how you can apply data wrangling function to an Attributecolumn -

Click the Options button of the column and select Split.

This concludes this article .

I hope by the end of this article you should have learned how to apply data wrangling functions in OAC .

 


Mandatory parameter feature in BI Data Model in Oracle HCM Cloud Application

$
0
0

Introduction

The last release of Oracle Fusion Applications (Release 13 19D) brings along a lot many features. One of them (particularly in the Reporting Area) is the “Mandatory Parameter” feature availability. This specific feature was being asked by consultants and customers for long and it is a delight to finally have this feature available. Prior to this consultants have to find alternatives where-in they had to display meaningful messages to achieve the same.

In this article, we will demonstrate how-to use the “Mandatory” parameter feature using a worked example.

Creating a Simple SQL Query

For this example we will use a very simple sql.

SQL

Select papf.*

From per_all_people_f papf

Where papf.start_date between :effective_start_date and :effective_end_date

 

In the above SQL we have used two parameters namely Effective_Start_Date and Effective_End_Date and we would make both the parameters mandatory.

Parameter Properties (Effective Start Date)

Name

Effective_Start_Date

Data Type

Date

Default Value

 

Parameter Type

Date

Mandatory

Yes

Row Placement

1

Display Label

StartDate

 

 

Parameter Properties (Effective End Date)

Name

Effective_End_Date

Data Type

Date

Default Value

 

Parameter Type

Date

Mandatory

Yes

Row Placement

1

Display Label

EndDate

 

 

Now, we will try to run the Data Model (without providing values for “Mandatory” parameters). One important thing to observe here is that the moment we check the “Mandatory” option an ‘*’ gets placed before the parameter.

If we try to click ‘View” without entering any values for the “Mandatory” parameter we will get error.

Now if we enter values for both the parameters then data would be returned.

 

Conclusion

So, this is how we can make use of “Mandatory” feature of a BI Data Model parameter. This was a much needed feature and am glad that the same has been delivered now. 

 

Thanks all for your time and have a nice day.

Generating CSV File from HCM Extracts in Oracle HCM Cloud Application

$
0
0

Introduction

Generating a CSV File from Oracle HCM Cloud Application has not been an easy task to do, the closest one can get is:

Generate .CSV File From BI Report In Oracle HCM Cloud Application

But the approach is cumbersome as it requires the following pre-requisites:

  1. Need of a etext template
  2. Need of a Report

However, starting release 19B one can very easily generate CSV Files from HCM Extracts and it provides flexibility of using “Encryption” / “Compression” among other things.

Some of the major advantages of using this approach are:

  1. No Need of any Template
  2. No need of creating Reports
  3. Allows Compression
  4. Allows Encryption
  5. Gives flexibility to include/exclude header record
  6. Gives flexibility to include/exclude default attributes (flow parameters)

Hence, due to all the above advantages it makes sense to use the HCM Extract CSV file generation method. We will demonstrate the same now.

Creating a Simple Custom HCM Extract

For this example, we will create a simple extract which will contain the following attributes:

  1. Person Number
  2. Hire Date
  3. Assignment Effective Start Date
  4. Assignment Effective End Date

The PersonNumber Attribute is configured as shown in image below:

Hire Date attribute is setup as below:

Assignment Effective Start Date has the following setup (screenshot):

Assignment Effective End Date has the below setup:

Choosing a Delivery Option

Choosing the correct delivery option is the most critical part here. Here we have various options like “Compress”, “Encryption” , “Encryption Key” , “Delimiter”, “Print Header Record”, “Print Default Attributes” and so on.

A screenshot of the setup values used in this example is given below for ready reference:

 

Running the Extract and Verifying Results

We will now submit the Extract and verify the results

 

If we now click on the down arrow under “Extract Delivery Options” section a file would get downloaded which when opened should show us the data.

 

Conclusion

So, this is how we can generate CSV files from HCM Extract.

Hope this article was useful and you guys were able to learn something from it.

Thanks all for your time and have a nice day ahead.

Role and Privilege Mapping OTBI Analysis In Oracle HCM Cloud Application

$
0
0

Introduction

One of the most common requirement of a ERP project is to have a SOD (Segregation of Duties) Report which provides details like:

  1. Which user has access to which role?
  2. Which privilege is associated with a role?
  3. Which all Data Area does a specific role has access to?
  4. Which all functional areas can be accessed by a specific role / privilege?

As such, the project  (implementation / support / operations) team would always like to have a report handy to have answers to all the above questions. 

Prior to Release 13 19D above details were generally by creating some custom BIP Reports (yup it would include multiple tables and joins and could get a little complex depending on data elements being fetched in report) or some delivered reports.

But starting release 19D we can very well get the same details using the subject area “Security - Roles and Privileges Real Time”.

In this article we would create a very simple OTBI Analysis based on “Security - Roles and Privileges Real Time” subject area.

So, without much delay let’s get started.

Creating OTBI Analysis using “Security - Roles and Privileges Real Time

For this example we would create a Analysis which would consist of the following fields:

  1. Role Name
  2. Product Name
  3. Privilege Name
  4. Privilege Description
  5. Privilege Code

If we do a Field Mapping for each of this field we would arrive at table which would appear as below

Column Name

Data Source

Role Name

"Role"."Role Display Name"

Product Name

"Function Security Policy"."Application Name"

Privilege Name

"Function Security Policy"."Privilege Display Name"

Privilege Description

"Function Security Policy"."Privilege Description"

Privilege Code

"Function Security Policy"."Privilege Name"

 

Once we do the above mapping the OTBI Analysis will appear as below:

 

Also, if we go to the “Advanced” tab we could get the “Analysis XML” and “SQL Issued” details too.

Analysis XML

<saw:report xmlns:saw="com.siebel.analytics.web/report/v1.1" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:sawx="com.siebel.analytics.web/expression/v1.1" xmlVersion="201201160">

   <saw:criteria xsi:type="saw:simpleCriteria" subjectArea="&quot;Security - Roles and Privileges Real Time&quot;" withinHierarchy="true">

      <saw:columns>

         <saw:column xsi:type="saw:regularColumn" columnID="c4627ef876cb064de">

            <saw:columnFormula>

               <sawx:expr xsi:type="sawx:sqlExpression">"Role"."Role Display Name"</sawx:expr></saw:columnFormula></saw:column>

         <saw:column xsi:type="saw:regularColumn" columnID="c950d66095703c520">

            <saw:columnFormula>

               <sawx:expr xsi:type="sawx:sqlExpression">"Function Security Policy"."Application Name"</sawx:expr></saw:columnFormula></saw:column>

         <saw:column xsi:type="saw:regularColumn" columnID="cfbbafcc4d0312288">

            <saw:columnFormula>

               <sawx:expr xsi:type="sawx:sqlExpression">"Function Security Policy"."Privilege Display Name"</sawx:expr></saw:columnFormula></saw:column>

         <saw:column xsi:type="saw:regularColumn" columnID="c589cf7b5f6fd6189">

            <saw:columnFormula>

               <sawx:expr xsi:type="sawx:sqlExpression">"Function Security Policy"."Privilege Description"</sawx:expr></saw:columnFormula></saw:column>

         <saw:column xsi:type="saw:regularColumn" columnID="c10a60b96f66df89c">

            <saw:columnFormula>

               <sawx:expr xsi:type="sawx:sqlExpression">"Function Security Policy"."Privilege Name"</sawx:expr></saw:columnFormula></saw:column></saw:columns></saw:criteria>

   <saw:views currentView="0">

      <saw:view xsi:type="saw:compoundView" name="compoundView!1">

         <saw:cvTable>

            <saw:cvRow>

               <saw:cvCell viewName="titleView!1"/></saw:cvRow>

            <saw:cvRow>

               <saw:cvCell viewName="tableView!1"/></saw:cvRow></saw:cvTable></saw:view>

      <saw:view xsi:type="saw:titleView" name="titleView!1"/>

      <saw:view xsi:type="saw:tableView" name="tableView!1" scrollingEnabled="true">

         <saw:edges>

            <saw:edge axis="page" showColumnHeader="true"/>

            <saw:edge axis="section"/>

            <saw:edge axis="row" showColumnHeader="true">

               <saw:edgeLayers>

                  <saw:edgeLayer type="column" columnID="c4627ef876cb064de"/>

                  <saw:edgeLayer type="column" columnID="c950d66095703c520"/>

                  <saw:edgeLayer type="column" columnID="cfbbafcc4d0312288"/>

                  <saw:edgeLayer type="column" columnID="c589cf7b5f6fd6189"/>

                  <saw:edgeLayer type="column" columnID="c10a60b96f66df89c"/></saw:edgeLayers></saw:edge>

            <saw:edge axis="column" showColumnHeader="rollover"/></saw:edges></saw:view></saw:views></saw:report>

 

SQL Issued

SET VARIABLE PREFERRED_CURRENCY='User Preferred Currency 1';SELECT

   0 s_0,

   "Security - Roles and Privileges Real Time"."Function Security Policy"."Application Name" s_1,

   "Security - Roles and Privileges Real Time"."Function Security Policy"."Privilege Description" s_2,

   "Security - Roles and Privileges Real Time"."Function Security Policy"."Privilege Display Name" s_3,

   "Security - Roles and Privileges Real Time"."Function Security Policy"."Privilege Name" s_4,

   "Security - Roles and Privileges Real Time"."Role"."Role Display Name" s_5

FROM "Security - Roles and Privileges Real Time"

ORDER BY 1, 6 ASC NULLS LAST, 2 ASC NULLS LAST, 4 ASC NULLS LAST, 3 ASC NULLS LAST, 5 ASC NULLS LAST

FETCH FIRST 75001 ROWS ONLY

 

Now if we check the “Results” tab it would display output (as below):

 

Conclusion

So, this is how one can make use of “Security – Roles and Privileges Real Time” subject area and create OTBI Analysis which can be handy for running day to day BAU activities.

One may even add user details like users, their first name, last name, person number and enhance this to suit their requirements.

Also, one important thing to note here is that this Subject Area not only reports on Seeded Roles but also on Custom roles. This essentially means that if you have developed this report as a one-off task in your environment you can always run this and get complete details of a Role-Privilege Mapping at a specific point in time.

With this I come to the end of the article and I hope the time you guys spend reading this article was well utilized.

That’s all from my side, thanks and have a nice day.

Alert Composer Feature In Oracle Fusion HCM Cloud Application

$
0
0

Overview and Key Features

  • HCM Alerts is a common functionality from common architecture team, which provides the following high level features:
    • Provides ability to send notifications triggered from an event or from rest resource.
      • Event Alerts: Event Alerts are based on the context provided by the calling client. Modification of the triggering criteria for notifications is not supported.
      • Resource Alerts: Resource Alerts are based on the Oracle HCM Cloud REST API resources. You can modify the triggering criteria for notifications by defining filters on the resource attributes
    • Provides ability to send email notifications and/or FYI worklist notifications.
    • Delivers a rich UI to define the event and resource alert, filter conditions, notification templates, email formats, recipients, etc.
    • Provides ability to define language/country specific email templates.
    • Provides ability to use groovy expressions and substitute runtime values from input.
    • Provides APIs to define alerts, templates and other required setup data.
    • Provides ability to schedule jobs for processing notifications.
  • Standard seeded alerts have been created out of the box
  • Customers can create custom alerts
  • Alerts can have multiple access levels – Restricted, System, Extensible User
  • Extensible and user can be modified
  • User defined Alerts can be disabled
  • Alerts is a common functionality from Fusion that provides the ability to:
    • Send notifications triggered from an event or from REST resource
    • Send email notifications and/or FYI worklist notifications 
    • Learning uses event based and ESS alerts
  • Learning Administrator can use Alerts UI to define the event and resource alert, filter conditions, notification templates, email formats and recipients

Alert Types

Event Alert

    • An event alert can be used to send notification(s) when a change has happened in the system by calling the processAlert API. 
    • Few examples of event alerts:
        • Notification to user that password change was successful.
        • Notification to inform workers that new schedules are available.

Resource Alert

    • A resource alert is used to send on-demand or schedule notifications based on REST resource and applying the filter criteria. 
    • Few examples of resource alerts:
        • Send notification(s) to employee and manager when employee's visa is expiring within a certain period.
        • Send notification(s) to worker and manager when worker's passport is expiring within a certain period.

Access Levels

  • Access levels are defined for alerts to control the actions that can be performed on the alerts. 
    • For example, you can add new templates and modify predefined templates for an alert if its Access Level is set to Extensible or User but not if its Access Level is set to System. 
  • You can view the access level for an alert when editing the alert; however, you can't modify it. 
  • Alerts that are predefined with access levels System or Extensible are always enabled. You can't disable them. Alerts that are user-defined are enabled by default. You can disable them. 

Access Level

System

Extensible

User

View Alerts

Disable Alerts

Add new templates

Modify Templates

Delete Templates

Disable Templates

Add Recipients

 

HCM Alerts vs OTBI Analysis

At this point some consultants may feel that a lot many of the Alert features can be achieved using OTBI Analysis or for that matter BI SQL too. We would have a comparative analysis in the following table:

HCM Alerts

OTBI Analysis

Key Differences

  • Leverages Groovy simple template engine
  • Light weight and interoperable with NO dependencies on (ADF BC, BI Server, Gateways etc..)
  • Modules has no design time OR compile time dependencies FA modules
  • Targeted for Business analysts to customize seeded product alerts and define new “resource” alerts
  • Integrates with business process flows (APIs, UI, Batch processes)
  • Calibri is the only font used in the template
  • All bulleted text is sentence case (capitalize first letter of first word)
  • Use bold, red, or both to highlight ONLY KEY text
  • Only support email one of the o/p: Analysis, Dashboard, Briefing Books, Reports with integration to BI dashboards targeted for admin and executives functionally different from HCM alerts addressing different use case.

Creating a Condition-Based Agent/Alert:

  • Agents enable you to automate your business processes. You can use them to provide  event-driven alerting ,  scheduled content publishing , and  conditional event-driven action execution . 
  • Agents can dynamically detect information-based problems and opportunities, determine the  appropriate individuals  to notify, and deliver information to them through a wide range of devices (eMail, phone, and so on). 
  • In the simplest format, an agent automatically performs a specified catalog analysis based on a  defined schedule , and examines the results for a specific problem or opportunity. 
  • Alerts is real-time event (i.e. as it happens) i.e. password reset, enroll for class etc. these can NOT be captured by queries i.e. there is NOT password reset quest table to query. 
  •  Efficient as there is NO polling required for event driven alerts.
  •  Custom data sources i.e. Password, User, etc..
  • Support for system, extensible and user-defined alerts.
  •  Support for multiple templates for an alert i.e. employee, manager specific content.
  • Integration to Worklist and User preferences are honored.
  •  Rich text editor support for message Subject & Body.

 

Alert Composer Configuration

One can use Tools->Alert Composer and then try to Add Resource Alert.

Add Resource Alert

Access Level

User

Enabled

Yes

Alert Code

Auto assigned when saved

Name

<User Input>

Description

<User Input>

Resource

REST resources for which you want to create Alert. Once save the Resource can’t be changed

 

Available Resources

  • In order to create a User Alert the REST resources need to be available. 
  • Based on the primary resource sleeted, when filters are added a list or Resources/child records are available 
  • Additional resources will continue to be added, enhancement requests could also be submitted to request additional Resources

 

Attributes and Functions

  • Return attribute for a person can be the following:

PersonID

WorkEmail

DisplayName

FirstName

LastName

UserName

  • Some of the functions support by Alerts include:

hrRep, payRep, benRep, unionRep

Return representative type for the PersonId or AssignmentId provided

empManager

Return the employee’s manager for the PersonId or AssignmentID provided

Person

Return a person attribute

getSysdate, getSystimestamp, formatNumber, formatDate

Return system date, system date and time, format a number, return specific date (Hire)

formatXML

Return formatted XML

Loop

Loop through a collection (possible use to construct a table for managers)

Tokens

  • Notifications contain tokens. When a notification is  modified, you can only use tokens available for the context. 
    • For example, if you modify a notification sent to candidates, you can only use tokens for the candidate context. 
  • Example Tokens for Candidates in ORC:
    • CandidateFirstName
    • CandidateLastName
    • CandidateDisplayName
    • CandidateUserName
    • CandidateNumber
    • CandidateEmail
    • CandidatePreferredPhone
    • CandidateLocation
    • CandidateTokenURL
  • Example Tokens for Job Offer in ORC:
    • JobOfferTitle
    • JobOfferTeamMembersUserNameList (list of 2 or more)
    • JobOfferRecruiterDisplayName
    • JobOfferRecruiterUserName
    • JobOfferRecruiterEmail
    • JobOfferHiringManagerDisplayName
    • JobOfferHiringManageruserName
    • JobOfferHiringManagerEmail
    • JobOfferDetailsTeamDeepLinkURL
    • JobOfferListDeepLinkURL
    • JobOfferDetailsCandidateDeepLinkURL

Filters

  • Enable the Alert to be triggered based on specific criteria.
  • What population of employees should get this alert?

Defining Templates

  • A template is the format for an alert notification
  • Alert Notifications can be sent to a recipients email and worklist based on template configuration
  • The template includes the message text, and Groovy expressions defined for the variables in the message
  • For Extensible and User Alerts, multiple templates can be defined, modified or disabled.
  • Multiple languages are supported. The default language is set when creating a template, when a template is saved language-specific templates are created in the application based on the installed languages. During runtime, worklist notifications are sent based on the recipient's user language preference. If the corresponding language is not found, the default template is used

Defining Templates – Communication Method

  • How Alert will be delivered – Worklist, Mail
  • Use an Expression builder to define the Recipients




Defining Templates –  Message

  • Define the message that will be generated and sent the  recipients
  • Expressions can be utilized in the Subject, Group by and Message Text areas.

 






Groovy Expressions

Groovy Expression

Example

Hello ${FirstName},

Your visa issued in ${visas[0].Country} expires on ${visas[0].ExpirationDate}.

Hello John,

Your visa issued in GB expires on 2018-09-28.

Hi ${FirstName}

<%

asgStr ="";

for(visa in visas)

{

asgStr = asgStr + visa.VisaPermitCountry+" ";

}

print("Multiple visas are issued for employee: "+asgStr);

%>

Regards,

Administrator

Hi John,

Multiple visas are issued for employee: US IN

Regards,

Administrator

 

Defining Templates –  Translation Editor

  • Alert Composer supports multiple language templates
  • When the template is saved multiple template are created based on the installed language. 
  • If creating User Defined Alerts, create the template in the default language then access the translation editor to view and update the template in each installed language. 

Defining Templates  - Run Options

  • Run Options enable you to specify the runtime settings for an alert. 
  • Run Options include:
    • On Demand – to run the alert notification immediately if initiated by a user.
    • Schedule – to run the notification at a specific time. Specify the notification frequency and the start date and time. 
  • Set Log Activity History to Yes to view details about the Alert on the Alert History page.
  • Set Simulate Run to Yes to do a test run of the Alert
  • Enable Duplicate Message if needed.

Log Activity History

Set Log Activity History to Yes to view details about the Alert on the Alert History page.

Running a Periodic Alert in Oracle Fusion HCM Cloud Application

$
0
0

Introduction

In one of the previous article we learnt about the “Alert Composer feature in Oracle HCM Cloud Application” and understood the basic concepts around the same.

In this article, we will try to run a delivered periodic alert and check results.

For this example, we would “Visa Expiration” resource alert.

Navigation is :

Homepage->Navigator->Tools->Alert Composer (search for Alert)

 

Making changes to receive emails/worklist notifications

Before we go ahead with running “Visa Expiration” resource alert we would make some changes to ensure we get notifications both to email and worklist. As a first step we need to ensure that the “Templates” are enabled (checkbox should be checked) and also you need to edit “Manage Recipients and Message”

 

We need to add two new rows to the “Recipient” section as shown below:

Next, we need to “Apply” the changes. Save our work and run the Alert.

We need to provide a user identifier “SampleRun” (for this example) and once we do so we will get confirmation message.

In the next step, we will try to verify the results.

Verification

Once we submit the Alert we can see the details in “Alert History”

 

Since we have enabled both “Mail” and “Worklist” options we would check whether we have received both email and a worklist notification.

Email Verification

 

Worklist Notification

Purge Person Data from Test Environments In Oracle HCM Cloud Application

$
0
0

Introduction

Many a times we have to create some sample data into the application either for Client Demo (CRP) or even for sanity testing (to check that basic application works as expected) after any major upgrade or patching activity. We do create dummy employees for such purposes. However, once the purpose is served there might be a need to ensure such records are completely removed from the system.

This kind of functionality is only available in Non-Production Environments only and until release 11 this was achieved by a Diagnostic Test named ‘HCM Delete Object’ (do refer article here for complete details).Starting Release 11 there is a new diagnostic test ‘Purge Person’ which is enabled into Test and Stage Environments post you raise an explicit Service Request in My Oracle Support (MOS). 

Until release 13 18b Oracle advised to use “Purge Person” diagnostic test (read complete article here ) but now that option has been removed and the new option is “Purge Person Data from Test Environments” . As the name suggests this Schedule process is only available in Non-Prod environments and before one can use this feature one would need to enable the same in the SaaS environment.This topic explains how to enable the process and identifies the data that it purges.

Enabling the Purge Process for Person Data

To use the Purge Person Data in Test Environments process, you must raise a service request (SR). In response, Oracle Support supplies a key to enable the process. When you have the key, which is specific to your environment, follow these steps:

  1. In the Setup and Maintenance work area, go to the following for your offering:
    • Functional Area: HCM Data Loader
    • Task: Configure HCM Data Loader
  2. On the Configure HCM Data Loader page, enter the key from Oracle Support in the Value field for the Purge Person Enabled Key parameter.
  3. Click Save and Close.

 

We can now run the Purge Person Data in Test Environments process.

Purging Person Data

The Purge Person Data in Test Environments process purges person records, including passports, citizenship records, licenses, emails, addresses, national identifiers, and extra information type data. It also purges dependent data of the following types:

  • Absences
  • Assignments, including extra information type data
  • Benefits
  • Calculation cards
  • Compensation
  • Contacts and contact relationships
  • Documents and attachments
  • Element entries
  • Goals
  • Payroll relationships
  • Performance records
  • Roles and user details
  • Talent profiles
  • Work relationships

Deletion requests are generated for user accounts in the test environment. To process these requests, you must run the Send Pending LDAP Requests process when Purge Person Data in Test Environments completes.

Exclusions from the Purge Process

The Purge Person Data in Test Environments process doesn't purge data of the following types:

  • Predefined person data.
  • Person data that was loaded using HCM File-Based Loader.
  • Oracle Trading Community Architecture (TCA) data.

The process inactivates dependent TCA records in the TCA tables but doesn't purge them.If processed payroll actions are associated with a worker, then the worker isn't purged. You must roll back relevant payroll processes before you can purge such workers.

Run the Purge Person Data in Test Environments Process

You must have the Purge Person Data in Test Environments function security privilege to run this process. The predefined Human Capital Management Integration Specialist job role has this privilege.

Sign in and follow these steps:

  • Select Navigator > Tools > Scheduled Processes.
  • In the Scheduled Processes work area, click Schedule New Process.
  • In the Schedule New Process dialog box, search for and select the Purge Person Data in Test Environments process.
  • In the Process Details dialog box, set one of the following parameters to identify the person data to purge.

 

Parameter

Description

Example

Person ID

Provide one or more person IDs. Separate multiple IDs with commas. 

100010034148157,100010034148169,100010034148181,100010034148192.

Person Number

Provide one or more person numbers. Separate multiple numbers with commas. You can use the wildcard character to supply partial values.

PER%,Test%,%abc%.

Person Query

Enter a SQL query to returnthe person IDs of all persons whose data you want to purge.

To return the person IDs of all person records where the last name starts with the characters John, you could use the following SQL query:

SELECT papf.person_id FROM per_all_people_f papf, per_person_names_f ppnf WHERE ppnf.last_name like 'John%' and ppnf.person_id = papf.person_id






Set the Save parameter, as follows.

Save Value

Description

N

Lists the persons whose data would be purged by the process. No data is purged.

Y

Purges the person data.

Run the Send Pending LDAP Requests Process

Purge Person Data in Test Environments generates requests to delete user accounts from your LDAP directory. To process these requests, run the Send Pending LDAP Requests process. If this process isn't scheduled to run in the test environment, then follow these steps when Purge Person Data in Test Environments completes:

  • In the Scheduled Processes work area, click Schedule New Process.
  • In the Schedule New Process dialog box, search for and select the Send Pending LDAP Requests process.
  • In the Process Details dialog box:
    • Set User Type to All.
    • Leave Batch Size set to A, which means that the processing batch size is calculated automatically.
  • Click Submit.

Tables Purged by the Purge Person Data in Test Environments Process

Whenever we run the “Purge Person Data from Test Environments” schedule process data gets deleted from lot many tables. The complete list is mentioned below for ready reference:

Product

Tables

Absence Management

  • ANC_PER_ABS_CERTS
  • ANC_PER_ABS_ENTRIES
  • ANC_PER_ABS_ENTRY_DTLS
  • ANC_PER_ABS_MATERNITY
  • ANC_PER_ABS_PLAN_ENTRIES
  • ANC_PER_ABS_PLN_SUMM_ENT
  • ANC_PER_ABS_TYP_LNKG
  • ANC_PER_ABS_TYPE_ENTRIES
  • ANC_PER_ACCRUAL_ENTRIES
  • ANC_PER_ACRL_ENTRY_DTLS
  • ANC_PER_EVENTS
  • ANC_PER_PLAN_ENROLLMENT

Benefits

  • BEN_BATCH_ACTN_ITEM_INFO
  • BEN_BATCH_BNFT_CERT_INFO
  • BEN_BATCH_COMMU_INFO
  • BEN_BATCH_DPNT_INFO
  • BEN_BATCH_ELCTBL_CHC_INFO
  • BEN_BATCH_ELIG_INFO
  • BEN_BATCH_LER_INFO
  • BEN_BATCH_RATE_INFO
  • BEN_BENEFIT_ACTIONS
  • BEN_BENEFIT_RELATIONS_F
  • BEN_CVRD_DPNT_CTFN_PRVDD
  • BEN_ELCTBL_CHC_CTFN
  • BEN_ELIG_CVRD_DPNT
  • BEN_ELIG_DPNT
  • BEN_ELIG_FLX_CRDT_POOL_CHC
  • BEN_ELIG_PER_ELCTBL_CHC
  • BEN_ELIG_PER_F
  • BEN_ELIG_PER_OPT_F
  • BEN_ELIG_RSLT_F
  • BEN_ENRT_BNFT
  • BEN_ENRT_RT
  • BEN_EXTRACT_DETAILS_ARCH
  • BEN_EXTRACT_REQ_DETAILS
  • BEN_FLEX_CRDT_LDGR
  • BEN_PER_BENEFIT_GROUP_F
  • BEN_PER_BNF_ORG
  • BEN_PER_BNFTS_BAL_F
  • BEN_PER_IN_LER
  • BEN_PER_LE_HABITS_COV_F
  • BEN_PERSON_ACTIONS
  • BEN_PIL_ELCTBL_CHC_POPL
  • BEN_PL_BNF
  • BEN_PL_BNF_CTFN_PRVDD
  • BEN_PRTT_ENRT_ACTN
  • BEN_PRTT_ENRT_CTFN_PRVDD
  • BEN_PRTT_ENRT_RSLT
  • BEN_PRTT_LEG_DISCMR_ACTN
  • BEN_PRTT_RT_VAL
  • BEN_PTNL_LER_FOR_PER
  • BEN_REL_ASSIGNMENTS_F
  • BEN_REPORTING

Compensation Management

  • CMP_BUDGET_AUDIT
  • CMP_BUDGET_USAGES
  • CMP_CWB_ALERTS
  • CMP_CWB_APPROVAL_HISTORY
  • CMP_CWB_AUDIT
  • CMP_CWB_FEEDBACK
  • CMP_CWB_HRCHY
  • CMP_CWB_INTCPT_APPR_DTLS
  • CMP_CWB_MODEL_B
  • CMP_CWB_MODEL_DTL
  • CMP_CWB_MODEL_TL
  • CMP_CWB_PERF_RATINGS
  • CMP_CWB_PERSON_DEFAULTS
  • CMP_CWB_PERSON_ELEMENTS
  • CMP_CWB_PERSON_INFO
  • CMP_CWB_PERSON_RATES
  • CMP_CWB_POST_LOG
  • CMP_CWB_POST_PERSON
  • CMP_CWB_PROMOTIONS
  • CMP_CWB_RANKS
  • CMP_CWB_SUMMARY
  • CMP_CWB_SWITCH_MANAGERS
  • CMP_DYNAMIC_FILTER
  • CMP_INTERCEPT_APPROVERS
  • CMP_PERSON_BUDGETS
  • CMP_PROCESS_DATA
  • CMP_PROCESS_RUN_INFO
  • CMP_SALARY
  • CMP_SALARY_COMPONENTS
  • CMP_SALARY_EXPORT
  • CMP_STOCK_DETAILS
  • CMP_TCS_PER_ITEM_VALUE
  • CMP_TCS_PER_PERD
  • CMP_TCS_PER_PERD_STMT
  • CMP_TCS_PER_PERD_STMT_CAT
  • CMP_TCS_PER_ROW_VALUES
  • CMP_TCS_REPORT_DETAILS
  • CMP_VC_PER_ELIG_PLANS

Oracle Middleware Extensions for Applications

  • FND_ATTACHED_DOCUMENTS
  • FND_DOCUMENTS
  • FND_DOCUMENTS_TL
  • FND_SESSION_USERS

Workforce Modeling

  • HMO_MODEL_PLAN_DETAILS
  • HMO_MODEL_PLANS_B
  • HMO_MODEL_PLANS_TL

Performance Management

  • HRA_EVAL_ITEMS
  • HRA_EVAL_PARTICIPANTS
  • HRA_EVAL_RATINGS
  • HRA_EVAL_ROLE_ACTIONS
  • HRA_EVAL_ROLES
  • HRA_EVAL_SECTIONS
  • HRA_EVAL_STEPS
  • HRA_EVALUATIONS

Goal Management

  • HRG_GOAL_ACCESS
  • HRG_GOAL_ACTIONS
  • HRG_GOAL_ALIGNMENTS
  • HRG_GOAL_TARGET_OUTCOMES
  • HRG_GOALS

Succession Management

  • HRM_PLANS
  • HRM_PLAN_CANDIDATES
  • HRM_PLAN_OWNERS

Talent Review

  • HRR_DASHBOARDS
  • HRR_MEETINGS
  • HRR_MEETING_FACILITATORS
  • HRR_MEETING_PARTICIPANTS
  • HRR_MEETING_REVIEWEES

Questionnaire

  • HRQ_QSTN_RESPONSES
  • HRQ_QSTNR_PARTICIPANTS
  • HRQ_QSTNR_RESPONSES

Profile Management

  • HRT_NOTES
  • HRT_POOL_MEMBERS
  • HRT_POOL_OWNERS
  • HRT_PROFILE_INTERESTS
  • HRT_PROFILE_ITEMS
  • HRT_PROFILE_KEYWORDS
  • HRT_PROFILE_MATCH_CRIT
  • HRT_PROFILE_RELATIONS
  • HRT_PROFILES_B
  • HRT_PROFILES_TL

Workforce Management

  • HWM_TM_REC
  • HWM_TM_REC_GRP
  • HWM_TM_REC_GRP_SUM
  • HWM_TM_REC_GRP_USAGES
  • HWM_TM_REP_ATRB_USAGES

Workforce Predictions

  • HWP_ARCH_DATA_MINING_REASONS
  • HWP_ARCH_DATA_MINING_RESULTS
  • HWP_DATA_INPUT_VALUES
  • HWP_DATA_MINING_REASONS
  • HWP_DATA_MINING_RESULTS
  • HWP_WHATIF_PRED_DETAILS

Global Payroll

  • PAY_ASSIGNED_PAYROLL
  • PAY_ASSIGNED_PAYROLLS_DN
  • PAY_ASSIGNED_PAYROLLS_DN_
  • PAY_ASSIGNED_PAYROLLS_F
  • PAY_ASSIGNED_PAYROLLS_F_
  • PAY_DATES
  • PAY_DIR_CARD_COMPONENTS_F
  • PAY_DIR_CARD_COMPONENTS_F_
  • PAY_DIR_CARDS_F
  • PAY_DIR_CARDS_F_
  • PAY_DIR_COMP_DETAILS_F
  • PAY_DIR_COMP_DETAILS_F_
  • PAY_DIR_REP_CARD_USAGES_F
  • PAY_DIR_REP_CARD_USAGES_F_
  • PAY_DIR_REP_CARDS_F
  • PAY_DIR_REP_CARDS_F_
  • PAY_ELEMENT_ENTRIES_F
  • PAY_ELEMENT_ENTRIES_F_
  • PAY_ELEMENT_ENTRY_VALUES_F
  • PAY_ELEMENT_ENTRY_VALUES_F_
  • PAY_ENTRY_PCT_DIST
  • PAY_ENTRY_PROC_DETAILS
  • PAY_ENTRY_USAGES
  • PAY_PAY_RELATIONSHIPS_DN
  • PAY_PAY_RELATIONSHIPS_F
  • PAY_PERSON_PAY_METHODS_F_
  • PAY_RANGE_ITEMS_F
  • PAY_RANGE_ITEMS_F_
  • PAY_REL_GROUPS_DN
  • PAY_REL_GROUPS_F
  • PAY_RETRO_ENTRIES
  • PAY_VALUE_DEFINITIONS_F
  • PAY_VALUE_DEFINITIONS_F_

Global Human Resources

  • HR_DOCUMENT_DELIVERY_PREFS
  • HR_DOCUMENTS_OF_RECORD
  • PER_ABSENCE_CASES
  • PER_ACTION_OCCURRENCES
  • PER_ADDRESSES_F
  • PER_ALL_ASSIGNMENTS_M
  • PER_ALL_PEOPLE_F
  • PER_ALLOCATED_CHECKLISTS
  • PER_ALLOCATED_TASKS
  • PER_ASG_RESPONSIBILITIES
  • PER_ASSIGN_GRADE_STEPS_F
  • PER_ASSIGN_WORK_MEASURES_F
  • PER_ASSIGNMENT_EXTRA_INFO_M
  • PER_ASSIGNMENT_SUPERVISORS_F
  • PER_CITIZENSHIPS
  • PER_CONTACT_EXTRA_INFO_F
  • PER_CONTACT_RELSHIPS_F
  • PER_CONTRACTS_F
  • PER_DELEGATED_ROLES
  • PER_DISABILITIES_F
  • PER_DRIVERS_LICENSE_TYPES
  • PER_DRIVERS_LICENSES
  • PER_EMAIL_ADDRESSES
  • PER_ETHNICITIES
  • PER_IMAGES
  • PER_KEYWORDS
  • PER_LDAP_REQUESTS
  • PER_LDAP_ROLE_MEMBERSHIPS
  • PER_LDAP_USERS
  • PER_MANAGER_HRCHY_DN
  • PER_NATIONAL_IDENTIFIERS
  • PER_PASSPORTS
  • PER_PEOPLE_EXTRA_INFO_F
  • PER_PEOPLE_LEGISLATIVE_F
  • PER_PERIODS_OF_SERVICE
  • PER_PERSON_ADDR_USAGES_F
  • PER_PERSON_DLVRY_METHODS
  • PER_PERSON_NAMES_F
  • PER_PERSON_TYPE_USAGES_M
  • PER_PERSONS
  • PER_PHONES
  • PER_PORTRAIT_CARD_CONFIG
  • PER_PORTRAIT_PREFERENCES
  • PER_RELIGIONS
  • PER_SCHEDULE_ASSIGNMENTS
  • PER_SHARE_INFORMATION
  • PER_USER_HISTORY
  • PER_USER_ROLES
  • PER_USERS
  • PER_VISAS_PERMITS_F

Global Transfer In Oracle HCM Cloud Application

$
0
0

Introduction

For some of you who have worked in earlier versions of Oracle Fusion HCM (until release 8) they might be aware about how challenging, difficult and cumbersome it was to perform a Global Transfer.

A global transfer is a permanent transfer from one legal employer to another. It results in the termination of an existing work relationship and the creation of a new one. The termination date of the existing work relationship is one day prior to the start date of the new work relationship.

In one of the previous article we have seen how to perform a “Change Legal Employer” transaction. In this example, we would see how to perform a “Global Transfer”.

 

Global Transfer Worked Out Example

For this example we would choose a employee (say Person Number 2877, Person Name “Albert Stuart” ) and try to do a Global Transfer action.

As a first step we would need to login to application (Application Version Release 13 19D) with appropriate login credentials and choose “Local and Global Transfer” Quick action under Employment(as shown below)

Once we click on “Local and Global Transfer” a new page will open up. We would select all the available Areas which needs to be modified.

 

Next we need to click on “Continue”.

We would need to answer the following questions and proceed.

When and Why

*When does the transfer takes effect?

12/9/19

*Who’s the new legal employer?

US1 Legal Entity

Is this change permanent or temporary?

Permanent

Why are you transferring the person?

Career Progression

Why are you making changes to direct reports?

Addition of Assignment for Manager

Current Legal Employer

UK Legal Entity

 




Next, we need to fill details about Assignment related changes.

Assignment

*Business Unit

UK Business Unit

Job

Accounting Manager

Business Title

Accounts Manager

Department

Accounting UK

Location

Manchester

 

We can click on “Continue” and this will take us to “Managers” section.

When we click on “Continue” we move to “Work Relationship” area and populate the fields there. 

We would next fill in the “Payroll” details.

Next we should populate the new “Salary” details.

 

The “Compensation” section when filled appears as below:

Next, we will add “Direct Reports”

Once all the sections are field we will click on “Submit” button (top righthand side) and this would bring us to the “Homepage”.

 

Verification

Once the transaction is submitted we should navigate to the person management page and check the “Include terminated work relationships” option (and we should see two records). The most current record will hold details about the new Assignment (UK Legal Entity) and the terminated work relationship is for previous work relationship (US1 Legal Entity)

If we click on the Active Record we would see that there is a new Work Relationship where start date is 12/9/19 , Action is Global Transfer ,Action Reason is Career Progression and new Legal Employer is UK Legal Entity as per our expectation.

 

And if we to “Manage Work Relationship” we could see both the active and inactive records as shown below:

We can clearly observe how the “Global Transfer” transaction has been made so simple and smooth. One needs not to end the previous work relationship (home assignment) and start a new work relationship (host assignment) separately. Both the transactions are performed at one go and all other associated activities are performed in the background.

 

And with this, I have come to the end of this article. Hope this write-up was useful and you guys enjoyed reading it. Thank you all for your time and have a great day ahead.


An Introduction to Unified Sandbox Feature in Oracle Fusion Application Release 13 19D

$
0
0

Introduction

In one of the previous article (link here) we have learnt about Sandbox (Definition, Usage and Impact) in Oracle Fusion Applications. However, there are certain limitations with this and hence there is a new enhanced feature named “Unified Sandbox” which is available starting Release 13 19C (optional feature), the same feature becomes a delivered one starting 19D. In this article we would try to learn about Unified Sandbox.

Unified Sandbox

With Unified Sandboxes, you can refresh your sandboxes to bring in the latest changes from the mainline metadata to your sandboxes, and do many other new and versatile sandbox activities. You get a consistent sandbox experience across all configuration tools and a more robust user interface with this feature.

With Unified Sandboxes, you can do these additional sandbox activities:

  • Select the configuration tools to enable for your sandboxes while creating them.
  • Enable all configuration tools in the same way using the Sandboxes UI. So you get a consistent sandbox experience across tools.
  • Restrict access to various sandbox activities for users. For example, you can specify these access rights for your sandboxes:
  • Full access
  • Edit and preview access
  • View only access

 

  • View just your application changes without having other context layers hide your content.
  • Test your changes in a preview mode that shows you exactly how your application changes would appear in a published sandbox.
  • Refresh and merge sandboxes with latest changes in mainline metadata from other published sandboxes. After merging all changes, you can publish your sandbox.
  • After opting in to the Unified Sandboxes feature, if you register your target environment in your source environment, you can do these additional migration tasks using the Migration UI:

 

  • Migrate your changes from the test environment to the target environment without manually downloading and uploading the configuration set file.

 

  • Move only new changes from the source environment to the target environment.

 

Sandbox Usage

You typically use sandboxes for either of these purposes:

  • Test-Only: You can make application changes using test-only sandboxes, which you don't want to publish to the mainline code.
  • Publish: Once satisfied with the application changes made in the test-only sandbox, you can replicate these changes in a sandbox that you want to publish. And then publish your changes to the mainline code. This sandbox type is also known as the integration sandbox, because teams working in parallel use this sandbox as the final staging point before publication to the mainline code.

Note: Before each patch or upgrade, publish or delete your sandboxes. If you haven't yet completed your work, restart with a new sandbox.

 

Supported Sandbox Operations

Sandboxes support the following operations:

 

Operation Type

Description

Create

Creates a new Sandbox

Activate

Only one sandbox can be active at a time.

Delete

Delete a sandbox only when the sandbox is no longer needed, the sandbox is outdated, or its related integration sandbox has been published to the mainline metadata.

Publish

Publish a sandbox using extreme caution. Once a sandbox has been published, all existing sandboxes derived from the same mainline metadata are now invalid. There is no rollback operation for published sandboxes.

Download All

Coordinate this operation with the main administrator user, before publishing a sandbox, as a way of performing a backup of current sandbox changes. This backup can be shared with Oracle Support Services, should you encounter a scenario that you cannot resolve.

Exit

Exit the sandbox

 

You must first sign out and then sign back into your application when you perform the following operations:

 

  • Activating a sandbox.
  • Exiting a sandbox.
  • Publishing a sandbox.

 

Importing Sandboxes

 

Don't import sandboxes. This operation is reserved for Oracle internal development only.

 

Enable Unified Sandbox feature

 

To use Unified Sandboxes instead of the default sandboxes, opt in to the Unified Sandboxes feature.

Before you start, consider these points:

 

Make sure you totally understand what it means to opt in to the feature and what impact that would have.

  • When you use Application Composer in your Unified Sandbox, an object can only be edited in a   any one sandbox in the environment at a time.

 

  • You can't deploy your flexfields to a sandbox after you opt in to Unified Sandboxes. You must deploy them directly to the mainline environment.

In the Offerings work area, enable the Unified Sandboxes feature:

  • Functional Area: Application Extensions
  • Feature: Unified Sandboxes

 

 

Create and Activate Unified Sandbox

 

To make changes to the application, you must first store the changes in an active sandbox. You can either create a sandbox or select an existing one, and make it active. You must activate the configuration tools you want to use in your sandbox. If you plan to use Page Composer in your sandbox and need to edit pages at any layer, not just Site, create a separate sandbox just for using this tool.

 

Note: You can create up to 20 sandboxes. But, you can increase this limit using the Maximum Number of Sandboxes profile option. In the Setup and Maintenance work area, use the Manage Applications Core Administrator Profile Values task in the Application Extensions functional area.

 

Follow these steps to create and activate sandboxes for most configuration tools. For flexfields, use the Manage Descriptive Flexfields task or the Manage Extensible Flexfields task instead.

 

  • Click Navigator > Configuration > Sandboxes.
  • On the Sandboxes page, click Create Sandbox.
  • Enter a name and description for your sandbox.
  • In the All Tools section, select the tools you want to activate for this sandbox. The context layers for all selected tools are set as Site by default. So the changes you make using these tools affect all users.
  • If you select Page Composer, you can click the Edit Sandbox Context icon and change the context layer from Site to another layer, for example External. You can find the Edit Sandbox Context icon in the Support Context column.
  • Click Create to just create the sandbox, or Create and Enter to enter or activate the sandbox after creating it.

Note: If you want to use other tools along with Page Composer in your sandbox, don't change the context layer for Page Composer, even though you can. That's because all tools except Page Composer support only a single context layer, Site. If you change the context layer for Page Composer from Site to any other layer, you can't activate those tools in the same sandbox.









Here are a few things to know about activating tools in your sandbox.

 

  • If you try to use a configuration tool in a sandbox without activating the tool in it, you get a message prompting you to activate the tool. You can add more tools to your sandbox later also.
  • To create and manage saved searches and make UI adjustments (for example, change a table's column width) just for yourself, you must leave your sandbox before making these changes. But if you want to make these changes for others too, then make the changes with Page Composer open, in which case you also must be in a sandbox.

 

Working Mechanism of Refresh and Merge Processes

 

Sandbox changes are refreshed and merged when two different users make changes to the same file using two different sandboxes. Let's look at an example. Suppose your manager creates a sandbox named Sandbox1 and you create another sandbox named Sandbox2. Your manager then makes a change to a file using Sandbox1 and publishes it to the mainline environment. Now if you make changes to the same file and refresh Sandbox2, all changes published in the mainline environment are merged into Sandbox2. What if both you and your manager entered different values to the same attribute of the file? In that case, the value that your manager entered using Sandbox1 persists because Sandbox1 is published to the mainline metadata. To bring back the changes that you made in Sandbox2, you need to reenter the sandbox and make the changes again.

 

Application Changes that can or can’t be merged

 

If two users are working on two different sandboxes (say Sandbox1 and Sandbox2) at the same time then there are some changes which will be merged in Sandbox2 considering Sandbox1 is already published. To bring the changes made to second sandbox (Sandbox2 which is unpublished one) we would need to create another sandbox make the changes and publish it.

 

Tools used

Application Changes

Merging (Allowed / Disallowed)

Application Composer and Configure Business Objects

Changes in business objects and their related fields

Data Security

Changes in Data Security

Lookups

Changes in Lookups

User Interface Text

UI Text Changes

Messages

Changes to messages, such as warning messages and information messages

Appearance

Changes to appearance of the application

Manage Service Mappings

Changes in pricing configuration

Page Composer

Changes to Page Content

Page Template Composer

Changes to Global Page Template

Page Integration

New Pages Created



Options to Open Configuration Tools in Unified Sandboxes

 

In Unified Sandboxes, after activating the configuration tools, you can also use shortcuts to quickly open some of these tools and make your changes. But you can't open all tools from there. In which case, you can get to those tools using regular navigation.

Use Shortcuts in Sandboxes

 

After you activate a sandbox, all tools activated in it are listed on the sandbox bar and the Sandbox Details page. You can open these tools from either of these locations:

  • The Tools drop-down button on the sandbox bar above the global header
  • The Active Tools section of the Sandbox Detail: <Sandbox Name> page

In this list, you may notice that some tools are available, while others, for example, Lookups and Messages are grayed out. You can click the available tools to open them directly from the Sandboxes UI.

Use Regular Navigation

 

This table lists the regular navigation options to open all tools that you can activate in your sandboxes. It also indicates whether you can open the tools from the Sandboxes UI.

Tool Name

Can Open using the Sandboxes UI

Regular Navigation

Application Composer

Yes

Click Navigator > Application Composer.

Configure Business Objects

Yes

Click Navigator > Business Objects

Appearance

Yes

Click Navigator > Appearance.

Manage Service Mappings

No

Click Navigator > Pricing Administration, and then on the Tasks panel tab, click Manage Service Mappings.

Page Integration

Yes

Click Navigator > Page Integration.

Structure

Yes

Click Navigator > Structure.

Lookups

No

In the Setup and Maintenance work area, use the lookup tasks, such as:

Manage Standard Lookups, Manage Common Lookups, Manage Set Enabled Lookups

User Interface Text

Yes

Click Navigator > User Interface Text.

Messages

No

In the Setup and Maintenance work area, use the messages tasks, such as:

Manage Messages, Manage Messages for General Ledger

Data Security

No

Click Navigator > Security Console, and then click the Administrator tab, and click Manage Database Resources.

Page Composer

Yes

Click your user image or name in the global header and select Edit Pages under Administration.

Global Page Template

No

Click your user image or name in the global header and select Edit Global Page Template under Administration.

 

Resolving Conflicts in Unified Sandboxes

When you're in a sandbox, if other users publish their sandboxes, you get refresh notifications on the sandbox bar above the global header. At this time, it's a good practice to refresh your sandbox. When you refresh, all changes published in the mainline environment are brought into your sandbox. You get sandbox merge conflicts in the merge log when different users change a specific file using different sandboxes. If the changes are made to different files, they're automatically merged, and aren't even reported in the merge log.

Note: In some configuration tools, for example Application Composer, an object gets automatically locked when you create it or modify it in a sandbox. So in such cases, an object can only be edited in any one sandbox at a time. If the sandbox is published or deleted, the lock is removed.

You must resolve all conflicts flagged in the merge log so that you can publish your sandbox. To review the merge log, on the Sandbox Detail: <Sandbox Name> page, click the Merge Log tab. The log displays details about the sandbox merge statuses. Let's understand what these statuses mean and how we can resolve the sandbox merge conflicts based on their statuses.




Merge Status

Icon

What It Means

How to resolve Merge Conflicts

Automatically Merged Content

Auto Merge

Different users changed different attributes of the same file using different sandboxes.

These changes are merged automatically.

Resolvable Conflicts

Resolvable

Different users changed the same attribute of the same file using different sandboxes.

These changes can be merged to the mainline environment. On merging, the changes in the mainline environment overwrites your sandbox changes. So review the merge actions and accept or reject them.

  • If you accept, you can later redo any changes that were overwritten and then publish your sandbox.
  • If you reject, your sandbox remains untouched, but you still need to accept a merge before you publish your sandbox.

Unresolvable Conflicts

Unresolvable

Different users changed files in different sandboxes, but the merge conflicts can't be automatically resolved.

Do any of these tasks:

  • Undo your sandbox changes.
  • In your sandbox, make the same change, which the other user made in the published sandbox, and try to resolve the conflict.
  • Create another sandbox and make your changes in that one.

 

Object Locking in Application Composer

The automatic object locking ability in Application Composer avoids the risk of conflicts between multiple users working on objects in parallel and prevents any sandbox merge conflicts that may arise when different users change a specific object using different sandboxes.

Application Composer automatically places a lock on a business object when you create or modify it in a unified sandbox. The locked object displays a lock icon next to its object name in Application Composer's object navigation tree. A gold lock indicates that the object is locked in the current sandbox. A gray lock indicates that the object is locked in a different sandbox. Hover over a locked object's name in the navigation tree to display the name of the sandbox that holds the lock.

Application Composer displays and enforces object locks across all unified sandboxes. You can only edit a locked object in the sandbox that holds the lock. For example if the Service Request object is modified in Sandbox A, only Sandbox A holds the lock and anyone using Sandbox A can modify Service Request. Any other sandbox displays a gray lock on Service Request in Application Composer, and prevents users from modifying it.

The lock status of objects changes each time you publish or delete a sandbox, or when a new object lock is established. Collapse and then expand Application Composer's object tree to update the lock status of all objects. Any action that causes the object tree to be refreshed will update the lock status, including when you exit and reenter a sandbox, or refresh a sandbox. If an object is locked and that lock is not yet visible in the current sandbox, a new lock is not allowed to be placed on that object and an error message appears while saving the changes.

Best Practices for Preventing Object Locking

Here are some tips on how you can prevent or work around object locking:

  • Plan your object model and user interface configurations, and divide the work to prevent two users requiring the same object or objects locked.
  • Name sandboxes clearly with appropriate names or initials, so when a lock is in place, it's easy to identify who to contact to release the lock from the sandbox holding the lock.
  • Perform configurations in smaller increments. Test and publish more frequently to prevent holding locks.
  • Delete test sandboxes created to try out new configurations after they are no longer needed to prevent unnecessary locking.

Publish Unified Sandboxes

After you're done making changes to the application, publish the sandbox to make your changes available to all users. You must have the Administer Sandbox (FND_ADMINISTER_SANDBOX_PRIV) privilege to publish sandboxes. Remember, you can't make further changes in the sandbox once you publish it.

Before you start, do these tasks:

  • Test or validate your changes in the sandbox in preview mode before actually publishing it. If you made changes using Page Composer, don't forget to close it before testing. To preview your changes, click the Sandbox Mode drop-down button on the sandbox bar above the global header, and select Preview as if Published (Context: All).
  • Resolve all conflicts flagged in the merge log of your sandbox.

To publish a sandbox:

  1. Click Navigator > Configuration > Sandboxes.
  2. On the Sandboxes page, click the name of the sandbox you want to publish.
  3. Click Publish.
  4. Click Continue to Publish. The sandbox is published to the mainline metadata.
  5. Click Done.

An Overview of Delivered OTBI Analysis Open Requisitions Aging - Detail By Recruiter

$
0
0

Introduction

Oracle Recruiting Cloud is native to the HCM SaaS Suite. This application was designed to improve the quality and recruiting speed of application process. Oracle Recruiting Cloud offers many benefits to organizations , some of the significant ones being:

    • A personalized and compelling candidate-centric experience
    • Utilization of sourcing campaigns and CRM
    • Use of a comprehensive recruiting solution
    • Access to innovative design and technology

Oracle Recruiting Cloud emphasizes an ease-of-use experience from the candidate perspective. The landing page within the application is completely configurable. Organizations can add their own logo, add custom images, etc.

There are a lot of reports delivered by Oracle for ready use.

In this article, we would look at “Open Requisitions Aging – Detail By Recruiter” OTBI Analysis.

Report Location

“Open Requisitions Aging – Detail By Recruiter” is found at 

Shared Folders/Human Capital Management/Recruiting/Transaction Analysis Samples/Report Components/Requisitions

 

Report Details

This OTBI Analysis is based on Subject Area “Recruiting – Recruiting Real Time

 

Column Name

Data Source

Recruiter Full Name

"Job Requisition - Hiring Team"."Recruiter Full Name"

Recruiter Department Name

"Job Requisition - Hiring Team"."Recruiter Department Name"

Job Requisition Number

"Job Requisition - Basic Information"."Requisition Number"

Job Requisition Title

"Job Requisition - Basic Information"."Requisition Title"

Current State

"Job Requisition - Progression"."Current State"

Creation Date

"Job Requisition - Dates"."Creation Date"

# Days Since Creation for Active Requisitions

IFNULL("Facts - Requisition Aging"."Average Time Since Creation for Active Requisitions", 0)

 

Running the Report

Once we run the analysis we would get the details as shown below:

Identifying Value of DBI Item In Oracle HCM Cloud Application

$
0
0

Introduction

There might have been situations in the course of an HCM Cloud implementation project which has an outbound interface (generally referred to as HCM Extract) where one or more of the DBI used in the HCM Extracts might not return expected values.

There are many ways to troubleshoot this issue. Some of the common ways being:

  1. Using OTBI Subject Area
  2. Using BI SQL Data Model
  3. Displaying DBI value on UI (using Fast Formula)

In this example we will demonstrate the same. 

For this example, we would try to find the value of  “PER_ASG_MARITAL_STATUS”. Assuming we were using “PER_EXT_PAY_EMPLOYEES_V2_UE” we can get an idea of which specific database field holds the value.

One can get to know the query underlying a UE from Data Exchange -> User Entity Details ->Query

PER_EXT_PAY_EMPLOYEES_V2_UE (Query)

SELECT  paaf.REASON_CODE,ppa.end_date ,ppa.start_date ,papd.end_date ,papd.start_date ,NVL(pay_report_utils.get_parameter_value_date('DATE_EARNED'),pay_report_utils.get_parameter_value_date('EFFECTIVE_DATE')) ,papf.business_group_id ,paaf.action_code ,paaf.ASS_ATTRIBUTE1 ,  paaf.ASS_ATTRIBUTE10 ,paaf.ASS_ATTRIBUTE11 ,paaf.ASS_ATTRIBUTE12 ,paaf.ASS_ATTRIBUTE13 ,paaf.ASS_ATTRIBUTE14 ,paaf.ASS_ATTRIBUTE15 , paaf.ASS_ATTRIBUTE16 ,paaf.ASS_ATTRIBUTE17 ,paaf.ASS_ATTRIBUTE18 ,paaf.ASS_ATTRIBUTE19 ,paaf.ASS_ATTRIBUTE2 ,paaf.ASS_ATTRIBUTE20 , paaf.ASS_ATTRIBUTE21 ,paaf.ASS_ATTRIBUTE22 ,paaf.ASS_ATTRIBUTE23 ,paaf.ASS_ATTRIBUTE24 ,paaf.ASS_ATTRIBUTE25 ,paaf.ASS_ATTRIBUTE26 , paaf.ASS_ATTRIBUTE27 ,paaf.ASS_ATTRIBUTE28 ,paaf.ASS_ATTRIBUTE29 ,paaf.ASS_ATTRIBUTE3 ,paaf.ASS_ATTRIBUTE30 ,paaf.ASS_ATTRIBUTE4 , paaf.ASS_ATTRIBUTE5 ,paaf.ASS_ATTRIBUTE6 ,paaf.ASS_ATTRIBUTE7 ,paaf.ASS_ATTRIBUTE8 ,paaf.ASS_ATTRIBUTE9 ,paaf.created_by , paaf.creation_date ,paaf.effective_end_date ,paaf.effective_start_date ,paaf.employee_category ,paaf.employment_category ,  paaf.frequency ,paaf.grade_id ,paaf.job_id ,paaf.last_updated_by ,paaf.last_update_date ,paaf.last_update_login , paaf.legal_entity_id ,paaf.location_id ,paaf.assignment_name ,paaf.assignment_number ,paaf.object_version_number , paaf.organization_id ,paaf.position_id ,paaf.primary_assignment_flag ,paaf.primary_flag ,paaf.primary_work_relation_flag , paaf.primary_work_terms_flag ,paaf.assignment_status_type ,paaf.system_person_type ,paaf.assignment_type ,ppa.hr_assignment_id , ppos.actual_termination_date ,ppos.adjusted_svc_date ,ppos.date_start ,ppos.period_of_service_id ,ppos.legislation_code ,  ppos.original_date_of_hire ,ppos.primary_flag ,ppos.worker_number ,ppa.hr_term_id , pprd.legislative_data_group_id , ppa.legal_employer_id , papf.object_version_number , NVL2(paaf.organization_id,'DEPARTMENT','') , papd.payroll_id , ppa.payroll_assignment_id , ppa.payroll_relationship_id , pprd.payroll_relationship_number , ppa.payroll_term_id , papf.effective_end_date , papf.effective_start_date , papf.person_id , papf.person_number , pprd.payroll_stat_unit_id  

FROM  

       PER_ALL_PEOPLE_F         papf, 

      per_periods_of_service   ppos, 

       per_all_assignments_f    paaf, 

       pay_payroll_assignments  ppa, 

       pay_pay_relationships_dn pprd, 

        (select  

       nvl((select min(pdf.date_value) from pay_dates pdf, pay_time_definitions ptdf where papd.assigned_payroll_id = pdf.source_id and ptdf.short_name = 'FSED' and pdf.source_type ='AP' and ptdf.time_definition_id =pdf.time_definition_id), papd.start_date) as start_date, nvl((select  max(pdf.date_value) from pay_dates pdf, pay_time_definitions ptdf where papd.assigned_payroll_id = pdf.source_id and ptdf.short_name = 'LSED' and pdf.source_type ='AP' and ptdf.time_definition_id =pdf.time_definition_id),papd.end_date) as end_date,papd.payroll_term_id, papd.payroll_id 

from pay_assigned_payrolls_dn papd) papd 

   where ppos.person_id              = papf.person_id

     and paaf.person_id              = ppos.person_id 

     and paaf.period_of_service_id   = ppos.period_of_service_id 

     and paaf.assignment_id          = ppa.hr_assignment_id 

     and papd.payroll_term_id(+)     = ppa.payroll_term_id 

     and ppa.payroll_relationship_id = pprd.payroll_relationship_id 

     and paaf.work_terms_assignment_id = ppa.hr_term_id 

     and trunc(&B1) between papf.effective_start_date  and papf.effective_end_date 

     and trunc(&B1) between paaf.effective_start_date  and paaf.effective_end_date 

     and trunc(&B1) between pprd.start_date and pprd.end_date 

     and trunc(&B1) between ppa.start_date  and ppa.end_date 

     and trunc(&B1) between papd.start_date(+) and papd.end_date(+)

 

Also from OTBI Database Lineage Mapping sheet we can get details of the Database column which holds details of “Marital Status” field.

This clearly shows that the database field which holds the data is PER_PEOPLE_LEGISLATIVE_F.MARITAL_STATUS

Also we will create a custom Fast Formula say TEST_DBI_VALUE of Global Absence Entry Validation Fast Formula which would display the DBI Value.

TEST_DBI_VALUE (Formula Text)

DEFAULT FOR PER_ASG_PERSON_NUMBER is '0'

DEFAULT FOR PER_ASG_MARITAL_STATUS is 'X'



lc_marital_status = PER_ASG_MARITAL_STATUS

lc_person_number = PER_ASG_PERSON_NUMBER

VALID='N'

ERROR_MESSAGE='Marital Status of Person Number is ' ||lc_person_number

              || ' is: ' ||lc_marital_status

RETURN VALID,ERROR_MESSAGE

 

Now we will proceed with verifying the Marital Status value of a colleague.

Marital Status Value as seen from UI (Manage Person)

We will choose John Roberts (Person Number 120) for this demonstration.

We can see from above screenshot that Marital Status of John Roberts is “Single”

Verification Using OTBI Subject Area

We would use “Workforce Management – Person Real Time” subject area and try to display person number and marital status field.

 

Verification Using BI SQL

We can also validate the value using a SQL.

SQL

SELECT papf.person_number,

               pplf.marital_status

from per_all_people_f papf,

        per_people_legislative_f pplf

where trunc(sysdate) between papf.effective_start_date and papf.effective_end_date

and     trunc(sysdate) between papf.effective_start_date and papf.effective_end_date

and pplf.person_id = papf.person_id

and papf.person_number = '120'

 

 

Displaying DBI Value from UI (using Fast Formula)

For this we would need to associate the custom “Global Absence Entry Validation” Fast Formula “TEST_DBI_VALUE” created above earlier to any existing absence type (we choose “Unpaid Absence AU” for this example).

Now when we try to book an absence of “Unpaid Absence AU” for John Roberts we will get the value of DBI Item (PER_ASG_MARITAL_STATUS)

Summary

So this is how we can check the value of a DBI Item in various different ways.

That’s all from my side, hope you guys had a good time reading this article.

Thank you all for your precious time and with this I end my last article for year 2019.

I wish all of you a very HAPPY, PROSPEROUS & EVENTFUL NEW YEAR.

A Worked Out Example of Changing Label Name in Unified Sandbox

$
0
0

Introduction

“Unified Sandbox” is among one of the most notable features delivered in the latest release (Release 13 19D) prior to this (in 19C) we had to opt for the option. I did try to explain a little bit details of the Unified Sandbox in one of my previous post (link here) but in this post let-us try to understand it with a very simple example.

As a part of this example we will create two sandbox (say AH_Sandbox1 and AH_Sandbox2) and we would try to make following changes:

Unified Sandbox (Label Change Example)

Delivered Values

AH_Sandbox1

AH_Sandbox2

 

Now from the above image we can clearly see that the delivered values of the Label were Grade and Grade Ladder which we have modified to Rank and Rank Ladder in AH_Sandbox1 and Group and Group Ladder in AH_Sandbox2.

We can clearly see that there is a conflict here.

We can search for available sandbox with names starting as ‘AH_Sandbox%’

Let-us try to publish AH_Sandbox1 now.

When we open the page from Navigator->Configuration->Sandbox->AH_Sandbox1 we could see a banner message which would say “Refresh needed”

Once we click there we can find all changes made in the sandbox

 

We should do a refresh before we proceed with publishing the sandbox. During the refresh we would get messages stating the different conflicts and would ask us whether we want to accept the changes or not. Once you choose to accept then the changes will be merged.

This will be followed by a refresh (triggers automatically)

 

Once the refresh is complete one can continue with publish process.

Once we publish the sandbox we can see it in the published sandbox section.

Next, we will try to publish AH_Sandbox2

 

Now we have changed the value from “Grade” to “Group” and “Grade Ladder” to “Group Ladder” but since we have already published the first sandbox where the names where changed from “Grade” to “Rank” and “Grade Ladder” to “Rank Ladder”. So in the mainline metadata we do not have any value as “Grade” or “Grade Ladder” hence we would see an unresolvable conflict.

 

As such, we would not be able to publish this sandbox (which is what the Unified Sandbox feature offers).

We would leave the sandbox and check if the changes published via AH_Sandbox1 is visible.

 

Summary

From the actions performed above we can clearly conclude that “Unified Sandbox” does provides us a clear view of the concurrent changes being made on same object and shows both “Resolvable” and “Unresolvable” defects and provide a solution for the same.

We could clearly see the merge log for (AH_Sandbox2) which shows as below:

 

With this we have come to the end of the article.

Hope you guys have a nice read.

Oracle Enterprise Performance Reporting Cloud Service (EPRCS) Training

$
0
0

Oracle Enterprise Performance Reporting Cloud Service (EPRCS) which is now called Narrative Reporting is an Oracle Cloud solution for management and narrative reporting. It provides a secure, collaborative and process driven approach for Defining, Authoring, Reviewing and Publishing financial and management report packages.

{tab Course Contents | orange}

{tab-l1 Day 1 | orange}

REPORTING PROCESS KEY ISSUES

TYPES OF REPORTS

EPRCS OVERVIEW

Combine Data & Narrative
Collaborate Securely
Confidently Report

EPRCS FEATURES

USERS AND ROLES

SECURITY

INTEGRATIONS

CREATING REPORT PACKAGE

Describe report package and its components
Identify report package design considerations
Describe development phases, roles of users and actions that can be performed
Static and Reference Variables
Reference Doclets
Publishing Report Packages

{tab-l1 Day 2 | green}

SMARTVIEW OF EPRCS

Install and configure Smart View and EPM Cloud extensions
Establish connection to EPRCS and Data source
Describe performance reporting processes supported in Smart View
Identify actions supported only in Smart View
Static and Reference Variables in SmartView
SmartView excel as Reference Doclet in Report Package
Server Side Refresh

CREATING MANAGEMENT REPORT

Describe management reporting and key differentiating benefits
Create and edit data source connections
Design report inserting a grid and create formulas and select members
Design report inserting a text box and use text functions to display information
Design report inserting a chart
Management Report as Reference Doclet in Repor Package

{tab-l1 Day 3 | red}

DEFINING REPORT PACKAGE WORK FLOW PROCESS

Defining Phases
Author Phase
Review Phase
Signoff Phase


WORKING WITH SAMPLE AND CUSTOM APPLICATIONS

Sample Application
Custom Application
Dimensions and data loads
Granting Access

AUDIT PROCESS

MIGRATING ARTIFACTS

USING FILE TRANSFER UTILITY

PERFORMING BACKUP AND RESTORE

{tab-l1 Day 4 | blue}

DISCLOSURE MANAGEMENT

Describe XBRL use cases that EPRCS supports
Design best approach to Disclosure Management report creation based on requirements
Install and configure Disclosure Management
Working with Master Document and Doclets
Disclosure Management mapping Tool
Mapping Disclosure management reports in EPRCS
Registering XBRL Taxonomies
Validating and generating XBRL instances
Publish report in Word, PDF, EDGAR HTML, XBRL, & iXBRL formats

Rollover Disclosure Management Report

QUESTIONS & ANSWERS

 

{/tabs}
{tab Enroll | grey}

 
 
 
 
 


{tab Training Hours | red}

Start Date: 22nd February 2020

Training Schedule: 22, 23, 29 Feb & 01st Mar 2020

Timing: 12:00 NOON GMT | 07:00AM EST | 4:00AM PST | 6:00AM CST | 5:00AM MST | 5:30PM IST  | 01:00PM GMT+1

This training will run for 4 days over weekends

{/tabs}
{jcomments off}

Create Mass Legal Employer Change in Oracle HCM Cloud Application

$
0
0

Introduction

In one of the previous article (link here) we have seen how to perform mass update in Oracle HCM Cloud Application, but that article was written 3 years ago and a lot of things have changed since then.

In the new release (Release 13 19D) we have multiple options when we try to perform a Mass Update, they are:

  1. Manage Mass Updates
  2. Create Mass Assignment Change
  3. Create Mass Legal Employer Change

In this post here we would try to demonstrate “Create Mass Legal Employer Change” functionality.

Worked Example

As a first step we would need to login to the application with appropriate credentials (Admin Login most preferably) and select “Mass Update” option

Navigation: Navigator->My Client Groups->Mass Updates

Once we click on the link we will get to the following screen

 

Next, we need to click on “Create Mass Legal Employer Change” option (highlighted above). Once we are on the new page we would need to populate certain Basic Details (for this example we would use following values)

Basic Details

Attribute Name

Attribute Value

*Name

Demo Mass Legal Employer Change

Description

Performing a Mass Legal Employer Change for Demonstration Purpose

*Effective Date

01/24/2020

Action Reason

09 Company Transfer

*Destination Legal Employer

UK Legal Entity

Exclude Future Terminations

No

 

When we click on the next option we would need to choose the population.

When we click on the next tab we (Train stop name is “Changes”) we would need to choose the changes we want to make.

Assignment Changes

Attribute Name

Attribute Value

*Source Assignment Status

Inactive – Payroll Eligible

Business Unit

UK Business Unit

Department

Commercial Sales UK

Location

London

Union Member

 

Union

 

*Destination Assignment Status

Active – Payroll Eligible

Building

 

Floor

 

Bargaining Unit

 

Collective Agreement

 

 

Additional Changes

Attribute Name

Attribute Value

Move Performance Goals and Documents

No

Payroll Definition

UK Monthly Payroll

Copy Salary

No

Tax Reporting Unit

UK Legal Entity

Once populated the screen would appear as below:

A click on “Next” will take us to the “Review” page

Now, when we click on “Submit” we would get an information message stating that a ESS job is being submitted.

We, will now quickly look at the ESS Job and check the results.

 

Verification

If we look at the log file we can find the details.

Now, we will also quickly have a look at one record (say “Santino Abate”)

Also if we check the “Assignment History” we should be able to see that the previous assignment record of the employee.

 

Summary

So this is how we can perform “Mass Legal Employer Change” transaction. We have seen that the process is simplified and follows a guided path and makes the journey simpler for the end user.

With this I have come to the end of the article and I hope this was a good read.

Thanks all for your time and have a good day ahead.

Embedding a Parameterised BI Report within a Dashboard in Oracle HCM Cloud Application

$
0
0

Introduction

In one of the previous article (link here) we have seen how to embed a BI Publisher Report in a Dashboard, but there we did not mapped the BI Report parameter.

In this post we would try to associate a parameterised BI Report (Based on SQL Data Source) within a Dashboard.

So, without much delay let-us get started.

Worked Example

As a first step we would either have to create a parameterised BI Report or use an existing one.

 

In the next step we would need to create a “Dashboard Prompt”.

Navigation is: Navigation: Navigator -> Tools -> Reports and Analytics -> BI Catalog->New Dashboard Prompt

One point to note here is that the name of the Dashboard Prompt (the component name) should be same as that of the BI Report parameter name.

 

Now we have both our components namely “BI Report” and the “Dashboard Prompt” which will be required to build the dashboard.

So, we will proceed with building the custom dashboard.

Navigation: Navigator -> Tools -> Reports and Analytics -> BI Catalog->New

Once we click on the “Dashboard” option a New Page will open “New Dashboard” which would ask you for some details like Name, Description, Location ,Content, etc. For this example, we would populate the following details

Attribute Prompt

Attribute Value

Name

Custom Dashboard with Embedded BI Report

Description

Custom Dashboard created to demonstrate how to Embed a BI Report

Location

/Shared Folders/Human Capital Management/ Dashboards

Content

Add content now

 

Once we drop both the components “PersonNumber” Dashboard prompt and “Employee LE-BU-Department Report” the dashboard will look as below:

 

Now the setup is complete.

As a final step we would try to run the dashboard and verify results.

Verification

I hope you guys have made a note that we have made “Person Number” Dashboard prompt as a Non-Mandatory one ( “Required User Input” flag is unchecked) and also we have defaulted it to a specific value as “541”. 

Here we will check for three scenarios namely:

  1. Not providing any input (that is runs with default value as 541)
  2. Removing all input (Person Number as Blank)
  3. Providing any person number 

Running Dashboard without input (Default Value)

If we open the dashboard, then we will see that the person number field is having a default value as “541” and if we click on apply we see following results

 

Running Dashboard by removing all input (Person Number as Blank)

If we now remove all inputs and run the dashboard we will see following results:

 

Running Dashboard by providing a valid Person Number (Other than default value)

If we pass any other person number apart from the default value 541 we will get results for that person number. Say, if we pass “1013” we will get results for person number “1013” as shown below:

 

Summary

So, this is how we can embed a parameterised BI Report in a Dashboard.

Hope you guys were able to grasp the concept and will be able to utilise this.

Thanks all for your time, have a nice day ahead. 


ANOVER~1

$
0
0

Introduction

In one of the previous example (link here ) we have learnt how to “ Load Data into Oracle HCM Cloud Using Inbound Interface Delivery Option”.

In this post we will try to learn about “ObfuscateSwedishWorkerAutomated” which is a delivered Inbound Interface HCM Extract in Oracle Fusion HCM Cloud Application.

We can navigate to Navigator->My Client Groups->Data Exchange->Manage Extract Definitions and then add filter value as “Inbound Interface” under type and it will display all available inbound interface available in the environment.

The purpose of this interface is to completely obfuscate (mask) worker related data from the system for all the workers who have been terminated 7 years of before the system date.

We will see that this extract has a parameter “Load Automatically” 

 

The delivered interface has the following filter criteria

Filter Criteria

((pps.actual_termination_date<=TRUNC(ADD_MONTHS(SYSDATE, -84)))

    AND (pps.legislation_code='SE'))

 








We could clearly see that there is a Extract Delivery Option defined details of the same are as follows:

Extract Delivery Options

Start Date

1/1/00

End Date

12/31/12

*Delivery Options

Worker

*Output Type

Text

Report

/Custom/HCM/GDPR/ObfuscateSwedishWorker.xdo

Template Name

SwedishWorkerLayout

*Output Name

Worker

*Delivery Type

Inbound Interface

Required

Yes

Bursting Node

 

Additional Details: Worker

Encryption Mode

None

Override File Extension

.dat

Run Time File Name

Worker.dat

Integration Name

Worker

Integration Type

Data Loader

Integration Parameters

 

Key

 

Locale

 

Timezone

 

Compress

Yes – Compress First

Compressed Delivery Group

Worker.zip

  

Short Name

EXT300000177775470

Report Category

ObfuscateSwedishWorkerAutomated

Description

Kicking of automatic data  loader to mask the terminated Sweden worker.

 

 

Now we will try to run the “HCM Extract” with “Load Äutomatically” parameter as ‘N’and check results

 

We see that there is no Data file generated in this case ( We could not find a Extract Delivery as Worker here) and this may be because of the filter condition.

We will change the filter condition now to below value:

Filter Criteria

((pps.actual_termination_date<=TRUNC(ADD_MONTHS(SYSDATE, -1)))

    AND (pps.legislation_code='SE'))

 

 

We will re-run the “HCM Extract” again

 

We will now check the results:

 

And when we open the data file we can see the data records:

 

From the above example we can clearly see that there is a record having person number as 553 (personid 300000049094876”)

Now we will check for the person record first and verify whether the details are visible in UI

Next we will try to modify the HCM Extract Data Group Filter Criteria (add condition that it should only fetch record for personid 300000049094876)

 

Now we will run the “HCM Extract” with “Load Automatically” as “Y”

And now when we check in person management we can see that the details for Person# 553 is masked

Summary

So this is how one can mask sensitive data , while this delivered extract has specific filter criteria to choose employees who got terminated 7 years (84 months) or earlier and only applicable for Sweden legislation but this could be applied to other legislations too and with a different termination date.

And with this , I have come to an end of this article, hope this was a good read.

Creating Custom Transaction Rules under HCM Experience Design Studio Feature in Oracle Fusion HCM

$
0
0

Introduction

The HCM Transaction Configurator is renamed as HCM Experience Design Studio and includes the renamed and enhanced Transaction Design Studio. Using the Transaction Design Studio, you create rules to configure transactions and pages. You can change how sections and fields are displayed, based on the user's role and the employee's business unit or legal employer. It's just a lot simpler now.

One very important point to note here is that “HCM Experience Design Studio” rules would apply only on responsive pages and not on classic ones (I understand might seem like a little incorrect but the only supporting logic could be that one probably would not be using Classic and Responsive pages both at same time, so if you/your organization decide to go the responsive way it is still ok)

Using HCM Experience Design Studio we can configure various rules. In the latest release 19D there are more newly designed , responsive actions and pages available for configuration. Typical changes allowed include:

  1. Control the visibility of regions and sections on the page.
  2. Control the visibility for attributes within a page, region, or a section.
  3. Change the required status of optional attributes.
  4. Control the availability of the questionnaire page for actions that use the guided process design.

One can create one or more rules for any page available in the Transaction Design Studio. Parameters such as role, business unit, and legal employer determine the roles subject to the rule and the set of employees rules are applied to. All parameters are optional.

The delivered Human Capital Management Application Administrator inherits the privilege Access HCM Transaction Configurator (HRC_ACCESS_HCM_TRANSACTION_CONFIGURATOR) to access the Transaction Design Studio (TDS) in the HCM Experience Design Studio. One would need to follow the steps to enable “HCM Experience Design Studio”

Navigation:
1. Enable Sand box
2. Navigator -> Configuration -> Appearance -> "Default Home Page Layout" set to "News Feed" -> Apply
3. Check the quick actions and Show more is enabled. Check "HCM Experience Design Studio" under Show more
4. Publish the sand box.

 

Worked Out Example

In order to demonstrate “HCM Experience Design Studio” feature we would use “Hire an Employee” action and try to showcase how can we make a particular section/field mandatory.

As a first step we would do a normal hire of an employee and in second step make some fields mandatory and perform the same action again.

So we would follow the below steps:

  1. Hire an Employee (Prior to Rule Configuration)
  2. Configure a New Rule under HCM Experience Design Studio to make some fields mandatory (publish the sandbox)
  3. Hire an Employee (Post Rule Configuration)

Hire an Employee (Prior Rule Configuration)

We would initiate a new-hire using responsive page

We would choose all the sections (we wish to include during “Hire” Action)

We could see clearly that “Date of Birth” is not a mandatory field.

New Rule Configuration (HCM Experience Design Studio)

Now, we will configure a new “HCM Experience Design Studio” rule (say we name it as “Make DOB Mandatory for US1 Legal Entity Legal Employer”)

 

Rule

Field Name

Value

*Name

Make DOB Mandatory for US1 Legal Entity Legal Employer

*Description

Rule Configured to Make DOB Mandatory for US1 Legal Entity

Role Name

All

Legal Employer

US1 Legal Entity

Country

 

Business Unit

 

Action

Hire

Active

Yes

Show or Hide Regions

Do not make any changes

Page Attributes

Do not make any changes

Available Attributes

Change Value to Personal Details

Date of Birth

Required (yes), Visible (yes)

 

When we capture all details in application the rule would appear as below:

As a next step we will publish the Sandbox.

 

Hire an Employee (Post Rule Configuration) Responsive UI

Now we will again try to hire an employee within “US1 Legal Entity” and check if “Date of Birth” field is mandatory.

 

Hire an Employee (Post Rule Configuration) Classic UI

One important point to note here is that “HCM Experience Design Studio” only allows changes on Responsive UI and not on Classic UI. We would verify the same now.

 

Summary

From the above screenshot we can see that “Date of Birth” page is not a mandatory field in classic UI but not in responsive UI.

While this is definitely as issue as we would expect a consistent behaviour across pages. Also one other expectation is that once we switch “Responsive Pages” one should not be able to access “Classic ones” and that probably would solve this issue (but I would hope Oracle would take due action at the earliest), but for now from the new rule feature we can infer few things that it allows us a simple interface to devise new rules based on legal employer, actions, roles, business-unit and other attributes and it is a very good feature using which one can avoid making use of complicated “EL Expression”.

And with this, I have come to the end of this post.

Hope it is a good read and you guys were able to make some sense out of it.

That’s it from my side for now, Thanks all for your time , have a great day ahead.

An Overview of Master Report - Absence Data Integrity Detection

$
0
0

Introduction

In a typical organization where Oracle Absence Management has been used there is a possibility of having data issues. While there are multiple ways of identifying them followed by subsequent data correction activities we also have some diagnostic tests (read this link here to understand about Application Diagnostic Administrator) available which can be used for proactive monitoring . One of the most important ones which can be used to identify any data issues related to absence module being “Master Report - Absence Data Integrity Detection”.

In this post we will try to get ourselves acquainted with the same.

Some basic details about the Diagnostic Test are as below:

Display Name

Master Report - Absence Data Integrity Detection

Description

This process shows the data integrity violations.

Test Name

Master Report - Absence Data Integrity Detection

Test Type

D

Sensitivity

L

Usage

 

Version

11.13.19.10.0

 




There are various parameters which can be passed when running the test details below:

Display Name

Business Unit

From Date - Required

Legislative Data Group

Legal Employer

Person Number

Test Code

To Date - Required

Parameter Name

buId

fromDate

ldgId

leId

personNumber

testCode

toDate

Description

This field holds business_unit

This field holds the from date. This field is used as a end date range for the report.

This field holds legislative_data_group.

This field holds legal_employer.

This field holds person number. You can either enter single person number or comma separated multiple person numbers or leave it null to run it for whole population.

Test code field. Leave it blank to run all tests. A test code is required if running for whole population.

This field holds the to date. This field is used as a start date range for the report.

In/Output

I

I

I

I

I

I

I

Required

false

true

false

false

false

false

true

Secured

false

false

false

false

false

false

false

Type

java.lang.String

Java.util.date

java.lang.String

java.lang.String

java.lang.String

java.lang.String

Java.util.date

Default Value

ALL_BU

 

ALL_LDG

ALL_LE

 

ALL_TESTS

 

Active

Y

Y

Y

Y

Y

Y

Y



While every other parameter details and its value would very from one environment to another the value of “Test Code” would remain same across environments.

The different values along with their description is mentioned below for ready reference:

Test Code

Test Code Value

Test Name

Description

ALL_TESTS

ALL_TESTS

TXN02

Absences - Update Absence - Period_Of_Service_Id

TXN02.Period_of_service null for absences.

This test retrieves absences having value of period_of_service_id as null

FF01

Absences - Update Formula_id in Entitlement Band

FF01.Invalid Formula Id (0)

This test retrieves entitlement bands with formula_id having value 0

HR05E

Absences - Delete Enrollments of Canceled Work Relationship

HR05E.Enrollment data is not deleted for canceled work relationship

This test retrieves orphan enrollments whose work-relationship has been cancelled

HR05A

Absences - Delete Absences of Canceled Work Relationship

HR05A.Absences are not deleted for canceled work relationship

This test retrieves orphan absences whose work-relationship has been cancelled

ACRL02

Absences - Delete Orphan ADJOTH/INIT entries

ACRL02.Orphan ADJ/INIT entries created when deleting enrollments

This test retrieves orphan "Other adjustments" and INIT entries in accrual table

ACRL07

Absences - Delete Orphan COVREX entries

ACRL07.Multiple Carryover expiration entries

This test retrieves orphan "COVREX" entries in accrual table

TXN05

Absences - Delete Processing Data of Withdrawn Absences

TXN05.Withdrawn absences having processing data

This test retrieves absences which have been withdrawn but still have processing data

WFM04

Absences - Delete Orphan Time Card Entries

WFM04.Timecard includes an absence record that does not exists

This test retrieves orphan time card entries with "SAVED" status

PAY01AB

Absences - Delete Calculation Card Entries - Absences

PAY01AB.Absence deleted, calculation card not removed

This test retrieves orphan calculation card entries for deleted/withdrawn absences

ACRL08

Absences - Delete Orphan FORFT entries

ACRL08.Orphan FORFT entries created when running accruals

This test retrieves orphan Forfeiture entries in accrual table

HR03E

Absences - Update Enrollments for Termination

HR03E.Absences Integration with Termination - Enrollments

This test retrieves orphan enrollments whose work-relationship has been terminated

PAY01AC

Absences - Delete Calculation Card Entries - Accruals

PAY01AC.Accruals deleted, calculation card not removed

This test retrieves orphan calculation card entries for deleted accruals

WSCH01

Absences - Update Assignment Number for Work Schedule

WSCH01.Incorrect Assignment number (schedule)

This test retrieves the schedules that have incorrect ASSIGNMENT_NUM field

ENRL08

Absences - Delete Enrollments with end date prior to start date

ENRL08.Enrollment incorrectly end dated before start date

This test retrieves the enrollments which have start date one day after end date

TXN13

Absences - Delete Absences for end dated type

TXN13.Absence present after type end date

This test retrieves the absences that are present after plan end date

 

Running the Diagnostic Test

As a last step we will run the diagnostic test and check results

We can see the results if we click on “Report”

 

An Introduction of Employment Diagnostic Master - Report

$
0
0

Introduction

One of the most robust yet the least known, least frequently used and under-utilized delivered diagnostic test available in Oracle HCM Cloud Application is “Employment Diagnostic Master – Report”.

This diagnostic test is a very useful test and can help us in finding data issues in our HCM Cloud Environment.

In this post we would like to run “Employment Diagnostic Master – Report” and understand the output.

Running “Employment Diagnostic Master – Report”

As a first step one should login to application with appropriate credentials (user should have “Application Diagnostic Administrator” role) and then navigate to “Run Diagnostic Tests” as shown

Once we click on “Run Diagnostic Tests” a new page will open where we need to search for test name 

We need to select the checkbox beside the Test Name and click on “Add to Run”. Once done the test will start appearing in the top right hand section (“Choose Tests to Run and Supply Inputs”).

From the above screenshot we could see that the “Input Values” required to run the test are already validation. The available input for this test by the way is “Person Number”. If we provide a specific person number then the test will be executed for that specific employee and if we leave the field blank then it will run for all employees. For this execution we will run this test for all population.

Once we click on “Run” the test will be submitted.

We can see the results in “Diagnostic Test Run Status” section.

If we click on the “Report” tab we could see the results

So we can clearly see the various diagnostic test which can be run to correct records along with the impact. I have tried to summarize the same in the table below:





Issue

Diagnostic Test for Details

Action-Plan for resolution

Impact

Working Hour Pattern Record not starting on Assignment Start Date

Employment Diagnostic Auto Correct (in Report mode)

Execute "Employment Diagnostic Auto Correct" in Commit mode

Will hamper certain functionalities of employment and other modules

Assignment and Work Term Status Mismatch

Employment Diagnostic Auto Correct (in Report mode)

Execute "Employment Diagnostic Auto Correct" in Commit mode 

Will hamper certain functionalities of employment

Set of Books Id Null 

Employment Diagnostic Auto Correct (in Report mode)

Execute "Employment Diagnostic Auto Correct" in Commit mode

Will hamper certain functionalities of employment and other modules

Assignments with ID_FLEX_NUM Issues

Employment Diagnostic Auto Correct (in Report mode)

Execute "Employment Diagnostic Auto Correct" in Commit mode

Will hamper certain functionalities of employment or other modules

Work Term Records Incorrectly Populated for Two Tier Employment Mode

Employment Diagnostic Auto Correct (in Report mode)

Execute "Employment Diagnostic Auto Correct" in Commit mode 

Will hamper certain functionalities of employment

Out Of Sync Primary Flags

Employment Diagnostic Auto Correct (in Report mode)

Execute "Employment Diagnostic Auto Correct" in Commit mode 

Will hamper certain functionalities of employment

Invalid Primary Flags

Invalid Primary Flags - Report

Execute "Invalid Primary Flags - Correct" in commit mode

Will hamper certain functionalities of employment

Assignment Child Records without Corresponding Assignment Records

Assignment Child Records without Corresponding Assignment Records - Report

Follow the action plan mentioned in the detailed report

Will hamper certain functionalities of employment

Incorrect Assignment or Terms Numbers

Incorrect Assignment or Terms Numbers - Report

Follow the action plan mentioned in the detailed report

This is not a corruption but it can hamper functionality if the "custom" Assignment/Term Numbers clash with the system generated Assignment/Terms Numbers yet to be created. This should be corrected only if customer desires to do so or they face issues.

Assignment Name and Job Name Mismatch 

Assignment Name and Job Name Mismatch - Report

Follow the action plan mentioned in the detailed report

This is not an issue unless the user wants the assignment name to change automatically to match the new job name when the job of the assignment is changed. If custom assignment name is desired then this report should be ignored.

 

As suggested in the above report we will run one of the other “Diagnostic Test” namely “Employment Diagnostic Auto Correct” in “Commit” mode and once we do so if we re-run the “Employment Diagnostic Master – Report” again we can see that many records have been corrected.

The sample output of the second run of “Employment Diagnostic Master – Report” after running “Employment Diagnostic Auto Correct” in “Commit” mode is shared for ready reference:

Summary

To conclude, we can say that we can use the “Employment Diagnostic Master – Report” and resolve data issues from the application.

We can run the individual reports and resolve the issues.

And with this I have come to the end of the post. Hope this was a good read and you guys would make use of the same.

Defaulting Business Attribute Using Autocomplete Rules in Oracle HCM Cloud Application

$
0
0

Introduction

One of the most sought after feature by an Oracle HCM Cloud Consultant since the inception of Oracle Fusion has been “Defaulting specific business Attribute field” either with a constant value or via some derived logic based on the value of other fields. While a part of it was possible by making use of Descriptive Flexfields (DFF) and Extensive Flexfields (EFF) the same has now been extended to other fields too, thanks to “AutoComplete Rules” feature which generally available starting release 20A.

In this example, we will try to demonstrate how to default the “Home Email” / “Work Email” to a constant value using the same feature.

So, without much ado let’s get started.

Worked Out Example

As a first step we should ensure that we login to the application with a user having appropriate credentials (user having access to create Sandbox) and then we would need to create a sandbox.

Navigation is : Login To Application -> Navigator -> Configuration -> Sandbox

 

Once we click on Sandbox a new page will open where we can choose the different tools and create a sandbox (we will name it as “AH_AutoCompletionRules)

Next we will need to navigate to Home Page and Click on “HCM Experience Design Studio”

Once we click on the link (highlighted in yellow in above screen-shot)  new page will open and we should choose the “Autocomplete Rules” . There are different actions against which we can choose the AutoComplete Rules and they would appear on the drop-down list on the work area

 

Also there are different types of rules which can be created namely:

  1. Add Business Object Defaulting Rule
  2. Add Business Object Validation Rule
  3. Add Business Object Field Validation Rules
  4. Add Business Object Field Modification Rules

 

 

Creating Business Object Defaulting Rule

For this example we would choose “Person Email” and “Add Business Object Defaulting Rule”. Once we click on those a new page will appear. We would need to populate the following fields 

Rule Information

Name

Assign a default Email Address to All Person Records

Description

Assign a default Email Address to All Person Records

Active

Checked

Rule Logic

{

IF

(

  (f) Person Email. Type IN (f) All

)

 {

   IF

     (

       (f) Person Email. Type IN (f) Home Email

     )

        { 

           Person Email. Email = (f) person-home-email@home_email.com

        }

   }

{

   IF

     (

       (f) Person Email. Type IN (f) Work Email

     )

        { 

           Person Email. Email = (f) person-work-email@work_email.com

        }

   }

}  

 

 

And this completes the rule creation part. 

Performing a “Hire An Employee” Action

In the next step, we will create a new employee and check whether the email address gets defaulted.

After populating the “When and Why” and “Personal Details” section when we navigate to “Communication Info” section we can see the below page

 If we select “Work Email” we can see the email value gets defaulted.

 

Similarly, if we select “Home Email” then there would be a defaulting action too

Summary

So, this is how we can make use of “Autocomplete Rules” to default values while performing different transactions within Oracle Fusion HCM Application. With this I have come to the end of this article and hope this was a good read. Thanks all for your time and have a great day ahead.

Viewing all 930 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>