DBA Data[Home] [Help]

PACKAGE BODY: APPS.BOM_EAMUTIL

Source


1 PACKAGE BODY BOM_EAMUTIL AS
2 /* $Header: BOMPEAMB.pls 120.0.12010000.2 2008/11/17 07:30:18 jatian ship $ */
3 /*==========================================================================+
4 |   Copyright (c) 2001 Oracle Corporation, California, USA          	    |
5 |                          All rights reserved.                             |
6 +===========================================================================+
7 |                                                                           |
8 | File Name    : BOMPEAMS.pls						    |
9 | Description  : EAM utility programs package				    |
10 | Created By   : Refaitheen Farook					    |
11 |									    |
12 |	item_id			Assembly_Item_Id			    |
13 |	org_id			Organization_id				    |
14 |                                                                           |
15 +==========================================================================*/
16 
17 /***************************************************************************
18 * Function      : Enabled
19 * Returns       : VARCHAR2
20 * Parameters IN : None
21 * Parameters OUT: None
22 * Purpose       : Function will return the value of 'Y' or 'N'
23 *                 to check if eam is enabled.
24 *****************************************************************************/
25 FUNCTION Enabled RETURN VARCHAR2 IS
26 
27     x_install_eam             BOOLEAN ;
28     x_status                  VARCHAR2(50);
29     x_industry                VARCHAR2(50);
30     x_schema                  VARCHAR2(50);
31 
32 
33 BEGIN
34 
35     x_install_eam :=
36     Fnd_Installation.Get_App_Info
37                          (application_short_name => 'EAM',
38                           status                 => x_status,
39                           industry               => x_industry,
40                           oracle_schema          => x_schema);
41 
42     IF (x_status <> 'I' or x_status is NULL)
43     THEN
44           RETURN 'N' ;
45 
46     END IF;
47 
48     RETURN 'Y';
49 
50 END;
51 
52 /***************************************************************************
53 * Function      : Serial_Effective_Item
54 * Returns       : VARCHAR2
55 * Parameters IN : item_id,org_id
56 * Parameters OUT: None
57 * Purpose       : Function will return the value of 'Y' or 'N'
58 *                 to check if item is serial effective.
59 *****************************************************************************/
60 FUNCTION Serial_Effective_Item(item_id NUMBER,
61                                org_id  NUMBER) RETURN VARCHAR2 IS
62   l_serial_eff_item VARCHAR2(1);
63 BEGIN
64   IF item_id IS NULL THEN
65     RETURN ('N');
66   END IF;
67 
68   SELECT   decode(effectivity_control , 2 , 'Y' , 'N')
69     INTO   l_serial_eff_item
70     FROM   mtl_system_items
71    WHERE   inventory_item_id = item_id
72      AND   organization_id = org_id
73      AND   nvl(eam_item_type,0) = 1;
74 
75      RETURN (l_serial_eff_item);
76 
77   EXCEPTION WHEN NO_DATA_FOUND THEN
78     l_serial_eff_item := 'N';
79     RETURN ( l_serial_eff_item );
80   WHEN OTHERS THEN
81     RETURN ( NULL );
82 
83 END;
84 
85 
86 /***************************************************************************
87 * Function      : OrgIsEamEnabled
88 * Returns       : VARCHAR2
89 * Parameters IN : p_org_id
90 * Parameters OUT: None
91 * Purpose       : Function will return the value of 'Y' or 'N'
92 *                 to check if organization is eAM enabled.
93 *****************************************************************************/
94 FUNCTION OrgIsEamEnabled(p_org_id NUMBER) RETURN VARCHAR2
95 IS
96 
97     CURSOR GetEamEnabledFlag IS
98      SELECT NVL(eam_enabled_flag, 'N') eam_enabled_flag
99      FROM   mtl_parameters
100      WHERE  organization_id = p_org_id ;
101 
102 
103      x_eam_enabled_flag VARCHAR2(1) ;
104 
105 BEGIN
106 
107    FOR X_Eam in GetEamEnabledFlag LOOP
108       x_eam_enabled_flag := X_Eam.eam_enabled_flag ;
109    END LOOP;
110 
111    RETURN x_eam_enabled_flag ;
112 
113 END OrgIsEamEnabled  ;
114 
115 
116 /***************************************************************************
117 * Function      : Asset_Activity_Item
118 * Returns       : VARCHAR2
119 * Parameters IN : item_id,org_id
120 * Parameters OUT: None
121 * Purpose       : Function will return 'Y' for asset activity item
122 *****************************************************************************/
123 FUNCTION Asset_Activity_Item(item_id NUMBER,
124                              org_id  NUMBER) RETURN VARCHAR2 IS
125   l_asset_activity_item VARCHAR2(1);
126 BEGIN
127   IF item_id IS NULL THEN
128     RETURN ('N');
129   END IF;
130 
131   SELECT   'Y'
132     INTO   l_asset_activity_item
133     FROM   mtl_system_items
134     WHERE  inventory_item_id = item_id AND
135            organization_id   = org_id AND
136            nvl(eam_item_type,0) = 2;
137 
138   RETURN (l_asset_activity_item);
139 
140   EXCEPTION WHEN NO_DATA_FOUND THEN
141     l_asset_activity_item := 'N';
142     RETURN ( l_asset_activity_item );
143 
144   WHEN OTHERS THEN
145     RETURN ( NULL );
146 END;
147 
148 
149 /***************************************************************************
150 * Function      : Asset_Group_Item
151 * Returns       : VARCHAR2
152 * Parameters IN : item_id,org_id
153 * Parameters OUT: None
154 * Purpose       : Function will return 'Y' for asset group item
155 *****************************************************************************/
156 FUNCTION Asset_Group_Item(item_id NUMBER,
157                           org_id  NUMBER) RETURN VARCHAR2 IS
158   l_asset_group_item VARCHAR2(1);
159 BEGIN
160   IF item_id IS NULL THEN
161     RETURN ('N');
162   END IF;
163 
164   SELECT   'Y'
165     INTO   l_asset_group_item
166     FROM   mtl_system_items
167     WHERE  inventory_item_id = item_id AND
168            organization_id   = org_id AND
169            nvl(eam_item_type,0) = 1;
170 
171   RETURN (l_asset_group_item);
172 
173   EXCEPTION WHEN NO_DATA_FOUND THEN
174     l_asset_group_item := 'N';
175     RETURN ( l_asset_group_item );
176 
177   WHEN OTHERS THEN
178     RETURN ( NULL );
179 END;
180 
181 /***************************************************************************
182 * Function      : Direct_Item
183 * Returns       : VARCHAR2
184 * Parameters IN : item_id,org_id
185 * Parameters OUT: None
186 * Purpose       : Function will return 'Y' for direct item
187 *****************************************************************************/
188 FUNCTION Direct_Item(item_id NUMBER,
189                      org_id  NUMBER) RETURN VARCHAR2 IS
190   l_direct_item VARCHAR2(1);
191 BEGIN
192   IF item_id IS NULL THEN
193     RETURN ('N');
194   END IF;
195 
196   SELECT   'Y'
197     INTO   l_direct_item
198     FROM   mtl_system_items
199     WHERE  inventory_item_id = item_id AND
200            organization_id   = org_id AND
201            /*inventory_item_flag = 'Y' AND  Bug 7566475 Removing the and condition on the column inventory_item_flag*/
202 	   stock_enabled_flag = 'N';
203 
204   RETURN (l_direct_item);
205 
206   EXCEPTION WHEN NO_DATA_FOUND THEN
207     l_direct_item := 'N';
208     RETURN ( l_direct_item );
209 
210   WHEN OTHERS THEN
211     RETURN ( NULL );
212 END;
213 
214 END BOM_EAMUTIL;