Wednesday, 28 August 2019

Simple Steps to Create an HCM Extract.

Steps to Create an HCM  Extract :

  1. Login to HCM
  2. Go to data exchange. 
  3. In Tasks (Right menu), select Manage Extract Definition. 
  4. Select create ( + )
  5. Give a name to Extract.
  6. Give Start Date value. 01-Jan-2000  
  7. The Start date is an effective start date that applies to all date-effective interactions in the current session.
  8. Select extract type
    • HR Archive is for getting assignment and person details. 
    • Payroll interface is for getting payroll related details.
  9. Create Data Group
    • Give Group Name. 
    • Give Display  Name. 
    • Select User Entity based on the data you want to extract.  
      •  Example :
        •  PER_EXT_SEC_ASSIGNMENT_UE     PER_EXT_EMAIL_ADDRESSES_UE
    • set Threading Action Type = Object Action
    • Select Threading Database Item - It will be the unique value of the Main table that will be used to join or get the values.
      •   Example : Extract Assignment ID
  10. Create a Record
    • Give a Record Name.
    • Give a Tag name - This value will be a XML tag (Parent Tag) value under which the attribute values will be coming.
    • Select Type as Detail Record.
    • Process Type as Fast Formula .
  11. Create Attributes - Individual data elements. 
    • Give a Name Value
    • Give a XML tag value. 
    • Short code 
    • Output label value -- All these four values can be same. 
    • Select type as DBI group. 
    • Select the value 
      •   Example :  Extract Assignment ID , Person Number , Person Name , etc. 
      • Set KEy attribute for primary unique value. 
    • Save. 
  12. We can add the conditions at DG level to filter the data. 
  13. Create Data group relationship under Data Groups.
    •   Select the child DG.
    •   select create option under connect DG.
    •   Select the parent DG.
    •   Select the Parent DBI Item  - Parent joining value.
      •     Example - Extract Assignment Person ID
    •   Select chile DBI - Child Joining element value
      •     Example - Extract E-Mail Person ID
    • We can add the filter at the group level or attribute level. 
  14. Go to extract delivery
    • Select add
    • Provide a name for delivery option.
    • Select an output type 
      •   Ex : Text for a CSV and we need to attach a template. 
      •    Data for XML out put and we dont need to attach a template. 
    • Give an output file name. 
    • Select delivery type as None.
    • Save the changes. 
  15. Go to extract execution tree Compile all formulas.
    • Refreh and make sure all formulas are compiled. 
  16. Submit Extract to run the extract. 

Tuesday, 27 August 2019

HCM Extract Issue Resolutions

  • Failure: Due to oracle.xdo.server.ReportException: oracle.xdo.servlet.CreateException: java.lang.SecurityException: Security violation: /Custom/Project/Entity/DemoATest.xdo, user: fusion_apps_hcm_ess_appid, permission: 192 
    • Solution 
      • Go to HCM Analytics
      • Go to the report path
      • Select the report
      • Click More options and select permissions. 
      • Add BI Consumer Role
      • Select Custom Permission and Add all the permission. 

  • Dummy File Deleted
    • Solution :
      • There may be multiple issues. 
        • Check and make sure data model is attached the report.  Use Global Payroll Data model --- Dont miss this
          • Shared Folders/Human Capital Management/Payroll/Data Models/globalReportsDataModel
        • Check proper output format is selected 
  • The report cannot be rendered because of an error, please contact the administrator. java.lang.NullPointerException
    • Solution :
      • After you upload the template to a report, select view report option . 
      • If there is no error then it will display as Report Compiled  Otherwise it will display the above mentioned error. 
      • Main reason would be the structure of the template. 
      • We should always follow the below format while creating the template
<LEVEL>
G_1
<POSITION>
< LENGTH>
<FORMAT>
<PAD>
<DATA>
<COMMENTS>
<NEW RECORD>
G_1
<DISPLAY CONDITION>
COUNT(PersonDetails) > 0



<LEVEL>
G_2
<NEW RECORD>
G_2
<DISPLAY CONDITION>
(PersonDetails/PersonNumber IS NOT NULL)
<MAXIUMUM LENGTH>
<FORMAT>
<DATA>
<COMMENTS>
  • The template is not mandatory if output type = Data only, else for all other output types, it is mandatory.
  • For Output Type XML and PDF you should mention the template name.
  • Delivery file output type i.e. PDF, CSV, XML, DOC.
    • The value you choose should be compatible with the Template/Layout you provided in delivery option.
  • Choose Output Type as Text when the expected output format is text or CSV or delimited file.
  • Note
    • If the expected output format is PDF / HTML / DOC, then RTF template should have been created in BIP. 
    • If the expected output format is text / CSV / delimited file, then eText template should have been created in BIP.
Note:  Use following steps to add custom filtering at DG level. 

  • Select the DG
  • Got to Data Group Filter Criteria
  • Select Edit Option. 
  • Go to advanced option and update the SQL.
    • Sample SQL :

((pay_report_utils.get_parameter_value_date('EFFECTIVE_DATE') BETWEEN abspl.effective_start_date AND abspl.effective_end_date)
    AND accrual.accrual_period = (select MAX(fusacc.ACCRUAL_PERIOD) from fusion.anc_per_accrual_entries fusacc where fusacc.person_id = accrual.person_id
AND accrual.PLAN_ID = fusacc.PLAN_ID
AND fusacc.ACCRUAL_PERIOD < pay_report_utils.get_parameter_value_date('EFFECTIVE_DATE')
group by fusacc.person_id,fusacc.PLAN_ID))


pay_report_utils.get_parameter_value_date  :  To get the Parameters. 
Use Fusion.Table Name to use the table. 

Friday, 23 August 2019

SOACS Instance Auto Purge Configuration.


  • Go to SOA-INFRA -> SOA Administration -> Auto Purge
  • Auto Purge Job Name -SOA Flow Purge Job 1 and Enable it. 
  • Provide Job Schedule details as per below .
    • Run every Day at Midnight
      • FREQ=DAILY; BYHOUR=00;
    • Run every weekday at midnight
      • FREQ=DAILY; BYDAY=MON,TUE,WED,THU,FRI; BYHOUR=00;
    • Run every weekend at midnight and 05:00AM
      • FREQ=DAILY; BYDAY=SAT,SUN; BYHOUR=00,05;
    • Run every weekday 30 minutes past midnight
      • FREQ=DAILY; BYDAY=MON,TUE,WED,THU,FRI; BYHOUR=00; BYMINUTE=30;
    • Run every weekend 30 minutes past midnight and 5AM
      • FREQ=DAILY; BYDAY=SAT,SUN; BYHOUR=00,05; BYMINUTE=30;
    • Run every friday at midnight
      • FREQ=DAILY; BYDAY=FRI; BYHOUR=0;
  • Purge Type -> Single
  • Retain Data ->  7 or 30 days. 
  • Batch Size