DBA Data[Home] [Help]

PACKAGE BODY: APPS.IGI_BUD_PROFILE_PERIODS_PKG

Source


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