'INVALID_MSG......'

Hi All,
I have a bpel process with read adapter which reads the .txt input file,then transform activity and the output is given to the write adapter.
I deployed the process on to the server and dropped a txt file in the input directory.
The process read the file,but the file was rejected saying 'INVALID_MSG......'
any idea why does this happen
Thanks in adavnced.
Regards
Ashwini

Hi,
Can u please elaborate ur requirements and error message? R u using any XSD in the source side layout? may be Input file format is not the same as the input XSD format.
Thanks,
Saravana

Similar Messages

  • How to use the manually entered Hours/Days in the Duration field for BG_ABSENCE_DURATION

    Hi All,
    How to use the manually entered Hours/Days in the Duration field for BG_ABSENCE_DURATION fast formula?
    Requirement is to restrict employees for applying for leave more than the accrued balance. In SSHR, apply leave functionality, the employee enters the start date, end date and duration manually. The entered duration must be used in the fast formula to check against available balance.
    In the BG_ABSENCE_DURATION FF, I have a function to calculate the net accrual balance as on the calculation date.
    I want to add the logic as - If to_number(Duration) /*[manually entered value]*/ > net accrual balance then
    Duration = 'FAILED'
    invalid_msg = 'Error'
    return duration, invalid_msg
    Thanks!

    Hi,
    We have a standard functionality to override the duration calculation and you don't need to add a validation for the same. Please set the value of profile option HR: Absence Duration Auto Overwrite to Yes
    When you do this user will not have to enter the duration value manually. It will get auto calculated based on the duration calculation in BG_ABSENCE_DURATION when you click on the next button.
    For not allowing negative leaves to be applied, If you are on R12 then, this is a standard functionality and you need to set profile option HR Allow Absence Negative Balance to No
    If you are on 11i then refer Note: 268171.1: How Do You Stop Accrual Plans from Going Negative?
    Try and let me know in case you need further help.
    Thanks,
    Sanjay

  • How to use DFF value in BG_ABSENCE_DURATION Fast formula

    Hi All,
    I would like to know how can we use DFF values in BG_ABSENCE_DURATION fast formula.
    Can we pass them as input values?
    Also, when we use them as DATABASE ITEMS how does Fast Formula identifies them.
    For example I have created a DFF value HALF_DAY that can take either "YES" nor "NO".
    I tried to use that as input value but that didnt work, not sure if it is possible at all or not.
    I also tried to use that as Data Base ITEM, as follows:-
    IF (ABSENCES_HALF_DAY WAS DEFAULTED ) then
    duration = 'FAILED'
    invalid_msg = 'DFF not working'
    Any help will be much appreciated.
    Thanks,
    Avinash
    but i am getting following error when i access SSHR
    Formula BG_ABSENCE_DURATION: ORA-01403: no data found ORA-01403: no data found Cause: During the PL/SQL execution part, an Oracle error was detected. Action: Please refer to your system administrator.

    Thanks Vigneswar  and Avaneesh for your helpful comments,
    Actually I want to retrive the DFF value that I pass while applying the Leave Request and not that already stored in the data base. I checked and found that the query you have mentioned is retriving the data from base tables.
    select target.ATTRIBUTE6 -- Attrinute6 is database item ABSENCES_HALF_DAY+
    from    per_absence_attendances                target,+
    per_all_assignments_f                  ASSIGN+
    WHERE   sysdate BETWEEN ASSIGN.effective_start_date+
    AND ASSIGN.effective_end_date+
    AND    ASSIGN.assignment_id                  = 647--&B2+
    AND    ASSIGN.assignment_type                = 'E'+
    AND    target.person_id                      = ASSIGN.person_id+
    AND    target.absence_attendance_id  =+
    *(select max (absence_attendance_id)*
    from   per_absence_attendances+
    where  person_id   =  ASSIGN.person_id+
    and    date_start <=  sysdate+
    I have only added folloing lines In my BG_ABSENCE_DURATION FF
    DEFAULT FOR ABSENCES_HALF_DAY is 'XX'+
    if (1 = 1) then+
    duration = 'FAILED'+
    invalid_msg = 'DFF not working: '+ABSENCES_HALF_DAY+
    But evry time output is *"DFF not working : Yes"* no matter what the value I am passing while applying leave. This value "Yes" is stored in DFF attribute 6 for the test employee and I guess FF is retriving this value from DATABSE not from current transaction.
    Could you please help how to retrive run time data.
    Thanks,
    Avinash

  • Bg_absence_duration sql function not working in Self Services

    I Have SQl Function registered and used in formula BG_ABSENCE_DURATION, it is working fine in the professional forms, but in "Leave management" form in self services it gives error:
    PER_EMP_NUMBER not found at line 231 of bg_absence_duration Cause: a sql select statement obtained from application dictionary return no rows when executed.
    Edited by: Elrefai on May 29, 2013 10:11 PM

    Hi Jay,
    were you finally able to access DFF in BG_ABSENCE_DURATION , did the following piece of code worked ?
    IF ABS_INFORMATION_CATEGORY = 'CA'
    THEN
    (If ABS_INFORMATION3 = 'Half Day'
    THEN
    ( IF date_start = date_end THEN
    (deduct_days = 0.5
    days_between = days_between - deduct_days
    duration = to_char(days_between) return duration, invalid_msg
    ELSE
    ( duration = 'FAILED'
    invalid_msg = 'Half day leave can be applied only for a day'
    return duration, invalid_msg

  • Validation for absence duplicate

    Dear brothers,
    How can i validate the absence when the employee inserts it , like the employee inserted an absence from "01-jan-2012" to "05-jan-2012" ... and for any reason HRMS manager or he himself inserts again the same leave with same dates?
    The system is raising caution only now i want it to raise error and stops the user and not let him complete the insertion for the same dates absence.
    Any help please
    Thank you

    Hi,
    We had the same requirements and solved it by calling a package to check whether any Absence is overlapping with any another. So write the below pl/sql.Once done . Register this function and called the function from "BG_ABSENCE_DURATION" . Note: test it in Test instance before doing it in Production instance.
    ================================
    BG_ABSENCE_DURATION
    ================================
    l_lv_overlap = LV_OVERLAP_VALID(date_start,date_end)
    IF l_lv_overlap = 0 THEN
    duration = 'FAILED'
         invalid_msg = 'Your applied leave date overlaps with another leave date,please change the date and try again'
                   RETURN duration
                        ,invalid_msg
    ================================
    BG_ABSENCE_DURATION ENDS
    ================================
    ================================
    LV_OVERLAP_VALID FUNCTION
    ================================
    function xx_lv_overlap_valid(P_ASSIGNMENT_ID IN NUMBER,
    P_START_DATE IN DATE,
    P_DATE_END IN DATE)
    RETURN NUMBER
    IS
    V_VALID_FLAG NUMBER DEFAULT 9;
    V_OVERLAP_VAILD VARCHAR2(50) := 'XX';
    BEGIN
    BEGIN
    SELECT PAAT.NAME INTO V_OVERLAP_VAILD
    -- , PAA.DATE_START
    -- , PAA.DATE_END
    FROM PER_ABSENCE_ATTENDANCES PAA
    , PER_ABSENCE_ATTENDANCE_TYPES PAAT
    , PER_ALL_ASSIGNMENTS_F PAAF
    WHERE PAA.ABSENCE_ATTENDANCE_TYPE_ID = PAAT.ABSENCE_ATTENDANCE_TYPE_ID
    AND PAA.PERSON_ID = PAAF.PERSON_ID
    AND PAAF.ASSIGNMENT_ID = P_ASSIGNMENT_ID
    AND P_DATE_END BETWEEN PAAF.EFFECTIVE_START_DATE AND PAAF.EFFECTIVE_END_DATE
    AND (P_START_DATE <= PAA.DATE_END
    AND P_DATE_END >= PAA.DATE_START);
    Exception
    When NO_DATA_FOUND Then
    V_OVERLAP_VAILD := 'XX';
    END;
    IF V_OVERLAP_VAILD = 'XX' THEN
    V_VALID_FLAG := 1;
    -- If not overlapped
    ELSE
    V_VALID_FLAG := 0;
    -- if overlapped
    END IF;
    RETURN V_VALID_FLAG;
    END xx_lv_overlap_valid;
    Regards,
    Shabeer

  • Where to find the validation for table

    Hi Friends,
    I'm new to HRMS. This is my senario. USers entering the Leave. When entering the leave, it is validating the leave days , and throws error. If they entering for the same person, same from date and same to date, it will show error that *'Record already exist'*. Otherwise , it will accept the new records. My situation is, if the person applied for 5 days. but he returned back into 4 days. So, when they tried to update those records also , it showing same error, *'Record already exist'*.
    These validation they have done in fast formula..
    IF(PFC_IN_CHECK_ABSENCE_OVERLAP(ASG_NUMBER,date_start,date_end)<>0) THEN
    duration='FAILED'
    invalid_msg='Your absence days are overlapping with an existing absence'
    Procedure called in Fast Formula,
    FUNCTION pfc_in_check_absence_overlap (p_employee_number VARCHAR2, p_start_date DATE, p_end_date DATE)
    RETURN NUMBER
    IS
    CURSOR c_count
    IS
    SELECT 1
    FROM per_absence_attendances absence,
    per_absence_attendance_types absence_types,
    per_all_people_f person
    WHERE person.person_id = absence.person_id
    AND absence.absence_attendance_type_id = absence_types.absence_attendance_type_id
    AND TRUNC (SYSDATE) BETWEEN person.effective_start_date AND person.effective_end_date
    AND person.employee_number = p_employee_number
    AND ( (p_start_date BETWEEN absence.date_start AND absence.date_end)
    OR (p_end_date BETWEEN absence.date_start AND absence.date_end)
    l_count NUMBER := 0;
    l_dummy c_count%ROWTYPE;
    BEGIN
    OPEN c_count;
    FETCH c_count
    INTO l_dummy;
    IF c_count%FOUND
    THEN
    l_count := l_count + 1;
    ELSE
    l_count := 0;
    END IF;
    CLOSE c_count;
    RETURN l_count;
    END;
    I need to change that, it should permit to update the records. Please let me know, how to do that, where to change and where to check.
    Pl. help. This is little bit urgent.
    Thanks in ADvance.
    Mano

    Can I confirm I understand your requirement correctly. Is this right:
    * You have overlapping absence validation at the moment
    * This errors whenever you try and create/update an absence where any day of this absence overlaps with an existing absence (ie, it starts between an existing absence, or ends between an existing absence)
    * The problem with this validation in the case of update is that its validating against itself
    Is that right?
    If so, what you'd usually do in this case is get the cursor to ignore the absence being updated. For example:
    FUNCTION pfc_in_check_absence_overlap (p_employee_number VARCHAR2, p_start_date DATE, p_end_date DATE, p_absence_attendance_id number default null)
    RETURN NUMBER
    IS
    CURSOR c_count
    IS
    SELECT 1
    FROM per_absence_attendances absence,
    per_absence_attendance_types absence_types,
    per_all_people_f person
    WHERE person.person_id = absence.person_id
    AND absence.absence_attendance_type_id = absence_types.absence_attendance_type_id
    AND absence.absence_attendance_id <> nvl(p_absence_attendance_id, -1)
    AND TRUNC (SYSDATE) BETWEEN person.effective_start_date AND person.effective_end_date
    AND person.employee_number = p_employee_number
    AND ( (p_start_date BETWEEN absence.date_start AND absence.date_end)
    OR (p_end_date BETWEEN absence.date_start AND absence.date_end)
    However, the problem here is getting hold of the absence_attendance_id. This isn't available to the Fast Formula, although I think if you're on release 12.1.3 it might be.
    So with your current solution there's no way of getting the cursor to ignore the absence being updated. An alternative solution would be to implement this logic in API User Hooks on create_person_absence and update_person_absence. These hooks can pass in p_absence_attendance_id, which means you can then stop it erroring on itself.
    If you moved to API User Hooks could you keep the same PLSQL as above (the version I modified). For more details on implement API User Hooks please see:
    Understanding and Using Application Program Interface (API) User Hooks in Oracle HRMS [ID 73170.1]

  • R12 SSHR - Leave of Absence page error

    HI,
    I am filling the leave details like "From" & "To" date, selecting leave type etc. When I click "Next" button, I am getting an error message like "A compiled version of the formula 324 cannot be found.. Check that it exists and compiled..."
    I just copied the formula from "TEMPLATE ABSENCE DURATION" into "BG_ABSENCE_DURATION" (created new formula name with "Quickpaint" type)
    How to overcome this error?
    Thanks in advance.

    Dear All,
    This is the formula I am using for Absence. In form It is working fine. But in SSHR it is throwing the error. Please check and help me in resolving this issue.
    FORMULA NAME: TEMPLATE_ABSENCE_DURATION
    FORMULA TYPE: Quickpaint
    DESCRIPTION: Calculates the Employee's Absence
    Duration in days or hours. The profile
    'HR: Absence Duration Auto Overwrite'
    determines if an existing duration value
    can change automatically or not.
    INPUTS:
    - days_or_hours: the units of the absence
    - date_start: the absence start date
    - date_end: the absence end date
    - time_start: the absence start time
    - time_end: the absence end time
    DBI Required:
    - asg_start_time : the assignment start time
    - asg_end_time: the assignment end time
    - asg_pos_start_time: the positon start time
    - asg_pos_end_time: the position end time
    Change History
    01 Sep 99 jmoyano Created
    10 Oct 01 dcasemor end_day was being set to
    asg_start_time. Also allowed
    hours to be defaulted if no
    UOM is set and hours have been
    entered.
    alias emp_hire_date as hire_date
    default for per_sex is 'X'
    /* Main Body of Formula */
    INPUTS ARE days_or_hours(text),
    date_start (date),
    date_end (date),
    time_start (text),
    time_end (text),absence_attendance_type_id
    /* default values */
    default for per_emp_number is ' '
    default for MARRIAGE_LEAVE_CUM_BALANCE is 0
    default for PER_SEX_CODE is 'X'
    default for hire_date is '01-jan-1951'(date)
    DEFAULT FOR days_or_hours IS 'D'
    DEFAULT FOR time_start IS '09:00'
    DEFAULT FOR time_end IS '17:00'
    DEFAULT FOR date_start IS '0001/01/01 00:00:00' (DATE)
    DEFAULT FOR date_end IS '4712/12/31 00:00:00' (DATE)
    /* database items */
    DEFAULT FOR asg_start_time IS '09:00'
    DEFAULT FOR asg_end_time IS '17:00'
    DEFAULT FOR asg_pos_start_time IS '09:00'
    DEFAULT FOR asg_pos_end_time IS '17:00'
    v_business_group_id=81
    /* local variables */
    error_or_warning = ' '
    invalid_msg = ' '
    duration = '0'
    number_of_days = 0
    first_day_hours = 0
    last_day_hours = 0
    /* Defaults Section */
    /* default values for working day, these are only used if no
    working conditions can be found */
    begin_day = '09:00'
    end_day = '17:00'
    IF ((date_start WAS DEFAULTED) or (date_end WAS DEFAULTED)) then
    duration = '0'
    else
    number_of_days = days_between(date_end,date_start)
    /* absence in hours */
    IF days_or_hours = 'H'
    OR (days_or_hours WAS DEFAULTED
    AND time_start WAS NOT DEFAULTED
    AND time_end WAS NOT DEFAULTED) THEN
    /* look for the assignment values*/
    If ((asg_start_time WAS NOT DEFAULTED) and
    (asg_end_time WAS NOT DEFAULTED)) then
    begin_day = asg_start_time
    end_day = asg_end_time
    else
    /* look for the position values */
    if ((asg_pos_start_time WAS NOT DEFAULTED) and
    (asg_pos_end_time WAS NOT DEFAULTED)) then
    begin_day = asg_pos_start_time
    end_day = asg_pos_end_time
    /* compute hours per day */
    hours_per_day = ((to_num(substr(end_day,1,2))*60 +
    to_num(substr(end_day,4,2))) -
    (to_num(substr(begin_day,1,2))*60 +
    to_num(substr(begin_day,4,2)))) / 60
    /* absence takes place during the same day */
    IF number_of_days = 0 THEN
    duration = to_char(((to_num(substr(time_end,1,2))*60 +
    to_num(substr(time_end,4,2))) -
    (to_num(substr(time_start,1,2))*60 +
    to_num(substr(time_start,4,2)))) / 60)
    /* more than one day */
    ELSE
    /* Changes for bug3093970 starts here */
    first_day_hours =((to_num(substr(end_day,1,2))*60 +
    to_num(substr(end_day,4,2))) -
    (to_num(substr(time_start,1,2))*60 +
    to_num(substr(time_start,4,2))) ) / 60
         last_day_hours = ((to_num(substr(time_end,1,2))*60 +
    to_num(substr(time_end,4,2))) -
    (to_num(substr(begin_day,1,2))*60 +
    to_num(substr(begin_day,4,2))))/60
         if first_day_hours <=0
         OR first_day_hours > hours_per_day
         OR last_day_hours <= 0
         OR last_day_hours > hours_per_day THEN
    /* Leave timings are out off standard timings*/
    /* So use 24 hours rule */
         first_day_hours = (24*60 -
         (to_num(substr(time_start,1,2))*60 +
    to_num(substr(time_start,4,2))))/60
    last_day_hours = (to_num(substr(time_end,1,2))*60 +
    to_num(substr(time_end,4,2)))/60
    duration = to_char(first_day_hours+last_day_hours)
    duration = to_char(to_num(duration) +
    (DAYS_BETWEEN(date_end,date_start) - 1)* hours_per_day)
    /* Changes for bug3093970 ends here */
    /* absence in days */
    ELSE
    duration = to_char(DAYS_BETWEEN(date_end,date_start) + 1)
    /* use of error messages:
    if to_num(duration) = 0 then
    duration = 'FAILED'
    invalid_msg = 'HR_ABSENCE_CANNOT_BE_ZERO'
    v_duration=to_number(duration)
    length_of_service=(days_between(date_start,hire_date)+1)/365
    v_leave_type=XXAQ_LEAVE_TYPE(v_business_group_id,absence_attendance_type_id)
    if v_leave_type='HAJJ LEAVE' then
    if length_of_service<=aq_los_for_hajj_leave then
    duration = 'FAILED'
    invalid_msg = 'Length of Service Should be more than '||to_char(aq_los_for_hajj_leave)|| ' years'
    else
    if v_duration+XXAQLEAVEAVAILED(per_emp_number,
    v_leave_type)>aq_hajj_leave_entitlement then
    duration = 'FAILED'
    invalid_msg = 'Maximum Entitlement Should Be '||to_char(aq_hajj_leave_entitlement)
    /*Marriage Leave*/
    if v_leave_type='MARRIAGE LEAVE' then
    if v_duration+XXAQLEAVEAVAILED(per_emp_number,
    v_leave_type)>aq_marriage_leave_entitlement then
    duration = 'FAILED'
    invalid_msg = 'Maximum Entitlement Should Be '||to_char(aq_marriage_leave_entitlement)
    /*Paternity Leave*/
    if v_leave_type='PATERNITY LEAVE' then
    if v_duration+XXAQLEAVEAVAILED(per_emp_number,
    v_leave_type)>aq_paternity_leave_entitlement then
    duration = 'FAILED'
    invalid_msg = 'Maximum Entitlement Should Be '||to_char(aq_paternity_leave_entitlement)
    /*Maternity Leave*/
    if v_leave_type='MATERNITY LEAVE' then
    if PER_SEX<>'Female' then
    duration = 'FAILED'
    invalid_msg = 'Only Female Employees are Eligible for Maternity Leave'
    /*unpaid leave hours begin*/
    /*if v_leave_type='UNPAID LEAVE HOURS' then
    if v_duration>8 then
    duration = 'FAILED'
    invalid_msg = TO_CHAR(v_duration)||'Duration Should not Exceed 8 Hours for This Leave Type'
    /*unpaid leave hours end*/
    return duration, invalid_msg
    Regards,
    Jithin

  • HRMS-Fast Formula Help

    Hello everyone,
    Iam trying to define a fast formula that would generate the customer number.
    Here goes my code.
    /* NAME: EMP_NUMBER_GENERATION */
    /* Returns the Next Employee Number. */
    DEFAULT FOR Person_number IS ' '
    DEFAULT FOR Party_ID IS 0
    DEFAULT FOR Person_ID IS 0
    DEFAULT FOR National_ID IS ' '
    DEFAULT FOR Date_Of_Birth IS '1900/01/01 00:00:00' (date)
    DEFAULT FOR Hire_Date IS '1900/01/01 00:00:00' (date)
    INPUTS ARE
    Legislation_Code (text),
    Person_Type (text),
    Person_number (text),
    Party_id,
    Person_id,
    Date_of_birth (date),
    Hire_date (date),
    National_ID (text)
    Next_number = '0'
    Invalid_msg = ' '
    /* Next test is to insure we are processing an EMPLOYEE and */
    /* not an Applicant or Contingent Worker */
    IF person_type = 'EMP' then
    Next_Number = Get_Custom_Number(Legislation_Code
    ,Person_Type
    ,Person_Number
    ,Party_ID
    ,Person_ID
    ,National_ID
    ,Date_Of_Birth
    ,effective_date)
    ELSE
    Invalid_msg = 'This is not an person_type of Employee!'
    hr_utility.set_location('post election edit rule l_result = ' || l_result , 98765);
    RETURN Next_number
    When i try to verify the code it throws an error saying "The formula contains some unexpected text which cannot be verified.
    Could anyone please help me as to where iam i going wrong.Or is the syntax itself is wrong.if so please provide me the corrected syntax.
    Thanks,
    Srikanth

    Dear Srikanth,
    We are implementing HRMS and we are opting for custom Employee Number. I saw this messsage thread and was trying to find the EMP_NUMBER_GENERATION formulas, but was unable to find the formula.
    Can you explain to me how to open this formula for incorporating my Custom logic for employee number Generation?
    Can you guide me?
    Regards
    Sachin Shirke.

  • How to Customize Employee Number Generation?

    m trying to generate a custom employee,applicant numbers through a dummy business group.
    I've created on Application: Oracle E-Business 11.5.10.2 the work structure and am now on the step of customizing the employee generating number.
    I followed the link steps:
    Below steps already done:
    Technical Side:
    1- Create New Sequence in DB.
    -----Sequence Code----------
    DROP SEQUENCE APPS.APPSLEAD_CUST_NUMB;
    CREATE SEQUENCE APPS.APPSLEAD_CUST_NUMB
    START WITH 1
    MAXVALUE 999999999999999999999999999
    MINVALUE 0
    NOCYCLE
    NOCACHE
    NOORDER;
    2- Create New Package for issuing the numbers.
    ----------Package Code--------------
    Create or replace package appslead_package as
    Function get_emp_custom_number (
    p_business_group_id IN number
    ,p_legislation_code IN varchar2
    ,p_person_type IN varchar2
    ,p_person_number IN varchar2
    ,p_party_id IN number
    ,p_person_id IN number
    ,p_national_id IN varchar2
    ,p_date_of_birth IN date
    ) return varchar2;
    end appslead_package;
    Create or replace package body APPSLEAD_PACKAGE as
    Function GET_EMP_CUSTOM_NUMBER (
    p_business_group_id IN number
    ,p_legislation_code IN varchar2
    ,p_person_type IN varchar2
    ,p_person_number IN varchar2
    ,p_party_id IN number
    ,p_person_id IN number
    ,p_national_id IN varchar2
    ,p_date_of_birth IN date
    ) return varchar2 as
    /*Check if the person id is exists on the system or not*/
    cursor person_exists is
    select employee_number,applicant_number,npw_number
    from per_all_people_f
    where party_id = p_party_id;
    --and p_effective_date between effective_start_date and effective_end_date;
    lseq_num number;
    l_next varchar2(30);
    l_emp_num varchar2(30);
    l_apl_num varchar2(30);
    l_npw_num varchar2(30);
    begin
    open person_exists;
    fetch person_exists into l_emp_num,l_apl_num,l_npw_num;
    if person_exists%notfound then
    Select to_char(Appslead_Cust_Numb.Nextval) Into lseq_num From Dual;
    l_next := 'AppsLead-'||lseq_num;
    return l_next;
    Else
    If p_person_type = 'EMP' then
    l_next := l_emp_num;
    Elsif p_person_type = 'APL' then
    l_next := l_apl_num;
    Elsif p_person_type = 'CWK' then
    l_next := l_apl_num;
    End if;
    End if;
    Close person_exists;
    return l_next;
    end get_emp_custom_number;
    End appslead_package;
    Functional Side:
    1- Create or Modify Business Group Employee numbering method to Manual.
    2- Create New Formula Function.
    3- Create New Formula EMP_NUMBER_GENERATION with Type "Person Number Generation"
    ------Formula Script--------
    EMP_NUMBER_GENERATION
    Create Custome formula for generation employee number*/
    DEFAULT FOR Person_Number IS ' '
    DEFAULT FOR Party_ID IS 0
    DEFAULT FOR Person_ID IS 0
    DEFAULT FOR National_ID IS ' '
    DEFAULT FOR DATE_OF_BIRTH IS '1900/01/01 00:00:00' (date)
    DEFAULT FOR Hire_Date IS '1900/01/01 00:00:00' (date)
    INPUTS ARE
    Legislation_Code (text),
    Person_Type (text),
    Person_number (text),
    Party_id,
    Person_id,
    Date_of_birth (date),
    Hire_date (date),
    National_ID (text)
    Next_Number = '0'
    Invalid_msg = ' '
    IF Person_Type = 'EMP' then
    Next_Number = TO_CHAR(Get_Emp_Custom_Number(Legislation_Code,Person_Type,Person_Number,Party_Id,Person_Id,National_ID,Date_Of_Birth))
    Else
    Invalid_msg = 'This is not an person_type of Employee!'
    Return Next_Number
    Now, when I create a new employee I need the employee number to appear as
    "AppsLead-Emp-00001"
    But its not, and the screen of employee master is not allow to create an employee without filling the number.
    How to do the same?
    What should be the Employee Number Generation ?
    1- Automatic generation with Global Sequencing
    2- Manual
    If your answer is manual, in the employee master screen, the employee id is required and when you create the employee the id should be entered.

    there are some fast formula you can use.
    Please check metalink

Maybe you are looking for