[Home] [Help]
PACKAGE BODY: APPS.AMS_CPAG_QUERIES_PKG
Source
1 package body AMS_CPAG_QUERIES_PKG as
2 /* $Header: amslcqrb.pls 115.0 2002/06/13 19:01:57 gdeodhar noship $ */
3 procedure INSERT_ROW (
4 X_ROWID in out VARCHAR2,
5 X_QUERY_ID in NUMBER,
6 X_QUERY_TEXT in VARCHAR2,
7 X_UPLOAD_DATE in DATE,
8 X_EXPIRATION_DATE in DATE,
9 X_CREATION_DATE in DATE,
10 X_CREATED_BY in NUMBER,
11 X_LAST_UPDATE_DATE in DATE,
12 X_LAST_UPDATED_BY in NUMBER,
13 X_LAST_UPDATE_LOGIN in NUMBER,
14 X_OBJECT_VERSION_NUMBER in NUMBER
15 ) is
16 cursor C is select ROWID from AMS_CPAG_QUERIES
17 where QUERY_ID = X_QUERY_ID
18 ;
19 begin
20 insert into AMS_CPAG_QUERIES (
21 QUERY_ID,
22 QUERY_TEXT,
23 UPLOAD_DATE,
24 EXPIRATION_DATE,
25 CREATION_DATE,
26 CREATED_BY,
27 LAST_UPDATE_DATE,
28 LAST_UPDATED_BY,
29 LAST_UPDATE_LOGIN,
30 OBJECT_VERSION_NUMBER
31 ) values (
32 X_QUERY_ID,
33 X_QUERY_TEXT,
34 X_UPLOAD_DATE,
35 X_EXPIRATION_DATE,
36 X_CREATION_DATE,
37 X_CREATED_BY,
38 X_LAST_UPDATE_DATE,
39 X_LAST_UPDATED_BY,
40 X_LAST_UPDATE_LOGIN,
41 X_OBJECT_VERSION_NUMBER
42 );
43
44 open c;
45 fetch c into X_ROWID;
46 if (c%notfound) then
47 close c;
48 raise no_data_found;
49 end if;
50 close c;
51
52 end INSERT_ROW;
53
54 procedure LOCK_ROW (
55 X_QUERY_ID in NUMBER,
56 X_OBJECT_VERSION_NUMBER in NUMBER,
57 X_QUERY_TEXT in VARCHAR2,
58 X_UPLOAD_DATE in DATE,
59 X_EXPIRATION_DATE in DATE
60 ) is
61 cursor c is select
62 OBJECT_VERSION_NUMBER
63 ,QUERY_TEXT
64 ,UPLOAD_DATE
65 ,EXPIRATION_DATE
66 from AMS_CPAG_QUERIES
67 where QUERY_ID = X_QUERY_ID
68 for update of QUERY_ID nowait;
69 recinfo c%rowtype;
70
71 begin
72 open c;
73 fetch c into recinfo;
74 if (c%notfound) then
75 close c;
76 fnd_message.set_name('FND', 'FORM_RECORD_DELETED');
77 app_exception.raise_exception;
78 end if;
79 close c;
80 if ( ((recinfo.OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER)
81 OR ((recinfo.OBJECT_VERSION_NUMBER is null) AND (X_OBJECT_VERSION_NUMBER is null)))
82 AND ((recinfo.QUERY_TEXT = X_QUERY_TEXT)
83 OR ((recinfo.QUERY_TEXT is null) AND (X_QUERY_TEXT is null)))
84 AND ((recinfo.UPLOAD_DATE = X_UPLOAD_DATE)
85 OR ((recinfo.UPLOAD_DATE is null) AND (X_UPLOAD_DATE is null)))
86 AND ((recinfo.EXPIRATION_DATE = X_EXPIRATION_DATE)
87 OR ((recinfo.EXPIRATION_DATE is null) AND (X_EXPIRATION_DATE is null)))
88 ) then
89 null;
90 else
91 fnd_message.set_name('FND', 'FORM_RECORD_CHANGED');
92 app_exception.raise_exception;
93 end if;
94
95 return;
96 end LOCK_ROW;
97
98 procedure UPDATE_ROW (
99 X_QUERY_ID in NUMBER,
100 X_OBJECT_VERSION_NUMBER in NUMBER,
101 X_QUERY_TEXT in VARCHAR2,
102 X_UPLOAD_DATE in DATE,
103 X_EXPIRATION_DATE in DATE,
104 X_LAST_UPDATE_DATE in DATE,
105 X_LAST_UPDATED_BY in NUMBER,
106 X_LAST_UPDATE_LOGIN in NUMBER
107 ) is
108 begin
109 update AMS_CPAG_QUERIES set
110 OBJECT_VERSION_NUMBER = X_OBJECT_VERSION_NUMBER,
111 QUERY_TEXT = X_QUERY_TEXT,
112 UPLOAD_DATE = X_UPLOAD_DATE,
113 EXPIRATION_DATE = X_EXPIRATION_DATE,
114 LAST_UPDATE_DATE = X_LAST_UPDATE_DATE,
115 LAST_UPDATED_BY = X_LAST_UPDATED_BY,
116 LAST_UPDATE_LOGIN = X_LAST_UPDATE_LOGIN
117 where QUERY_ID = X_QUERY_ID;
118
119 if (sql%notfound) then
120 raise no_data_found;
121 end if;
122 end UPDATE_ROW;
123
124 procedure DELETE_ROW (
125 X_QUERY_ID in NUMBER
126 ) is
127 begin
128 delete from AMS_CPAG_QUERIES
129 where QUERY_ID = X_QUERY_ID;
130
131 if (sql%notfound) then
132 raise no_data_found;
133 end if;
134
135 end DELETE_ROW;
136
137 procedure LOAD_ROW(
138 X_QUERY_ID in NUMBER,
139 X_QUERY_TEXT in VARCHAR2,
140 X_UPLOAD_DATE in DATE,
141 X_EXPIRATION_DATE in DATE,
142 X_OWNER in VARCHAR2
143 ) is
144
145 l_user_id number := 0;
146 l_obj_verno number;
147 l_dummy_char varchar2(1);
148 l_row_id varchar2(100);
149
150 cursor c_obj_verno is
151 select object_version_number
152 from AMS_CPAG_QUERIES
153 where query_id = X_QUERY_ID;
154
155 cursor c_chk_qry_exists is
156 select 'x'
157 from AMS_CPAG_QUERIES
158 where QUERY_ID = X_QUERY_ID;
159
160 BEGIN
161
162 if X_OWNER = 'SEED' then
163 l_user_id := 1;
164 end if;
165
166 open c_chk_qry_exists;
167 fetch c_chk_qry_exists into l_dummy_char;
168 if c_chk_qry_exists%notfound
169 then
170 close c_chk_qry_exists;
171
172 l_obj_verno := 1;
173
174 AMS_CPAG_QUERIES_PKG.INSERT_ROW(
175 X_ROWID => l_row_id,
176 X_QUERY_ID => X_QUERY_ID,
177 X_QUERY_TEXT => X_QUERY_TEXT,
178 X_UPLOAD_DATE => X_UPLOAD_DATE,
179 X_EXPIRATION_DATE => X_EXPIRATION_DATE,
180 X_CREATION_DATE => SYSDATE,
181 X_CREATED_BY => l_user_id,
182 X_LAST_UPDATE_DATE => SYSDATE,
183 X_LAST_UPDATED_BY => l_user_id,
184 X_LAST_UPDATE_LOGIN => 0,
185 X_OBJECT_VERSION_NUMBER => l_obj_verno
186 );
187 else
188 close c_chk_qry_exists;
189 open c_obj_verno;
190 fetch c_obj_verno into l_obj_verno;
191 close c_obj_verno;
192 AMS_CPAG_QUERIES_PKG.UPDATE_ROW(
193 X_QUERY_ID => X_QUERY_ID,
194 X_QUERY_TEXT => X_QUERY_TEXT,
195 X_UPLOAD_DATE => X_UPLOAD_DATE,
196 X_EXPIRATION_DATE => X_EXPIRATION_DATE,
197 X_LAST_UPDATE_DATE => SYSDATE,
198 X_LAST_UPDATED_BY => l_user_id,
199 X_LAST_UPDATE_LOGIN => 0,
200 X_OBJECT_VERSION_NUMBER => l_obj_verno + 1
201 );
202 end if;
203
204 END LOAD_ROW;
205
206 end AMS_CPAG_QUERIES_PKG;