[Home] [Help]
PACKAGE BODY: APPS.INV_VENDORMERGE_GRP
Source
1 PACKAGE BODY INV_VendorMerge_GRP AS
2 /* $Header: INVTCASB.pls 120.1 2006/03/15 11:33:59 kgnanamu noship $ */
3 /*==========================================================================+
4 | Copyright (c) 1997 Oracle Corporation Redwood Shores, California, USA |
5 | All rights reserved. |
6 +===========================================================================+
7 | |
8 | File Name : INVTCASB.pls |
9 | Description : This package contains functions called by |
10 | Suppliers Merge program. |
11 | Bug : 4541401 |
12 | Creator : Karthik Gnanamurthy 03/15/2006 |
13 +===========================================================================*/
14
15 G_PKG_NAME CONSTANT VARCHAR2(30) := 'INV_VendorMerge_GRP';
16
17 PROCEDURE Merge_Vendor (
18 p_api_version IN NUMBER,
19 p_init_msg_list IN VARCHAR2 default FND_API.G_FALSE,
20 p_commit IN VARCHAR2 default FND_API.G_FALSE,
21 p_validation_level IN NUMBER default FND_API.G_VALID_LEVEL_FULL,
22 p_return_status OUT NOCOPY VARCHAR2,
23 p_msg_count OUT NOCOPY NUMBER,
24 p_msg_data OUT NOCOPY VARCHAR2,
25 p_vendor_id IN NUMBER,
26 p_dup_vendor_id IN NUMBER,
27 p_vendor_site_id IN NUMBER,
28 p_dup_vendor_site_id IN NUMBER,
29 p_party_id IN NUMBER,
30 p_dup_party_id IN NUMBER,
31 p_party_site_id IN NUMBER,
32 p_dup_party_site_id IN NUMBER) IS
33
34 l_api_version CONSTANT NUMBER := 1.0;
35 l_api_name CONSTANT VARCHAR2(30) := 'Merge_Vendor';
36
37 BEGIN
38
39 if not FND_API.Compatible_API_Call
40 ( l_api_version,
41 p_api_version,
42 l_api_name,
43 G_PKG_NAME)
44 then
45 raise FND_API.G_EXC_UNEXPECTED_ERROR;
46 end if;
47
48 p_return_status := fnd_api.g_ret_sts_success;
49
50 /*
51 ** Following tables have reference to vendor and are candidates for
52 ** vendor merge:
53 **
54 ** MTL_INTERCOMPANY_PARAMETERS via: MTL_INTERCO_PARAMETERS_FK03
55 ** MTL_KANBAN_CARDS via: MTL_KANBAN_CARDS_FK8
56 ** MTL_KANBAN_CARD_ACTIVITY via: MTL_KANBAN_CARD_ACTIVITY_FK9
57 ** MTL_KANBAN_PULL_SEQUENCES via: MTL_KANBAN_PULL_SEQUNECES_FK5
58 ** MTL_SERIAL_NUMBERS via: MTL_SERIAL_NUMBERS_FK11
59 */
60
61 update MTL_INTERCOMPANY_PARAMETERS
62 set vendor_id = p_vendor_id
63 where vendor_id = p_dup_vendor_id;
64
65 update MTL_KANBAN_CARDS
66 set supplier_id = p_vendor_id
67 where supplier_id = p_dup_vendor_id;
68
69 update MTL_KANBAN_CARD_ACTIVITY
70 set supplier_id = p_vendor_id
71 where supplier_id = p_dup_vendor_id;
72
73 update MTL_KANBAN_PULL_SEQUENCES
74 set supplier_id = p_vendor_id
75 where supplier_id = p_dup_vendor_id;
76
77 update MTL_SERIAL_NUMBERS
78 set original_unit_vendor_id = p_vendor_id
79 where original_unit_vendor_id = p_dup_vendor_id;
80
81 /*
82 ** Following tables have reference to vendor site and are candidates for
83 ** vendor merge:
84 **
85 ** MTL_INTERCOMPANY_PARAMETERS via: MTL_INTERCO_PARAMETERS_FK04
86 ** MTL_KANBAN_CARDS via: MTL_KANBAN_CARDS_FK9
87 ** MTL_KANBAN_CARD_ACTIVITY via: MTL_KANBAN_CARD_ACTIVITY_FK10
88 ** MTL_KANBAN_PULL_SEQUENCES via: MTL_KANBAN_PULL_SEQUENCES_FK6
89 */
90
91 update MTL_INTERCOMPANY_PARAMETERS
92 set vendor_site_id = p_vendor_site_id
93 where vendor_site_id = p_dup_vendor_site_id;
94
95 update MTL_KANBAN_CARDS
96 set supplier_site_id = p_vendor_site_id
97 where supplier_site_id = p_dup_vendor_site_id;
98
99 update MTL_KANBAN_CARD_ACTIVITY
100 set supplier_site_id = p_vendor_site_id
101 where supplier_site_id = p_dup_vendor_site_id;
102
103 update MTL_KANBAN_PULL_SEQUENCES
104 set supplier_site_id = p_vendor_site_id
105 where supplier_site_id = p_dup_vendor_site_id;
106
107 -- Get message count and data
108 FND_MSG_PUB.Count_And_Get
109 ( p_count => p_msg_count,
110 p_data => p_msg_data
111 );
112
113 if (p_commit = FND_API.G_TRUE) then
114 commit;
115 end if;
116
117 EXCEPTION
118 WHEN OTHERS THEN
119 fnd_message.set_name('AR', 'HZ_MERGE_SQL_ERROR');
120 fnd_message.set_token('ERROR', sqlerrm);
121 fnd_msg_pub.add;
122 p_return_status := fnd_api.g_ret_sts_unexp_error;
123
124 END Merge_Vendor;
125
126 END INV_VendorMerge_GRP;