DBA Data[Home] [Help]

PACKAGE BODY: APPS.HR_IT_EXTRA_ASSGT_RULES

Source


1 PACKAGE BODY hr_it_extra_assgt_rules AS
2   /* $Header: hritexas.pkb 115.2 2002/01/04 05:57:54 pkm ship       $ */
3   --
4   --
5   -- Service functions to return TRUE if the value passed has been changed.
6   --
7   FUNCTION val_changed(p_value IN NUMBER) RETURN BOOLEAN IS
8   BEGIN
9     RETURN (p_value IS NULL OR p_value <> hr_api.g_number);
10   END val_changed;
11   --
12   FUNCTION val_changed(p_value IN VARCHAR2) RETURN BOOLEAN IS
13   BEGIN
14     RETURN (p_value IS NULL OR p_value <> hr_api.g_varchar2);
15   END val_changed;
16   --
17   FUNCTION val_changed(p_value IN DATE) RETURN BOOLEAN IS
18   BEGIN
19     RETURN (p_value IS NULL OR p_value <> hr_api.g_date);
20   END val_changed;
21   --
22   --
23   -- Employment category:
24   --
25   -- It  is validated against the list of values held in the lookup type IT_EMP_CAT.
26   --
27   -- Note: Supports both real and API system values (these are passed when the value has not
28   --       been changed.
29   --
30   PROCEDURE extra_assignment_checks
31   (p_employment_category IN VARCHAR2) IS
32     --
33     --
34     -- Local variables.
35     --
36     l_emp_cat VARCHAR2(40);
37   BEGIN
38     IF val_changed(p_employment_category) AND p_employment_category IS NOT NULL THEN
39       BEGIN
40         SELECT lookup_code
41         INTO   l_emp_cat
42         FROM   hr_lookups
43         WHERE  lookup_type = 'IT_EMP_CAT'
44           AND  lookup_code = p_employment_category;
45       EXCEPTION
46         WHEN no_data_found THEN
47 	  hr_utility.set_message(800, 'HR_IT_INVALID_EMP_CAT');
48 	  hr_utility.raise_error;
49       END;
50     END IF;
51   END extra_assignment_checks;
52 END hr_it_extra_assgt_rules;