[Home] [Help]
PACKAGE BODY: APPS.QP_OA_DELAYED_REQUESTS_PVT
Source
1 PACKAGE BODY QP_OA_Delayed_Requests_PVT AS
2 /* $Header: QPXVJREB.pls 120.0 2005/06/02 01:15:30 appldev noship $ */
3
4
5 -- Global constant holding the package name
6
7 G_PKG_NAME CONSTANT VARCHAR2(30) := 'QP_OA_Delayed_Requests_PVT';
8
9 PROCEDURE insert_msg (l_request system.QP_FWK_DELAYED_REQ_REC_OBJECT,
10 l_return_status varchar2) as
11 pragma AUTONOMOUS_TRANSACTION;
12 BEGIN
13
14 INSERT INTO qp_fwk_delayed_requests(
15 request_type,
16 entity_id,
17 entity_code,
18 status,
19 request_unique_key1,
20 request_unique_key2,
21 request_unique_key3,
22 request_unique_key4,
23 request_unique_key5,
24 param1,
25 param2,
26 param3,
27 param4,
28 param5,
29 param6,
30 param7,
31 param8,
32 param9,
33 param10,
34 param11,
35 param12,
36 param13,
37 param14,
38 param15,
39 param16,
40 param17,
41 param18,
42 param19,
43 param20,
44 param21,
45 param22,
46 param23,
47 param24,
48 param25,
49 long_param1)
50 VALUES(
51 l_request.request_type ,
52 l_request.entity_id,
53 l_request.entity_code,
54 l_return_status,
55 l_request.request_unique_key1,
56 l_request.request_unique_key2,
57 l_request.request_unique_key3,
58 l_request.request_unique_key4,
59 l_request.request_unique_key5,
60 l_request.param1,
61 l_request.param2,
62 l_request.param3,
63 l_request.param4,
64 l_request.param5,
65 l_request.param6,
66 l_request.param7,
67 l_request.param8,
68 l_request.param9,
69 l_request.param10,
70 l_request.param11,
71 l_request.param12,
72 l_request.param13,
73 l_request.param14,
74 l_request.param15,
75 l_request.param16,
76 l_request.param17,
77 l_request.param18,
78 l_request.param19,
79 l_request.param20,
80 l_request.param21,
81 l_request.param22,
82 l_request.param23,
83 l_request.param24,
84 l_request.param25,
85 l_request.long_param1);
86
87 COMMIT;
88
89 END insert_msg;
90
91 PROCEDURE Execute(requestTbl IN system.QP_FWK_DELAYED_REQ_TAB_OBJECT,
92 x_error_request_type OUT NOCOPY VARCHAR2,
93 x_error_entity_id OUT NOCOPY NUMBER,
94 x_error_entity_code OUT NOCOPY VARCHAR2,
95 x_error_type OUT NOCOPY VARCHAR2,
96 x_return_status OUT NOCOPY VARCHAR2,
97 x_return_status_text OUT NOCOPY VARCHAR2) is
98
99 l_request system.QP_FWK_DELAYED_REQ_REC_OBJECT;
100 l_return_status VARCHAR2(30);
101
102 BEGIN
103
104 SAVEPOINT delayedRequestSavePoint;
105
106 x_return_status := FND_API.G_RET_STS_SUCCESS;
107
108 FOR i IN 1 .. requestTbl.COUNT
109 LOOP
110
111 l_request := requestTbl(i);
112
113 QP_Delayed_Requests_PVT.Log_Request(
114 l_request.entity_code,
115 l_request.entity_id,
116 l_request.requesting_entity_code,
117 l_request.requesting_entity_id,
118 l_request.request_type,
119 l_request.request_unique_key1,
120 l_request.request_unique_key2,
121 l_request.request_unique_key3,
122 l_request.request_unique_key4,
123 l_request.request_unique_key5,
124 l_request.param1,
125 l_request.param2,
126 l_request.param3,
127 l_request.param4,
128 l_request.param5,
129 l_request.param6,
130 l_request.param7,
131 l_request.param8,
132 l_request.param9,
133 l_request.param10,
134 l_request.param11,
135 l_request.param12,
136 l_request.param13,
137 l_request.param14,
138 l_request.param15,
139 l_request.param16,
140 l_request.param17,
141 l_request.param18,
142 l_request.param19,
143 l_request.param20,
144 l_request.param21,
145 l_request.param22,
146 l_request.param23,
147 l_request.param24,
148 l_request.param25,
149 l_request.long_param1,
150 l_return_status);
151
152 IF (l_return_status IN (FND_API.G_RET_STS_UNEXP_ERROR,FND_API.G_RET_STS_ERROR)) THEN
153 x_error_type := 'LOGGING';
154 END IF;
155
156 IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
157 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
158 ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
159 RAISE FND_API.G_EXC_ERROR;
160 END IF;
161
162
163 END LOOP;
164
165 FOR i in 1 .. requestTbl.COUNT
166 LOOP
167
168 l_request := requestTbl(i);
169
170 QP_DELAYED_REQUESTS_PVT.Process_Request_For_ReqType(l_request.request_type,FND_API.G_TRUE,l_return_status);
171
172 insert_msg(l_request,l_return_status);
173
174 /*insert into del_request_test values(l_request.request_type,l_request.entity_id,
175 l_request.entity_code, l_return_status);*/
176
177 IF (l_return_status IN (FND_API.G_RET_STS_UNEXP_ERROR,FND_API.G_RET_STS_ERROR)) THEN
178 x_error_type := 'DELAYED_REQUEST';
179 x_error_request_type := l_request.request_type;
180 x_error_entity_id := l_request.entity_id;
181 x_error_entity_code := l_request.entity_code;
182 END IF;
183
184 IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
185 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
186 ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
187 RAISE FND_API.G_EXC_ERROR;
188 END IF;
189
190
191 END LOOP;
192
193 oe_msg_pub.initialize;
194 QP_Delayed_Requests_PVT.Clear_Request(l_return_status);
195
196 EXCEPTION
197
198 WHEN FND_API.G_EXC_ERROR THEN
199 ROLLBACK TO delayedRequestSavePoint;
200 x_return_status := FND_API.G_RET_STS_ERROR;
201 x_return_status_text := oe_msg_pub.get(1,'F');
202 oe_msg_pub.initialize;
203 QP_Delayed_Requests_PVT.Clear_Request(l_return_status);
204
205 WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
206 ROLLBACK TO delayedRequestSavePoint;
207 x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
208 x_return_status_text := oe_msg_pub.get(1,'F');
209 oe_msg_pub.initialize;
210 QP_Delayed_Requests_PVT.Clear_Request(l_return_status);
211
212 WHEN OTHERS THEN
213 ROLLBACK TO delayedRequestSavePoint;
214 IF OE_MSG_PUB.Check_MSg_Level(OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
215 THEN
216 OE_MSG_PUB.Add_Exc_Msg
217 (G_PKG_NAME
218 ,'LOGREQUEST');
219 END IF;
220 x_return_status := FND_API.G_RET_STS_ERROR;
221 x_return_status_text := oe_msg_pub.get(1,'F');
222 oe_msg_pub.initialize;
223 QP_Delayed_Requests_PVT.Clear_Request(l_return_status);
224
225 END;
226
227
228 END QP_OA_Delayed_Requests_PVT;