Create an new employee fucntion Module/SAP pgm

Hi All,
I would like to know if there is any fucntion module to create an employee in batch program, I do not want to use BDC for PA40 and when I tried using the fucntion module HR_MAINTAIN_MASTERDATA, it is creating the new employee but not creating a record in HRD1001.
Any help is appreciated.

Hi
Refer- http://help.sap.com/bp_hcmv1500/HRBP_Canada_V1_500/HTML/hcm_toc.htm

Similar Messages

  • Error with creating a new employee - PA40

    When creating a new employee record using PA40, the PERNR gets generated as soon as Infotype 0000 is updated. How do we capture the new PERNR, if a BDC recording of PA40 fails midway during the process
    I would appreciate and reward any valuable ideas!

    create a session for error messages....and u can go to sm35 and check what has ahppened.....if not use format_message and display what has happened as report output....in case of BDC fail......!!!!!
    it will be like....
    call transaction 'PA40' using it_bdctab
    mode 'N'
    update 'S'
    messages into it_bdcmsgcoll.
    if sy-subrc <> 0.
    *--store the pernr for which bdc failed......here!!!
    call function 'bdc_open_group'
    call function 'bdc_insert'
    call function format_message
    call function 'bdc_close_group'
    *---check error and try to rectify it.....
    Regards
    Vasu

  • Create a new employee

    Hello,
    we want use HR_MAINTAIN_MASTERDATA for create a new employee.
    after lunch this FM we insert new PERNR code and some different data but after execution we cannot see any new entry in PA30 or PA40.
    Any suggestion?
    thanks
    Alex

    Hi,
    You can use 'HR_MAINTAIN_MASTERDATA'  to create/hire a new employee since its simulates the BDC PA30/40.
    But you need to pass NO_EXISTENCE_CHECK as 'X' to hire a new employee, also you need to pass all the mandatory fields of infotypes which are used to hire a employee (IT0000, IT0001, IT0002 etc) at one go.
    Still it's not able to update then check the error message (or Check the screen flow in Dialog Mode = 2).
    PS: If you use this FM, Dynamic action wont be triggered, so you need to explicitly code if any dynamic actions need to be triggred.
    Good luck,
    Shrinivas

  • A business partner creates a new employee

    Hi there.
    In transaction u201CBBPMAINEXTu201D (Process user data), a business partner can create a new employee, example a bidder employee.
    When he populates and send request, the system shows us next message: u201CYour registration application was received and will be forwarded to the processor responsibleu201D
    I have some question?
    ¿Is it sent an email to any one?¿Is there any WF in order to approve the creation?¿Is there any transaction in order to supervise the new employee?
    I suppose that there is any way in order to inform the system administration or the buyer. Is it necessary any role in order to receive the email or the WF.
    Thanks in advance.
    Raúl.

    Hi,
    Approval of external user master records (WS10000209)
    Approval of external business partner registration
    (vendor, bidder) and their contact persons.
    The approver must be entered as a possible agent in the agent
    assignment of the standard task TS10008109.
    If the external business partner and employee have not yet been registered, external
    employees can register the company as a vendor, bidder, or portal bidder and register themselves as
    the contact person of that company. When the registration application is saved, the approver
    responsible (a professional purchaser or system administrator) receives a work item in the Enterprise
    Buyer system. Using the work item, approvers reach the application Managing External Business
    Partners, where they can adopt and complete the relevant data from the registration application.
    Approvers must inform the applicant of the approval or rejection of their registration application and
    of the relevant logon data for the Enterprise Buyer system. This can be done via e-mail using the
    application Managing External Business Partners, if necessary. Prerequisites: You must have
    defined the responsible processor. To do this, enter the processor as a possible agent in the agent
    assignment of the standard task TS10008109
    Could be helpful..
    Thanks
    prasad.s

  • Steps for creating a new BAPI function module

    Hello experts,
    Can any one send me steps for creating a new BAPI function module , I got a requirement to do like this,but I dont have any clue about how to create.
    Please help !!!

    BAPI stands for Business Application Programming Interface.
    There are 5 different steps in BAPI.
    - Create BAPI Structure  
    - Create BAPI Function Module or API Method.  
    - Create BAPI object  
    - Release BAPI Function Module.  
    - Release BAPI object.
    Step1. Creating BAPI Structure:  
    - Go to <SE11>. 
    - Select Data Type & Enter a name. 
    - Click on Create.
    - Note: Always BAPI should be in a development class with request number (Not Local Object).
    - Select Structure & hit ENTER.
    - Enter the fields from your database. Make sure that the first field is the Primary Key Field.
    - Then SAVE & ACTIVATE.
    Step 2. Creating BAPI module: 
    - Enter TR.CODE <SE37>.
    - Before entering any thing, from the present screen that you are in, select the menu
       Goto -> Function Groups -> Create Group.
       Enter a name (Note: This name Must start with ZBAPI)
       Let this screen be as it is and open another window and there, enter TR.CODE <SE80).
       Click on the Third ICON that says Inactive Objects. 
       Select the group that you just created and click on Activate. 
       Notice that the group you created will disappear from the list of inactive objects.
    - Go back to <SE37> screen and enter a name and hit <ENTER>. Then enter the group name that you just created and activated.
    NOTE: When you release a function module the respective group will be attached to that particular application. It cannot be used for any other application. NEVER include an already existing group that is attached to another module.
    Now click on the first Tab that says [ATTRIBUTES] and select the radio button that says remote-enabled module since we will be accessing this from any external system.
    Then click on the second tab that says [IMPORT].
    Enter a PARAMETER NAME, TYPE and the structure you created in the first step. Also select the check box ‘Pa’. All remotely enabled functional modules MUST be Pa enabled, where Pa means ‘Passed by Value’ and if you don’t select ‘Pa’, then that means it will be passed by reference..
    Then click on tab that says [EXPORT].
    Enter the following as is in the first three fields 
      RETURN        TYPE        BAPIRETURN (These 3 field values are always same)
      Here also select ‘Pa’ meaning Pass by value.
    Note: BAPIRETURN contains structure with message fields.
    Then SAVE and ACTIVATE.
    Step 3. Creating BAPI object: 
    - Enter Tr.Code <SWO1>   (Note. It is letter ‘O’ and not Zero).
    - Enter a name and then click on create. Enter details. 
    NOTE: Make sure that that Object Type and Program name are SAME.   
    - Enter Application ‘M’, if you are using standard table Mara. If you are using your own database then select ‘Z’ at the bottom. 
    - Then hit <ENTER>. 
    - Now we have to add ‘Methods’. High light METHODS and then select the following from the menu: 
    Goto Utilities -> API Methods -> Add Methods.
    - Enter function Module name and hit <ENTER>.
    - Select the second FORWARD ARROW button (>)to go to next step. 
    - Check if every thing looks ok and again click on FORWARD ARROW button (>).
    - Then select ‘YES’ and click on <SAVE>.
    -  Now on a different screen goto TR.CODE <SE37>.  Enter Function Module name and select from the top menu  Function Module -> Release -> Release.
    - Goback to TR.CODE <SWO1>.
    Here select the menu combination shown below in the same order.
    - Edit -> Change Release Status -> Object Type Component -> To Implemented.
    - Edit -> Change Release Status -> Object Type Component -> To Released.
    - Edit -> Change Release Status -> Object Type -> To Implemented.
    - Edit -> Change Release Status -> Object Type -> To Released.
    - Then click on <SAVE>.
    - Then click on Generate Button (4th button from left hand side looks like spinning wheel).
    - Then Click on the button that says ‘PROGRAM’ to see the source code.
    To check if this is present in work flow goto TR.CODE <BAPI>. 
    Here it shows business object repository.
    - First click on the middle button and then select “ALL” and hit ENTER.
    - Goto tab [ALPHABETICAL] and look for the object that you created. This shows that the BAPI object has been created successfully.
    regards,
    aswin

  • Create a new button in a sap-standard-view WD4A

    In webdynpro for ABAP
    I have changed the text on an existing button in a sap-standard-view using configuration (change application configuration/go to component configurator/implicit configuration and then on the view-component change the text) it works perfect.....
    my next step is to create a new button beside the old one with a new text on it, I created a new button by using "enhance view" (I copied the existing button) the new button appears (so far so good) but when I go into the configuration to change the text on the new button (using configuration the same way I did when I changed the text on the existing button) I  cant find my new button in the view-component list....why can't I find it there so I can change the text?
    Can anyone help me this one?

    I don't believe that the Configuration tool picks up Enhancement Objects because of the way they are linked to the original component at Runtime. Why set the text using configuration?  You can control the text within the enhancement object.  Do you want different texts based upon multiple configurations?

  • Create Return Order via Fucntional module

    Hi all,
    I am trying to create a return order with refernce to invoice via fucntional module SD_SALESDOCUMENT_CREATE
    In SALES_HEADER_IN, I am giving REF_DOC - Invoice number, REFDOC_CAT - M
    In SALES_HEADER_INX , I am putting X mark for the above fields
    I am Passing necessary details with material.I see the return order is created succesfully, but the invoice number is not updated in Accounting tab - Reference fields - Header.
    Please anyone help me if the values what I have passed is correct or not to create the return order via Functional module
    regard
    Mano

    Hi Mano,
    Could you please upload screenshot of the field you are referring to
    thanks
    santosh

  • Create/Copy New Inbound Function Module

    I have created a new process code MBGM pointing to function module IDOC_INPUT_MBGMCR.
    Currently I do not have function module IDOC_INUT_MBGMCR.
    Can I easily copy from an existing function module to create my own new function module?

    Hi Janice,
    Open se37, enter the FM name, now on the toolbar , there is a double-square ICON, click on this..and rest is easy.
    In detail,
    First of all you must know to which function group(FG) your r copying the FM, that is in which FG your z-fm will be residing.
    now se37-> enter the FM (original one) -> click on the copy icon (a square on another square, third from left)->now you will have a pop up-> "from" input box(leave it as it is)
    and "to" input box : here you write your z FM name,
    in Function group box: you enter the FG name where your z-FM should belong.
    click on copy..thats it.
    cheers,
    Prashanth
    P.S : Please mark helpful answers

  • How to create a new employee?

    Hi Guru,
    I have a problem with create new employee how do we do?Could you pls send me details path and T-CODE.
    Thanks
    Manju

    I will add to Joe's comments.
    Goto TCode PA40, select the line with action "Hire" and execute, it will take you through some screens like a wizard and you will enter information regarding the employee. If you do not know the position then for testing you can enter 9999999 as position. Keep saving you entries for each screen and keep going, at the end you will end up with a new employee. You can note down that pernr and change anything through PA30.

  • ORA-20001: PAY_7599_SYS_SUP_DT_OUTDATE when trying to create a new employee

    hello.
    I hope someone can help. My script below takes record(s) from a temporary table and loads them into ORACLE Financials via several APIs but on initial testing (using 1 NEW Record) it fails with the error message:
    Employee No: 00020206
    ORACLE error occurred processing record.. ORA-20001: PAY_7599_SYS_SUP_DT_OUTDATE
    Ive tried to google the error message but nothing - can someone either suggest what this may be or shsow me another way of getting a more precise reason for the problem?
    /* Formatted on 2009/04/29 11:52 (Formatter Plus v4.8.7) */
    SET serveroutput ON SIZE 1000000 FORMAT WRAPPED
    SET verify OFF
    SET feedback OFF
    DECLARE
    -- Debugging/error handling
    -- Work variables
       l_employ_start_date        DATE:= TO_DATE ('01-APR-1999', 'DD-MON-YYYY');
       v_ora_loc_code number                     := 0;
       p_emp_number                     VARCHAR2 (14);
       v_rec_cnt                        NUMBER                          := 0;
       insert_flag                      VARCHAR2 (8);
       err_num                          NUMBER;
       err_msg                          VARCHAR2 (150);
       err_line                         VARCHAR2 (350);
       err_seq                          NUMBER                          := 0;
       l_validate                       BOOLEAN                     DEFAULT FALSE;
       l_std_business_group_id          NUMBER                          := '0';
       l_default_code_comb_id           NUMBER                        := '218048';
       l_organization_id                NUMBER                          := '0';
       l_set_of_books_id                NUMBER                          := '1';
       l_job_id                         NUMBER                          := '10';
       l_obj                            NUMBER;
       l_datetrack_update_mode          VARCHAR2 (30)             := 'CORRECTION';
       l_assignment_sequence            NUMBER;
       l_name_combination_warning       BOOLEAN                         := FALSE;
       l_assign_payroll_warning         BOOLEAN                         := FALSE;
       l_org_now_no_manager_warning     BOOLEAN;
       l_other_manager_warning          BOOLEAN;
       l_spp_delete_warning             BOOLEAN;
       l_entries_changed_warning        VARCHAR2 (30);
       l_tax_district_changed_warning   BOOLEAN;
       l_person_id                      NUMBER;
       l_assignment_id                  NUMBER;
       l_assignment_id2           NUMBER;  -- := '28262';
       l_special_ceiling_step_id        NUMBER;
       l_per_effective_end_date         DATE:= TO_DATE ('11-Jul-2049', 'DD-MON-YYYY');
       l_people_group_id                NUMBER;
       l_group_name                     VARCHAR2 (30);
       l_assignment_number              VARCHAR2 (35);
       l_effective_end_date             DATE := TO_DATE ('11-Jul-2049', 'DD-MON-YYYY');
       l_date                           DATE                           := SYSDATE;
       ip_p_address_id                  per_addresses.address_id%TYPE;
       ip_p_object_version_number       NUMBER;
       ip_p_party_id                    per_addresses.party_id%TYPE;
       l_per_object_version_number      NUMBER;
       l_asg_object_version_number      NUMBER;
       l_full_name                      VARCHAR2 (240);
       l_per_comment_id                 NUMBER;
       l_per_effective_start_date       DATE;
       l_concatenated_segments          VARCHAR2 (240);
       l_soft_coding_keyflex_id         NUMBER;
       l_comment_id                     NUMBER;
       l_no_managers_warning            BOOLEAN;
    -- Get employee details info from work table
       CURSOR get_employee_details
       IS
          SELECT std_hire_date, std_last_name, std_sex, std_date_of_birth,
                 std_email_address, std_emp_status,
                 LPAD (std_employee_number, 8, '0') std_employee_number,
                 std_first_name, std_marital_status, std_middle_names,
                 std_nationality, std_title, std_national_identifier,
                 std_address_line1, std_address_line2, std_address_line3,
                 std_address_line4, std_post_code, std_telephone_1, std_country,
                 std_region, std_location_id, std_organization_id,
                 std_supervisor_id, std_person_id, std_position_id
            FROM SU_TEMPLOYEE_DETAILS;
    -- Get EXISTING employee details info from ORACLE tables
       CURSOR get_existing_employee_details
       IS
          SELECT per.person_id, per.business_group_id, per.last_name,
                 per.start_date, per.date_of_birth, per.email_address,
                 per.employee_number, per.first_name, per.marital_status,
                 per.middle_names, per.nationality, per.national_identifier,
                 per.sex, per.title, padd.address_id, padd.primary_flag,
                 padd.address_line1, padd.address_line2, padd.address_line3,
                 padd.town_or_city, padd.postal_code, padd.telephone_number_1, paas.assignment_id,
                 paas.assignment_number, paas.object_version_number, paas.EFFECTIVE_START_DATE,
         paas.job_id, paas.position_id, paas.location_id, paas.organization_id, paas.assignment_type, paas.supervisor_id,
                 paas.default_code_comb_id, paas.set_of_books_id, paas.period_of_service_id
          FROM   per_all_people_f per,
                 per_all_assignments_f paas,
                 per_addresses padd
           WHERE
         per.person_id = padd.person_id
         --        AND paas.person_id(+) = per.person_id;
            AND paas.person_id(+) = per.person_id;
    -- checks employee details info from PER_ALL_PEOPLE_F table
       CURSOR c_check_employee (p_emp_number VARCHAR2)
       IS
          SELECT per.person_id, per.business_group_id, per.last_name,
                 per.start_date, per.date_of_birth, per.email_address,
                 per.employee_number, per.first_name, per.marital_status,
                 per.middle_names, per.nationality, per.national_identifier,
                 per.sex, per.title, padd.address_id, padd.primary_flag,
                 padd.address_line1, padd.address_line2, padd.address_line3,
                 padd.town_or_city, padd.postal_code, padd.telephone_number_1, paas.assignment_id,
                 paas.assignment_number, paas.object_version_number, paas.EFFECTIVE_START_DATE,
         paas.job_id, paas.position_id, paas.location_id, paas.organization_id, paas.assignment_type, paas.supervisor_id,
                 paas.default_code_comb_id, paas.set_of_books_id, paas.period_of_service_id
          FROM   per_all_people_f per,
                 per_all_assignments_f paas,
                 per_addresses padd
           WHERE per.employee_number = p_emp_number
             AND per.person_id = padd.person_id
             AND paas.person_id(+) = per.person_id;
       emp_rec                          c_check_employee%ROWTYPE;
    -- Cursor retrieves latest Object Version Number from per_assignments_f table..
       CURSOR csr_ovn (cp_person_id IN per_all_people_f.person_id%TYPE)
       IS
          SELECT MAX (paas.object_version_number)
            FROM per_assignments_f paas, per_all_people_f per
           WHERE paas.person_id = per.person_id
             AND per.employee_number = paas.assignment_number
             AND per.person_id = cp_person_id;
    -- Cursor to get Oracle_Loc_Code from SU CHRIS vs ORACLE Locations Table into a variable..
    CURSOR csr_ora_loc_code (cp_location_id IN SU_TEMPLOYEE_DETAILS.std_location_id%TYPE)
    IS
          SELECT sil.ORACLE_LOC_CODE
         FROM SU_TEMPLOYEE_DETAILS std, SU_IEXP_LOCATIONS sil
         WHERE std.STD_LOCATION_ID = sil.CHRIS_LOC_code
         AND std.STD_LOCATION_ID = cp_location_id;
    BEGIN
    -- Process each record in the work table
       FOR v_emp IN get_employee_details
       LOOP
    -- determine whether customer already exists
          OPEN c_check_employee (v_emp.std_employee_number);
          FETCH c_check_employee
           INTO emp_rec;
           l_assignment_id2 := emp_rec.assignment_id;
          IF v_emp.std_emp_status = 'N' and c_check_employee%NOTFOUND
          THEN
             insert_flag := 'I';
             DBMS_OUTPUT.PUT_LINE ('Employee No: ' || v_emp.std_employee_number);
          ELSIF v_emp.std_emp_status = 'C'
          THEN
           -- if c_check_employee%NOTFOUND then raise no_data_found;
            -- elsif l_assignment_id2 is null then
             if l_assignment_id2 is null then
              raise_application_error (-20010, 'Employee No: ' || v_emp.std_employee_number  || ' exists but has no assignment id!');
            end if;
               DBMS_OUTPUT.PUT_LINE ('Employee No: ' || v_emp.std_employee_number ||  '  already exists, making changes.. '   );
               insert_flag := 'C';
          -- RAISE_APPLICATION_ERROR (-20001,  'Employee No: ' || v_emp.std_employee_number  || '  already exists '    );
           END IF;
          CLOSE c_check_employee;
    -- Obtain the most recent Object Version Number..
          OPEN csr_ovn (v_emp.std_person_id);
          FETCH csr_ovn
           INTO l_obj;
          -- IF csr_ovn%NOTFOUND     THEN        RAISE NO_DATA_FOUND;   END IF;
          CLOSE csr_ovn;
    -- Open Oracle Location Code cursor
    OPEN csr_ora_loc_code(v_emp.std_location_id); 
          FETCH csr_ora_loc_code
           INTO v_ora_loc_code;
          CLOSE csr_ora_loc_code;
    -- Create new PER_ALL_PEOPLE_F and PER_ADDRESSES record from
    --            info in  table record
          IF insert_flag = 'I'
          THEN
    --                      -- Importing Employee Procedure --
             Hr_Employee_Api.create_gb_employee
                     (p_validate                       => l_validate,
                      p_hire_date                      => l_employ_start_date,
                      p_business_group_id              => l_std_business_group_id,
                      p_date_of_birth                  => v_emp.std_date_of_birth,
                      p_email_address                  => v_emp.std_email_address,
                      p_first_name                     => v_emp.std_first_name,
                      p_middle_names                   => v_emp.std_middle_names,
                      p_last_name                      => v_emp.std_last_name,
                      p_sex                            => v_emp.std_sex,
                      p_ni_number                      => v_emp.std_national_identifier,
                      p_employee_number                => v_emp.std_employee_number,
                      p_person_id                      => l_person_id,
                      p_title                          => v_emp.std_title,
                      p_assignment_id                  => l_assignment_id,
                      p_per_object_version_number      => l_per_object_version_number,
                      p_asg_object_version_number      => l_asg_object_version_number,
                      p_per_effective_start_date       => l_per_effective_start_date,
                      p_per_effective_end_date         => l_per_effective_end_date,
                      p_full_name                      => l_full_name,
                      p_per_comment_id                 => l_per_comment_id,
                      p_assignment_sequence            => l_assignment_sequence,
                      p_assignment_number              => l_assignment_number,
                      p_name_combination_warning       => l_name_combination_warning,
                      p_assign_payroll_warning         => l_assign_payroll_warning
             Hr_Person_Address_Api.create_person_address
                                      (p_validate                     => l_validate,
                        --            p_effective_date               => v_emp.std_hire_date,
                                       p_effective_date              =>  l_employ_start_date,
                                       p_pradd_ovlapval_override      => NULL,
                                       p_validate_county              => NULL,
                                       p_person_id                    => l_person_id,
                                       p_primary_flag                 => 'Y',
                                       p_style                        => 'GB_GLB',
                                       p_date_from                    => SYSDATE,
                                       p_date_to                      => NULL,
                                       p_address_type                 => NULL,
                                       p_comments                     => NULL,
                                       p_address_line1                => v_emp.std_address_line1,
                                       p_address_line2                => v_emp.std_address_line2,
                                       p_address_line3                => v_emp.std_address_line3,
                                       p_town_or_city                 => v_emp.std_address_line4,
                                       p_region_1                     => NULL,
                                       p_region_2                     => NULL,
                                       p_region_3                     => NULL,
                                       p_postal_code                  => v_emp.std_post_code,
                                       p_country                      => v_emp.std_nationality,
                                       p_telephone_number_1           => NULL,
                                       p_telephone_number_2           => NULL,
                                       p_telephone_number_3           => NULL,
                                       p_party_id                     => ip_p_party_id,
                                       p_address_id                   => ip_p_address_id,
                                       p_object_version_number        => l_obj
             Hr_Assignment_Api.update_emp_asg
                            (p_validate                    => l_validate,
                             p_effective_date              => SYSDATE,  -- l_date,
                             p_datetrack_update_mode       => l_datetrack_update_mode,
                             p_assignment_id               => l_assignment_id,
                             p_object_version_number       => l_obj,
                             p_supervisor_id               => v_emp.std_supervisor_id,
                             p_default_code_comb_id        => l_default_code_comb_id,
                             p_set_of_books_id             => l_set_of_books_id,
                             p_concatenated_segments       => l_concatenated_segments,
                             --IN/OUT
                             p_soft_coding_keyflex_id      => l_soft_coding_keyflex_id,
                             --IN/OUT
                             p_comment_id                  => l_comment_id,
                             --IN/OUT
                             p_effective_start_date        => l_date,     --IN/OUT
                             p_effective_end_date          => l_effective_end_date,
                             --IN/OUT
                             p_no_managers_warning         => l_no_managers_warning,
                             --IN/OUT
                             p_other_manager_warning       => l_other_manager_warning
                            --IN/OUT
             Hr_Assignment_Api.update_emp_asg_criteria
                 (p_validate                          => l_validate,
                  p_effective_date                    => SYSDATE,       -- l_date,
                  p_datetrack_update_mode             => l_datetrack_update_mode,
                  p_assignment_id                     => l_assignment_id,
                  p_object_version_number             => l_obj,
                  p_organization_id                   => l_organization_id,
                  p_location_id                       => v_ora_loc_code,
                  p_job_id                            => l_job_id,
                  p_position_id                       => v_emp.std_position_id,
                  p_special_ceiling_step_id           => l_special_ceiling_step_id,
                  p_effective_start_date              => l_date,
                  --per_effective_start_date,
                  p_effective_end_date                => l_effective_end_date,
                  --IN/OUT
                  p_people_group_id                   => l_people_group_id,
                  --IN/OUT
                  p_group_name                        => l_group_name,    --IN/OUT
                  p_org_now_no_manager_warning        => l_org_now_no_manager_warning,
                  --IN/OUT
                  p_other_manager_warning             => l_other_manager_warning,
                  --IN/OUT
                  p_spp_delete_warning                => l_spp_delete_warning,
                  --IN/OUT
                  p_entries_changed_warning           => l_entries_changed_warning,
                  --IN/OUT
                  p_tax_district_changed_warning      => l_tax_district_changed_warning
                 --IN/OUT
             v_rec_cnt := v_rec_cnt + 1;
             DBMS_OUTPUT.PUT (CHR (10));
             DBMS_OUTPUT.PUT_LINE (   'There were '
                                   || v_rec_cnt
                                   || '  records read in..'
    -- Updating PER_ALL_PEOPLE_F and PER_ADDRESSES record from
    --            info in  table record
       ELSE IF insert_flag = 'C'
          THEN
    -- ===================================================
    -- these next 6 lines is for the initial mass update of existing employee records only     
    -- ===================================================
    /*IF emp_rec.default_code_comb_id is NULL THEN
         l_default_code_comb_id = 218048;
         END IF;     
         IF emp_rec.job_id is NULL THEN
         l_job_id = 10;
         END IF;      */
    -- =========
    -- Section end
    -- =========
             Hr_Assignment_Api.update_emp_asg
                            (p_validate                    => l_validate,
                    p_effective_date              => emp_rec.EFFECTIVE_START_DATE,
                             p_datetrack_update_mode       => l_datetrack_update_mode,
                             p_assignment_id               => l_assignment_id2,
                             p_object_version_number       => l_obj,
                             p_supervisor_id               => v_emp.std_supervisor_id,
                             p_default_code_comb_id        => emp_rec.default_code_comb_id,
                             p_set_of_books_id             => emp_rec.set_of_books_id,
                             p_concatenated_segments       => l_concatenated_segments,
                             --IN/OUT
                             p_soft_coding_keyflex_id      => l_soft_coding_keyflex_id,
                             --IN/OUT
                             p_comment_id                  => l_comment_id,
                             --IN/OUT
                             p_effective_start_date        => l_date,     --IN/OUT
                             p_effective_end_date          => l_effective_end_date,
                             --IN/OUT
                             p_no_managers_warning         => l_no_managers_warning,
                             --IN/OUT
                             p_other_manager_warning       => l_other_manager_warning
                            --IN/OUT
             Hr_Assignment_Api.update_emp_asg_criteria
                 (p_validate                          => l_validate,
                  p_effective_date                    => emp_rec.EFFECTIVE_START_DATE,
                  p_datetrack_update_mode             => l_datetrack_update_mode,
                  p_assignment_id                     => l_assignment_id2,
                  p_object_version_number             => l_obj,
                  p_organization_id                   => emp_rec.organization_id,
                  p_location_id                       => v_ora_loc_code,
                  p_job_id                            => emp_rec.job_id,
                  p_position_id                       => emp_rec.position_id,
                  p_special_ceiling_step_id           => l_special_ceiling_step_id,
                  p_effective_start_date              => emp_rec.EFFECTIVE_START_DATE,
                  p_effective_end_date                => l_effective_end_date,
                  --IN/OUT
                  p_people_group_id                   => l_people_group_id,
                  --IN/OUT
                  p_group_name                        => l_group_name,    --IN/OUT
                  p_org_now_no_manager_warning        => l_org_now_no_manager_warning,
                  --IN/OUT
                  p_other_manager_warning             => l_other_manager_warning,
                  --IN/OUT
                  p_spp_delete_warning                => l_spp_delete_warning,
                  --IN/OUT
                  p_entries_changed_warning           => l_entries_changed_warning,
                  --IN/OUT
                  p_tax_district_changed_warning      => l_tax_district_changed_warning
                 --IN/OUT
             v_rec_cnt := v_rec_cnt + 1;
             DBMS_OUTPUT.PUT (CHR (10));
             DBMS_OUTPUT.PUT_LINE (   'There were '
                                   || v_rec_cnt
                                   || '  records read in..'
             DBMS_OUTPUT.PUT (CHR (10));
    -- End of customer related details
          END IF;
          END IF;
       END   LOOP;
       COMMIT;
    EXCEPTION
       WHEN NO_DATA_FOUND
        THEN
         ROLLBACK;
          err_num := TO_CHAR (SQLCODE);
          err_msg := SUBSTR (SQLERRM, 1, 150);
          err_line :=   'ORACLE error occurred processing record.. ' ||  err_msg;
          DBMS_OUTPUT.PUT_LINE (err_line);
          INSERT INTO SU_ERROR_LOG  VALUES (err_msg, 'TEMPLOYEE_DTLS.sql', SYSTIMESTAMP);
        WHEN OTHERS
       THEN
          ROLLBACK;
          err_num := TO_CHAR (SQLCODE);
          err_msg := SUBSTR (SQLERRM, 1, 150);
          err_line :=   'ORACLE error occurred processing record.. ' ||  err_msg;
          DBMS_OUTPUT.PUT_LINE (err_line);
          INSERT INTO SU_ERROR_LOG  VALUES (err_msg, 'TEMPLOYEE_DTLS.sql', SYSTIMESTAMP);
    END;
    EXIT;Many thanks
    Steven

    It looks like the Supervisor employee is not active for the duration of the Employee Record.
    Using the correct Supervisor record should resolve the issue.

  • How do I create a new Evaluation Path in SAP

    Hi
    I need someone to explain step by step how I can go about having a new Evaluation Path created so that I can use it for reporting purposes in SQ01 tcode.
    I have checked the various standard Evaluation Paths offered by SAP, but unfortunately they do not correspond to what I am looking for. Basically our company sometimes has cost centres which are associated to positions and in instances in which the positions are unoccupied and the cost centre becomes invalid/inactive, we need to alert the manager of those unoccupied positions to update the cost centre information. Right now I have had to set-up various reports in SQ01 to handle each step of determining who the manager of these unoccupied position is but it is cumbersome. I would like to simply build one report with a new evaluation path which can determine that information straightaway.
    Here's what I believe I need in terms of an eval path KSOSP i.e.
    Cost centre (K) - > Position (S) - > Org Unit (O) -> Position Chief (S) -> Holder (P)
    Can anyone explain what transactions I need to build the evaluation path i.e. how to do this with the tcode and then also how to get this new eval path available for use in SQ01 reporting.
    Thanks in advance.
    Nicola

    You have advised the Tcode OOVK but can you provide some details on how to actually create an evaluation path (per my specific details) as that's what I really need to know.
    Also how does the Eval Path become available for use in SQ01 once it's created
    Thanks a lot
    Nicola

  • How to create a New SD flow in SAP BI

    Hi Experts,
    I want to create new SD flow where all data will be going to Standard Cube : 0SD_C03.
    Our dataflow is like this : Datasource --> DSO --> Cube (0SD_C03).
    There are many datasource for which Standard DSO is not available and we need to create Custom DSO. Is there any way to know which fields from Datasource will be mapped to Custom DSO.
    Below are the datasource used and there Standard DSO.
    1. Datasource ( 2LIS_11_VAHDR) ---> Standard DSO : 0SD_O03 (Orders)
    2. Datasource ( 2LIS_11_VAITM) ---> Standard DSO : 0SD_O01 (Order Items)
    3. Datasource ( 2LIS_11_V_I_TM) ---> Not able to find Standard DSO.
    4. Datasource ( 2LIS_12_VCITM) ---> Not able to find Standard DSO.
    5. Datasource ( 2LIS_12_VCHDR) ---> Not able to find Standard DSO.
    6. Datasource ( 2LIS_13_VDITM) ---> Not able to find Standard DSO.
    7. Datasource ( 2LIS_13_VDIHR) ---> Not able to find Standard DSO.
    Please let me know if there is any Standard DSO available for the above datasource. If not then how we will be able to map the Datasource Fields to Custom DSO? Is there any table which will provide or something like that?
    Thanks !!!
    Regards,
    Girish

    Hi Raman,
    Thanks for your reply. I found mapping for most of the Datasources with the help of table : RSOSFIELDMAP.
    But i am not able to find mapping for Datrasource : 2LIS_13_VDITM, 2LIS_13_VDIHR, and 2LIS_11_V_I_TM.
    Except Datsource 2LIS_13_VDITM all otehr datasource are in 3.x flow. Can this be the reason?
    In BI content I can only find two DSO for the respective datasource as provided in post.
    Please provide if there are any Standard DSO for the corresponding Datasources.
    Thanks.
    Girish

  • Creating New Employee Record

    Hello Expert,
    I am very new to SAP HR module. Is anybody knows hoe to create new employee record in SAP HR module?
    Other than creation, My requirement also is to edit some data given pernr number using pa30 transaction.
    Any help??
    Thanks,
    Prashant

    Prashant,
    To hire an employee, go to PA40.
    Leave the personnel number field blank; as it is internally given by the system.
    Give the date on which the employee is being hired.
    Select 'Hiring' action from the list of actions.
    Press F8(Execute).
    This leads to different Infotype records, which need to be filled and saved accordingly.
    ~Kumar K

  • Error while creating new employee in CAF Core application

    Hi
    I am novice to the CAF, this is my first CAF Core application which I have created and deployed in J2EE engine successfully. It’s ready for Testing, here  I am trying to create a  new employee but while saving it, giving error like:-
    ERROR. Exception thrown in method createEmployee. The transaction is marked for rollback.: Exception thrown in method create. The transaction is marked for rollback.: com/sap/caf/rt/exception/CAFIllegalAccessException
    Anyone can help out me.
    Regards
    Srikanth

    Hi Cindy Herrman,
      FYI , that check box already unchecked, while setup the employee entity only that Permission check box unchecked, still I am getting same problem.
    -Srikanth

  • Creating new Employee in ECC

    Hi,
    i am new to SAP and new to this group also, Can any one help me how to create new employee(HR) in SAP using the BAPIs, after creation of employee how can i check the new employee details in SAP.Can one give me step by step approach to solve this problem.
    Thanks in advance.
    Thanks & Regards
    sushma

    Hi,
      Welcome to SDN. Please post your question in the correct forum for better replies.
    /community [original link is broken]
    Regards,
    Harini S

Maybe you are looking for

  • Regarding Headings in AlV.

    Hi, I have a requirement where the headings for a ALV display have to be in 2 or 3 rows.For an e.g. Posting Date must be as Posting and Customer name as                                                               Date Customer Name Is it possible t

  • Restore deleted photo album in ipad

    How do i recover photos deleted in error from iPad? 

  • Share troublehoot

    how can i fix the share function which is not working - tried both export fcpx project to master file and dvd

  • Sales office, sales group language maintenance issue-urgent

    Hi All, I have to create sales office & sales group in the enterprise structure. But the problem is i want to maintain it in different languages such as russian & french, how do i do it. Is there any specific method to be used to convert language? Me

  • Advice Needed: Activating Second iPhone

    I'm about to activate a second iPhone on a new FamilyTalk account. The second iPhone will be used with a different computer/iTunes-username than mine, which the first iPhone was activated with. If I activate the second iPhone using my computer, and m