Define Fast Formula
You need to define a fast formula to calculate the seniority based on absence.
- On the Home page, click .
- In the Search Results area, click the Create icon.
- In the Create Fast Formula dialog box, enter the following details.
Field Value Formula name Service Date Deduction for Absence Type Employment Seniority Date Adjustment Description Reduce seniority based on leave of absence Legislative Data Group GBI United States LDG Effective start date 1/1/20 - Click Continue.
- Enter the following fast formula logic in the Formula Text
box.
default for SENIORITY_ADJUST_COMMENT is 'no adjustment' default for SENIORITY_ADJUST_IN_DAYS is 0 default for SENIORITY_ADJUST_IN_HOURS is 0 default for CUMULATIVE_FLAG is 'N' default for SENIORITY_BASIS is 'ORA_PER_SNDT_DAYS' default for PREVIOUS_SENIORITY_EXIT_DATE is '1900/01/01 00:00:00' (DATE) default for BASE_SENIORITY_DATE is '1900/01/01 00:00:00' (DATE) INPUTS ARE EFFECTIVE_START_DATE (DATE), EFFECTIVE_END_DATE (DATE), SENIORITY_DATE_CODE (TEXT), SENIORITY_BASIS (TEXT), CUMULATIVE_FLAG (TEXT), BASE_SENIORITY_DATE (DATE), PREVIOUS_SENIORITY_EXIT_DATE (DATE), SENIORITY_TRIGGERING_FIELD_CODE (TEXT), ACTION_CODE (TEXT), CHANGED_VALUE_NEW (TEXT), CHANGED_VALUE_OLD (TEXT), TOTAL_SENIORITY_HOURS (NUMBER), PREVIOUS_TOTAL_SENIORITY_HOURS (NUMBER), SENIORITY_DATE (DATE), LEGAL_EMPLOYER_ID (NUMBER), LEGAL_EMPLOYER_NAME (TEXT), ENTERPRISE_ID (NUMBER), ENTERPRISE_NAME (TEXT), BARGAINING_UNIT_CODE (TEXT), BARGAINING_UNIT_NAME (TEXT), GRADE_ID (NUMBER), GRADE_NAME (TEXT), GRADE_STEP_ID (NUMBER), GRADE_STEP_NAME (TEXT), JOB_ID (NUMBER), JOB_NAME (TEXT), POSITION_ID (NUMBER), POSITION_NAME (TEXT), UNION_ID (NUMBER), UNION_NAME (TEXT), LOCATION_ID (NUMBER), LOCATION_NAME (TEXT), DEPARTMENT_ID (NUMBER), DEPARTMENT_NAME (TEXT), COLLECTIVE_AGREEMENT_ID (NUMBER), COLLECTIVE_AGREEMENT_NAME (TEXT) /*CALL_FORMULA ('SENIORITY_SUB_TEST', 'Test by 1024' > 'COMMENT' ,SENIORITY_ADJUST_COMMENT < 'RETURN_COMMENT' DEFAULT 'Test by 1024 default' )*/ SENIORITY_ADJUST_IN_HOURS = 0 EFF_DATE = EFFECTIVE_START_DATE v_Total_Leaves= 0 v_PersonId=GET_CONTEXT(PERSON_ID, 9999) v_Absence_Type_Name='<Name of the absence type you created>' v_start_date = to_date('1/1/2024','DD/MM/YYYY') v_end_date = to_date('31/12/2024','DD/MM/YYYY') v_Seniority_Reduction=0 v_Comments='Nothing' v_Total_Leaves=GET_ABSENCE_DAYS_PER_TYPE(v_Absence_Type_Name,v_start_date,v_end_date) IF v_Total_Leaves >10 THEN ( v_Seniority_Reduction = 10 - v_Total_Leaves ) ELSE ( v_Seniority_Reduction=0 ) v_Comments= 'Reducing Seniority by '||to_char(v_Seniority_Reduction)||' Days as Total Leaves='||to_char(v_Total_Leaves)||' Days' SENIORITY_ADJUST_IN_DAYS = v_Seniority_Reduction SENIORITY_ADJUST_COMMENT =v_Comments return EFF_DATE, SENIORITY_ADJUST_COMMENT, SENIORITY_ADJUST_IN_DAYS, SENIORITY_ADJUST_IN_HOURS
- Click Submit, and then click Compile to check whether the fast formula is valid.
- Click Refresh at intervals until the Compile Status shows a tick mark