DBA Data[Home] [Help]

PACKAGE: APPS.AHL_VWP_RULES_PVT

Source


1 PACKAGE AHL_VWP_RULES_PVT AS
2 /* $Header: AHLVRULS.pls 120.1 2007/12/28 08:09:41 rnahata ship $ */
3 -----------------------------------------------------------
4 -- PACKAGE
5 --    AHL_VWP_RULES_PVT
6 --
7 -- PURPOSE
8 --    This package specification is a Private API for managing
9 --    Planning --> Visit Work Package --> VISIT, TASKS, PROJECT, PRODUCTION, PRICING, COSTING
10 --    related RULES as procedures in Complex Maintainance, Repair and Overhauling(CMRO).
11 --
12 --    It defines used pl/sql records and tables datatypes
13 --
14 --      Check_Serial_No_by_UConfig       (see below for specification)
15 --      Check_Item_name_Or_Id            (see below for specification)
16 --      Check_Serial_name_Or_Id          (see below for specification)
17 --      Check_SR_request_number_Or_Id    (see below for specification)
18 --      Check_Visit_Task_Number_Or_Id    (see below for specification)
19 --      Check_Lookup_name_Or_Id          (see below for specification)
20 --      Check_Org_Name_Or_Id             (see below for specification)
21 --      Check_Dept_Desc_Or_Id            (see below for specification)
22 --      Check_Visit_is_Simulated         (see below for specification)
23 --      Check_Project_Template_Or_Id     (see below for specification)
24 --      Check_Proj_Responsibility        (see below for specification)
25 --      Check_Cost_Parent_Loop           (see below for specification)
26 --      Check_Origin_Task_Loop           (see below for specification)
27 
28 --      Create_Tasks_for_MR              (see below for specification)
29 --      Get_Serial_Item_by_Unit          (see below for specification)
30 --      Tech_Dependency                  (see below for specification)
31 --      Insert_Tasks                     (see below for specification)
32 
33 --  FUNCTION
34 --      Get_Cost_Originating_Id          (see below for specification)
35 --      Get_Visit_Task_Id                (see below for specification)
36 --      Get_Visit_Task_Number            (see below for specification)
37 --
38 -- NOTES
39 --
40 --
41 -- HISTORY
42 -- 03-MAY-2003    shbhanda      Created.
43 -- 06-AUG-2003    SHBHANDA      11.5.10 Changes.
44 --------------------------------------------------------------------
45 
46 ---------------------------------------------------------------------
47 -- Define Record Types for record structures needed by the APIs --
48 ---------------------------------------------------------------------
49 -- Record for Visit Task
50 TYPE Task_Rec_Type IS RECORD (
51   VISIT_TASK_ID           NUMBER         := NULL,
52   VISIT_TASK_NUMBER       NUMBER         := NULL,
53   VISIT_ID                NUMBER         := NULL,
54   TEMPLATE_FLAG           VARCHAR2(1)    := 'N',
55   INVENTORY_ITEM_ID       NUMBER         := NULL,
56   ITEM_ORGANIZATION_ID    NUMBER         := NULL,
57   ITEM_NAME               VARCHAR2(40)   := NULL,
58   COST_PARENT_ID          NUMBER         := NULL,
59   COST_PARENT_NUMBER      NUMBER         := NULL,
60   MR_ROUTE_ID             NUMBER         := NULL,
61   ROUTE_NUMBER            VARCHAR2(30)   := NULL,
62   MR_ID                   NUMBER         := NULL,
63   MR_TITLE                VARCHAR2(80)   := NULL,
64   UNIT_EFFECTIVITY_ID     NUMBER         := NULL,
65   DEPARTMENT_ID           NUMBER         := NULL,
66   DEPT_NAME               VARCHAR2(240)  := NULL,
67   SERVICE_REQUEST_ID      NUMBER         := NULL,
68   SERVICE_REQUEST_NUMBER  VARCHAR2(30)   := NULL,
69   ORIGINATING_TASK_ID     NUMBER         := NULL,
70   ORGINATING_TASK_NUMBER  NUMBER         := NULL,
71   INSTANCE_ID             NUMBER         := NULL,
72   SERIAL_NUMBER           VARCHAR2(30)   := NULL,
73   PROJECT_TASK_ID         NUMBER         := NULL,
74   PROJECT_TASK_NUMBER     NUMBER         := NULL,
75   PRIMARY_VISIT_TASK_ID   NUMBER         := NULL,
76   START_FROM_HOUR         NUMBER         := NULL,
77   DURATION                NUMBER         := NULL,
78   TASK_TYPE_CODE          VARCHAR2(30)   := 'UNASSOCIATED',
79   TASK_TYPE_VALUE         VARCHAR2(80)   := NULL,
80   VISIT_TASK_NAME         VARCHAR2(80)   := NULL,
81   DESCRIPTION             VARCHAR2(4000) := NULL,
82   TASK_STATUS_CODE        VARCHAR2(30)   := NULL,
83   TASK_STATUS_VALUE       VARCHAR2(80)   := NULL,
84   OBJECT_VERSION_NUMBER   NUMBER         := NULL,
85   LAST_UPDATE_DATE        DATE           := NULL,
86   LAST_UPDATED_BY         NUMBER         := NULL,
87   CREATION_DATE           DATE           := NULL,
88   CREATED_BY              NUMBER         := NULL,
89   LAST_UPDATE_LOGIN       NUMBER         := NULL,
90   ATTRIBUTE_CATEGORY      VARCHAR2(30)   := NULL,
91   ATTRIBUTE1              VARCHAR2(150)  := NULL,
92   ATTRIBUTE2              VARCHAR2(150)  := NULL,
93   ATTRIBUTE3              VARCHAR2(150)  := NULL,
94   ATTRIBUTE4              VARCHAR2(150)  := NULL,
95   ATTRIBUTE5              VARCHAR2(150)  := NULL,
96   ATTRIBUTE6              VARCHAR2(150)  := NULL,
97   ATTRIBUTE7              VARCHAR2(150)  := NULL,
98   ATTRIBUTE8              VARCHAR2(150)  := NULL,
99   ATTRIBUTE9              VARCHAR2(150)  := NULL,
100   ATTRIBUTE10             VARCHAR2(150)  := NULL,
101   ATTRIBUTE11             VARCHAR2(150)  := NULL,
102   ATTRIBUTE12             VARCHAR2(150)  := NULL,
103   ATTRIBUTE13             VARCHAR2(150)  := NULL,
104   ATTRIBUTE14             VARCHAR2(150)  := NULL,
105   ATTRIBUTE15             VARCHAR2(150)  := NULL,
106   TASK_START_DATE         DATE           := NULL,
107   TASK_END_DATE           DATE           := NULL,
108   DUE_BY_DATE             DATE           := NULL,
109   ZONE_NAME               VARCHAR2(30)   := NULL,
110   SUB_ZONE_NAME           VARCHAR2(30)   := NULL,
111   TOLERANCE_AFTER         NUMBER         := NULL,
112   TOLERANCE_BEFORE        NUMBER         := NULL,
113   TOLERANCE_UOM           VARCHAR2(50)   := NULL,
114   WORKORDER_ID            NUMBER         := NULL,
115   WO_NAME                 VARCHAR2(255)  := NULL,
116   WO_STATUS               VARCHAR2(30)   := NULL,
117   WO_START_DATE           DATE           := NULL,
118   WO_END_DATE             DATE           := NULL,
119   OPERATION_FLAG          VARCHAR2(2)    := NULL,
120   IS_PRODUCTION_FLAG      VARCHAR2(1)    := NULL,
121   CREATE_JOB_FLAG         VARCHAR2(1)    := NULL,
122   STAGE_ID                NUMBER         := NULL,
123   STAGE_NAME              VARCHAR2(80)   := NULL,
124   --Begin changes by rnahata for Issue 105
125   QUANTITY                NUMBER         := NULL,
126   UOM                     CSI_ITEM_INSTANCES.UNIT_OF_MEASURE%TYPE    := NULL,
127   INSTANCE_NUMBER         CSI_ITEM_INSTANCES.INSTANCE_NUMBER%TYPE    := NULL
128   --End changes by rnahata for Issue 105
129 );
130 
131 -- Record of Maintainance Requirements Id and Serial Id
132 -- while importing technical dependency
133 TYPE MR_Serial_Rec_Type IS RECORD (
134   MR_ID                   NUMBER       := NULL,
135   SERIAL_ID               NUMBER       := NULL
136   );
137 
138 -- Record of Items which are filtered to only unique item among all items
139 TYPE Item_Rec_Type IS RECORD (
140   Item_Id          NUMBER      := NULL,
141   Visit_Task_Id    NUMBER      := NULL,
142   Quantity         NUMBER      := NULL,
143   Duration         NUMBER      := NULL,
144   Effective_Date   DATE        := NULL,
145   UOM_Code         VARCHAR2(3) := NULL
146   );
147 ---------------------------------------------------------------------
148 -- Define Table Types for table structures of records needed by the APIs --
149 ---------------------------------------------------------------------
150 --  Table type for storing 'MR_Serial_Rec_Type' record datatype
151 TYPE MR_Serial_Tbl_Type IS TABLE OF MR_Serial_Rec_Type
152    INDEX BY BINARY_INTEGER;
153 
154 --  Table type for storing 'Item_Rec_Type' record datatype
155 TYPE Item_Tbl_Type IS TABLE OF Item_Rec_Type
156    INDEX BY BINARY_INTEGER;
157 
158  TYPE Task_Tbl_Type  IS TABLE OF Task_Rec_Type
159 INDEX BY BINARY_INTEGER;
160 
161 --------------------------------------------------------------------
162 --  Procedure name    : Check_Item_Name_Or_Id
163 --  Type              : Private
164 --  Purpose           : To check if Item Name,Item Id and Item Organization Id exits.
165 --  Parameters  :
166 --
167 --  Standard OUT Parameters :
168 --   x_return_status        OUT     VARCHAR2     Required
169 --   x_error_msg_code       OUT     VARCHAR2     Required
170 --
171 --  Check_Item_Name_Or_Id IN Parameters:
172 --   p_item_id              IN  NUMBER     Required,
173 --   p_org_id               IN  NUMBER     Required,
174 --   p_item_name            IN  VARCHAR2   Required,
175 --
176 --  Check_Item_Name_Or_Id OUT Parameters:
177 --   x_item_id              OUT  NUMBER     Required,
178 --   x_org_id               OUT  NUMBER     Required,
179 --   x_item_name            OUT  VARCHAR2   Required,
180 --
181 --  Version :
182 --      Initial Version   1.0
183 --------------------------------------------------------------------
184 PROCEDURE Check_Item_Name_Or_Id
185     (p_item_id         IN NUMBER,
186      p_org_id          IN NUMBER,
187      p_item_name       IN VARCHAR2,
188 
189      x_item_id         OUT NOCOPY NUMBER,
190      x_org_id          OUT NOCOPY NUMBER,
191      x_item_name       OUT NOCOPY VARCHAR2,
192      x_return_status   OUT NOCOPY VARCHAR2,
193      x_error_msg_code  OUT NOCOPY VARCHAR2
194      );
195 
196 --------------------------------------------------------------------
197 --  Procedure name    : Check_Serial_Name_Or_Id
198 --  Type              : Private
199 --  Purpose           : Converts Serial Number to Instance Id.
200 --  Parameters  :
201 --
202 --  Standard OUT Parameters :
203 --   x_return_status        OUT     VARCHAR2     Required
204 --   x_error_msg_code       OUT     VARCHAR2     Required
205 --
206 --  Check_Serial_Name_Or_Id IN Parameters:
207 --   p_item_id              IN  NUMBER     Required,
208 --   p_org_id               IN  NUMBER     Required,
209 --   p_serial_id            IN  NUMBER     Required,
210 --   p_serial_number        IN  VARCHAR2   Required,
211 --
212 --  Check_Serial_Name_Or_Id OUT Parameters:
213 --   x_serial_id            OUT  NUMBER     Required,
214 --
215 --  Version :
216 --      Initial Version   1.0
217 --
218 -------------------------------------------------------------------
219 PROCEDURE Check_Serial_Name_Or_Id
220     (p_item_id        IN NUMBER,
221      p_org_id         IN NUMBER,
222      p_serial_id      IN NUMBER,
223      p_serial_number  IN VARCHAR2,
224 
225      x_serial_id      OUT NOCOPY NUMBER,
226      x_return_status  OUT NOCOPY VARCHAR2,
227      x_error_msg_code OUT NOCOPY VARCHAR2
228      );
229 
230 --------------------------------------------------------------------
231 --  Procedure name    : Check_Org_Name_Or_Id
232 --  Type              : Private
233 --  Purpose           : To Converts Organization Name to Organization ID.
234 --  Parameters  :
235 --
236 --  Standard OUT Parameters :
237 --   x_return_status        OUT     VARCHAR2     Required
238 --   x_error_msg_code       OUT     VARCHAR2     Required
239 --
240 --  Check_Org_Name_Or_Id IN Parameters:
241 --   p_organization_id      IN  NUMBER     Required,
242 --   p_org_name             IN  VARCHAR2   Required,
243 --
244 --  Check_Org_Name_Or_Id OUT Parameters:
245 --   x_organization_id      OUT  NUMBER     Required,
246 --
247 --  Version :
248 --      Initial Version   1.0
249 --------------------------------------------------------------------
250 PROCEDURE Check_Org_Name_Or_Id
251     (p_organization_id IN NUMBER,
252      p_org_name        IN VARCHAR2,
253 
254      x_organization_id OUT NOCOPY NUMBER,
255      x_return_status   OUT NOCOPY VARCHAR2,
256      x_error_msg_code  OUT NOCOPY VARCHAR2
257      );
258 
259 --------------------------------------------------------------------
260 --  Procedure name    : Check_Dept_Desc_Or_Id
261 --  Type              : Private
262 --  Purpose           : Converts Department Description to Department ID
263 --  Parameters  :
264 --
265 --  Standard OUT Parameters :
266 --   x_return_status        OUT     VARCHAR2     Required
267 --   x_error_msg_code       OUT     VARCHAR2     Required
268 --
269 --  Check_Dept_Desc_Or_Id IN Parameters:
270 --   p_organization_id      IN  NUMBER     Required,
271 --   p_department_id        IN  NUMBER     Required,
272 --   p_dept_name            IN  NUMBER     Required,
273 --
274 --  Check_Dept_Desc_Or_Id OUT Parameters:
275 --   x_department_id        OUT  NUMBER     Required,
276 --
277 --  Version :
278 --      Initial Version   1.0
279 --------------------------------------------------------------------
280 PROCEDURE Check_Dept_Desc_Or_Id
281     (p_organization_id  IN NUMBER,
282      p_department_id    IN NUMBER,
283      p_dept_name        IN VARCHAR2,
284 
285      x_department_id    OUT NOCOPY NUMBER,
286      x_return_status    OUT NOCOPY VARCHAR2,
287      x_error_msg_code   OUT NOCOPY VARCHAR2
288      );
289 
290 --------------------------------------------------------------------
291 --  Procedure name    : Check_SR_Request_Number_Or_Id
292 --  Type              : Private
293 --  Purpose           : To Converts Servie request Number to ID or Vice versa.
294 --  Parameters  :
295 --
296 --  Standard OUT Parameters :
297 --   x_return_status        OUT     VARCHAR2     Required
298 --   x_error_msg_code       OUT     VARCHAR2     Required
299 --
300 --  Check_SR_Request_Number_Or_Id IN Parameters:
301 --   p_service_id           IN  NUMBER     Required,
302 --   p_service_number       IN  NUMBER     Required,
303 --
304 --  Check_SR_Request_Number_Or_Id OUT Parameters:
305 --   x_service_id          OUT  NUMBER     Required,
306 --
307 --  Version :
308 --      Initial Version   1.0
309 --------------------------------------------------------------------
310 PROCEDURE Check_SR_Request_Number_Or_Id
311     (p_service_id      IN NUMBER,
312      p_service_number  IN VARCHAR2,
313 
314      x_service_id      OUT NOCOPY NUMBER,
315      x_return_status   OUT NOCOPY VARCHAR2,
316      x_error_msg_code  OUT NOCOPY VARCHAR2
317      );
318 
319 --------------------------------------------------------------------
320 --  Procedure name    : Check_Visit_is_Simulated
321 --  Type              : Private
322 --  Purpose           : To check if the visit is simulated or not.
323 --  Parameters  :
324 --
325 --  Standard OUT Parameters :
326 --   x_return_status        OUT     VARCHAR2     Required
327 --   x_error_msg_code       OUT     VARCHAR2     Required
328 --
332 --  Check_Visit_is_Simulated OUT Parameters:
329 --  Check_Visit_is_Simulated IN Parameters:
330 --   p_Visit_id             IN  NUMBER     Required,
331 --
333 --   x_bln_flag             OUT VARCHAR2   Required,
334 --
335 --  Version :
336 --      Initial Version   1.0
337 --------------------------------------------------------------------
338 PROCEDURE Check_Visit_is_Simulated
339     (p_Visit_id       IN NUMBER,
340 
341      x_bln_flag       OUT NOCOPY VARCHAR2,
342      x_return_status  OUT NOCOPY VARCHAR2,
343      x_error_msg_code OUT NOCOPY VARCHAR2
344      );
345 
346 --------------------------------------------------------------------
347 --  Procedure name    : Check_Project_Template_Or_Id
348 --  Type              : Private
349 --  Purpose           : To check project template name and retrieve project id
350 --  Parameters  :
351 --
352 --  Standard OUT Parameters :
353 --   x_return_status        OUT     VARCHAR2     Required
354 --   x_error_msg_code       OUT     VARCHAR2     Required
355 --
356 --  Check_Project_Template_Or_Id IN Parameters:
357 --   p_proj_temp_name             IN  VARCHAR2     Required,
358 --
359 --  Check_Project_Template_Or_Id OUT Parameters:
360 --   x_project_id                 OUT NUMBER       Required,
361 --
362 --  Version :
363 --      Initial Version   1.0
364 --------------------------------------------------------------------
365 PROCEDURE  Check_Project_Template_Or_Id
366     (p_proj_temp_name  IN VARCHAR2,
367      x_project_id      OUT NOCOPY NUMBER,
368      x_return_status   OUT NOCOPY VARCHAR2,
369      x_error_msg_code  OUT NOCOPY VARCHAR2
370      );
371 
372 --------------------------------------------------------------------
373 --  Procedure name    : Check_Serial_No_by_UConfig
374 --  Type              : DEPRECATED-- Code removed in POST11510
375 --  Purpose           : To derive the serial numbers that are part
376 --                      of unit configuration of the item
377 --  Parameters  :
378 --
379 --  Standard OUT Parameters :
380 --   x_return_status        OUT     VARCHAR2     Required
381 --   x_error_msg_code       OUT     VARCHAR2     Required
382 --
383 --  Check_Serial_No_by_UConfig IN Parameters:
384 --   p_visit_id    IN  NUMBER     Required,
385 --   p_item_id     IN  NUMBER     Required,
386 --   p_serial_id   IN  NUMBER     Required,
387 --   p_org_id      IN  NUMBER     Required,
388 --
389 --  Check_Serial_No_by_UConfig OUT Parameters:
390 --   x_check_flag      OUT VARCHAR2   Required,
391 --
392 --  Version :
393 --      Initial Version   1.0
394 --------------------------------------------------------------------
395 /*PROCEDURE Check_Serial_No_by_UConfig
396     (p_visit_id        IN NUMBER,
397      p_item_id         IN NUMBER,
398      p_org_id          IN NUMBER,
399      p_serial_id       IN NUMBER,
400      x_check_flag      OUT NOCOPY VARCHAR2,
401      x_return_status   OUT NOCOPY VARCHAR2,
402      x_error_msg_code  OUT NOCOPY VARCHAR2
403      );*/
404 -----------------------------------------------------------------------
405 -- FUNCTION
406 --    instance_in_config_tree
407 --
408 -- PURPOSE
409 --    Check whether p_instance_id belongs to the instance of p_visit_id
410 --    Return 'Y' for the following cases:
411 --      1. p_visit_id doesn't have instance_id associated at all
412 --      2. The instance_id of p_visit_id = p_instance_id regardless whether
413 --         the instance of p_visit_id has components or not
414 --      3. p_instance_id is a component of the instance of p_visit_id regardless
415 --         whether it is a UC tree or IB tree
416 --    Return 'N' otherwise
417 -----------------------------------------------------------------------
418 FUNCTION instance_in_config_tree(p_visit_id NUMBER, p_instance_id NUMBER)
419 RETURN VARCHAR2;
420 
421 --------------------------------------------------------------------
422 --  Procedure name    : Check_Visit_Task_Number_OR_Id
423 --  Type              : Private
424 --  Purpose           : To convert Visit Task Number to Id or Vice versa
425 --  Parameters  :
426 --
427 --  Standard OUT Parameters :
428 --   x_return_status        OUT     VARCHAR2     Required
429 --   x_error_msg_code       OUT     VARCHAR2     Required
430 --
431 --  Check_Visit_Task_Number_OR_Id IN Parameters:
432 --   p_visit_task_id       IN  NUMBER     Required,
433 --   p_visit_task_number   IN  NUMBER     Required,
434 --   p_visit_id            IN  NUMBER     Required
435 
436 --  Check_Visit_Task_Number_OR_Id OUT Parameters:
437 --   x_visit_task_id      OUT  NUMBER     Required,
438 --
439 --  Version :
440 --      Initial Version   1.0
441 --------------------------------------------------------------------
442 PROCEDURE Check_Visit_Task_Number_Or_Id
443     (p_visit_task_id     IN NUMBER,
444      p_visit_task_number IN NUMBER,
445      p_visit_id          IN NUMBER,
446 
447      x_visit_task_id     OUT NOCOPY NUMBER,
448      x_return_status     OUT NOCOPY VARCHAR2,
449      x_error_msg_code    OUT NOCOPY VARCHAR2
450      );
451 
452 --------------------------------------------------------------------
453 --  Procedure name    : Check_Lookup_Name_Or_Id
454 --  Type              : Private
455 --  Purpose           : To derive the lookup code and values
456 --  Parameters  :
457 --
461 --
458 --  Standard OUT Parameters :
459 --   x_return_status       OUT     VARCHAR2     Required
460 --   x_error_msg_code      OUT     VARCHAR2     Required
462 --  Check_Lookup_Name_Or_Id IN Parameters:
463 --   p_lookup_type         IN  VARCHAR2     Required,
464 --   p_lookup_code         IN  VARCHAR2     Required,
465 --   p_meaning             IN  VARCHAR2     Required,
466 --   p_check_id_flag       IN  VARCHAR2     Required
467 --
468 --  Check_Lookup_Name_Or_Id OUT Parameters:
469 --   x_lookup_code      OUT  VARCHAR2     Required,
470 --
471 --  Version :
472 --      Initial Version   1.0
473 --------------------------------------------------------------------
474 PROCEDURE Check_Lookup_Name_Or_Id
475  ( p_lookup_type    IN FND_LOOKUPS.lookup_type%TYPE,
476    p_lookup_code    IN FND_LOOKUPS.lookup_code%TYPE,
477    p_meaning        IN FND_LOOKUPS.meaning%TYPE,
478    p_check_id_flag  IN VARCHAR2,
479    x_lookup_code    OUT NOCOPY VARCHAR2,
480    x_return_status  OUT NOCOPY VARCHAR2);
481 
482 
483 --------------------------------------------------------------------
484 --  Procedure name    : Check_Project_Responsibilities
485 --  Type              : Private
486 --  Purpose           : To verify project superuser reponsibilities
487 --  Parameters  :
488 --
489 --  Standard OUT Parameters :
490 --   x_return_status        OUT     VARCHAR2     Required
491 --   x_error_msg_code       OUT     VARCHAR2     Required
492 --
493 --  Check_Project_Responsibilities OUT Parameters:
494 --   x_check_project       OUT  VARCHAR2     Required,
495 --
496 --  Version :
497 --      Initial Version   1.0
498 --------------------------------------------------------------------
499 PROCEDURE Check_Proj_Responsibility
500  ( x_check_project    OUT NOCOPY VARCHAR2,
501    x_return_status    OUT NOCOPY VARCHAR2);
502 
503 --------------------------------------------------------------------
504 --  Procedure name    : Get_Serial_Item_by_Unit
505 --  Type              : Private
506 --  Purpose           : To derive the Serial Id and Inventory Item Id from Unit Name
507 --  Parameters  :
508 --
509 --  Standard OUT Parameters :
510 --   x_return_status        OUT     VARCHAR2     Required
511 --   x_error_msg_code       OUT     VARCHAR2     Required
512 --
513 --  Get_Serial_Item_by_Unit IN Parameters:
514 --   p_unit_name            IN  VARCHAR2     Required,
515 --
516 --  Get_Serial_Item_by_Unit OUT Parameters:
517 --   x_instance_id         OUT  NUMBER     Required,
518 --   x_item_id             OUT  NUMBER     Required,
519 --   x_item_org_id         OUT  NUMBER     Required,
520 --
521 --  Version :
522 --      Initial Version   1.0
523 --------------------------------------------------------------------
524 PROCEDURE Get_Serial_Item_by_Unit
525  ( p_unit_name      IN         VARCHAR2,
526    x_instance_id    OUT NOCOPY NUMBER,
527    x_item_id        OUT NOCOPY NUMBER,
528    x_item_org_id    OUT NOCOPY NUMBER,
529    x_return_status  OUT NOCOPY VARCHAR2,
530    x_error_msg_code OUT NOCOPY VARCHAR2);
531 
532 --------------------------------------------------------------------
533 --  Procedure name    : Get_Cost_Originating_Id
534 --  Type              : Private
535 --  Purpose           : To derive the parent MR from the current MR and root MR.
536 --    for deriving cost parent and originating task ID's while creating
537 --    planned/unplanned tasks..
538 --  Parameters  :
539 --
540 --  Get_Cost_Originating_Id IN Parameters:
541 --   p_mr_main_id           IN  NUMBER     Required,
542 --   p_mr_header_id         IN  NUMBER     Required,
543 --
544 --  Get_Cost_Originating_Id OUT Parameters:
545 --   x_parent_id            OUT  NUMBER     Required,
546 --
547 --  Version :
548 --      Initial Version   1.0
549 --------------------------------------------------------------------
550 FUNCTION Get_Cost_Originating_Id (p_mr_main_id IN NUMBER, p_mr_header_id IN NUMBER)
551   RETURN NUMBER;
552 
553 --------------------------------------------------------------------
554 --  Procedure name    : Get_Visit_Task_Id
555 --  Type              : Private
556 --  Purpose           : To derive the primary attribute visit_task_id
557 --                      from the task entity
558 --  Parameters  :
559 --
560 --  Get_Visit_Task_Id OUT Parameters:
561 --   x_Visit_Task_Id      OUT  NUMBER     Required,
562 --
563 --  Version :
564 --      Initial Version   1.0
565 --------------------------------------------------------------------
566 FUNCTION Get_Visit_Task_Id
567     RETURN NUMBER;
568 
569 --------------------------------------------------------------------
570 --  Procedure name    : Get_Visit_Task_Number
571 --  Type              : Private
572 --  Purpose           : To derive the attribute visit_task_number from the task entity.
573 --  Parameters  :
574 --
575 --  Get_Cost_Originating_Id IN Parameters:
576 --   p_visit_id               IN  NUMBER   Required,
577 --
578 --  Get_Visit_Task_Number OUT Parameters:
579 --   x_Visit_Task_Number      OUT  NUMBER  Required,
580 --
581 --  Version :
582 --      Initial Version   1.0
583 --------------------------------------------------------------------
584 FUNCTION Get_Visit_Task_Number (p_visit_id IN NUMBER)
585     RETURN NUMBER;
586 
590 --  Purpose           : Called from Creation of Planned/Unplanned tasks
587 --------------------------------------------------------------------
588 --  Procedure name    : Insert_Tasks
589 --  Type              : Private
591 --                      under various other circumstances
592 --  Parameters        :
593 --
594 --  Standard OUT Parameters :
595 --   x_return_status   OUT VARCHAR2  Required
596 --   x_msg_count       OUT VARCHAR2  Required
597 --   x_msg_data        OUT VARCHAR2  Required
598 --
599 --  Insert_Tasks IN Parameters:
600 --   p_visit_id        IN  NUMBER    Required,
601 --   p_unit_id         IN  NUMBER    Required,
602 --   p_serial_id       IN  NUMBER    Required,
603 --   p_service_id      IN  NUMBER    Required,
604 --   p_dept_id         IN  NUMBER    Required,
605 --   p_item_id         IN  NUMBER    Required,
606 --   p_item_org_id     IN  NUMBER    Required,
607 --   p_mr_id           IN  NUMBER    Required,
608 --   p_mr_route_id     IN  NUMBER    Not Required,
609 --   p_parent_id       IN  NUMBER    Required,
610 --   p_flag            IN  VARHCAR2  Required,
611 --
612 --  Insert_Tasks OUT Parameters:
613 --   x_task_id         OUT  NUMBER     Required,
614 --
615 --  Version :
616 --      Initial Version   1.0
617 --------------------------------------------------------------------
618 PROCEDURE Insert_Tasks (
619    p_visit_id      IN         NUMBER,
620    p_unit_id       IN         NUMBER,
621    p_serial_id     IN         NUMBER,
622    p_service_id    IN         NUMBER,
623    p_dept_id       IN         NUMBER,
624    p_item_id       IN         NUMBER,
625    p_item_org_id   IN         NUMBER,
626    p_mr_id         IN         NUMBER,
627    p_mr_route_id   IN         NUMBER,
628    p_parent_id     IN         NUMBER,
629    p_flag          IN         VARCHAR2,
630    p_stage_id      IN         NUMBER := NULL,
631    p_quantity      IN         NUMBER := NULL, -- Added by rnahata for Issue 105
632    x_task_id       OUT NOCOPY NUMBER,
633    x_return_status OUT NOCOPY VARCHAR2,
634    x_msg_count     OUT NOCOPY NUMBER,
635    x_msg_data      OUT NOCOPY VARCHAR2
636 );
637 
638 --------------------------------------------------------------------
639 --  Procedure name    : Tech_Dependency
640 --  Type              : Private
641 --  Purpose           : To associated Technical dependency while creating Planned/Unplanned Tasks.
642 --  Parameters  :
643 --
644 --  Standard OUT Parameters :
645 --   x_return_status        OUT     VARCHAR2     Required
646 --
647 --  Tech_Dependency Parameters:
648 --   p_visit_id             IN  NUMBER     Required,
649 --   p_MR_Serial_Tbl        OUT  MR_Serial_Tbl_Type Required,
650 --
651 --  Version :
652 --      Initial Version   1.0
653 --
654 --------------------------------------------------------------------
655  PROCEDURE Tech_Dependency (
656    p_visit_id      IN  NUMBER,
657    p_task_type     IN  VARCHAR2,
658    p_MR_Serial_Tbl IN  MR_Serial_Tbl_Type,
659    x_return_status OUT NOCOPY VARCHAR2);
660 
661 --------------------------------------------------------------------
662 --  Procedure name    : Create_Tasks_for_MR
663 --  Type              : Private
664 --  Purpose           : To create Tasks for MR.
665 --  Parameters  :
666 --
667 --  Standard OUT Parameters :
668 --    x_return_status      OUT     VARCHAR2     Required
669 --  Create_Tasks_for_MR Parameters:
670 --    p_department_id   IN     NUMBER   Required,
671 --    p_visit_id        IN     NUMBER   Required,
672 --    p_serial_id       IN     NUMBER   Required,
673 --    p_mr_id           IN     NUMBER   Required,
674 --    p_unit_id         IN     NUMBER   Required,
675 --    p_service_req_id  IN     NUMBER   Required,
676 --    p_x_parent_MR_Id  IN OUT NUMBER   Required
677 --
678 --  Version :
679 --      Initial Version   1.0
680 --
681 --------------------------------------------------------------------
682 PROCEDURE Create_Tasks_for_MR  (
683     p_visit_id         IN NUMBER,
684     p_unit_id          IN NUMBER,
685     p_item_id          IN NUMBER,
686     p_org_id           IN NUMBER,
687     p_serial_id        IN NUMBER,
688     p_mr_id            IN NUMBER,
689     p_department_id    IN NUMBER,
690     p_service_req_id   IN NUMBER,
691     -- Added by rnahata for Issue 105
692     p_quantity         IN  NUMBER,
693     p_x_parent_MR_Id   IN OUT NOCOPY NUMBER,
694     x_return_status    OUT NOCOPY VARCHAR2
695 );
696 
697 --------------------------------------------------------------------
698 --  Procedure name    : Check_Cost_Parent_Loop
699 --  Type              : Private
700 --  Purpose           : To check if the cost parent task not forming loop among other tasks
701 --  Parameters  :
702 --
703 --  Check_Cost_Parent_Loop IN Parameters :
704 --  p_visit_id             IN  NUMBER     Required
705 --  p_visit_task_id        IN  NUMBER     Required
706 --  p_cost_parent_id       IN  NUMBER     Required
707 --
708 --  Version :
709 --      Initial Version   1.0
710 --
711 --------------------------------------------------------------------
712 PROCEDURE Check_Cost_Parent_Loop
713  ( p_visit_id       IN NUMBER,
714    p_visit_task_id  IN NUMBER,
715    p_cost_parent_id IN NUMBER
716  );
717 
721 --  Purpose           : To check if the originating task not forming loop among other tasks
718 --------------------------------------------------------------------
719 --  Procedure name    : Check_Origin_Task_Loop
720 --  Type              : Private
722 --  Parameters  :
723 --
724 --  Check_Origin_Task_Loop IN Parameters :
725 --  p_visit_id             IN  NUMBER     Required
726 --  p_visit_task_id        IN  NUMBER     Required
727 --  p_originating_task_id  IN  NUMBER     Required
728 --
729 --  Version :
730 --      Initial Version   1.0
731 --
732 --------------------------------------------------------------------
733 PROCEDURE Check_Origin_Task_Loop
734  ( p_visit_id            IN NUMBER,
735    p_visit_task_id       IN NUMBER,
736    p_originating_task_id IN NUMBER);
737 
738 --------------------------------------------------------------------
739 -- PROCEDURE          : Update_Visit_Task_Flag
740 --  Type              : Private
741 --  Purpose           : To update visit entity any_task_chg_flag attribute whenever there
742 --                      are changes in visit task - either addition or deletion or change
743 --                      in cost parent of any task
744 --  Parameters  :
745 --
746 --  Update_Visit_Task_Flag IN Parameters :
747 --  p_visit_id             IN  NUMBER     Required
748 --  p_flag_id              IN  NUMBER     Required
749 --
750 --  Update_Visit_Task_Flag OUT Parameters :
751 --  x_return_status        OUT VARCAHR2   Required
752 --
753 --  Version :
754 --      Initial Version   1.0
755 --
756 --------------------------------------------------------------------
757 PROCEDURE Update_Visit_Task_Flag
758     (p_visit_id       IN NUMBER,
759      p_flag           IN VARCHAR2,
760      x_return_status  OUT NOCOPY VARCHAR2
761      );
762 
763 --------------------------------------------------------------------
764 -- PROCEDURE
765 --    Check_Price_List_Name_Or_Id
766 --
767 -- PURPOSE
768 --    To find out price list id for price list name for a visit or tasks
769 -- PROCEDURE          : Update_Visit_Task_Flag
770 --  Type              : Private
771 --  Purpose           : To update visit entity any_task_chg_flag attribute whenever there
772 --                      are changes in visit task - either addition or deletion or change
773 --                      in cost parent of any task
774 --  Parameters  :
775 --
776 --  Check_Price_List_Name_Or_Id IN Parameters :
777 --  p_visit_id             IN  NUMBER     Required
778 --  p_flag_id              IN  NUMBER     Required
779 --
780 --  Check_Price_List_Name_Or_Id OUT Parameters :
781 --  x_return_status        OUT VARCAHR2   Required
782 --
783 --  Version :
784 --      Initial Version   1.0
785 --
786 --------------------------------------------------------------------
787 PROCEDURE Check_Price_List_Name_Or_Id(
788      p_visit_id         IN NUMBER,
789      p_price_list_name  IN VARCHAR2,
790      x_price_list_id    OUT NOCOPY NUMBER,
791      x_return_status    OUT NOCOPY VARCHAR2
792      );
793 
794 --------------------------------------------------------------------
795 -- Procedure         :  Update_Cost_Origin_Task
796 --  Type              : Private
797 --  Purpose           : To update all tasks which have the deleting task as cost or originating task
798 --  Parameters  :
799 --
800 --  Update_Cost_Origin_Task IN Parameters :
801 --  p_visit_task_id        IN  NUMBER     Required
802 --
803 --  Update_Cost_Origin_Task OUT Parameters :
804 --  x_return_status        OUT VARCHAR2   Required
805 --
806 --  Version :
807 --      Initial Version   1.0
808 --
809 --------------------------------------------------------------------
810 PROCEDURE Update_Cost_Origin_Task
811     (p_visit_task_id    IN NUMBER,
812      x_return_status    OUT NOCOPY VARCHAR2
813      );
814 
815 --------------------------------------------------------------------
816 --  Procedure         : Update_Visit_Task_Flag
817 --  Type              : Private
818 --  Purpose           : To merge two item tables and remove the redundant items
819 --                      in table for which no price is defined
820 --  Parameters  :
821 --
822 --  Merge_for_Unique_Items IN Parameters :
823 --  p_item_tbl1        IN  Item_Tbl_Type     Required
824 --  p_item_tbl2        IN  Item_Tbl_Type     Required
825 --
826 --  Merge_for_Unique_Items OUT Parameters :
827 --  x_item_tbl        OUT  Item_Tbl_Type     Required
828 --
829 --  Version :
830 --      Initial Version   1.0
831 --
832 --------------------------------------------------------------------
833 PROCEDURE Merge_for_Unique_Items
834     (p_item_tbl1 IN         Item_Tbl_Type,
835      p_item_tbl2 IN         Item_Tbl_Type,
836      x_item_tbl  OUT NOCOPY Item_Tbl_Type
837      );
838 
839 --------------------------------------------------------------------
840 --  Procedure         : Check_Item_in_Price_List
841 --  Type              : Private
842 --  Purpose           : To check if item of MR is defined in price list.
843 --  Parameters  :
844 --
845 --  Check_Item_in_Price_List IN Parameters :
846 --  p_price_list  IN  NUMBER     Required
847 --  p_item_id     IN  NUMBER     Required
848 --
849 --  Check_Item_in_Price_List OUT Parameters :
850 --  x_item_chk_flag        OUT NUMBER   Required
851 --
852 --  Version :
853 --      Initial Version   1.0
854 --
855 --------------------------------------------------------------------
856 /*PROCEDURE Check_Item_in_Price_List
857     (p_price_list    IN  NUMBER,
858      p_item_id       IN  NUMBER,
859      x_item_chk_flag OUT NOCOPY NUMBER
860      );
861 */
862 --------------------------------------------------------------------
863 -- PROCEDURE          : Check_Currency_for_Costing
864 --  Type              : Private
865 --  Purpose           : To retrieve currency code and pass as input parameter to Pricing API
866 --  Parameters  :
867 --
868 --  Check_Currency_for_Costing IN Parameters :
869 --  p_visit_id             IN  NUMBER     Required
870 --
871 --  Check_Currency_for_Costing OUT Parameters :
872 --  x_currency_code        OUT VARCHAR2   Required
873 --
874 --  Version :
875 --      Initial Version   1.0
876 --
877 --------------------------------------------------------------------
878 PROCEDURE Check_Currency_for_Costing
879     (p_visit_id      IN  NUMBER,
880      x_currency_code OUT NOCOPY VARCHAR2
881      );
882 
883 --------------------------------------------------------------------
884 --  PROCEDURE         : Check_Job_Status
885 --  Type              : Private
886 --  Purpose           : To find out valid job status on shop floor for a Visit/MR/Task
887 --  Parameters  :
888 --
889 --  Check_Job_Status IN Parameters :
890 --  p_id             IN  NUMBER       Required
891 --  p_is_task_flag   IN  VARCHAR2     Required
892 --                     - 'Y' for MR and Task
893 --                     - 'N' for Visit
894 --  Check_Job_Status OUT Parameters :
895 --  x_status_code    OUT NUMBER   Required
896 --  x_status_meaning OUT VARCAHR2   Required
897 --
898 --  Version :
899 --      Initial Version   1.0
900 --
901 --------------------------------------------------------------------
902 PROCEDURE Check_Job_Status
903     (p_id             IN         NUMBER,
904      p_is_task_flag   IN         VARCHAR2,
905      x_status_code    OUT NOCOPY NUMBER,
906      x_status_meaning OUT NOCOPY VARCHAR2
907      );
908 
909 --------------------------------------------------------------------
910 --  PROCEDURE         : CHECK_DEPARTMENT_SHIFT
911 --  Type              : Private
912 --  Purpose           : To find out if the respective dept has shifts defined in ahl_dept_shifts
913 --  Parameters  :
914 --
915 --  CHECK_DEPARTMENT_SHIFT IN Parameters :
916 --  p_dept_id       IN  NUMBER       Required
917 
918 --  CHECK_DEPARTMENT_SHIFT OUT Parameters :
919 --  x_return_status    OUT varchar2 Required
920 --
921 --  Version :
922 --      Initial Version   1.0
923 --
924 --------------------------------------------------------------------
925 PROCEDURE CHECK_DEPARTMENT_SHIFT(
926     p_dept_id       IN         NUMBER,
927     x_return_status OUT NOCOPY VARCHAR2
928 );
929 
930 
931 END AHL_VWP_RULES_PVT;