DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGI_SAP_DEPT_APPROVERS_PKG

Source


1 PACKAGE BODY IGI_SAP_DEPT_APPROVERS_PKG as
2 -- $Header: igisiacb.pls 120.4.12000000.1 2007/09/12 11:47:25 mbremkum ship $
3 
4   l_debug_level number:=FND_LOG.G_CURRENT_RUNTIME_LEVEL;
5 
6   l_state_level number:=FND_LOG.LEVEL_STATEMENT;
7   l_proc_level number:=FND_LOG.LEVEL_PROCEDURE;
8   l_event_level number:=FND_LOG.LEVEL_EVENT;
9   l_excep_level number:=FND_LOG.LEVEL_EXCEPTION;
10   l_error_level number:=FND_LOG.LEVEL_ERROR;
11   l_unexp_level number:=FND_LOG.LEVEL_UNEXPECTED;
12 
13 
14   PROCEDURE Insert_Row(X_Rowid                   IN OUT NOCOPY VARCHAR2,
15                        X_Group_Id                       NUMBER,
16                        X_Approver_Id                    NUMBER,
17                        X_Start_Date_Active              DATE,
18                        X_End_Date_Active                DATE,
19                        X_Creation_Date                  DATE,
20                        X_Created_By                     NUMBER,
21                        X_Last_Update_Login              NUMBER,
22                        X_Last_Update_Date               DATE,
23                        X_Last_Updated_By                NUMBER
24   ) IS
25    CURSOR C IS SELECT rowid FROM IGI_SAP_DEPARTMENT_APPROVERS
26                  WHERE group_id = X_Group_Id
27                  AND   approver_id = X_Approver_Id;
28    BEGIN
29        INSERT INTO IGI_SAP_DEPARTMENT_APPROVERS(
30               group_id,
31               approver_id,
32               start_date_active,
33               end_date_active,
34               creation_date,
35               created_by,
36               last_update_login,
37               last_update_date,
38               last_updated_by
39              ) VALUES (
40               X_Group_Id,
41               X_Approver_Id,
42               X_Start_Date_Active,
43               X_End_Date_Active,
44               X_Creation_Date,
45               X_Created_By,
46               X_Last_Update_Login,
47               X_Last_Update_Date,
48               X_Last_Updated_By);
49 
50     OPEN C;
51     FETCH C INTO X_Rowid;
52     if (C%NOTFOUND) then
53       CLOSE C;
54       Raise NO_DATA_FOUND;
55     end if;
56     CLOSE C;
57   END Insert_Row;
58 
59 
60   PROCEDURE Lock_Row(X_Rowid                            VARCHAR2,
61                      X_Group_Id                         NUMBER,
62                      X_Approver_Id                      NUMBER,
63                      X_Start_Date_Active                DATE,
64                      X_End_Date_Active                  DATE
65   ) IS
66     CURSOR C IS
67         SELECT *
68  	FROM IGI_SAP_DEPARTMENT_APPROVERS
69         WHERE  rowid = X_Rowid
70         FOR UPDATE of Group_Id NOWAIT;
71     Recinfo C%ROWTYPE;
72   BEGIN
73     OPEN C;
74     FETCH C INTO Recinfo;
75     if (C%NOTFOUND) then
76       CLOSE C;
77       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
78       --Bug 3199481 (start)
79       If (l_unexp_level >= l_debug_level) then
80          FND_LOG.MESSAGE(l_unexp_level,'igi.plsql.igi_sap_dept_approvers_pkg.lock_row.Msg1',FALSE);
81       End if;
82       --Bug 3199481 (end)
83       APP_EXCEPTION.Raise_Exception;
84     end if;
85     CLOSE C;
86     if (
87               (Recinfo.group_id =  X_Group_Id)
88            AND (Recinfo.approver_id =  X_Approver_Id)
89            AND (Recinfo.start_date_active =  X_Start_Date_Active)
90            AND (   (Recinfo.end_date_active =  X_End_Date_Active)
91                 OR (    (Recinfo.end_date_active IS NULL)
92                     AND (X_End_Date_Active IS NULL)))
93       ) then
94       return;
95     else
96       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
97        --Bug 3199481 (start)
98       If (l_unexp_level >= l_debug_level) then
99          FND_LOG.MESSAGE(l_unexp_level,'igi.plsql.igi_sap_dept_approvers_pkg.lock_row.Msg2',FALSE);
100       End if;
101       --Bug 3199481 (end)
102       APP_EXCEPTION.Raise_Exception;
103     end if;
104   END Lock_Row;
105   PROCEDURE Update_Row(X_Rowid                          VARCHAR2,
106                        X_Group_Id                       NUMBER,
107                        X_Approver_Id                    NUMBER,
108                        X_Start_Date_Active              DATE,
109                        X_End_Date_Active                DATE,
110                        X_Last_Update_Login              NUMBER,
111                        X_Last_Update_Date               DATE,
112                        X_Last_Updated_By                NUMBER) IS
113   BEGIN
114  	UPDATE IGI_SAP_DEPARTMENT_APPROVERS
115     SET
116        group_id                        =     X_Group_Id,
117        approver_id                     =     X_Approver_Id,
118        start_date_active               =     X_Start_Date_Active,
119        end_date_active                 =     X_End_Date_Active,
120        last_update_login               =     X_Last_Update_Login,
121        last_update_date                =     X_Last_Update_Date,
122        last_updated_by                 =     X_Last_Updated_By
123     WHERE rowid = X_Rowid;
124     if (SQL%NOTFOUND) then
125       Raise NO_DATA_FOUND;
126     end if;
127   END Update_Row;
128   PROCEDURE Delete_Row(X_Rowid VARCHAR2) IS
129   BEGIN
130     DELETE FROM IGI_SAP_DEPARTMENT_APPROVERS
131     WHERE rowid = X_Rowid;
132 
133     if (SQL%NOTFOUND) then
134       Raise NO_DATA_FOUND;
135     end if;
136   END Delete_Row;
137 
138 
139 END IGI_SAP_DEPT_APPROVERS_PKG;