DBA Data[Home] [Help]

PACKAGE: APPS.CSTPAVCP

Source


1 PACKAGE CSTPAVCP AUTHID CURRENT_USER AS
2 /* $Header: CSTAVCPS.pls 120.8.12020000.1 2012/06/26 07:02:40 appldev ship $ */
3 
4 -- PROCEDURE
5 --  cost_processor	Costs inventory transactions
6 --
7 procedure cost_processor(
8 I_ORG_ID	IN	NUMBER,
9 I_TXN_ID	IN 	NUMBER,
10 I_LAYER_ID	IN	NUMBER,
11 I_COST_TYPE	IN	NUMBER,		-- The valuation cost type
12 I_COST_METHOD   IN	NUMBER,
13 I_MAT_CT_ID	IN	NUMBER,		-- The material overhead cost type
14 I_AVG_RATES_ID	IN	NUMBER,		-- The average rates cost type
15 I_ITEM_ID	IN	NUMBER,
16 I_TXN_QTY	IN 	NUMBER,
17 I_TXN_ACTION_ID	IN	NUMBER,
18 I_TXN_SRC_TYPE	IN	NUMBER,
19 I_TXN_ORG_ID	IN	NUMBER,
20 I_TXFR_ORG_ID	IN	NUMBER,
21 I_COST_GRP_ID	IN	NUMBER,
22 I_TXFR_COST_GRP IN	NUMBER,
23 I_TXFR_LAYER_ID IN	NUMBER,
24 I_FOB_POINT	IN	NUMBER,
25 I_EXP_ITEM	IN	NUMBER,
26 I_EXP_FLAG	IN	NUMBER,		-- Either expense item or sub
27 I_CITW_FLAG	IN	NUMBER,
28 I_FLOW_SCHEDULE	IN	NUMBER,		-- 1 for cfm and 0 for non-cfm
29 I_USER_ID	IN	NUMBER,
30 I_LOGIN_ID    	IN	NUMBER,
31 I_REQ_ID	IN	NUMBER,
32 I_PRG_APPL_ID	IN	NUMBER,
33 I_PRG_ID	IN 	NUMBER,
34 I_TPRICE_OPTION IN      NUMBER,
35 I_TXF_PRICE     IN      NUMBER,
36 O_Err_Num	OUT NOCOPY	NUMBER,
37 O_Err_Code	OUT NOCOPY	VARCHAR2,
38 O_Err_Msg	OUT NOCOPY	VARCHAR2
39 );
40 
41 -- PROCEDURE
42 --  average_cost_update		Cost process the averge cost update
43 --				transaction.
44 procedure average_cost_update(
45   I_ORG_ID	IN	NUMBER,
46   I_TXN_ID	IN	NUMBER,
47   I_LAYER_ID	IN	NUMBER,
48   I_COST_TYPE	IN	NUMBER,
49   I_ITEM_ID	IN	NUMBER,
50   I_TXN_ACTION_ID IN	NUMBER,
51   I_TXN_QTY     IN      NUMBER,
52   I_EXP_FLG	IN	NUMBER,
53   I_USER_ID	IN	NUMBER,
54   I_LOGIN_ID    IN	NUMBER,
55   I_REQ_ID	IN	NUMBER,
56   I_PRG_APPL_ID	IN	NUMBER,
57   I_PRG_ID	IN 	NUMBER,
58   O_Err_Num	OUT NOCOPY	NUMBER,
59   O_Err_Code	OUT NOCOPY	VARCHAR2,
60   O_Err_Msg	OUT NOCOPY	VARCHAR2
61 );
62 
63 -- PROCEDURE
64 --  sub_transfer		Cost process the subinventory transfer
65 --				transaction.
66 
67 procedure sub_transfer(
68   I_ORG_ID	IN	NUMBER,
69   I_TXN_ID	IN	NUMBER,
70   I_LAYER_ID	IN	NUMBER,
71   I_COST_TYPE	IN	NUMBER,
72   I_ITEM_ID	IN	NUMBER,
73   I_TXN_QTY	IN	NUMBER,
74   I_TXN_ACTION_ID IN	NUMBER,
75   I_NEW_COST	IN	NUMBER,
76   I_HOOK 	IN	NUMBER,
77   I_TXFR_LAYER_ID IN	NUMBER,
78   I_CITW_FLAG	IN	NUMBER,
79   I_FLOW_SCHEDULE IN	NUMBER,
80   I_USER_ID	IN	NUMBER,
81   I_LOGIN_ID    IN	NUMBER,
82   I_REQ_ID	IN	NUMBER,
83   I_PRG_APPL_ID	IN	NUMBER,
84   I_PRG_ID	IN 	NUMBER,
85   O_Err_Num	OUT NOCOPY	NUMBER,
86   O_Err_Code	OUT NOCOPY	VARCHAR2,
87   O_Err_Msg	OUT NOCOPY	VARCHAR2
88 );
89 
90 
91 -- PROCEDURE
92 --  common_issue_to_wip		Cost process the common issue to wip
93 --				transaction.
94 
95 procedure common_issue_to_wip(
96   I_ORG_ID		IN NUMBER,
97   I_TXN_ID		IN NUMBER,
98   I_LAYER_ID		IN NUMBER,
99   I_COST_TYPE		IN NUMBER,
100   I_ITEM_ID		IN NUMBER,
101   I_TXN_QTY		IN NUMBER,
102   I_TXN_ACTION_ID 	IN NUMBER,
103   I_NEW_COST		IN NUMBER,
104   I_TXFR_LAYER_ID 	IN NUMBER,
105   I_COST_METHOD         IN NUMBER,
106   I_AVG_RATES_ID        IN NUMBER,
107   I_COST_GRP_ID         IN NUMBER,
108   I_TXFR_COST_GRP       IN NUMBER,
109   I_EXP_FLAG            IN NUMBER,
110   I_EXP_ITEM            IN NUMBER,
111   I_CITW_FLAG           IN NUMBER,
112   I_FLOW_SCHEDULE	IN NUMBER,
113   I_USER_ID		IN NUMBER,
114   I_LOGIN_ID    	IN NUMBER,
115   I_REQ_ID		IN NUMBER,
116   I_PRG_APPL_ID		IN NUMBER,
117   I_PRG_ID		IN NUMBER,
118   O_Err_Num		OUT NOCOPY NUMBER,
119   O_Err_Code		OUT NOCOPY VARCHAR2,
120   O_Err_Msg		OUT NOCOPY VARCHAR2
121 );
122 
123 
124 -- FUNCTION
125 --  compute_actual_cost		Populate the actual cost details table
126 --
127 --
128 -- RETURN VALUES
129 --  integer		1	The actual cost is different from the
130 --				current average cost.
131 --			0	The actual cost is the same as the current
132 --				average cost.
133 
134 function  compute_actual_cost(
135 I_ORG_ID	IN	NUMBER,
136 I_TXN_ID	IN 	NUMBER,
137 I_LAYER_ID	IN	NUMBER,
138 I_COST_TYPE	IN	NUMBER,
139 I_MAT_CT_ID	IN	NUMBER,
140 I_AVG_RATES_ID	IN	NUMBER,
141 I_ITEM_ID	IN	NUMBER,
142 I_TXN_QTY	IN	NUMBER,
143 I_TXN_ACTION_ID	IN	NUMBER,
144 I_TXN_SRC_TYPE	IN	NUMBER,
145 I_INTERORG_REC	IN	NUMBER,
146 I_EXP_FLAG	IN	NUMBER,
147 I_USER_ID	IN	NUMBER,
148 I_LOGIN_ID    	IN	NUMBER,
149 I_REQ_ID	IN	NUMBER,
150 I_PRG_APPL_ID	IN	NUMBER,
151 I_PRG_ID	IN 	NUMBER,
152 O_Err_Num	OUT NOCOPY	NUMBER,
153 O_Err_Code	OUT NOCOPY	VARCHAR2,
154 O_Err_Msg	OUT NOCOPY	VARCHAR2
155 )
156 return integer;
157 
158 
159 -- PROCEDURE
160 --  apply_material_ovhd		Applying this level material overhead based
161 -- 				on the pre-defined rates in the average
162 --				rates cost type.
163 --
164 
165 procedure apply_material_ovhd(
166 I_ORG_ID	IN	NUMBER,
167 I_TXN_ID	IN 	NUMBER,
168 I_LAYER_ID	IN	NUMBER,
169 I_COST_TYPE	IN	NUMBER,
170 I_MAT_CT_ID	IN	NUMBER,
171 I_AVG_RATES_ID	IN	NUMBER,
172 I_ITEM_ID	IN	NUMBER,
173 I_TXN_QTY	IN	NUMBER,
174 I_TXN_ACTION_ID	IN	NUMBER,
175 I_LEVEL		IN	NUMBER,
176 I_USER_ID	IN	NUMBER,
177 I_LOGIN_ID	IN	NUMBER,
178 I_REQ_ID	IN	NUMBER,
179 I_PRG_APPL_ID	IN	NUMBER,
180 I_PRG_ID	IN	NUMBER,
181 O_Err_Num	OUT NOCOPY	NUMBER,
182 O_Err_Code	OUT NOCOPY	VARCHAR2,
183 O_Err_Msg	OUT NOCOPY	VARCHAR2
184 );
185 
186 -- PROCEDURE
187 --  calc_average_cost		Compute new average cost.
188 --
189 
190 procedure calc_average_cost(
191 I_ORG_ID	IN	NUMBER,
192 I_TXN_ID	IN 	NUMBER,
193 I_LAYER_ID	IN	NUMBER,
194 I_COST_TYPE	IN	NUMBER,
195 I_ITEM_ID	IN	NUMBER,
196 I_TXN_QTY	IN	NUMBER,
197 I_TXN_ACTION_ID	IN	NUMBER,
198 I_NO_UPDATE_MMT IN	NUMBER,
199 I_USER_ID	IN	NUMBER,
200 I_LOGIN_ID	IN	NUMBER,
201 I_REQ_ID	IN	NUMBER,
202 I_PRG_APPL_ID	IN	NUMBER,
203 I_PRG_ID	IN	NUMBER,
204 O_Err_Num	OUT NOCOPY	NUMBER,
205 O_Err_Code	OUT NOCOPY	VARCHAR2,
206 O_Err_Msg	OUT NOCOPY	VARCHAR2
207 );
208 
209 -- PROCEDURE
210 --  current_average_cost	Using current average cost for the transaction.
211 --
212 
213 procedure current_average_cost(
214 I_ORG_ID	IN	NUMBER,
215 I_TXN_ID	IN 	NUMBER,
216 I_LAYER_ID	IN	NUMBER,
217 I_COST_TYPE	IN	NUMBER,
218 I_ITEM_ID	IN	NUMBER,
219 I_TXN_QTY	IN	NUMBER,
220 I_TXN_ACTION_ID	IN	NUMBER,
221 I_EXP_FLAG	IN	NUMBER,
222 I_NO_UPDATE_MMT	IN	NUMBER,
223 I_NO_UPDATE_QTY IN	NUMBER,
224 I_USER_ID	IN	NUMBER,
225 I_LOGIN_ID	IN	NUMBER,
226 I_REQ_ID	IN	NUMBER,
227 I_PRG_APPL_ID	IN	NUMBER,
228 I_PRG_ID	IN	NUMBER,
229 O_Err_Num	OUT NOCOPY	NUMBER,
230 O_Err_Code	OUT NOCOPY	VARCHAR2,
231 O_Err_Msg	OUT NOCOPY	VARCHAR2
232 );
233 
234 -- PROCEDURE
235 -- Update_MMT	Updating denormalized data in mtl_material_transactions
236 --
237 
238 procedure update_mmt(
239 I_ORG_ID	IN	NUMBER,
240 I_TXN_ID	IN 	NUMBER,
241 I_TXFR_TXN_ID	IN	NUMBER,
242 I_LAYER_ID	IN	NUMBER,
243 I_COST_UPDATE	IN	NUMBER,
244 I_USER_ID	IN	NUMBER,
245 I_LOGIN_ID	IN	NUMBER,
246 I_REQ_ID	IN	NUMBER,
247 I_PRG_APPL_ID	IN	NUMBER,
248 I_PRG_ID	IN	NUMBER,
249 O_Err_Num	OUT NOCOPY	NUMBER,
250 O_Err_Code	OUT NOCOPY	VARCHAR2,
251 O_Err_Msg	OUT NOCOPY	VARCHAR2
252 );
253 
254 -- PROCEDURE
255 --  update_item_cost
256 PROCEDURE update_item_cost(
257   I_ORG_ID	IN	NUMBER,
258   I_TXN_ID	IN	NUMBER,
259   I_LAYER_ID	IN	NUMBER,
260   I_COST_TYPE	IN	NUMBER,
261   I_ITEM_ID	IN	NUMBER,
262   I_MANDATORY_UPDATE IN	NUMBER,
263   I_USER_ID	IN	NUMBER,
264   I_LOGIN_ID	IN	NUMBER,
265   I_REQ_ID	IN	NUMBER,
266   I_PRG_APPL_ID	IN	NUMBER,
267   I_PRG_ID	IN	NUMBER,
268   O_Err_Num	OUT NOCOPY	NUMBER,
269   O_Err_Code	OUT NOCOPY	VARCHAR2,
270   O_Err_Msg	OUT NOCOPY	VARCHAR2
271 );
272 
273 -- PROCEDURE
274 --  Interorg
275 --  This procedure will compute the transfer cost of an intransit
276 --  interorg transaction.  It will also compute the transaction cost
277 --  of this transfer.
278 
279 procedure interorg(
280   I_ORG_ID	IN	NUMBER,
281   I_TXN_ID	IN 	NUMBER,
282   I_LAYER_ID	IN	NUMBER,
283   I_COST_TYPE	IN	NUMBER,
284   I_ITEM_ID	IN	NUMBER,
285   I_TXN_ACTION_ID IN	NUMBER,
286   I_TXN_ORG_ID 	IN	NUMBER,
287   I_TXFR_ORG_ID  IN	NUMBER,
288   I_COST_GRP_ID IN	NUMBER,
289   I_TXFR_COST_GRP IN	NUMBER,
290   I_FOB_POINT	IN	NUMBER,
291   I_USER_ID	IN	NUMBER,
292   I_LOGIN_ID	IN	NUMBER,
293   I_REQ_ID	IN	NUMBER,
294   I_PRG_APPL_ID	IN	NUMBER,
295   I_PRG_ID	IN	NUMBER,
296   I_TPRICE_OPTION  IN   NUMBER,
297   I_TXF_PRICE      IN   NUMBER,
298   I_EXP_ITEM	   IN 	NUMBER,
299   O_TXN_QTY	IN OUT NOCOPY	NUMBER,
300   O_INTERORG_REC IN OUT NOCOPY	NUMBER,
301   O_NO_UPDATE_MMT IN OUT NOCOPY	NUMBER,
302   O_EXP_FLAG	IN OUT NOCOPY	NUMBER,
303   O_HOOK_USED	OUT NOCOPY	NUMBER,
304   O_Err_Num	OUT NOCOPY	NUMBER,
305   O_Err_Code	OUT NOCOPY	VARCHAR2,
306   O_Err_Msg	OUT NOCOPY	VARCHAR2
307 );
308 
309 -- PROCEDURE
310 -- get_snd_rcv_rate
311 -- This procedure will return the conversion rate between the sending
312 -- org's currency and receiving org's currency.
313 PROCEDURE get_snd_rcv_rate(
314   I_TXN_ID	IN	NUMBER,
315   I_FROM_ORG	IN	NUMBER,
316   I_TO_ORG	IN	NUMBER,
317   O_SND_SOB_ID	OUT NOCOPY	NUMBER,
318   O_SND_CURR	OUT NOCOPY	VARCHAR2,
319   O_RCV_SOB_ID	OUT NOCOPY	NUMBER,
320   O_RCV_CURR	OUT NOCOPY	VARCHAR2,
321   O_CURR_TYPE	OUT NOCOPY	VARCHAR2,
322   O_CONV_RATE	OUT NOCOPY	NUMBER,
323   O_CONV_DATE	OUT NOCOPY	DATE,
324   O_Err_Num	OUT NOCOPY	NUMBER,
325   O_Err_Code	OUT NOCOPY	VARCHAR2,
326   O_Err_Msg	OUT NOCOPY	VARCHAR2
327 );
328 
329 -- PROCEDURE
330 -- get_snd_rcv_uom
331 -- This procedure will return the sending org and receiving org's unit
332 -- of measure.
333 PROCEDURE get_snd_rcv_uom(
334   I_ITEM_ID	IN	NUMBER,
335   I_FROM_ORG	IN	NUMBER,
336   I_TO_ORG	IN	NUMBER,
337   O_SND_UOM	OUT NOCOPY	VARCHAR2,
338   O_RCV_UOM	OUT NOCOPY	VARCHAR2,
339   O_Err_Num	OUT NOCOPY	NUMBER,
340   O_Err_Code	OUT NOCOPY	VARCHAR2,
341   O_Err_Msg	OUT NOCOPY	VARCHAR2
342 );
343 
344 -- FUNCTION
345 -- standard_cost_org
346 -- This function will return 1 if the organization uses stardard cost method.
347 FUNCTION standard_cost_org(
348   I_ORG_ID	IN	NUMBER
349 ) RETURN integer;
350 
351 -- PROCEDURE
352 --  borrow_cost 		Find out the borrowing cost for borrow payback txn
353 
354 procedure borrow_cost(
355   I_ORG_ID	IN	NUMBER,
356   I_TXN_ID	IN 	NUMBER,
357   I_USER_ID	IN	NUMBER,
358   I_LOGIN_ID	IN	NUMBER,
359   I_REQ_ID	IN	NUMBER,
360   I_PRG_APPL_ID	IN	NUMBER,
361   I_PRG_ID	IN	NUMBER,
362   I_ITEM_ID	IN	NUMBER,
363   I_HOOK	IN	NUMBER,
364   I_TO_LAYER	IN	NUMBER,
365   O_Err_Num	OUT NOCOPY	NUMBER,
366   O_Err_Code	OUT NOCOPY	VARCHAR2,
367   O_Err_Msg	OUT NOCOPY	VARCHAR2
368 );
369 
370 -- PROCEDURE
371 --  store_bp_variance 		Find out the difference between the current cost
372 --                              and the borrow cost and store it in variance.
373 
374 procedure store_bp_variance(
375  I_TXN_ID	IN 	NUMBER,
376  I_FROM_LAYER_ID	IN	NUMBER,
377  I_TO_LAYER_ID	IN	NUMBER,
381 );
378  O_Err_Num	OUT NOCOPY	NUMBER,
379  O_Err_Code	OUT NOCOPY	VARCHAR2,
380  O_Err_Msg	OUT NOCOPY	VARCHAR2
382 
383 PROCEDURE interorg_elemental_detail(
384   i_txn_id		IN NUMBER,
385   i_compute_txn_cost    IN NUMBER,
386   i_cost_type_id        IN NUMBER,
387   i_from_layer_id       IN NUMBER,
388   i_item_id             IN NUMBER,
389   i_txn_update_id       IN NUMBER,
390   i_from_org            IN NUMBER,
391   i_to_org              IN NUMBER,
392   i_snd_qty             IN NUMBER,
393   i_txfr_cost           IN NUMBER,
394   i_trans_cost          IN NUMBER,
395   i_conv_rate           IN NUMBER,
396   i_um_rate             IN NUMBER,
397   i_user_id             IN NUMBER,
398   i_login_id            IN NUMBER,
399   i_req_id              IN NUMBER,
400   i_prg_appl_id         IN NUMBER,
401   i_prg_id              IN NUMBER,
402   i_hook_used		IN NUMBER := 0,
403   o_err_num             OUT NOCOPY NUMBER,
404   o_err_code            OUT NOCOPY VARCHAR2,
405   o_err_msg             OUT NOCOPY VARCHAR2);
406 
407 
408 --------------------------------------------------------------------------
409 -- PROCEDURE                                                              --
410 --   Cost_Acct_Events                                                     --
411 --                                                                        --
412 --                                                                        --
413 -- DESCRIPTION                                                            --
414 --   This API costs logical events that are created as part of Global     --
415 --   Procurement or Drop Shipment Transactions. These events are known by --
416 --   non-null parent_id.                                                  --
417 --   The consigned price update transcation, introduced as part of        --
418 --   Retroactive Pricing Project is also cost processed using this API.   --
419 --   This transaction does not have a parent_id.                          --
420 --                                                                        --
421 --   This API is common between all cost methods to process Accounting    --
422 --   Events and the Retroactive Price Update transaction.                 --
423 
424 --   It is called from inltcp.lpc for Std. Costing and from actual and    --
425 --   layer cost workers for Average Costing and FIDO/LIFO orgs            --
426 --   respectively.                                                        --
427 -- PURPOSE:                                                               --
428 --   Oracle Applications Rel 11i.10                                       --
429 --                                                                        --
430 --                                                                        --
431 -- HISTORY:                                                               --
432 --    06/22/03     Anju G       Created                                   --
433 ----------------------------------------------------------------------------
434 
435 PROCEDURE cost_acct_events (
436                   p_api_version      IN  NuMBER,
437                   /*p_init_msg_list    IN  VARCHAR2 := FND_API.G_FALSE,*/
438                   p_commit           IN  VARCHAR2 := FND_API.G_FALSE,
439                   p_validation_level IN  NUMBER := FND_API.G_VALID_LEVEL_FULL,
440                   p_debug            IN  VARCHAR2,
441 
442                   p_org_id           IN  NUMBER,
443                   p_txn_id           IN  NUMBER,
444                   p_parent_id        IN  NUMBER,
445 
446                   p_user_id          IN  NUMBER,
447                   p_request_id       IN  NUMBER,
448                   p_prog_id          IN  NUMBER,
449                   p_prog_app_id      IN  NUMBER,
450                   p_login_id         IN  NUMBER,
451 
452                   x_err_num          OUT NOCOPY VARCHAR2,
453                   x_err_code         OUT NOCOPY VARCHAR2,
454                   x_err_msg          OUT NOCOPY VARCHAR2);
455 
456 --------------------------------------------------------------------------
457 -- PROCEDURE                                                              --
458 --   Compute_MCACD_Costs                                                  --
459 --                                                                        --
460 --                                                                        --
461 -- DESCRIPTION                                                            --
462 --   This procedure determines the costs of logical transactions in       --
463 --   physical organizations.                                              --
464 --   The costs are determined as follows:                                 --
465 --   Standard Costing org: Standard cost of item                          --
466 --   Average Costing org: actual cost of item                             --
467 --   FIFO/FIFO org: From MCLACD of parent transaction                     --
468 --                                                                        --
469 --   This procedure should be called only for logical transactions in the --
470 --   physical event owing organization - essentially orgs where physical  --
471 --   SO Issue or RMAs are done.                                           --
472 --                                                                        --
473 -- PURPOSE:                                                               --
474 --   Oracle Applications Rel 11i.10                                       --
475 --                                                                        --
476 --                                                                        --
477 -- HISTORY:                                                               --
478 --    06/22/03     Anju G       Created                                   --
479 --    07/07/07  vjavli  FP 11i-12.0 Bug 6328273 fix: add p_cost_org_id to --
480 --                      facilitate logic for shared standard costing org  --
484 PROCEDURE Compute_MCACD_Costs(
481 ----------------------------------------------------------------------------
482 
483 
485                      p_api_version      IN  NUMBER,
486                      p_init_msg_list    IN  VARCHAR2 := FND_API.G_FALSE,
487                      p_commit           IN  VARCHAR2 := FND_API.G_FALSE,
488                      p_validation_level IN  NUMBER   := FND_API.G_VALID_LEVEL_FULL,
489 
490                      p_org_id           IN  NUMBER,
491                      p_txn_id           IN  NUMBER,
492                      p_parent_txn_id    IN  NUMBER,
493                      p_cost_method      IN  NUMBER,
494                      p_cost_org_id      IN  NUMBER,
495                      p_cost_type_id     IN  NUMBER,
496                      p_item_id          IN  NUMBER,
497                      p_txn_action_id    IN  NUMBER,
498                      p_exp_item         IN  NUMBER,
499                      p_exp_flag         IN  NUMBER,
500                      p_cost_group_id    IN  NUMBER,
501                      p_rates_cost_type  IN  NUMBER,
502                      p_txn_qty          IN  NUMBER,
503                      p_txn_src_type     IN  NUMBER,
504 
505                      p_user_id          IN  NUMBER,
506                      p_request_id       IN  NUMBER,
507                      p_prog_id          IN  NUMBER,
508                      p_prog_app_id      IN  NUMBER,
509                      p_login_id         IN  NUMBER,
510 
511 
512                      x_layer_id         IN OUT NOCOPY NUMBER,
513                      x_err_num          OUT NOCOPY VARCHAR2,
514                      x_err_code         OUT NOCOPY VARCHAR2,
515                      x_err_msg          OUT NOCOPY VARCHAR2);
516 
517 /* Bug 2665290 */
518 /*========================================================================
519 -- PROCEDURE
520 --    payback_variance
521 --
522 -- DESCRIPTION
523 -- This procedure will be called for all Payback transactions across the
524 -- same cost group.
525 -- This  procedure will identify the cost of all borrow transactions
526 -- related to the specified payback transactions, compute the average cost
527 -- calculate the variance and update payback_variance_amount column of MCACD.
528 --
529 
530 -- HISTORY
531 --    08/20/03     Anju Gupta          Creation
532 
533 =========================================================================*/
534 
535 PROCEDURE payback_variance(
536   I_ORG_ID      IN      NUMBER,
537   I_TXN_ID      IN      NUMBER,
538   I_FROM_LAYER  IN      NUMBER,
539   I_USER_ID     IN      NUMBER,
540   I_LOGIN_ID    IN      NUMBER,
541   I_REQ_ID      IN      NUMBER,
542   I_PRG_APPL_ID IN      NUMBER,
543   I_PRG_ID      IN      NUMBER,
544   O_Err_Num     OUT NOCOPY      NUMBER,
545   O_Err_Code    OUT NOCOPY      VARCHAR2,
546   O_Err_Msg     OUT NOCOPY      VARCHAR2);
547 
548 
549 PROCEDURE Cost_LogicalSOReceipt (
550             p_parent_txn_id  IN NUMBER,
551             p_user_id        IN NUMBER,
552             p_request_id     IN NUMBER,
553             p_prog_id        IN NUMBER,
554             p_prog_app_id    IN NUMBER,
555             p_login_id       IN NUMBER,
556 
557             x_err_num        OUT NOCOPY NUMBER,
558             x_err_code       OUT NOCOPY VARCHAR2,
559             x_err_msg        OUT NOCOPY VARCHAR2
560             );
561 
562 --
563 -- OPM INVCONV  Process-Discrete Enh.
564 -- Added following procedure to cost new logical Intransit Receipt (15)
565 --
566 PROCEDURE Cost_Logical_itr_receipt(
567   I_ORG_ID      IN      NUMBER,
568   I_TXN_ID      IN      NUMBER,
569   I_LAYER_ID    IN      NUMBER,
570   I_COST_TYPE   IN      NUMBER,
571   I_ITEM_ID     IN      NUMBER,
572   I_TXN_ACTION_ID IN    NUMBER,
573   I_TXN_ORG_ID  IN      NUMBER,
574   I_TXFR_ORG_ID  IN     NUMBER,
575   I_COST_GRP_ID IN      NUMBER,
576   I_TXFR_COST_GRP IN    NUMBER,
577   I_FOB_POINT   IN      NUMBER,
578   I_USER_ID     IN      NUMBER,
579   I_LOGIN_ID    IN      NUMBER,
580   I_REQ_ID      IN      NUMBER,
581   I_PRG_APPL_ID IN      NUMBER,
582   I_PRG_ID      IN      NUMBER,
583   I_TPRICE_OPTION  IN   NUMBER,
584   I_TXF_PRICE      IN   NUMBER,
585   O_TXN_QTY     IN OUT NOCOPY   NUMBER,
586   O_INTERORG_REC IN OUT NOCOPY  NUMBER,
587   O_NO_UPDATE_MMT IN OUT NOCOPY NUMBER,
588   O_EXP_FLAG    IN OUT NOCOPY   NUMBER,
589   O_Err_Num     OUT NOCOPY      NUMBER,
590   O_Err_Code    OUT NOCOPY      VARCHAR2,
591   O_Err_Msg     OUT NOCOPY      VARCHAR2
592 );
593 
594 /*--------------------------------------------------------------------------
595  * Procedure: CompEncumbrance_IntOrdersExp
596  *
597  * Description:
598  *           The procedure computes the encumbrance amount for a Logical
599  *           Expense Requisition Receipt transaction
600  *           It also returns the budget account ( x_encumbrance_account )
601  * Parameters:
602  *           p_req_line_id     : Requisition Line Identifier of the Originating
603  *           Requisition
604  *           p_organization_id : Organization (MMT.ORGANIZATION_ID)
605  *           p_item_id         : Inventory Item (MMT.INVENTORY_ITEM_ID)
606  *           p_primary_qty     : Primary Quantity of the Receipt Txn
607  *                               (MMT.PRIMARY_QUANTITY)
608  *           p_total_primary_qty: Total Quantity received (and costed) for
609  *                                the order so far.
610  * ------------------------------------------------------------------------*/
611 PROCEDURE CompEncumbrance_IntOrdersExp (
612             p_api_version         IN NUMBER,
613 	    p_transaction_id      IN MTL_MATERIAL_TRANSACTIONS.TRANSACTION_ID%TYPE,
614             p_req_line_id         IN PO_REQUISITION_LINES_ALL.REQUISITION_LINE_ID%TYPE,
618             p_total_primary_qty   IN NUMBER,
615             p_item_id             IN MTL_SYSTEM_ITEMS.INVENTORY_ITEM_ID%TYPE,
616             p_organization_id     IN MTL_PARAMETERS.ORGANIZATION_ID%TYPE,
617             p_primary_qty         IN MTL_MATERIAL_TRANSACTIONS.PRIMARY_QUANTITY%TYPE,
619             x_encumbrance_amount  OUT NOCOPY NUMBER,
620             x_encumbrance_account OUT NOCOPY NUMBER,
621             x_return_status       OUT NOCOPY VARCHAR,
622             x_return_message      OUT NOCOPY VARCHAR2
623             );
624 /*--------------------------------------------------------------------------
625  * Procedure: CompEncumbrance_IntOrdersExp
626  *
627  * Description:
628  *           The procedure computes the encumbrance amount for an Internal
629  *           Order related material transaction
630  *           It also returns the budget account ( x_encumbrance_account )
631  * Parameters:
632  *           p_transaction_id   : Transaction Identifier (from MMT)
633  *
634  * ------------------------------------------------------------------------*/
635 PROCEDURE CompEncumbrance_IntOrdersExp (
636             p_api_version     IN NUMBER,
637             p_transaction_id  IN MTL_MATERIAL_TRANSACTIONS.TRANSACTION_ID%TYPE,
638 
639             x_encumbrance_amount  OUT NOCOPY NUMBER,
640             x_encumbrance_account OUT NOCOPY NUMBER,
641             x_return_status       OUT NOCOPY VARCHAR,
642             x_return_message      OUT NOCOPY VARCHAR2
643             );
644 /*===========================================================================
645 |  Procedure:   validate_actual_cost_hook                                    |
646 |  Author:      Ivan Pineda                                                  |
647 |  Date:        November 29, 2008                                            |
648 |  Description: This procedure will be called  after  the  actual_cost_hook  |
649 |               client extension has been called to validate the data .  We  |
650 |               will raise two different errors. If the hook is called  and  |
651 |               there is no data in MCACD for that transaction then we will  |
652 |               raise exception no_mcacd_for_hook. If the data inserted  in  |
653 |               MCACD has the insertion flag as 'Y' and there  are  details  |
654 |               in CLCD we will raise exception insertion_flag_in_mcacd      |
655 |                                                                            |
656 |  Parameters:  i_txn_id: Transaction id                                     |
657 |               i_org_id: Organization id                                    |
658 |               i_layer_id: Layer id                                         |
659 |                                                                            |
660 |                                                                            |
661 |===========================================================================*/
662 PROCEDURE validate_actual_cost_hook(
663 	i_txn_id IN NUMBER,
664 	i_org_id IN NUMBER,
665 	i_layer_id IN NUMBER,
666         i_req_id IN NUMBER,
667         i_prg_appl_id IN NUMBER,
668         i_prg_id IN NUMBER,
669 	o_err_num OUT NOCOPY NUMBER,
670 	o_err_code OUT NOCOPY VARCHAR2,
671 	o_err_msg OUT NOCOPY VARCHAR2
672 	);
673 
674 END CSTPAVCP;