DBA Data[Home] [Help]

PACKAGE BODY: APPS.CSP_RS_CUST_RELATION_PUB

Source


1 PACKAGE BODY CSP_RS_CUST_RELATION_PUB as
2 /* $Header: cspprcrb.pls 115.6 2003/05/02 17:26:07 phegde noship $ */
3 -- Start of Comments
4 -- Package name     : CSP_RS_CUST_RELATION_PUB
5 -- Purpose          :
6 -- History          :
7 -- NOTE             :
8 -- End of Comments
9 
10 
11 G_PKG_NAME CONSTANT VARCHAR2(30):= 'CSP_RS_CUST_RELATION_PUB';
12 G_FILE_NAME CONSTANT VARCHAR2(12) := 'cspprcrb.pls';
13 
14 -- Start of Comments
15 -- ***************** Private Conversion Routines Values -> Ids **************
16 -- Purpose
17 --
18 -- This procedure takes a public RS_CUST_RELATION record as input. It may contain
19 -- values or ids. All values are then converted into ids and a
20 -- private RS_CUST_RELATIONrecord is returned for the private
21 -- API call.
22 --
23 -- Conversions:
24 --
25 -- Notes
26 --
27 -- 1. IDs take precedence over values. If both are present for a field, ID is used,
28 --    the value based parameter is ignored and a warning message is created.
29 -- 2. This is automatically generated procedure, it converts public record type to
30 --    private record type for all attributes.
31 --    Developer must manually add conversion logic to the attributes.
32 --
33 -- End of Comments
34 PROCEDURE Convert_RCR_Values_To_Ids(
35          P_RCR_Rec        IN   CSP_rs_cust_relation_PUB.RCR_Rec_Type,
36          x_pvt_RCR_rec    OUT NOCOPY   CSP_rs_cust_relation_PVT.RCR_Rec_Type
37 )
38 IS
39 -- Hint: Declare cursor and local variables
40 -- Example: CURSOR C_Get_Lookup_Code(X_Lookup_Type VARCHAR2, X_Meaning VARCHAR2) IS
41 --          SELECT lookup_code
42 --          FROM   as_lookups
43 --          WHERE  lookup_type = X_Lookup_Type and nls_upper(meaning) = nls_upper(X_Meaning);
44 l_any_errors       BOOLEAN   := FALSE;
45 BEGIN
46   -- Hint: Add logic to process value-id verification for RS_CUST_RELATION record.
47   --       Value based parameters should be converted to their equivalent ids.
48   --       Each value should resolve into one and only one id.
49   --       If this condition is not satisfied, API must report an error and assign l_any_errors to TRUE.
50   -- Example: Process Lead Source/Lead Source Code
51   -- If(p_opp_rec.lead_source_code is NOT NULL and p_opp_rec.lead_source_code <> FND_API.G_MISS_CHAR)
52   -- THEN
53   --     p_pvt_opp_rec.lead_source_code := p_opp_rec.lead_source_code;
54   --     IF(p_opp_rec.lead_source is NOT NULL and p_opp_rec.lead_source <> FND_API.G_MISS_CHAR)
55   --     THEN
56   --         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_SUCCESS)
57   --         THEN
58   --             FND_MESSAGE.Set_Name('AS','API_ATTRIBUTE_IGNORED');
59   --             FND_MESSAGE.Set_Token('COLUMN','LEAD_SOURCE',FALSE);
60   --             FND_MSG_PUB.Add;
61   --         END IF;
62   --     END IF;
63   -- ELSIF(p_opp_rec.lead_source is NOT NULL and p_opp_rec.lead_source <> FND_API.G_MISS_CHAR)
64   -- THEN
65   --     OPEN C_Get_Lookup_Code('LEAD_SOURCE', p_opp_rec.lead_source);
66   --     FETCH C_Get_Lookup_Code INTO l_val;
67   --     CLOSE C_Get_Lookup_Code;
68   --     p_pvt_opp_rec.lead_source_code := l_val;
69   --     IF(l_val IS NULL)
70   --     THEN
71   --         IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
72   --         THEN
73   --             FND_MESSAGE.Set_Name('AS','API_ATTRIBUTE_CONVERSION_ERROR'
74   --             FND_MESSAGE.Set_Token('COLUMN','LEAD_SOURCE', FALSE
75   --             FND_MESSAGE.Set_Token('VALUE', p_opp_rec.lead_source, FALSE
76   --             FND_MSG_PUB.Add;
77   --         END IF;
78   --         l_any_errors := TRUE;
79   --     END IF;
80   -- ELSE
81   --     p_pvt_opp_rec.lead_source_code := NULL;
82   -- END IF;
83 
84 
85   -- Now copy the rest of the columns to the private record
86   -- Hint: We provide copy all columns to the private record.
87   --       Developer should delete those fields which are used by Value-Id conversion above
88     -- Hint: Developer should remove some of the following statements because of inconsistent column name between table and view.
89 /*
90     x_pvt_RCR_rec.RS_CUST_RELATION_ID := P_RCR_Rec.RS_CUST_RELATION_ID;
91     x_pvt_RCR_rec.RESOURCE_TYPE := P_RCR_Rec.RESOURCE_TYPE;
92     x_pvt_RCR_rec.RESOURCE_ID := P_RCR_Rec.RESOURCE_ID;
93     x_pvt_RCR_rec.CUSTOMER_ID := P_RCR_Rec.CUSTOMER_ID;
94     x_pvt_RCR_rec.CREATED_BY := P_RCR_Rec.CREATED_BY;
95     x_pvt_RCR_rec.CREATION_DATE := P_RCR_Rec.CREATION_DATE;
96     x_pvt_RCR_rec.LAST_UPDATED_BY := P_RCR_Rec.LAST_UPDATED_BY;
97     x_pvt_RCR_rec.LAST_UPDATE_DATE := P_RCR_Rec.LAST_UPDATE_DATE;
98     x_pvt_RCR_rec.LAST_UPDATE_LOGIN := P_RCR_Rec.LAST_UPDATE_LOGIN;
99     x_pvt_RCR_rec.ATTRIBUTE_CATEGORY := P_RCR_Rec.ATTRIBUTE_CATEGORY;
100     x_pvt_RCR_rec.ATTRIBUTE1 := P_RCR_Rec.ATTRIBUTE1;
101     x_pvt_RCR_rec.ATTRIBUTE2 := P_RCR_Rec.ATTRIBUTE2;
102     x_pvt_RCR_rec.ATTRIBUTE3 := P_RCR_Rec.ATTRIBUTE3;
103     x_pvt_RCR_rec.ATTRIBUTE4 := P_RCR_Rec.ATTRIBUTE4;
104     x_pvt_RCR_rec.ATTRIBUTE5 := P_RCR_Rec.ATTRIBUTE5;
105     x_pvt_RCR_rec.ATTRIBUTE6 := P_RCR_Rec.ATTRIBUTE6;
106     x_pvt_RCR_rec.ATTRIBUTE7 := P_RCR_Rec.ATTRIBUTE7;
107     x_pvt_RCR_rec.ATTRIBUTE8 := P_RCR_Rec.ATTRIBUTE8;
108     x_pvt_RCR_rec.ATTRIBUTE9 := P_RCR_Rec.ATTRIBUTE9;
109     x_pvt_RCR_rec.ATTRIBUTE10 := P_RCR_Rec.ATTRIBUTE10;
110     x_pvt_RCR_rec.ATTRIBUTE11 := P_RCR_Rec.ATTRIBUTE11;
111     x_pvt_RCR_rec.ATTRIBUTE12 := P_RCR_Rec.ATTRIBUTE12;
112     x_pvt_RCR_rec.ATTRIBUTE13 := P_RCR_Rec.ATTRIBUTE13;
113     x_pvt_RCR_rec.ATTRIBUTE14 := P_RCR_Rec.ATTRIBUTE14;
114     x_pvt_RCR_rec.ATTRIBUTE15 := P_RCR_Rec.ATTRIBUTE15;
115 */
116 
117   -- If there is an error in conversion precessing, raise an error.
118     IF l_any_errors
119     THEN
120         raise FND_API.G_EXC_ERROR;
121     END IF;
122 
123 END Convert_RCR_Values_To_Ids;
124 
125 
126 PROCEDURE Create_rs_cust_relation(
127     P_Api_Version_Number         IN   NUMBER,
128     P_Init_Msg_List              IN   VARCHAR2     := FND_API.G_FALSE,
129     P_Commit                     IN   VARCHAR2     := FND_API.G_FALSE,
130     P_RCR_Rec     IN    RCR_Rec_Type  := G_MISS_RCR_REC,
131   --Hint: Add detail tables as parameter lists if it's master-detail relationship.
132     X_RS_CUST_RELATION_ID     OUT NOCOPY  NUMBER,
133     X_Return_Status              OUT NOCOPY  VARCHAR2,
134     X_Msg_Count                  OUT NOCOPY  NUMBER,
135     X_Msg_Data                   OUT NOCOPY  VARCHAR2
136     )
137 
138  IS
139 l_api_name                CONSTANT VARCHAR2(30) := 'Create_rs_cust_relation';
140 l_api_version_number      CONSTANT NUMBER   := 2.0;
141 l_pvt_RCR_rec    CSP_RS_CUST_RELATION_PVT.RCR_Rec_Type;
142  BEGIN
143       -- Standard Start of API savepoint
144       SAVEPOINT CREATE_RS_CUST_RELATION_PUB;
145 
146       -- Standard call to check for call compatibility.
147       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
148                          	             p_api_version_number,
149                                            l_api_name,
150                                            G_PKG_NAME)
151       THEN
152           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
153       END IF;
154 
155 
156       -- Initialize message list if p_init_msg_list is set to TRUE.
157       IF FND_API.to_Boolean( p_init_msg_list )
158       THEN
159           FND_MSG_PUB.initialize;
160       END IF;
161 
162 
163       -- Debug Message
164       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Public API: ' || l_api_name || 'start');
165 
166       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Start time:' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
167 
168       -- Initialize API return status to SUCCESS
169       x_return_status := FND_API.G_RET_STS_SUCCESS;
170 
171       --
172       -- API body
173       --
174 
175       -- Debug Message
176       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,'AS: Public API: Convert_RCR_Values_To_Ids');
177 
178       -- Convert the values to ids
179       --
180       Convert_RCR_Values_To_Ids (
181             p_RCR_rec       =>  p_RCR_rec,
182             x_pvt_RCR_rec   =>  l_pvt_RCR_rec
183       );
184 
185     -- Calling Private package: Create_RS_CUST_RELATION
186     -- Hint: Primary key needs to be returned
187       CSP_rs_cust_relation_PVT.Create_rs_cust_relation(
188       P_Api_Version_Number         => 2.0,
189       P_Init_Msg_List              => FND_API.G_FALSE,
190       P_Commit                     => FND_API.G_FALSE,
191       P_Validation_Level           => FND_API.G_VALID_LEVEL_FULL,
192       P_RCR_Rec  =>  l_pvt_RCR_Rec ,
193     -- Hint: Add detail tables as parameter lists if it's master-detail relationship.
194       X_RS_CUST_RELATION_ID     => x_RS_CUST_RELATION_ID,
195       X_Return_Status              => x_return_status,
196       X_Msg_Count                  => x_msg_count,
197       X_Msg_Data                   => x_msg_data);
198 
199 
200 
201       -- Check return status from the above procedure call
202       IF x_return_status = FND_API.G_RET_STS_ERROR then
203           raise FND_API.G_EXC_ERROR;
204       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
205           raise FND_API.G_EXC_UNEXPECTED_ERROR;
206       END IF;
207 
208       --
209       -- End of API body.
210       --
211 
212       -- Standard check for p_commit
213       IF FND_API.to_Boolean( p_commit )
214       THEN
215           COMMIT WORK;
216       END IF;
217 
218 
219       -- Debug Message
220       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Public API: ' || l_api_name || 'end');
221 
222       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
223 
224       -- Standard call to get message count and if count is 1, get message info.
225       FND_MSG_PUB.Count_And_Get
226       (  p_count          =>   x_msg_count,
227          p_data           =>   x_msg_data
228       );
229 
230       EXCEPTION
231           WHEN FND_API.G_EXC_ERROR THEN
232               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
233                    P_API_NAME => L_API_NAME
234                   ,P_PKG_NAME => G_PKG_NAME
235                   ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
236                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
237                   ,X_MSG_COUNT => X_MSG_COUNT
238                   ,X_MSG_DATA => X_MSG_DATA
239                   ,X_RETURN_STATUS => X_RETURN_STATUS);
240 
241           WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
242               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
243                    P_API_NAME => L_API_NAME
244                   ,P_PKG_NAME => G_PKG_NAME
245                   ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
246                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
247                   ,X_MSG_COUNT => X_MSG_COUNT
248                   ,X_MSG_DATA => X_MSG_DATA
249                   ,X_RETURN_STATUS => X_RETURN_STATUS);
250 
251           WHEN OTHERS THEN
252               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
253                    P_API_NAME => L_API_NAME
254                   ,P_PKG_NAME => G_PKG_NAME
255                   ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
256                   ,P_SQLCODE => SQLCODE
257                   ,P_SQLERRM => SQLERRM
258                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
259                   ,X_MSG_COUNT => X_MSG_COUNT
260                   ,X_MSG_DATA => X_MSG_DATA
261                   ,X_RETURN_STATUS => X_RETURN_STATUS);
262 End Create_rs_cust_relation;
263 
264 
265 -- Hint: Add corresponding update detail table procedures if it's master-detail relationship.
266 PROCEDURE Update_rs_cust_relation(
267     P_Api_Version_Number         IN   NUMBER,
268     P_Init_Msg_List              IN   VARCHAR2     := FND_API.G_FALSE,
269     P_Commit                     IN   VARCHAR2     := FND_API.G_FALSE,
270     P_Identity_Salesforce_Id     IN   NUMBER       := NULL,
271     P_RCR_Rec     IN    RCR_Rec_Type,
272     X_Return_Status              OUT NOCOPY  VARCHAR2,
273     X_Msg_Count                  OUT NOCOPY  NUMBER,
274     X_Msg_Data                   OUT NOCOPY  VARCHAR2
275     )
276 
277  IS
278 l_api_name                CONSTANT VARCHAR2(30) := 'Update_rs_cust_relation';
279 l_api_version_number      CONSTANT NUMBER   := 2.0;
280 l_pvt_RCR_rec  CSP_RS_CUST_RELATION_PVT.RCR_Rec_Type;
281  BEGIN
282       -- Standard Start of API savepoint
283       SAVEPOINT UPDATE_RS_CUST_RELATION_PUB;
284 
285       -- Standard call to check for call compatibility.
286       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
287                          	             p_api_version_number,
288                                            l_api_name,
289                                            G_PKG_NAME)
290       THEN
291           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
292       END IF;
293 
294 
295       -- Initialize message list if p_init_msg_list is set to TRUE.
296       IF FND_API.to_Boolean( p_init_msg_list )
297       THEN
298           FND_MSG_PUB.initialize;
299       END IF;
300 
301 
302       -- Debug Message
303       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Public API: ' || l_api_name || 'start');
304 
305       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Start time:' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
306 
307       -- Initialize API return status to SUCCESS
308       x_return_status := FND_API.G_RET_STS_SUCCESS;
309 
310       --
311       -- API body
312       --
313 
314       -- Debug Message
315       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,'AS: Public API: Convert_RCR_Values_To_Ids');
316 
317       -- Convert the values to ids
318       --
319       Convert_RCR_Values_To_Ids (
320             p_RCR_rec       =>  p_RCR_rec,
321             x_pvt_RCR_rec   =>  l_pvt_RCR_rec
322       );
323 
324     CSP_rs_cust_relation_PVT.Update_rs_cust_relation(
325     P_Api_Version_Number         => 2.0,
326     P_Init_Msg_List              => FND_API.G_FALSE,
327     P_Commit                     => p_commit,
328     P_Validation_Level           => FND_API.G_VALID_LEVEL_FULL,
329     P_Identity_Salesforce_Id     => p_identity_salesforce_id,
330     P_RCR_Rec  =>  l_pvt_RCR_Rec ,
331     X_Return_Status              => x_return_status,
332     X_Msg_Count                  => x_msg_count,
333     X_Msg_Data                   => x_msg_data);
334 
335 
336 
337       -- Check return status from the above procedure call
338       IF x_return_status = FND_API.G_RET_STS_ERROR then
339           raise FND_API.G_EXC_ERROR;
340       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
341           raise FND_API.G_EXC_UNEXPECTED_ERROR;
342       END IF;
343 
344       --
345       -- End of API body
346       --
347 
348       -- Standard check for p_commit
349       IF FND_API.to_Boolean( p_commit )
350       THEN
351           COMMIT WORK;
352       END IF;
353 
354 
355       -- Debug Message
356       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Public API: ' || l_api_name || 'end');
357 
358       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
359 
360       -- Standard call to get message count and if count is 1, get message info.
361       FND_MSG_PUB.Count_And_Get
362       (  p_count          =>   x_msg_count,
363          p_data           =>   x_msg_data
364       );
365 
366       EXCEPTION
367           WHEN FND_API.G_EXC_ERROR THEN
368               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
369                    P_API_NAME => L_API_NAME
370                   ,P_PKG_NAME => G_PKG_NAME
371                   ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
372                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
373                   ,X_MSG_COUNT => X_MSG_COUNT
374                   ,X_MSG_DATA => X_MSG_DATA
375                   ,X_RETURN_STATUS => X_RETURN_STATUS);
376 
377           WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
378               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
379                    P_API_NAME => L_API_NAME
380                   ,P_PKG_NAME => G_PKG_NAME
381                   ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
382                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
383                   ,X_MSG_COUNT => X_MSG_COUNT
384                   ,X_MSG_DATA => X_MSG_DATA
385                   ,X_RETURN_STATUS => X_RETURN_STATUS);
386 
387           WHEN OTHERS THEN
388               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
389                    P_API_NAME => L_API_NAME
390                   ,P_PKG_NAME => G_PKG_NAME
391                   ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
392                   ,P_SQLCODE => SQLCODE
393                   ,P_SQLERRM => SQLERRM
394                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
395                   ,X_MSG_COUNT => X_MSG_COUNT
396                   ,X_MSG_DATA => X_MSG_DATA
397                   ,X_RETURN_STATUS => X_RETURN_STATUS);
398 End Update_rs_cust_relation;
399 
400 
401 -- Hint: Add corresponding delete detail table procedures if it's master-detail relationship.
402 --       The Master delete procedure may not be needed depends on different business requirements.
403 PROCEDURE Delete_rs_cust_relation(
404     P_Api_Version_Number         IN   NUMBER,
405     P_Init_Msg_List              IN   VARCHAR2     := FND_API.G_FALSE,
406     P_Commit                     IN   VARCHAR2     := FND_API.G_FALSE,
407     P_identity_salesforce_id     IN   NUMBER       := NULL,
408     P_RCR_Rec     IN RCR_Rec_Type,
409     X_Return_Status              OUT NOCOPY  VARCHAR2,
410     X_Msg_Count                  OUT NOCOPY  NUMBER,
411     X_Msg_Data                   OUT NOCOPY  VARCHAR2
412     )
413 
414  IS
415 l_api_name                CONSTANT VARCHAR2(30) := 'Delete_rs_cust_relation';
416 l_api_version_number      CONSTANT NUMBER   := 2.0;
417 l_pvt_RCR_rec  CSP_RS_CUST_RELATION_PVT.RCR_Rec_Type;
418  BEGIN
419       -- Standard Start of API savepoint
420       SAVEPOINT DELETE_RS_CUST_RELATION_PUB;
421 
422       -- Standard call to check for call compatibility.
423       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
424                          	             p_api_version_number,
425                                            l_api_name,
426                                            G_PKG_NAME)
427       THEN
428           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
429       END IF;
430 
431 
432       -- Initialize message list if p_init_msg_list is set to TRUE.
433       IF FND_API.to_Boolean( p_init_msg_list )
434       THEN
435           FND_MSG_PUB.initialize;
436       END IF;
437 
438 
439       -- Debug Message
440       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Public API: ' || l_api_name || 'start');
441 
442       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Start time:' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
443 
444       -- Initialize API return status to SUCCESS
445       x_return_status := FND_API.G_RET_STS_SUCCESS;
446 
447       --
448       -- API body
449       --
450 
451       -- Debug Message
452       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,'AS: Public API: Convert_RCR_Values_To_Ids');
453 
454       -- Convert the values to ids
455       --
456       Convert_RCR_Values_To_Ids (
457             p_RCR_rec       =>  p_RCR_rec,
458             x_pvt_RCR_rec   =>  l_pvt_RCR_rec
459       );
460 
461     CSP_rs_cust_relation_PVT.Delete_rs_cust_relation(
462     P_Api_Version_Number         => 2.0,
463     P_Init_Msg_List              => FND_API.G_FALSE,
464     P_Commit                     => p_commit,
465     P_Validation_Level           => FND_API.G_VALID_LEVEL_FULL,
466     P_Identity_Salesforce_Id      => p_identity_salesforce_id,
467     P_RCR_Rec  => l_pvt_RCR_Rec,
468     X_Return_Status              => x_return_status,
469     X_Msg_Count                  => x_msg_count,
470     X_Msg_Data                   => x_msg_data);
471 
472 
473       -- Check return status from the above procedure call
474       IF x_return_status = FND_API.G_RET_STS_ERROR then
475           raise FND_API.G_EXC_ERROR;
476       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
477           raise FND_API.G_EXC_UNEXPECTED_ERROR;
478       END IF;
479 
480       --
481       -- End of API body
482       --
483 
484       -- Standard check for p_commit
485       IF FND_API.to_Boolean( p_commit )
486       THEN
487           COMMIT WORK;
488       END IF;
489 
490 
491       -- Debug Message
492       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Public API: ' || l_api_name || 'end');
493 
494       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
495 
496       -- Standard call to get message count and if count is 1, get message info.
497       FND_MSG_PUB.Count_And_Get
498       (  p_count          =>   x_msg_count,
499          p_data           =>   x_msg_data
500       );
501 
502 
503       EXCEPTION
504           WHEN FND_API.G_EXC_ERROR THEN
505               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
506                    P_API_NAME => L_API_NAME
507                   ,P_PKG_NAME => G_PKG_NAME
508                   ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
509                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
510                   ,X_MSG_COUNT => X_MSG_COUNT
511                   ,X_MSG_DATA => X_MSG_DATA
512                   ,X_RETURN_STATUS => X_RETURN_STATUS);
513 
514           WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
515               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
516                    P_API_NAME => L_API_NAME
517                   ,P_PKG_NAME => G_PKG_NAME
518                   ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
519                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
520                   ,X_MSG_COUNT => X_MSG_COUNT
521                   ,X_MSG_DATA => X_MSG_DATA
522                   ,X_RETURN_STATUS => X_RETURN_STATUS);
523 
524           WHEN OTHERS THEN
525               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
526                    P_API_NAME => L_API_NAME
527                   ,P_PKG_NAME => G_PKG_NAME
528                   ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
529                   ,P_SQLCODE => SQLCODE
530                   ,P_SQLERRM => SQLERRM
531                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
532                   ,X_MSG_COUNT => X_MSG_COUNT
533                   ,X_MSG_DATA => X_MSG_DATA
534                   ,X_RETURN_STATUS => X_RETURN_STATUS);
535 End Delete_rs_cust_relation;
536 
537 
538 PROCEDURE Get_rs_cust_relation(
539     P_Api_Version_Number         IN   NUMBER,
540     P_Init_Msg_List              IN   VARCHAR2     := FND_API.G_FALSE,
541     P_identity_salesforce_id     IN   NUMBER       := NULL,
542     P_RCR_Rec     IN    CSP_rs_cust_relation_PUB.RCR_Rec_Type,
543   -- Hint: Add list of bind variables here
544     p_rec_requested              IN   NUMBER  := G_DEFAULT_NUM_REC_FETCH,
545     p_start_rec_prt              IN   NUMBER  := 1,
546     p_return_tot_count           IN   NUMBER  := FND_API.G_FALSE,
547   -- Hint: user defined record type
548     p_order_by_rec               IN   CSP_rs_cust_relation_PUB.RCR_sort_rec_type,
549     x_return_status              OUT NOCOPY  VARCHAR2,
550     x_msg_count                  OUT NOCOPY  NUMBER,
551     x_msg_data                   OUT NOCOPY  VARCHAR2,
552     X_RCR_Tbl  OUT NOCOPY  CSP_rs_cust_relation_PUB.RCR_Tbl_Type,
553     x_returned_rec_count         OUT NOCOPY  NUMBER,
554     x_next_rec_ptr               OUT NOCOPY  NUMBER,
555     x_tot_rec_count              OUT NOCOPY  NUMBER
556   -- other optional parameters
557 --  x_tot_rec_amount             OUT NOCOPY  NUMBER
558     )
559 
560  IS
561 l_api_name                CONSTANT VARCHAR2(30) := 'Get_rs_cust_relation';
562 l_api_version_number      CONSTANT NUMBER   := 2.0;
563  BEGIN
564       -- Standard Start of API savepoint
565       SAVEPOINT GET_RS_CUST_RELATION_PUB;
566 
567       -- Standard call to check for call compatibility.
568       IF NOT FND_API.Compatible_API_Call ( l_api_version_number,
569                          	             p_api_version_number,
570                                            l_api_name,
571                                            G_PKG_NAME)
572       THEN
573           RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
574       END IF;
575 
576 
577       -- Initialize message list if p_init_msg_list is set to TRUE.
578       IF FND_API.to_Boolean( p_init_msg_list )
579       THEN
580           FND_MSG_PUB.initialize;
581       END IF;
582 
583 
584       -- Debug Message
585       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Public API: ' || l_api_name || 'start');
586 
587       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Start time:' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
588 
589       -- Initialize API return status to SUCCESS
590       x_return_status := FND_API.G_RET_STS_SUCCESS;
591 
592       --
593       -- API body
594       --
595       -- Debug Message
596       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW,'Public API: - Calling PVT.Get_RS_CUST_RELATION');
597 /*
598     CSP_rs_cust_relation_PVT.Get_rs_cust_relation(
599     P_Api_Version_Number         => 2.0,
600     P_Init_Msg_List              => FND_API.G_FALSE,
601     p_validation_level           => FND_API.G_VALID_LEVEL_FULL,
602     P_Identity_Salesforce_id     => p_identity_salesforce_id,
603     P_RCR_Rec  =>  P_RCR_Rec,
604     p_rec_requested              => p_rec_requested,
605     p_start_rec_prt              => p_start_rec_prt,
606     p_return_tot_count           => p_return_tot_count,
607   -- Hint: user defined record type
608     p_order_by_rec               => p_order_by_rec,
609     X_Return_Status              => x_return_status,
610     X_Msg_Count                  => x_msg_count,
611     X_Msg_Data                   => x_msg_data,
612     X_RCR_Tbl  => X_RCR_Tbl,
613     x_returned_rec_count         => x_returned_rec_count,
614     x_next_rec_ptr               => x_next_rec_ptr,
615     x_tot_rec_count              => x_tot_rec_count
616     -- other optional parameters
617     -- x_tot_rec_amount             => x_tot_rec_amount
618     );
619 
620 
621 
622       -- Check return status from the above procedure call
623       IF x_return_status = FND_API.G_RET_STS_ERROR then
624           raise FND_API.G_EXC_ERROR;
625       elsif x_return_status = FND_API.G_RET_STS_UNEXP_ERROR then
626           raise FND_API.G_EXC_UNEXPECTED_ERROR;
627       END IF;
628 */
629       --
630       -- End of API body
631       --
632 
633       -- Debug Message
634       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'Public API: ' || l_api_name || 'end');
635 
636       AS_UTILITY_PVT.Debug_Message(FND_MSG_PUB.G_MSG_LVL_DEBUG_LOW, 'End time:' || TO_CHAR(SYSDATE, 'HH24:MI:SSSSS'));
637 
638       -- Standard call to get message count and if count is 1, get message info.
639       FND_MSG_PUB.Count_And_Get
640       (  p_count          =>   x_msg_count,
641          p_data           =>   x_msg_data
642       );
643 
644       EXCEPTION
645           WHEN FND_API.G_EXC_ERROR THEN
646               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
647                    P_API_NAME => L_API_NAME
648                   ,P_PKG_NAME => G_PKG_NAME
649                   ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_ERROR
650                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
651                   ,X_MSG_COUNT => X_MSG_COUNT
652                   ,X_MSG_DATA => X_MSG_DATA
653                   ,X_RETURN_STATUS => X_RETURN_STATUS);
654 
655           WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
656               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
657                    P_API_NAME => L_API_NAME
658                   ,P_PKG_NAME => G_PKG_NAME
659                   ,P_EXCEPTION_LEVEL => FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR
660                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
661                   ,X_MSG_COUNT => X_MSG_COUNT
662                   ,X_MSG_DATA => X_MSG_DATA
663                   ,X_RETURN_STATUS => X_RETURN_STATUS);
664 
665           WHEN OTHERS THEN
666               AS_UTILITY_PVT.HANDLE_EXCEPTIONS(
667                    P_API_NAME => L_API_NAME
668                   ,P_PKG_NAME => G_PKG_NAME
669                   ,P_EXCEPTION_LEVEL => AS_UTILITY_PVT.G_EXC_OTHERS
670                   ,P_SQLCODE => SQLCODE
671                   ,P_SQLERRM => SQLERRM
672                   ,P_PACKAGE_TYPE => AS_UTILITY_PVT.G_PUB
673                   ,X_MSG_COUNT => X_MSG_COUNT
674                   ,X_MSG_DATA => X_MSG_DATA
675                   ,X_RETURN_STATUS => X_RETURN_STATUS);
676 End Get_rs_cust_relation;
677 
678 
679 End CSP_RS_CUST_RELATION_PUB;