DBA Data[Home] [Help]

PACKAGE BODY: APPS.JA_AU_COSTPROC_PKG

Source


1 PACKAGE BODY JA_AU_COSTPROC_PKG as
2 /* $Header: jaauicpb.pls 120.2 2003/11/04 23:01:46 ykonishi ship $ */
3 
4 -- *
5 -- ** Create JA_AU_LOCAL_ACCOUNT procedure
6 -- *
7 
8 PROCEDURE JA_AU_LOCAL_ACCOUNT (x_org_id         IN
9            mtl_material_transactions.organization_id%TYPE,
10            x_subinv             IN
11            mtl_material_transactions.subinventory_code%TYPE,
12            x_item_id            IN
13            mtl_material_transactions.inventory_item_id%TYPE,
14            x_transaction_id     IN      number)
15 IS
16 
17    l_po_imp_req_flag  	VARCHAR2(1);
18    l_req_line_id    	po_req_distributions.requisition_line_id%TYPE;
19    l_ccid         	gl_code_combinations.code_combination_id%TYPE;
20 
21    req_line_id_zero    	exception;
22 
23 BEGIN
24 
25    -- JA_AU_PO_IMP_REQ_FLAG profile controls execution of this program.
26 
27    FND_PROFILE.GET('JA_AU_PO_IMP_REQ_FLAG',l_po_imp_req_flag);
28 
29    IF nvl(l_po_imp_req_flag,'N') <> 'Y' THEN
30 
31       return;
32 
33    END IF;
34    --
35 
36    /* Retrieve requisition_line_id from table RCV_TRANSACTIONS */
37 
38    begin
39       SELECT nvl(requisition_line_id,0)
40         INTO l_req_line_id
41         FROM rcv_transactions
42        WHERE inv_transaction_id = x_transaction_id
43          AND transaction_type = 'RECEIVE'
44          AND organization_id = x_org_id;
45 
46       /* Call other package for null returned - Bug 2729703 */
47       IF l_req_line_id = 0 THEN
48          ja_au_ccid_pkg.ja_au_autoaccounting(x_org_id,
49                                              x_subinv,
50                                              x_item_id,
51                                              x_transaction_id);
52       END IF;
53 
54    exception
55       WHEN NO_DATA_FOUND THEN
56          ja_au_ccid_pkg.ja_au_autoaccounting(x_org_id,
57 	                                     x_subinv,
58 	                                     x_item_id,
59                                              x_transaction_id);
60          goto end_trigger;
61       WHEN OTHERS THEN
62          -- dbms_output.put_line('* ERROR retrieving REQUISITION_LINE_ID *');
63          -- dbms_output.put_line(sqlerrm);
64          goto end_trigger;
65    end;
66 
67 
68    /* Get the code_combination_id for this req. Field is NOT NULL
69       therefore must return a value. */
70    BEGIN
71     IF l_req_line_id <> 0 THEN
72       SELECT code_combination_id
73         INTO l_ccid
74         FROM po_req_distributions_all
75        WHERE requisition_line_id = l_req_line_id;
76     END IF;
77 
78    exception
79       WHEN NO_DATA_FOUND THEN
80          -- dbms_output.put_line('* ERROR - Could not retrieve CODE_COMBINATION_ID *');
81          goto end_trigger;
82       WHEN OTHERS THEN
83          -- dbms_output.put_line('* ERROR retrieving CODE_COMBINATION_ID *');
84          -- dbms_output.put_line(sqlerrm);
85          goto end_trigger;
86    END;
87 
88    /* Update reference_account field in mtl_transaction_accounts */
89 
90     IF l_req_line_id <> 0 THEN
91      UPDATE mtl_transaction_accounts
92         SET reference_account = l_ccid
93       WHERE transaction_id = x_transaction_id
94         AND accounting_line_type = 2 ;
95     END IF;
96 
97 
98 <<end_trigger>>
99    null;
100 
101 END JA_AU_LOCAL_ACCOUNT;
102 
103 
104 END JA_AU_COSTPROC_PKG;