Sunday, February 14, 2016

Find Date Track Mode

DECLARE
ln_assignment_id NUMBER;

lb_correction            VARCHAR2(100);
lb_update                VARCHAR2(100);
lb_update_override       VARCHAR2(100);
lb_update_change_insert  VARCHAR2(100);
lc_dt_ud_mode            VARCHAR2(100);

lc_error_details         VARCHAR2(4000);


BEGIN
   -- Find Date Track Mode
   -- --------------------------------
   dt_api.find_dt_upd_modes
   (    p_effective_date            => TO_DATE('12-JUN-2011'),
        p_base_table_name           => 'PER_ALL_ASSIGNMENTS_F',
        p_base_key_column           => 'ASSIGNMENT_ID',
        p_base_key_value            => ln_assignment_id,
         -- Output data elements
         -- --------------------------------
         p_correction             => lb_correction,
         p_update                 => lb_update,
         p_update_override        => lb_update_override,
         p_update_change_insert   => lb_update_change_insert
     );
 

   IF ( lb_update_override = TRUE OR lb_update_change_insert = TRUE )
   THEN
       -- UPDATE_OVERRIDE
       -- ---------------------------------
       lc_dt_ud_mode := 'UPDATE_OVERRIDE';
   END IF;



  IF ( lb_correction = TRUE )
  THEN
      -- CORRECTION
      -- ----------------------
     lc_dt_ud_mode := 'CORRECTION';
  END IF;



  IF ( lb_update = TRUE )
  THEN
      -- UPDATE
      -- --------------
      lc_dt_ud_mode := 'UPDATE';
   END IF;
 
EXCEPTION
  WHEN OTHERS THEN
    lc_error_details :=SUBSTR(SQLERRM,1,4000);
END;