DBA Data[Home] [Help]

PACKAGE: APPS.CSD_REPAIRS_PVT

Source


1 Package Csd_Repairs_Pvt AUTHID CURRENT_USER AS
2 /* $Header: csdvdras.pls 120.7.12010000.2 2008/10/29 06:38:06 subhat ship $ */
3 --
4 -- Package name     : CSD_REPAIRS_PVT
5 -- Purpose          : This package contains the private APIs for creating,
6 --                    updating, deleting repair orders. Access is
7 --                    restricted to Oracle Depot Rapair Internal Development.
8 -- History          :
9 -- Version       Date       Name        Description
10 -- 115.0         11/17/99   pkdas       Created.
11 -- 115.1         12/20/99   pkdas
12 -- 115.2         01/04/00   pkdas
13 -- 115.3         02/14/00   pkdas       Added p_REPAIR_LINE_ID as IN parameter in the Create_Repairs
14 --                                      procedure.
15 --                                      Added p_REPAIR_NUMBER as OUT parameter in the Create_Repairs
16 --                                      procedure.
17 -- 115.4         02/29/00   pkdas       Changed the procedure name
18 --                                      Create_Repairs -> Create_Repair_Order
19 --                                      Update_Repairs -> Update_Repair_Order
20 -- 11.16         05/19/05   vparvath    Adding update_ro_status private API for R12 development.
21 --
22 -- NOTE             :
23 
24 
25  -- Added new record for R12 development.
26 /*--------------------------------------------------*/
27 /* Record name : Flwsts_Wf_Rec_Type                 */
28 /* description : Record to create workflow for flow */
29 /*               status transition.                 */
30 /*--------------------------------------------------*/
31    TYPE Flwsts_Wf_Rec_Type IS RECORD(
32       repair_line_id 		NUMBER,
33       repair_type_id 		NUMBER,
34       from_flow_status_id 	NUMBER,
35       to_flow_status_id 	NUMBER,
36       object_version_number   NUMBER,
37       wf_item_type		VARCHAR2(8),
38       wf_item_key	            VARCHAR2(240),
39       wf_process_name		VARCHAR2(30)
40       );
41 
42 /*--------------------------------------------------*/
43 /* Record name : RO_STATUS_BEVENT_REC_TYPE          */
44 /* description : Repair Order Status Business Event */
45 /*               Record                             */
46 /*--------------------------------------------------*/
47    TYPE RO_STATUS_BEVENT_REC_TYPE IS RECORD(
48       REPAIR_LINE_ID         NUMBER,
49       FROM_FLOW_STATUS_ID    NUMBER,
50       TO_FLOW_STATUS_ID      NUMBER,
51       OBJECT_VERSION_NUMBER  NUMBER
52       );
53 
54 --
55 --   *******************************************************
56 --   API Name:  Create_Repair_Order
57 --   Type    :  Private
58 --   Pre-Req :  None
59 --   Parameters:
60 --   IN
61 --     p_api_version_number       IN   NUMBER     Required
62 --     p_init_msg_list            IN   VARCHAR2   Optional  Default = FND_API.G_FALSE
63 --     p_commit                   IN   VARCHAR2   Optional  Default = FND_API.G_FALSE
64 --     p_validation_level         IN   NUMBER     Optional  Default = FND_API.G_VALID_LEVEL_FULL
65 --     p_REPAIR_LINE_ID           IN   NUMBER     Optional  Default = FND_API.G_MISS_NUM
66 --     p_REPLN_rec                IN   CSD_REPAIRS_PUB.REPLN_rec_type Required
67 --   OUT
68 --     x_REPAIR_LINE_ID           OUT NOCOPY  NUMBER
69 --     x_REPAIR_NUMBER            OUT NOCOPY  VARCHAR2
70 --     x_return_status            OUT NOCOPY  VARCHAR2
71 --     x_msg_count                OUT NOCOPY  NUMBER
72 --     x_msg_data                 OUT NOCOPY  VARCHAR2
73 --
74 --   Version : Current version 1.0
75 --             Initial Version 1.0
76 --
77 --   Notes: This API will create a Repair Order. User can pass REPAIR_LINE_ID.
78 --          If passed, it will be validated
79 --          for uniqueness and if valid, the same ID will be returned.
80 --          User can pass REPAIR_NUMBER also. If passed, it will be validated
81 --          for uniqueness and if valid, the same NUMBER will be returned.
82 --
83 PROCEDURE Create_Repair_Order(
84   P_Api_Version_Number         IN   NUMBER,
85   P_Init_Msg_List              IN   VARCHAR2     := Fnd_Api.G_FALSE,
86   P_Commit                     IN   VARCHAR2     := Fnd_Api.G_FALSE,
87   p_validation_level           IN   NUMBER       := Fnd_Api.G_VALID_LEVEL_FULL,
88   p_REPAIR_LINE_ID             IN   NUMBER       := Fnd_Api.G_MISS_NUM,
89   P_REPLN_Rec                  IN   Csd_Repairs_Pub.REPLN_Rec_Type,
90   X_REPAIR_LINE_ID             OUT NOCOPY  NUMBER,
91   X_REPAIR_NUMBER              OUT NOCOPY  VARCHAR2,
92   X_Return_Status              OUT NOCOPY  VARCHAR2,
93   X_Msg_Count                  OUT NOCOPY  NUMBER,
94   X_Msg_Data                   OUT NOCOPY  VARCHAR2
95   );
96 
97 --   *******************************************************
98 --   API Name:  Update_Repair_Order
99 --   Type    :  Private
100 --   Pre-Req :
101 --   Parameters:
102 --   IN
103 --     p_api_version_number      IN   NUMBER     Required
104 --     p_init_msg_list           IN   VARCHAR2   Optional  Default = FND_API.G_FALSE
105 --     p_commit                  IN   VARCHAR2   Optional  Default = FND_API.G_FALSE
106 --     p_validation_level        IN   NUMBER     Optional  Default = FND_API.G_VALID_LEVEL_FULL
107 --     p_REPAIR_LINE_ID          IN   NUMBER     Required
108 --     P_REPLN_Rec               IN   CSD_REPAIRS_PUB.REPLN_Rec_Type  Required
109 --
110 --   OUT
111 --     x_return_status           OUT NOCOPY  VARCHAR2
112 --     x_msg_count               OUT NOCOPY  NUMBER
113 --     x_msg_data                OUT NOCOPY  VARCHAR2
114 --
115 --   Version : Current Version 1.0
116 --             Initial Verision 1.0
117 --
118 PROCEDURE Update_Repair_Order(
119   P_Api_Version_Number     IN     NUMBER,
120   P_Init_Msg_List          IN     VARCHAR2     := Fnd_Api.G_FALSE,
121   P_Commit                 IN     VARCHAR2     := Fnd_Api.G_FALSE,
122   p_validation_level       IN     NUMBER       := Fnd_Api.G_VALID_LEVEL_FULL,
123   p_REPAIR_LINE_ID         IN     NUMBER,
124   P_REPLN_Rec              IN OUT NOCOPY Csd_Repairs_Pub.REPLN_Rec_Type,
125   X_Return_Status          OUT NOCOPY    VARCHAR2,
126   X_Msg_Count              OUT NOCOPY    NUMBER,
127   X_Msg_Data               OUT NOCOPY    VARCHAR2
128   );
129 
130 --   *******************************************************
131 --   API Name:  Delete_Repair_Order
132 --   Type    :  Private
133 --   Pre-Req :
134 --   Parameters:
135 --   IN
136 --     p_api_version_number      IN   NUMBER     Required
137 --     p_init_msg_list           IN   VARCHAR2   Optional  Default = FND_API.G_FALSE
138 --     p_commit                  IN   VARCHAR2   Optional  Default = FND_API.G_FALSE
139 --     p_validation_level        IN   NUMBER     Optional  Default = FND_API.G_VALID_LEVEL_FULL
140 --     p_REPAIR_LINE_ID          IN   NUMBER     Required
141 --
142 --   OUT
143 --       x_return_status         OUT NOCOPY  VARCHAR2
144 --       x_msg_count             OUT NOCOPY  NUMBER
145 --       x_msg_data              OUT NOCOPY  VARCHAR2
146 --
147 --   Version : Current Version 1.0
148 --             Initial Version 1.0
149 --
150 PROCEDURE Delete_Repair_Order(
151   P_Api_Version_Number         IN   NUMBER,
152   P_Init_Msg_List              IN   VARCHAR2     := Fnd_Api.G_FALSE,
153   P_Commit                     IN   VARCHAR2     := Fnd_Api.G_FALSE,
154   p_validation_level           IN   NUMBER       := Fnd_Api.G_VALID_LEVEL_FULL,
155   p_REPAIR_LINE_ID             IN   NUMBER,
156   X_Return_Status              OUT NOCOPY  VARCHAR2,
157   X_Msg_Count                  OUT NOCOPY  NUMBER,
158   X_Msg_Data                   OUT NOCOPY  VARCHAR2
159   );
160 
161 --   *******************************************************
162 --   API Name:  Validate_Repairs
163 --   Type    :  Private
164 --   Pre-Req :  None
165 --   Parameters:
166 --   IN
167 --     p_api_version_number       IN   NUMBER     Required
168 --     p_init_msg_list            IN   VARCHAR2   Optional  Default = FND_API.G_FALSE
169 --     p_validation_level         IN   NUMBER     Optional  Default = FND_API.G_VALID_LEVEL_FULL
170 --     P_Validation_mode          IN   VARCHAR2   Required
171 --     p_REPAIR_LINE_ID           IN   NUMBER     Optional  Default = FND_API.G_MISS_NUM
172 --     p_REPLN_rec                IN   CSD_REPAIRS_PUB.REPLN_rec_type Required
173 --   OUT
174 --     x_return_status            OUT NOCOPY  VARCHAR2
175 --     x_msg_count                OUT NOCOPY  NUMBER
176 --     x_msg_data                 OUT NOCOPY  VARCHAR2
177 --
178 --   Version : Current version 1.0
179 --             Initial Version 1.0
180 --
181 --   Notes: This API will validate the Repair Order.
182 --
183 PROCEDURE Validate_Repairs
184   (
185    P_Api_Version_Number         IN   NUMBER,
186    p_init_msg_list              IN   VARCHAR2 := Fnd_Api.G_FALSE,
187    p_validation_level           IN   NUMBER := Fnd_Api.G_VALID_LEVEL_FULL,
188    P_Validation_mode            IN   VARCHAR2,
189    p_repair_line_id             IN   NUMBER := Fnd_Api.G_MISS_NUM,
190    P_REPLN_Rec                  IN   Csd_Repairs_Pub.REPLN_Rec_Type,
191    P_OLD_REPLN_Rec              IN   Csd_Repairs_Pub.REPLN_Rec_Type := Csd_Repairs_Pub.G_MISS_REPLN_Rec,
192    x_return_status              OUT NOCOPY  VARCHAR2,
193    x_msg_count                  OUT NOCOPY  NUMBER,
194    x_msg_data                   OUT NOCOPY  VARCHAR2,
195    --bug#7242791, 12.1 FP, subhat
196    x_dff_rec                    OUT NOCOPY CSD_REPAIRS_UTIL.DEF_Rec_Type
197   );
198 
199 -- *************************************************************
200 --   API Name:  Copy_Attachments
201 --   Type    :  Private
202 --   Pre-Req :  None
203 --   Parameters:
204 --   IN
205 --     p_api_version           IN  NUMBER
206 --     p_commit                IN  VARCHAR2
207 --     p_init_msg_list         IN  VARCHAR2
208 --     P_validation_mode       IN  NUMBER
209 --     p_original_ro_id        IN  NUMBER
210 --     p_new_ro_id             IN  NUMBER
211 --   OUT
212 --     x_return_status
213 --     x_msg_count
214 --     x_msg_data
215 --
216 --   Version : Current version 1.0
217 --             Initial Version 1.0
218 --
219 --   Description : This API Copies all the Attachments from the
220 --                 original Repair order to the new Repair order.
221 -- ***************************************************************
222 
223 PROCEDURE Copy_Attachments
224   (
225   p_api_version       IN          NUMBER,
226   p_commit            IN          VARCHAR2,
227   p_init_msg_list     IN          VARCHAR2,
228   p_validation_level  IN          NUMBER,
229   x_return_status     OUT NOCOPY  VARCHAR2,
230   x_msg_count         OUT NOCOPY  NUMBER,
231   x_msg_data          OUT NOCOPY  VARCHAR2,
232   p_original_ro_id    IN          NUMBER,
233   p_new_ro_id         IN          NUMBER
234 );
235 
236 --   *******************************************************
237 --   API Name:  Delete_Attachments
238 --   Type    :  Private
239 --   Pre-Req :  None
240 --   Parameters:
241 --   IN
242 --     p_api_version        IN  NUMBER
243 --     p_commit             IN  VARCHAR2
244 --     p_init_msg_list      IN  VARCHAR2
245 --     P_validation_level   IN  NUMBER
246 --     p_repair_line_id     IN  NUMBER
247 --   OUT
248 --     x_return_status
249 --     x_msg_count
250 --     x_msg_data
251 --
252 --   Version : Current version 1.0
253 --             Initial Version 1.0
254 --
255 --   Description : This API Deletes all the Attachments linked
256 --                 to the Repair order (p_repair_line_id).
257 --
258 -- ***********************************************************
259 
260 PROCEDURE Delete_Attachments
261   (
262   p_api_version       IN          NUMBER,
263   p_commit            IN          VARCHAR2,
264   p_init_msg_list     IN          VARCHAR2,
265   p_validation_level  IN          NUMBER,
266   x_return_status     OUT NOCOPY  VARCHAR2,
267   x_msg_count         OUT NOCOPY  NUMBER,
268   x_msg_data          OUT NOCOPY  VARCHAR2,
269   p_repair_line_id    IN          NUMBER
270 );
271 
272 -- R12 development changes begin...
273 --   *******************************************************
274 --   API Name:  update_ro_status
275 --   Type    :  Private
276 --   Pre-Req :  None
277 --   Parameters:
278 --   IN
279 --     p_api_version               IN     NUMBER,
280 --     p_commit                    IN     VARCHAR2,
281 --     p_init_msg_list             IN     VARCHAR2,
282 --     p_validation_level          IN     NUMBER,
283 --     p_repair_status_rec         IN     CSD_REPAIRS_PUB.REPAIR_STATUS_REC,
284 --     p_status_control_rec  	     IN     CSD_REPAIRS_PUB.STATUS_UPD_CONTROL_REC,
285 --   OUT
286 --     x_return_status
287 --     x_msg_count
288 --     x_msg_data
289 --     x_object_version_number     OUT     NUMBER
290 --
291 --   Version : Current version 1.0
292 --             Initial Version 1.0
293 --
294 --   Description : This API updates the repair status to a given value.
295 --                 It checks for the open tasks/wipjobs based on the input
296 --                 flag p_check_task_wip in the status control record.
297 --
298 --
299 -- ***********************************************************
300 	PROCEDURE UPDATE_RO_STATUS
301 	(
302 		p_api_version               IN     NUMBER,
303 		p_commit                    IN     VARCHAR2,
304 		p_init_msg_list             IN     VARCHAR2,
305 		p_validation_level          IN     NUMBER,
306 		x_return_status             OUT    NOCOPY    VARCHAR2,
307 		x_msg_count                 OUT    NOCOPY    NUMBER,
308 		x_msg_data                  OUT    NOCOPY    VARCHAR2,
309 		p_repair_status_Rec         IN     Csd_Repairs_Pub.REPAIR_STATUS_REC_TYPE,
310 		p_status_control_rec        IN     Csd_Repairs_Pub.STATUS_UPD_CONTROL_REC_TYPE,
311 		x_object_version_number     OUT    NOCOPY     NUMBER
312 	);
313 
314 
315 --   *******************************************************
316 --   API Name:  UPDATE_RO_STATUS_WebSrvc
317 --   Type    :  Private
318 --   Pre-Req :  None
319 --   Parameters:
320 --   IN
321 --     p_api_version               IN     NUMBER,
322 --     p_commit                    IN     VARCHAR2,
323 --     p_init_msg_list             IN     VARCHAR2,
324 --     p_validation_level          IN     NUMBER,
325 --     p_repair_line_id           IN      NUMEBR
326 --     p_repair_status            IN
327 --   OUT
328 --     x_return_status
329 --     x_msg_count
330 --     x_msg_data
331 --
332 --   Version : Current version 1.0
333 --             Initial Version 1.0
334 --
335 --   Description : This API updates is a wrapper around the update_ro_Status
336 --                 private API. THis is used by the web service.
337 --
338 --
339 -- ***********************************************************
340 	PROCEDURE UPDATE_RO_STATUS_WebSrvc
341 	(
342 		p_api_version               IN     NUMBER,
343 		p_commit                    IN     VARCHAR2,
344 		p_init_msg_list             IN     VARCHAR2,
345 		x_return_status             OUT    NOCOPY    VARCHAR2,
346 		x_msg_count                 OUT    NOCOPY    NUMBER,
347 		x_msg_data                  OUT    NOCOPY    VARCHAR2,
348 		p_repair_line_id            IN     NUMBER,
349 		p_repair_status      	    IN    VARCHAR2,
350 		p_reason_code               IN     VARCHAR2,
351 		p_comments                  IN     VARCHAR2,
352 		p_check_task_wip	          IN     VARCHAR2,
353 		p_object_version_number     IN     NUMBER
354 
355 	 );
356 
357 
358    PROCEDURE Update_Flow_Status (
359       p_api_version           IN    NUMBER,
360       p_commit                IN    VARCHAR2,
361       p_init_msg_list         IN    VARCHAR2,
362       p_validation_level      IN    NUMBER,
363       x_return_status         OUT 	NOCOPY    VARCHAR2,
364       x_msg_count             OUT 	NOCOPY    NUMBER,
365       x_msg_data              OUT 	NOCOPY    VARCHAR2,
366       p_repair_line_id 		IN	NUMBER,
367       p_repair_type_id 		IN	NUMBER,
368       p_from_flow_status_id 	IN 	NUMBER,
369       p_to_flow_status_id 	IN 	NUMBER,
370       p_reason_code 		IN 	VARCHAR2,
371       p_comments	 		IN 	VARCHAR2,
372       p_check_access_flag 	IN 	VARCHAR2,
373       p_object_version_number IN 	NUMBER,
374       x_object_version_number OUT 	NOCOPY    NUMBER
375       );
376 
377    FUNCTION Is_Rt_Update_Allowed (
378       p_from_repair_type_id 	IN 	NUMBER,
379       p_to_repair_type_id 	IN 	NUMBER,
380       p_common_flow_status_id IN 	NUMBER,
381       p_responsibility_id 	IN 	NUMBER
382       ) RETURN BOOLEAN;
383 
384    PROCEDURE Update_Repair_Type (
385       p_api_version           IN    NUMBER,
386       p_commit                IN    VARCHAR2,
387       p_init_msg_list         IN    VARCHAR2,
388       p_validation_level      IN    NUMBER,
389       x_return_status         OUT 	NOCOPY    VARCHAR2,
390       x_msg_count             OUT 	NOCOPY    NUMBER,
391       x_msg_data              OUT 	NOCOPY    VARCHAR2,
392       p_repair_line_id        IN    NUMBER,
393       p_from_repair_type_id 	IN 	NUMBER,
394       p_to_repair_type_id 	IN 	NUMBER,
395       p_common_flow_status_id IN    NUMBER,
396       p_reason_code 		IN 	VARCHAR2,
397       p_object_version_number IN 	NUMBER,
398       x_object_version_number OUT 	NOCOPY NUMBER
399       );
400 
401    FUNCTION Is_Flwsts_Update_Allowed(
402       p_repair_type_id 		IN 	NUMBER,
403       p_from_flow_status_id 	IN 	NUMBER,
404       p_to_flow_status_id 	IN 	NUMBER,
405       p_responsibility_id     IN    NUMBER
406       ) RETURN BOOLEAN;
407 
408    PROCEDURE Launch_Flwsts_Wf (
409       p_api_version           IN    NUMBER,
410       p_commit                IN    VARCHAR2,
411       p_init_msg_list         IN    VARCHAR2,
412       p_validation_level      IN    NUMBER,
413       x_return_status         OUT 	NOCOPY    VARCHAR2,
414       x_msg_count             OUT 	NOCOPY    NUMBER,
415       x_msg_data              OUT 	NOCOPY    VARCHAR2,
416       p_flwsts_wf_rec         IN    Flwsts_Wf_Rec_Type
417       );
418 
419 /*-----------------------------------------------------------------*/
420 /* procedure name: raise_ro_status_bevent                          */
421 /* description   : Procedure to raise a Business Even when the     */
422 /*                 status of the repair order changes              */
423 /*-----------------------------------------------------------------*/
424     PROCEDURE raise_ro_status_bevent (
425       p_ro_status_bevent_rec  IN   ro_status_bevent_rec_type,
426       p_commit                IN   VARCHAR2,
427       x_return_status         OUT  NOCOPY VARCHAR2,
428       x_msg_count             OUT  NOCOPY NUMBER,
429       x_msg_data              OUT  NOCOPY VARCHAR2
430       );
431 
432 -- R12 development changes End...
433 
434 --  Fix for bug#5610891
435 
436 /*-------------------------------------------------------------------------------------*/
437 /* Procedure name: UPDATE_RO_STATUS_WF                                                 */
438 /* Description   : Procedure called from workflow process to update repair order       */
439 /*                 status                                                              */
440 /*                                                                                     */
441 /* Called from   : Workflow                                                            */
442 /* PARAMETERS                                                                          */
443 /*  IN                                                                                 */
444 /*                                                                                     */
445 /*   itemtype  - type of the current item                                              */
446 /*   itemkey   - key of the current item                                               */
447 /*   actid     - process activity instance id                                          */
448 /*   funcmode  - function execution mode ('RUN', 'CANCEL', 'TIMEOUT', ...)             */
449 /*  OUT	                                                                               */
450 /*   result                                                                            */
451 /*       - COMPLETE[:<result>]                                                         */
452 /*           activity has completed with the indicated result                          */
453 /*       - WAITING                                                                     */
454 /*           activity is waiting for additional transitions                            */
455 /*       - DEFERED                                                                     */
456 /*           execution should be defered to background                                 */
457 /*       - NOTIFIED[:<notification_id>:<assigned_user>]                                */
458 /*           activity has notified an external entity that this                        */
459 /*           step must be performed.  A call to wf_engine.CompleteActivty              */
460 /*           will signal when this step is complete.  Optional                         */
461 /*           return of notification ID and assigned user.                              */
462 /*       - ERROR[:<error_code>]                                                        */
463 /*           function encountered an error.                                            */
464 /* Change Hist :                                                                       */
465 /*   04/18/07  mshirkol  Initial Creation.  ( Fix for bug#5610891 )                    */
466 /*-------------------------------------------------------------------------------------*/
467 
468 Procedure UPDATE_RO_STATUS_WF
469             (itemtype  in varchar2,
470              itemkey   in varchar2,
471              actid     in number,
472              funcmode  in varchar2,
473              resultout in out nocopy varchar2);
474 
475 /*-------------------------------------------------------------------------------------*/
476 /* Procedure name: LAUNCH_WFEXCEPTIONS_BEVENT                                          */
477 /* Description   : Procedure to launch exceptions Business Event                       */
478 /*                                                                                     */
479 /* Called from   : CSD_UPDATE_PROGRAMS_PVT                                             */
480 /* PARAMETERS                                                                          */
481 /*  IN                                                                                 */
482 /*   p_return_status                                                                   */
483 /*   p_msg_count                                                                       */
484 /*   p_msg_data                                                                        */
485 /*   p_repair_line_id                                                                  */
486 /*   p_module_name                                                                     */
487 /*                                                                                     */
488 /* Change Hist :                                                                       */
489 /*   04/18/07  mshirkol  Initial Creation.  ( Fix for bug#5610891 )                    */
490 /*-------------------------------------------------------------------------------------*/
491 
492 Procedure LAUNCH_WFEXCEPTION_BEVENT(
493                p_return_status  in varchar2,
494                p_msg_count      in number,
495                p_msg_data       in varchar2,
496                p_repair_line_id in number,
497                p_module_name    in varchar2);
498 
499 
500 END Csd_Repairs_Pvt;