Sunday, January 24, 2021

PER JOBS API- HR_JOB_API.CREATE_JOB

 DECLARE

  lv_group_name            VARCHAR2(200) := 'Setup Business Group';

  ln_business_group_id     NUMBER;

  ln_job_group_id          NUMBER; 

  ln_job_id                NUMBER;

  ln_object_version_number NUMBER;

  ln_job_definition_id     NUMBER;

  lv_job_name              VARCHAR2(200);

  

  CURSOR l_data IS

  select * from XX.XX_PER_JOBS where new_job_id is null;

  

BEGIN


  -- get group id and business group id

  BEGIN

    SELECT business_group_id,

           job_group_id

      INTO ln_business_group_id,

           ln_job_group_id

      FROM per_job_groups

     WHERE displayed_name = lv_group_name;

  EXCEPTION

    WHEN OTHERS THEN

      dbms_output.put_line('Unable to get the job group details.Error:'||SQLERRM);

      RAISE;

  END;

      FOR n_data IN l_data LOOP

      

  HR_JOB_API.CREATE_JOB

  (p_validate                      => FALSE

  ,p_business_group_id             => ln_business_group_id

  ,p_date_from                     => TO_DATE('01-01-1996','DD-MM-YYYY')

  ,p_comments                      => 'JOBS'

--  ,p_date_to                       => NULL

  ,p_job_group_id                  => ln_job_group_id

  ,p_concat_segments               => n_data.segment1

  ,p_language_code                 => 'TR'

  ,p_job_id                            => ln_job_id

  ,p_object_version_number         => ln_object_version_number

  ,p_job_definition_id             => ln_job_definition_id

  ,p_name                          => lv_job_name

  );

  

  IF  ln_job_id IS NOT NULL THEN

  

    update  XX.XX_PER_JOBS set job_name=lv_job_name,new_job_id=ln_job_id,new_job_definition_id=ln_job_definition_id

    where job_id = n_data.job_id;

  

  COMMIT;

 END IF;

 

 DBMS_OUTPUT.PUT_LINE('JOB ID: '||ln_job_id);

  DBMS_OUTPUT.PUT_LINE('OBJECT_VERSION_NUMBER: '||ln_object_version_number);

  DBMS_OUTPUT.PUT_LINE('JOB_DEFINITION_ID: '||ln_job_definition_id);

  DBMS_OUTPUT.PUT_LINE('JOB_NAME: '||lv_job_name);

 

END LOOP;

  

EXCEPTION

    WHEN OTHERS THEN

      dbms_output.put_line('Unable to create a job.Error:'||SQLERRM);

      RAISE; 

END;

No comments:

Post a Comment