DBA Data[Home] [Help]

PACKAGE: APPS.CSD_HV_WIP_JOB_PVT

Source


1 PACKAGE CSD_HV_WIP_JOB_PVT as
2 /* $Header: csdvhvjs.pls 120.20.12020000.6 2013/04/04 19:28:42 swai ship $ */
3 -- Start of Comments
4 -- Package name     : CSD_HV_WIP_JOB_PVT
5 -- Purpose          : This package is used for High Volume Repair Execution flow
6 --
7 --
8 -- History          : 05/01/2005, Created by Shiv Ragunathan
9 -- History          :
10 -- History          :
11 -- NOTE             :
12 -- End of Comments
13 
14 
15 -- Record Type for job header information
16 
17 TYPE JOB_HEADER_REC_TYPE IS RECORD   (
18 JOB_PREFIX                                         VARCHAR2(80),
19 ORGANIZATION_ID                                    NUMBER,
20 STATUS_type                                        NUMBER,
21 SCHEDULED_START_DATE                               DATE,
22 SCHEDULED_END_DATE                                 DATE,
23 INVENTORY_ITEM_ID                                  NUMBER,
24 CLASS_CODE                                         VARCHAR2(10),
25 QUANTITY                                           NUMBER,
26 routing_reference_id                               NUMBER,
27 bom_reference_id                                   NUMBER,
28 alternate_routing_designator                       VARCHAR2(10),
29 alternate_bom_designator                           VARCHAR2(10),
30 COMPLETION_SUBINVENTORY                            VARCHAR2(10),
31 COMPLETION_LOCATOR_ID                              NUMBER,
32 JOB_NAME                                           VARCHAR2(240),
33 GROUP_ID                                            NUMBER
34 );
35 
36 
37 TYPE JOB_DTLS_REC_TYPE IS RECORD   (
38 WIP_ENTITY_ID                                       NUMBER,
39 INVENTORY_ITEM_ID                                   NUMBER,
40 ORGANIZATION_ID                                     NUMBER,
41 TRANSACTION_QUANTITY                                NUMBER,
42 COMPLETION_SUBINVENTORY                             VARCHAR2(10),
43 COMPLETION_LOCATOR_ID                               NUMBER,
44 TRANSACTION_UOM                                     VARCHAR2(3),
45 REVISION_QTY_CONTROl_CODE                           NUMBER,
46 SERIAL_NUMBER_CONTROL_CODE                          NUMBER,
47 LOT_CONTROL_CODE                                    NUMBER );
48 
49 TYPE MV_TXN_DTLS_REC_TYPE IS RECORD (
50           WIP_ENTITY_NAME           VARCHAR2(240)
51          ,ORGANIZATION_ID           NUMBER
52          ,FM_OPERATION_SEQ_NUM      NUMBER
53          ,TO_OPERATION_SEQ_NUM      NUMBER
54          ,TRANSACTION_QUANTITY      NUMBER
55          ,TRANSACTION_UOM           VARCHAR2(3)
56          ,WIP_ENTITY_ID            NUMBER
57 );
58 
59 -- Table Type corresponding to JOB_BILL_ROUTING_REC_TYPE
60 
61 TYPE  MV_TXN_DTLS_TBL_TYPE IS TABLE OF MV_TXN_DTLS_REC_TYPE INDEX BY BINARY_INTEGER;
62 
63 TYPE MTL_TXN_DTLS_REC_TYPE IS RECORD (
64           WIP_TRANSACTION_DETAIL_ID NUMBER
65          ,REQUIRED_QUANTITY        NUMBER
66          ,ISSUED_QUANTITY          NUMBER
67          ,JOB_QUANTITY             NUMBER
68          ,OP_SCHEDULED_QUANTITY    NUMBER
69          ,INVENTORY_ITEM_ID         NUMBER
70          ,WIP_ENTITY_ID             NUMBER
71          ,ORGANIZATION_ID           NUMBER
72          ,OPERATION_SEQ_NUM         NUMBER
73          ,TRANSACTION_QUANTITY      NUMBER
74          ,TRANSACTION_UOM           VARCHAR2(3)
75          ,UOM_CODE                  VARCHAR2(3)
76          ,SERIAL_NUMBER             VARCHAR2(30)
77          ,LOT_NUMBER                VARCHAR2(80) -- fix for bug#4625226
78          ,REVISION                  VARCHAR2(3)
79          ,revision_qty_control_code NUMBER
80          ,SERIAL_NUMBER_CONTROL_CODE NUMBER
81          ,lot_control_code          NUMBER
82          ,SUPPLY_SUBINVENTORY       VARCHAR2(10)
83          ,SUPPLY_LOCATOR_ID         NUMBER
84          ,TRANSACTION_INTERFACE_ID  NUMBER
85          ,OBJECT_VERSION_NUMBER     NUMBER
86          ,NEW_ROW                   VARCHAR2(1)
87          ,REASON_ID                 NUMBER  -- swai bug 6841113
88          -- yvchen: bug 13258460 - 12.1.3+ add DFFs
89          ,ATTRIBUTE_CATEGORY        VARCHAR2(30)
90          ,ATTRIBUTE1                VARCHAR2(150)
91          ,ATTRIBUTE2                VARCHAR2(150)
92          ,ATTRIBUTE3                VARCHAR2(150)
93          ,ATTRIBUTE4                VARCHAR2(150)
94          ,ATTRIBUTE5                VARCHAR2(150)
95          ,ATTRIBUTE6                VARCHAR2(150)
96          ,ATTRIBUTE7                VARCHAR2(150)
97          ,ATTRIBUTE8                VARCHAR2(150)
98          ,ATTRIBUTE9                VARCHAR2(150)
99          ,ATTRIBUTE10               VARCHAR2(150)
100          ,ATTRIBUTE11               VARCHAR2(150)
101          ,ATTRIBUTE12               VARCHAR2(150)
102          ,ATTRIBUTE13               VARCHAR2(150)
103          ,ATTRIBUTE14               VARCHAR2(150)
104          ,ATTRIBUTE15               VARCHAR2(150)
105          ,CREATE_RO_FLAG            VARCHAR2(1) -- bug#13698799 auto create ro, parent ro
106 );
107 
108 -- Table Type corresponding to JOB_BILL_ROUTING_REC_TYPE
109 
110 TYPE  MTL_TXN_DTLS_TBL_TYPE IS TABLE OF MTL_TXN_DTLS_REC_TYPE INDEX BY BINARY_INTEGER;
111 
112 
113 
114 
115 TYPE RES_TXN_DTLS_REC_TYPE IS RECORD (
116           WIP_TRANSACTION_DETAIL_ID NUMBER
117          ,required_quantity   NUMBER
118          ,applied_quantity    NUMBER
119          ,pending_quantity    NUMBER
120          ,job_quantity        NUMBER
121          ,op_scheduled_quantity NUMBER
122          ,basis_type              NUMBER
123          ,RESOURCE_ID         NUMBER
124          ,RESOURCE_SEQ_NUM         NUMBER
125          ,WIP_ENTITY_ID             NUMBER
126          ,ORGANIZATION_ID           NUMBER
127          ,ORGANIZATION_CODE         VARCHAR2(3)
128          ,OPERATION_SEQ_NUM         NUMBER
129          ,TRANSACTION_QUANTITY      NUMBER
130          ,TRANSACTION_UOM           VARCHAR2(3)
131          ,UOM_CODE                  VARCHAR2(3)
132          ,WIP_ENTITY_NAME           VARCHAR2(80)
133          ,employee_id               NUMBER
134          ,EMPLOYEE_NUM              VARCHAR2(30)
135          ,OBJECT_VERSION_NUMBER     NUMBER
136          ,NEW_ROW                   VARCHAR2(1)
137          -- swai: bug 15955754, FP of bug 14823164 - 12.1.3+ add DFFs
138          ,ATTRIBUTE_CATEGORY        VARCHAR2(30)
139          ,ATTRIBUTE1                VARCHAR2(150)
140          ,ATTRIBUTE2                VARCHAR2(150)
141          ,ATTRIBUTE3                VARCHAR2(150)
142          ,ATTRIBUTE4                VARCHAR2(150)
143          ,ATTRIBUTE5                VARCHAR2(150)
144          ,ATTRIBUTE6                VARCHAR2(150)
145          ,ATTRIBUTE7                VARCHAR2(150)
146          ,ATTRIBUTE8                VARCHAR2(150)
147          ,ATTRIBUTE9                VARCHAR2(150)
148          ,ATTRIBUTE10               VARCHAR2(150)
149          ,ATTRIBUTE11               VARCHAR2(150)
150          ,ATTRIBUTE12               VARCHAR2(150)
151          ,ATTRIBUTE13               VARCHAR2(150)
152          ,ATTRIBUTE14               VARCHAR2(150)
153          ,ATTRIBUTE15               VARCHAR2(150)
154 );
155 
156 -- Table Type corresponding to JOB_BILL_ROUTING_REC_TYPE
157 
158 TYPE  RES_TXN_DTLS_TBL_TYPE IS TABLE OF RES_TXN_DTLS_REC_TYPE INDEX BY BINARY_INTEGER;
159 
160 
161 
162 TYPE OP_DTLS_REC_TYPE IS RECORD (
163           WIP_TRANSACTION_DETAIL_ID NUMBER
164          ,BACKFLUSH_FLAG            NUMBER      -- swai: 4948649
165          ,COUNT_POINT_TYPE          NUMBER      -- swai: 4948649
166          ,DEPARTMENT_ID             NUMBER
167          ,DESCRIPTION               VARCHAR2(240)
168          ,FIRST_UNIT_COMPLETION_DATE   DATE     -- swai: 4948649
169          ,FIRST_UNIT_START_DATE     DATE        -- swai: 4948649
170          ,LAST_UNIT_COMPLETION_DATE DATE
171          ,LAST_UNIT_START_DATE      DATE        -- swai: 4948649
172          ,MINIMUM_TRANSFER_QUANTITY NUMBER      -- swai: 4948649
173          ,OPERATION_SEQ_NUM         NUMBER
174          ,STANDARD_OPERATION_ID     NUMBER
175          ,WIP_ENTITY_ID             NUMBER
176          ,ORGANIZATION_ID           NUMBER
177          ,ORGANIZATION_CODE         VARCHAR2(3)
178          ,WIP_ENTITY_NAME           VARCHAR2(80)
179          ,OBJECT_VERSION_NUMBER     NUMBER
180          ,NEW_ROW                   VARCHAR2(1)
181          -- yvchen: bug 13258460 - 12.1.3+ add DFFs
182          ,ATTRIBUTE_CATEGORY        VARCHAR2(30)
183          ,ATTRIBUTE1                VARCHAR2(150)
184          ,ATTRIBUTE2                VARCHAR2(150)
185          ,ATTRIBUTE3                VARCHAR2(150)
186          ,ATTRIBUTE4                VARCHAR2(150)
187          ,ATTRIBUTE5                VARCHAR2(150)
188          ,ATTRIBUTE6                VARCHAR2(150)
189          ,ATTRIBUTE7                VARCHAR2(150)
190          ,ATTRIBUTE8                VARCHAR2(150)
191          ,ATTRIBUTE9                VARCHAR2(150)
192          ,ATTRIBUTE10               VARCHAR2(150)
193          ,ATTRIBUTE11               VARCHAR2(150)
194          ,ATTRIBUTE12               VARCHAR2(150)
195          ,ATTRIBUTE13               VARCHAR2(150)
196          ,ATTRIBUTE14               VARCHAR2(150)
197          ,ATTRIBUTE15               VARCHAR2(150)
198 );
199 
200 -- Table Type corresponding to OP_DTLS_REC_TYPE
201 
202 TYPE  OP_DTLS_TBL_TYPE IS TABLE OF OP_DTLS_REC_TYPE INDEX BY BINARY_INTEGER;
203 
204 
205 -- Record Type for service code information.
206 
207 TYPE SERVICE_CODE_REC_TYPE IS RECORD (
208 ro_service_code_id                                 NUMBER,
209 inventory_item_id                                  NUMBER,
210 service_code_id                                    NUMBER,
211 object_version_number                              NUMBER
212 );
213 
214 
215 -- Table Type corresponding to SERVICE_CODE_REC_TYPE
216 
217 TYPE  SERVICE_CODE_TBL_TYPE IS TABLE OF SERVICE_CODE_REC_TYPE  INDEX BY BINARY_INTEGER;
218 
219 -- swai: bug 7182047 (FP of 6995498) wrapper function to get the default item
220 -- revision. Depending on the transaction type, check the corresponding profile
221 -- option and return null if the profile is No.
222 -- Transaction types are 'MAT_ISSUE' and 'JOB_COMP'.  Passing null for
223 -- transaction type will always return a default from bom_revsions API.
224 FUNCTION get_default_item_revision
225 (
226     p_org_id                                  IN         NUMBER,
227     p_inventory_item_id                       IN         NUMBER,
228     p_transaction_date                        IN         DATE,
229     p_mat_transaction_type                    IN         VARCHAR2 := null
230 ) RETURN VARCHAR2;
231 
232 FUNCTION get_pending_quantity( p_wip_entity_id NUMBER,
233                                p_operation_seq_num NUMBER,
234                                p_resource_seq_num NUMBER,
235                                p_primary_uom VARCHAR2 )
236                                 RETURN NUMBER ;
237 
238 PROCEDURE process_oper_comp_txn
239 (
240     p_api_version_number                        IN          NUMBER,
241     p_init_msg_list                           IN         VARCHAR2,
242     p_commit                                    IN          VARCHAR2,
243     p_validation_level                        IN         NUMBER,
244     x_return_status                             OUT   NOCOPY   VARCHAR2,
245     x_msg_count                                  OUT  NOCOPY      NUMBER,
246     x_msg_data                                OUT      NOCOPY     VARCHAR2,
247     p_mv_txn_dtls_tbl                        IN       MV_TXN_DTLS_TBL_TYPE
248 );
249 
250 --
251 -- Inserts the transaction line(s) for job completion and then
252 -- processes the transaction lines if there are no details needed
253 -- OUT param:
254 -- x_transaction_header_id: If details are needed, the transaction
255 --                          header ID will be populated.  Otherwise
256 --                          parameter is null.
257 --
258 PROCEDURE process_job_comp_txn
259 (
260     p_api_version_number                      IN         NUMBER,
261     p_init_msg_list                           IN         VARCHAR2 ,
262     p_commit                                  IN         VARCHAR2 ,
263     p_validation_level                        IN         NUMBER,
264     x_return_status                           OUT NOCOPY VARCHAR2,
265     x_msg_count                               OUT NOCOPY NUMBER,
266     x_msg_data                                OUT NOCOPY VARCHAR2,
267     p_comp_job_dtls_rec                       IN         JOB_DTLS_REC_TYPE,
268     --x_need_details_flag                     OUT     NOCOPY  VARCHAR2
269     x_transaction_header_id                   OUT NOCOPY NUMBER
270 );
271 
272 --
273 -- Inserts the transaction line(s) for job completion
274 -- Does NOT process the transaction lines
275 -- OUT params:
276 -- x_need_details_flag: set to 'T' if details are neede, otherwise 'F'
277 -- x_transaction_header_id: Transaction header ID always passed back
278 --                          regardless of need details param
279 --
280 PROCEDURE insert_job_comp_txn
281 (
282     p_api_version_number                      IN         NUMBER,
283     p_init_msg_list                           IN         VARCHAR2 ,
284     p_commit                                  IN         VARCHAR2 ,
285     p_validation_level                        IN         NUMBER,
286     x_return_status                           OUT NOCOPY VARCHAR2,
287     x_msg_count                               OUT NOCOPY NUMBER,
288     x_msg_data                                OUT NOCOPY VARCHAR2,
289     p_comp_job_dtls_rec                       IN         JOB_DTLS_REC_TYPE,
290     x_need_details_flag                       OUT NOCOPY VARCHAR2,
291     x_transaction_header_id                   OUT NOCOPY NUMBER
292 );
293 
294 PROCEDURE process_mti_transactions
295 (
296     p_api_version_number                      IN         NUMBER,
297     p_init_msg_list                           IN         VARCHAR2,
298     p_commit                                  IN         VARCHAR2,
299     p_validation_level                        IN         NUMBER,
300     x_return_status                           OUT NOCOPY VARCHAR2,
301     x_msg_count                               OUT NOCOPY NUMBER,
302     x_msg_data                                OUT NOCOPY VARCHAR2,
303     p_txn_header_id                           IN         NUMBER
304 );
305 
306 
307 PROCEDURE process_issue_mtl_txn
308 (
309     p_api_version_number                        IN          NUMBER,
310     p_init_msg_list                           IN         VARCHAR2,
311     p_commit                                    IN          VARCHAR2,
312     p_validation_level                        IN         NUMBER,
313     x_return_status                             OUT   NOCOPY   VARCHAR2,
314     x_msg_count                                  OUT  NOCOPY      NUMBER,
315     x_msg_data                                OUT      NOCOPY     VARCHAR2,
316     p_mtl_txn_dtls_tbl                       IN       MTL_TXN_DTLS_TBL_TYPE,
317   --  p_ro_quantity                               IN      NUMBER,
318     x_transaction_header_id                     OUT     NOCOPY   NUMBER
319 );
320 
321 --
322 -- Updates the transaction lines with lot and serial numbers
326 (
323 -- and the processes the transaction lines
324 --
325 PROCEDURE process_issue_mtl_txns_lot_srl
327     p_api_version_number                      IN         NUMBER,
328     p_init_msg_list                           IN         VARCHAR2,
329     p_commit                                  IN         VARCHAR2,
330     p_validation_level                        IN         NUMBER,
331     x_return_status                           OUT NOCOPY VARCHAR2,
332     x_msg_count                               OUT NOCOPY NUMBER,
333     x_msg_data                                OUT NOCOPY VARCHAR2,
334     p_mtl_txn_dtls_tbl                        IN         MTL_TXN_DTLS_TBL_TYPE,
335     p_transaction_header_id                   IN         NUMBER
336 );
337 
338 --
339 -- Updates the material transaction lines with lot and serial numbers only
340 -- Does NOT process the transaction lines
341 --
342 PROCEDURE update_mtl_txns_lot_srl
343 (
344     p_api_version_number                      IN         NUMBER,
345     p_init_msg_list                           IN         VARCHAR2,
346     p_commit                                  IN         VARCHAR2,
347     p_validation_level                        IN         NUMBER,
348     x_return_status                           OUT NOCOPY VARCHAR2,
349     x_msg_count                               OUT NOCOPY NUMBER,
350     x_msg_data                                OUT NOCOPY VARCHAR2,
351     p_mtl_txn_dtls_tbl                        IN         MTL_TXN_DTLS_TBL_TYPE,
352     p_transaction_header_id                   IN         NUMBER
353 );
354 
355 PROCEDURE process_transact_res_txn
356 (
357     p_api_version_number                        IN          NUMBER,
358     p_init_msg_list                           IN         VARCHAR2,
359     p_commit                                    IN          VARCHAR2,
360     p_validation_level                        IN         NUMBER,
361     x_return_status                             OUT   NOCOPY   VARCHAR2,
362     x_msg_count                                  OUT  NOCOPY      NUMBER,
363     x_msg_data                                OUT      NOCOPY     VARCHAR2,
364     p_res_txn_dtls_tbl                       IN       RES_TXN_DTLS_TBL_TYPE
365  --   p_ro_quantity                               IN      NUMBER
366 );
367 
368 PROCEDURE PROCESS_SAVE_MTL_TXN_DTLS
369 (
370     p_api_version_number                      IN           NUMBER,
371     p_init_msg_list                           IN           VARCHAR2 ,
372     p_commit                                  IN           VARCHAR2 ,
373     p_validation_level                        IN           NUMBER ,
374     x_return_status                           OUT  NOCOPY  VARCHAR2,
375     x_msg_count                               OUT  NOCOPY  NUMBER,
376     x_msg_data                                OUT  NOCOPY  VARCHAR2,
377     p_mtl_txn_dtls_tbl                        IN           MTL_TXN_DTLS_TBL_TYPE,
378     x_op_created                              OUT  NOCOPY  VARCHAR
379   --  p_ro_quantity                               IN           NUMBER
380 );
381 
382 
383 PROCEDURE PROCESS_SAVE_RES_TXN_DTLS
384 (
385     p_api_version_number                        IN          NUMBER,
386     p_init_msg_list                           IN         VARCHAR2,
387     p_Commit                                    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_res_txn_dtls_tbl                       IN       res_TXN_DTLS_TBL_TYPE
393  --  p_ro_quantity                               IN              NUMBER
394 );
395 
396 
397 /** swai **/
398 PROCEDURE PROCESS_SAVE_OP_DTLS
399 (
400     p_api_version_number                        IN          NUMBER,
401     p_init_msg_list                           IN         VARCHAR2,
402     p_Commit                                    IN          VARCHAR2,
403     p_validation_level                        IN         NUMBER,
404     x_return_status                             OUT   NOCOPY   VARCHAR2,
405     x_msg_count                                  OUT  NOCOPY      NUMBER,
406     x_msg_data                                OUT      NOCOPY     VARCHAR2,
407     p_op_dtls_tbl                       IN       OP_DTLS_TBL_TYPE
408 );
409 
410 PROCEDURE create_wip_job
411 (
412     p_api_version_number                    IN           NUMBER,
413     p_init_msg_list                       IN          VARCHAR2 ,
414     p_commit                                IN          VARCHAR2 ,
415     p_validation_level                    IN          NUMBER,
416     x_return_status                         OUT    NOCOPY   VARCHAR2,
417     x_msg_count                              OUT   NOCOPY      NUMBER,
418     x_msg_data                            OUT       NOCOPY     VARCHAR2,
419     x_job_name                              OUT     NOCOPY      VARCHAR2,
420     p_repair_line_id                        IN        NUMBER,
421     p_repair_quantity                    IN        NUMBER,
422     p_inventory_item_Id                   IN       NUMBER
423    );
424 
425 PROCEDURE generate_wip_jobs_from_scs
426 (
427     p_api_version_number                    IN           NUMBER,
428     p_init_msg_list                       IN          VARCHAR2 ,
429     p_commit                                IN          VARCHAR2 ,
430     p_validation_level                    IN          NUMBER,
431     x_return_status                         OUT    NOCOPY   VARCHAR2,
432     x_msg_count                              OUT   NOCOPY      NUMBER,
433     x_msg_data                            OUT       NOCOPY     VARCHAR2,
434     p_repair_line_id                        IN        NUMBER,
435     p_repair_quantity                    IN        NUMBER,
439 --
436     p_service_code_tbl                   IN       service_code_tbl_type
437    );
438 
440 -- swai: 12.1.2 Time clock functionality
441 -- Auto-issues all material lines.
442 -- If WIP entity id and operaion are specified, then only materials for
443 -- that operation will be issued and repair line will be disregarded.
444 -- Future functionality:
445 -- If repair line id is specified without wip entity id and operation,
446 -- then all materials for all jobs on that repair order will be issued.
447 --
448 PROCEDURE process_auto_issue_mtl_txn
449 (
450     p_api_version_number                        IN         NUMBER,
451     p_init_msg_list                             IN         VARCHAR2,
452     p_commit                                    IN         VARCHAR2,
453     p_validation_level                          IN         NUMBER,
454     x_return_status                             OUT NOCOPY VARCHAR2,
455     x_msg_count                                 OUT NOCOPY NUMBER,
456     x_msg_data                                  OUT NOCOPY VARCHAR2,
457     p_wip_entity_id                             IN         NUMBER,
458     p_operation_seq_num                         IN         NUMBER,
459     p_repair_line_id                            IN         NUMBER,
460     x_transaction_header_id                     OUT NOCOPY NUMBER
461 );
462 
463 --
464 -- swai: 12.1.2 Time clock functionality
465 -- Auto-transacts all resource lines.
466 -- If WIP entity id and operaion are specified, then only resources for
467 -- that operation will be issued and repair line will be disregarded.
468 -- Future functionality:
469 -- If repair line id is specified without wip entity id and operation,
470 -- then all resources for all jobs on that repair order will be issued.
471 --
472 PROCEDURE process_auto_transact_res_txn
473 (
474     p_api_version_number                  IN         NUMBER,
475     p_init_msg_list                       IN         VARCHAR2,
476     p_commit                              IN         VARCHAR2,
477     p_validation_level                    IN         NUMBER,
478     x_return_status                       OUT NOCOPY VARCHAR2,
479     x_msg_count                           OUT NOCOPY NUMBER,
480     x_msg_data                            OUT NOCOPY VARCHAR2,
481     p_wip_entity_id                       IN         NUMBER,
482     p_operation_seq_num                   IN         NUMBER,
483     p_repair_line_id                      IN         NUMBER
484 );
485 
486 --
487 -- swai: 12.1.2 Time clock functionality
488 -- Auto-completes an operations
489 -- If WIP entity id and operaion are specified, then only the spcified
490 -- operation will be completed.
491 -- Future functionality:
492 -- If repair line id is specified without wip entity id and operation,
493 -- then all operations on all jobs on that repair order will be completed.
494 --
495 PROCEDURE process_auto_oper_comp_txn
496 (
497     p_api_version_number                  IN         NUMBER,
498     p_init_msg_list                       IN         VARCHAR2,
499     p_commit                              IN         VARCHAR2,
500     p_validation_level                    IN         NUMBER,
501     x_return_status                       OUT NOCOPY VARCHAR2,
502     x_msg_count                           OUT NOCOPY NUMBER,
503     x_msg_data                            OUT NOCOPY VARCHAR2,
504     p_wip_entity_id                       IN         NUMBER,
505     p_operation_seq_num                   IN         NUMBER,
506     p_repair_line_id                      IN         NUMBER
507 
508 );
509 
510 
511 --
512 -- swai: 12.1.2 Time clock functionality
513 -- Creates a resource or adds to an existing resource on a job/operation
514 -- for the given time clock entry id.
515 -- Notes:
516 -- (1) Resource comes from profile option CSD_DEF_HV_BOM_RESOURCE,
517 --     if the resource id from time clock entry is null
518 -- (2) Transaction qty is always specified in DAY UOM
519 -- (3) Org is always defined by profile CSD_DEF_REP_INV_ORG
520 --
521 PROCEDURE process_time_clock_res_txn
522 (
523     p_api_version_number                  IN         NUMBER,
524     p_init_msg_list                       IN         VARCHAR2,
525     p_commit                              IN         VARCHAR2,
526     p_validation_level                    IN         NUMBER,
527     x_return_status                       OUT NOCOPY VARCHAR2,
528     x_msg_count                           OUT NOCOPY NUMBER,
529     x_msg_data                            OUT NOCOPY VARCHAR2,
530     p_time_clock_entry_id                 IN         NUMBER
531 );
532 
533 --
534 -- swai: 12.1.2 Time clock functionality
535 -- Complete work button: change Repair Order Status
536 -- Changes repair order status for a given repair order to the
537 -- status specified by profile option 'CSD_COMPLETE_WORK_RO_STATUS'
538 --
539 PROCEDURE process_comp_work_ro_status
540 (
541     p_api_version_number                  IN         NUMBER,
542     p_init_msg_list                       IN         VARCHAR2,
543     p_commit                              IN         VARCHAR2,
544     p_validation_level                    IN         NUMBER,
545     x_return_status                       OUT NOCOPY VARCHAR2,
546     x_msg_count                           OUT NOCOPY NUMBER,
547     x_msg_data                            OUT NOCOPY VARCHAR2,
548     p_repair_line_id                      IN         NUMBER,
549     x_new_flow_status_code                OUT NOCOPY VARCHAR2,
550     x_new_ro_status_code                  OUT NOCOPY VARCHAR2
551 
552 );
553 
554 
555 /* swai: 12.1.3
556  * bug 9640411
557  * Include the ability to delete an existing material transaction detail
558  * and its requirements, as long as no materials have been transacted.
559  * Deletes a saved material requirement that has not been transacted yet.
563  *    inventory_item_id
560  * The following fields in p_mtl_txn_dtls are expected to be filled out:
561  *    wip_entity_id
562  *    organization_id
564  *    operation_seq_num
565  *    wip_transaction_detail_id (optional)
566  */
567 PROCEDURE process_delete_mtl_txn_dtl
568 (
569     p_api_version_number                      IN           NUMBER,
570     p_init_msg_list                           IN           VARCHAR2 ,
571     p_commit                                  IN           VARCHAR2 ,
572     p_validation_level                        IN           NUMBER ,
573     x_return_status                           OUT  NOCOPY  VARCHAR2,
574     x_msg_count                               OUT  NOCOPY  NUMBER,
575     x_msg_data                                OUT  NOCOPY  VARCHAR2,
576     p_mtl_txn_dtls                            IN           MTL_TXN_DTLS_REC_TYPE
577 );
578 
579 /*
580  * swai: 12.1.3+ - bug 13449544 (FP bug 13600173)
581  * Calls new WIP API to determine whether or not an operation is deletable.
582  * In addition, checks Time Clock to see if user has checked into the operation
583  * and also checks Material transactions to see if user has transacted for
584  * Returns 'Y' if WIP API returns true AND there are NO time clock entries AND
585  * there are no Material transactions.  Otherwise, returns 'N' for all
586  * other cases.
587  */
588 FUNCTION is_delete_wip_op_valid
589 (
590     p_organization_id        IN   NUMBER,
591     p_wip_entity_id          IN   NUMBER,
592     p_operation_seq_num      IN   NUMBER
593 ) RETURN VARCHAR2;
594 
595 /* swai: 12.1.3+ - bug 13449544 (FP bug 13600173)
596  * Delete an existing operation and its associated requirements.
597  * The following fields in p_op_dtls are expected to be filled out:
598  *    wip_entity_id
599  *    organization_id
600  *    operation_seq_num
601  */
602 PROCEDURE process_delete_op_dtl
603 (
604     p_api_version_number                      IN           NUMBER,
605     p_init_msg_list                           IN           VARCHAR2 ,
606     p_commit                                  IN           VARCHAR2 ,
607     p_validation_level                        IN           NUMBER ,
608     x_return_status                           OUT  NOCOPY  VARCHAR2,
609     x_msg_count                               OUT  NOCOPY  NUMBER,
610     x_msg_data                                OUT  NOCOPY  VARCHAR2,
611     p_op_dtls                                 IN           OP_DTLS_REC_TYPE
612 );
613 
614 /*
615 * swai: bug 13820264 FP of bug#13797285
616 * subhat: 12.1.3, bug#13797285
617 * procedure: update_mat_issue_quantities
618 * description: This procedure updates the actual issued quantity for a material reqmt
619 *              along with recovered quantities for the material reqmt line. The API
620 *              will add the quantities to the existing quantity. The API can update the
621 *              individual material requirement line in CSD_WIP_TRANSACTION_DETAILS table or
622 *              can be used to update all the material requirement under a job, or it
623 *              can be used to update the table for all the repair orders. The API can
624 *              also be used to update all the jobs for all the repairs orders.The actual
625 *              code execution path will be decided by the parameters passed.
626 * @parameters:
627 *  p_repair_line_id IN NUMBER repair line id for which the updation should be done.
628 *  p_wip_entity_id  IN NUMBER job for which the updateion should be done.
629 *  p_wip_transaction_detail_id IN NUMBER The material requirement line corresponding to
630 *     to this primary key will be updated.
631 *  p_transaction_type_id IN NUMBER. The transaction type id. Currently 35 for wip issue
632 *     and 43 for wip component return are supported.
633 *  p_quantity       IN NUMBER The quantity that was transacted.
634 *  p_exclude_closed_jobs IN VARCHAR2. Specifies whether closed jobs should be
635 *     processed or not.
636 *  p_transaction_date_start IN DATE. When provided, only the transactions of specified date
637 *     will be processed.
638 * p_transaction_date_end IN DATE. when provided along with p_transaction_date_start then
639 *     transactions in the date range are processed. If p_transaction_date_start is provided
640 *     and p_transaction_date_end is null then all the transaction between p_transaction_date_start
641 *     and SYSDATE are processed.
642 *
643 * Processing logic
644 * if p_wip_transaction_detail_id AND p_transaction_type_id AND p_quantity
645 *   directly update the CSD_WIP_TRANSACTION_DETAILS table.
646 * else if p_wip_transaction_detail_id is not null then get the values from MTL table
647 *   and update.
648 * else if p_wip_entity_id is not null then get the values from MTL table and update all
649 * eligible material requirements under that job.
650 * else if p_repair_line_id is not null then get all the jobs under the repair order,
651 *   update the actual issued and actual recovered parts for the material requirements.
652 * else run the updation program for all the repairs orders and update the corresponding
653 * quantities. If p_transaction_date_start is not null then look for MTL transactions
654 * starting from p_transaction_date_start to NVL(p_transaction_date_end, SYSDATE)
655 */
656 
657 PROCEDURE update_mat_issue_quantities
658 (
659     p_api_version_number                      IN           NUMBER,
660     p_init_msg_list                           IN           VARCHAR2 ,
661     p_commit                                  IN           VARCHAR2 ,
662     p_validation_level                        IN           NUMBER ,
663     x_return_status                           OUT  NOCOPY  VARCHAR2,
664     x_msg_count                               OUT  NOCOPY  NUMBER,
665     x_msg_data                                OUT  NOCOPY  VARCHAR2,
666     p_repair_line_id                          IN           NUMBER DEFAULT NULL,
667     p_wip_entity_id                           IN           NUMBER DEFAULT NULL,
671     p_exclude_closed_jobs                     IN           VARCHAR2 DEFAULT 'Y',
668     p_wip_transaction_detail_id               IN           NUMBER DEFAULT NULL,
669     p_transaction_type_id                     IN           NUMBER DEFAULT NULL,
670     p_quantity                                IN           NUMBER DEFAULT NULL,
672     p_transaction_date_start                  IN           DATE DEFAULT NULL,
673     p_transaction_date_end                    IN           DATE DEFAULT NULL
674 );
675 
676 /*
677 * swai: bug 13820264 FP of bug#13797285
678 * subhat: 12.1.3, bug#13797285
679 * procedure: update_mat_issue_quantities_cp
680 * description: Concurrent wrapper for update_mat_issue_quantities
681 */
682 
683 PROCEDURE update_mat_issue_quantities_cp
684 (
685     retcode                                   OUT NOCOPY   VARCHAR2,
686     errbuf                                    OUT NOCOPY   VARCHAR2,
687     p_repair_line_id                          IN           NUMBER DEFAULT NULL,
688     p_wip_entity_id                           IN           NUMBER DEFAULT NULL,
689     p_exclude_closed_jobs                     IN           VARCHAR2 DEFAULT 'Y',
690     p_transaction_date_start                  IN           VARCHAR2 DEFAULT NULL,
691     p_transaction_date_end                    IN           VARCHAR2 DEFAULT NULL
692 );
693 
694 -- swai: Bug 14804275 FP of bug 14752421 new procedure for creating estimates from wip
695 /*--------------------------------------------------------------------*/
696 /* procedure name: GENERATE_ESTIMATE_FROM_WIP                         */
697 /* description : Creates estimate header and lines using data from    */
698 /*               WIP jobs Materials and Labor can be either           */
699 /*               requirements or transacted materials and labor,      */
700 /*               depending on profile settings. This procedure calls  */
701 /*               CSD_REPAIR_ESTIMATE_PVT.Import_Estimates_From_Wip    */
702 /*               for the majority of the processing.                  */
703 /*                                                                    */
704 /* Called from : Repair Technician portal                             */
705 /*                                                                    */
706 /*--------------------------------------------------------------------*/
707 PROCEDURE generate_estimate_from_wip
708 (
709     p_api_version_number                      IN           NUMBER,
710     p_init_msg_list                           IN           VARCHAR2 ,
711     p_commit                                  IN           VARCHAR2 ,
712     p_validation_level                        IN           NUMBER ,
713     x_return_status                           OUT  NOCOPY  VARCHAR2,
714     x_msg_count                               OUT  NOCOPY  NUMBER,
715     x_msg_data                                OUT  NOCOPY  VARCHAR2,
716     p_repair_line_id                          IN           NUMBER
717 );
718 
719 END CSD_HV_WIP_JOB_PVT;