DBA Data[Home] [Help]

PACKAGE BODY: APPS.AP_PBATCH_SET_HEADER_PKG

Source


1 PACKAGE BODY AP_PBATCH_SET_HEADER_PKG as
2 /* $Header: apbsethb.pls 120.2 2004/10/27 01:28:34 pjena noship $ */
3 
4 PROCEDURE Insert_Row(X_Rowid                   IN OUT NOCOPY   VARCHAR2,
5                      X_Batch_Set_Name                   VARCHAR2,
6                      X_Batch_Set_Id            IN OUT NOCOPY   NUMBER,
7                      X_Last_Update_Date                 DATE,
8                      X_Last_Updated_By                  NUMBER,
9                      X_Last_Update_Login                NUMBER DEFAULT NULL,
10                      X_Creation_Date                    DATE DEFAULT NULL,
11                      X_Created_By                       NUMBER DEFAULT NULL,
12                      X_Inactive_Date                    DATE DEFAULT NULL,
13 		     X_calling_sequence	      IN	VARCHAR2
14   ) IS
15     l_Batch_Set_Id           NUMBER;
16     CURSOR C IS SELECT rowid FROM ap_pbatch_sets
17                  WHERE batch_set_id = l_Batch_Set_Id;
18     current_calling_sequence VARCHAR2(2000);
19     debug_info               VARCHAR2(100);
20 
21    BEGIN
22     -- Update the calling sequence
23     --
24        current_calling_sequence :=
25        'AP_PBATCH_SET_HEADER_PKG.INSERT_ROW<-'||X_Calling_Sequence;
26 
27        debug_info := 'Get next Batch set Id';
28 
29        select ap_pbatch_sets_s.nextval
30        into l_batch_set_id
31        from sys.dual;
32 
33        debug_info := 'Insert into ap_pbatch_sets';
34        INSERT INTO ap_pbatch_sets(
35               batch_set_name,
36               batch_set_id,
37               inactive_date,
38               last_update_date,
39               last_updated_by,
40               last_update_login,
41               creation_date,
42               created_by
43              ) VALUES (
44               X_Batch_Set_Name,
45               l_Batch_Set_Id,
46               X_Inactive_Date,
47               X_Last_Update_Date,
48               X_Last_Updated_By,
49               X_Last_Update_Login,
50               X_Creation_Date,
51               X_Created_By
52               );
53 
54    debug_info := 'Open cursor C';
55     OPEN C;
56     debug_info := 'Fetch cursor C';
57     FETCH C INTO X_Rowid;
58     if (C%NOTFOUND) then
59       debug_info := 'Close cursor C - ROW NOTFOUND';
60       CLOSE C;
61       Raise NO_DATA_FOUND;
62     end if;
63     debug_info := 'Close cursor C';
64     CLOSE C;
65     X_Batch_Set_Id := l_Batch_Set_Id ;
66 
67     EXCEPTION
68      WHEN OTHERS THEN
69       if (SQLCODE <> -20001) then
70         FND_MESSAGE.SET_NAME('SQLAP', 'AP_DEBUG');
71         FND_MESSAGE.SET_TOKEN('ERROR', SQLERRM);
72         FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE', current_calling_sequence);
73         FND_MESSAGE.SET_TOKEN('PARAMETERS', 'Batch Set Id = '||X_Batch_Set_Id
74                                        ||', ROWID = '||X_ROWID);
75         FND_MESSAGE.SET_TOKEN('DEBUG_INFO', debug_info);
76       end if;
77       APP_EXCEPTION.RAISE_EXCEPTION;
78 
79   END Insert_Row;
80 
81     PROCEDURE Lock_Row(X_Rowid                          VARCHAR2,
82                        X_Batch_Set_Name                 VARCHAR2,
83                        X_Batch_Set_Id                   NUMBER,
84                        X_Inactive_Date                  DATE DEFAULT NULL,
85 		       X_calling_sequence	IN	VARCHAR2
86 
87   ) IS
88     CURSOR C IS
89         SELECT *
90         FROM   ap_pbatch_sets
91         WHERE  rowid = X_Rowid
92         FOR UPDATE of Batch_Set_Name NOWAIT;
93     Recinfo C%ROWTYPE;
94     current_calling_sequence VARCHAR2(2000);
95     debug_info               VARCHAR2(100);
96   BEGIN
97     -- Update the calling sequence
98     --
99     current_calling_sequence :=
100      'AP_PBATCH_SET_HEADER_PKG.LOCK_ROW<-'||X_Calling_Sequence;
101 
102     debug_info := 'Open cursor C';
103     OPEN C;
104     debug_info := 'Fetch cursor C';
105     FETCH C INTO Recinfo;
106     if (C%NOTFOUND) then
107       debug_info := 'Close cursor C -ROW NOTFOUND';
108       CLOSE C;
109       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_DELETED');
110       APP_EXCEPTION.Raise_Exception;
111     end if;
112     debug_info := 'Close cursor C';
113     CLOSE C;
114     if (
115                (Recinfo.batch_set_name =  X_Batch_Set_Name)
116            AND (Recinfo.batch_set_id =  X_Batch_Set_Id)
117        ) then
118       return;
119     else
120       FND_MESSAGE.Set_Name('FND', 'FORM_RECORD_CHANGED');
121       APP_EXCEPTION.Raise_Exception;
122     end if;
123 
124     EXCEPTION
125      WHEN OTHERS THEN
126       IF (SQLCODE <> -20001) THEN
127        IF (SQLCODE = -54) THEN
128          FND_MESSAGE.SET_NAME('SQLAP','AP_RESOURCE_BUSY');
129        ELSE
130          FND_MESSAGE.SET_NAME('SQLAP', 'AP_DEBUG');
131          FND_MESSAGE.SET_TOKEN('ERROR', SQLERRM);
132          FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE', current_calling_sequence);
133          FND_MESSAGE.SET_TOKEN('PARAMETERS','Batch Set Name = '||
134                                 X_Batch_Set_Name
135                                ||', ROWID = '||X_Rowid);
136          FND_MESSAGE.SET_TOKEN('DEBUG_INFO', debug_info);
137        END IF;
138       END IF;
139       APP_EXCEPTION.RAISE_EXCEPTION;
140 
141   END Lock_Row;
142 
143   PROCEDURE Update_Row(X_Rowid                          VARCHAR2,
144                        X_Batch_Set_Name                 VARCHAR2,
145                        X_Batch_Set_Id                   NUMBER,
146                        X_Last_Update_Date               DATE,
147                        X_Last_Updated_By                NUMBER,
148                        X_Last_Update_Login              NUMBER DEFAULT NULL,
149                        X_Creation_Date                  DATE DEFAULT NULL,
150                        X_Created_By                     NUMBER DEFAULT NULL,
151                        X_Inactive_Date                  DATE DEFAULT NULL,
152 		       X_calling_sequence	IN	VARCHAR2
153 
154   ) IS
155     current_calling_sequence VARCHAR2(2000);
156     debug_info               VARCHAR2(100);
157   BEGIN
158     -- Update the calling sequence
159     --
160     current_calling_sequence :=
161      'AP_PBATCH_SET_HEADER_PKG.UPDATE_ROW<-'||X_Calling_Sequence;
162 
163     debug_info := 'Update ap_pbatch_sets';
164     UPDATE ap_pbatch_sets
165     SET
166        batch_set_name                  =     X_Batch_Set_Name,
167        batch_set_id                    =     X_Batch_Set_Id,
168        inactive_date                   =     X_Inactive_Date,
169        last_update_date                =     X_Last_Update_Date,
170        last_updated_by                 =     X_Last_Updated_By,
171        last_update_login               =     X_Last_Update_Login
172     WHERE rowid = X_Rowid;
173 
174     if (SQL%NOTFOUND) then
175       Raise NO_DATA_FOUND;
176     end if;
177 
178     EXCEPTION
179      WHEN OTHERS THEN
180       if (SQLCODE <> -20001) then
181         FND_MESSAGE.SET_NAME('SQLAP', 'AP_DEBUG');
182         FND_MESSAGE.SET_TOKEN('ERROR', SQLERRM);
183         FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE', current_calling_sequence);
184         FND_MESSAGE.SET_TOKEN('PARAMETERS', 'Batch Set Id ='||X_Batch_Set_Id
185                                         ||', ROWID = '||X_Rowid);
186         FND_MESSAGE.SET_TOKEN('DEBUG_INFO', debug_info);
187       end if;
188       APP_EXCEPTION.RAISE_EXCEPTION;
189   END Update_Row;
190 
191 /*
192    PROCEDURE Delete_Row(X_Rowid 				VARCHAR2,
193 		       X_calling_sequence	IN	VARCHAR2) IS
194 
195     current_calling_sequence VARCHAR2(2000);
196     debug_info               VARCHAR2(100);
197 
198   BEGIN
199     -- Update the calling sequence
200     --
201     current_calling_sequence :=
202      'AP_PBATCH_SET_HEADER_PKG.DELETE_ROW<-'||X_Calling_Sequence;
203 
204     debug_info := 'Delete from ap_pbatch_sets';
205     DELETE FROM ap_pbatch_sets
206     WHERE rowid = X_Rowid;
207 
208     if (SQL%NOTFOUND) then
209       Raise NO_DATA_FOUND;
210     end if;
211 
212     EXCEPTION
213      WHEN OTHERS THEN
214       if (SQLCODE <> -20001) then
215         FND_MESSAGE.SET_NAME('SQLAP', 'AP_DEBUG');
216         FND_MESSAGE.SET_TOKEN('ERROR', SQLERRM);
217         FND_MESSAGE.SET_TOKEN('CALLING_SEQUENCE', current_calling_sequence);
218         FND_MESSAGE.SET_TOKEN('PARAMETERS', 'ROWID = ' || X_Rowid);
219         FND_MESSAGE.SET_TOKEN('DEBUG_INFO', debug_info);
220       end if;
221       APP_EXCEPTION.RAISE_EXCEPTION;
222   END Delete_Row;
223 */
224 
225 END AP_PBATCH_SET_HEADER_PKG;