1 PACKAGE EAM_ASSETATTR_GRP_PUB AS
2 /* $Header: EAMPAAGS.pls 120.0 2005/05/24 19:18:09 appldev noship $ */
3 /*#
4 * This package is used for the INSERT / UPDATE /Validation of asset attribute groups.
5 * It defines 2 key procedures insert_assetattr_grp and update_assetattr_grp,
6 * which first validates and massages the IN parameters and then carries out
7 * the respective operations.
8 * @rep:scope public
9 * @rep:product EAM
10 * @rep:lifecycle active
11 * @rep:displayname Asset Group and Attributes Group Association
12 * @rep:category BUSINESS_ENTITY EAM_ASSET_ATTRIBUTE_GROUPS
13 */
14
15 /*
16 -- API name : EAM_ASSETATTR_GRP_PUB
17 -- Type : Public
18 -- Function : Insert, update and validation of the asset attribute assignemnt data
19 -- Pre-reqs : None.
20 */
21 /* Check why this global variable is required - Anand */
22 G_PKG_NAME CONSTANT VARCHAR2(30):='EAM_ASSETATTR_GRP_PUB';
23
24 /*
25 This procedure inserts a record in the mtl_eam_asset_attr_groups table
26 -- Parameters :
27 -- IN : P_API_VERSION IN NUMBER REQUIRED
28 -- P_INIT_MSG_LIST IN VARCHAR2 OPTIONAL
29 -- DEFAULT = FND_API.G_FALSE
30 -- P_COMMIT IN VARCHAR2 OPTIONAL
31 -- DEFAULT = FND_API.G_FALSE
32 -- P_VALIDATION_LEVEL IN NUMBER OPTIONAL
33 -- DEFAULT = FND_API.G_VALID_LEVEL_FULL
34 -- P_APPLICATION_ID IN NUMBER
35 -- P_DESCRIPTIVE_FLEXFIELD_NAME IN VARCHAR2
36 -- DEFAULT NULL
37 -- P_DESC_FLEX_CONTEXT_CODE IN VARCHAR2
38 -- DEFAULT NULL
39 -- P_ORGANIZATION_ID IN NUMBER
40 -- P_INVENTORY_ITEM_ID IN NUMBER
41 -- P_ENABLED_FLAG IN VARCHAR2
42 -- DEFAULT NULL
43 -- P_CREATION_ORGANIZATION_ID IN NUMBER
44 --
45 -- OUT : x_return_status OUT NOCOPY VARCHAR2(1)
46 -- x_msg_count OUT NOCOPY NUMBER
47 -- x_msg_data OUT NOCOPY VARCHAR2 (2000)
48 -- Version : Current version: 1.0
49 -- Initial version: 1.0
50 --
51 -- Notes
52 */
53
54 /*#
55 * This procedure is used to insert records in MTL_EAM_ASSET_ATTR_GROUPS.
56 * It is used to create Asset Attribute Groups association.
57 * @param p_api_version Version of the API
58 * @param p_init_msg_list Flag to indicate initialization of message list
59 * @param p_commit Flag to indicate whether API should commit changes
60 * @param p_validation_level Validation Level of the API
61 * @param x_return_status Return status of the procedure call
62 * @param x_msg_count Count of the return messages that API returns
63 * @param x_msg_data The collection of the messages
64 * @param P_APPLICATION_ID Application Identifier of the flexfield for the attribute group
65 * @param P_DESCRIPTIVE_FLEXFIELD_NAME Name of flexfield for the attribute group
66 * @param P_DESC_FLEX_CONTEXT_CODE Context code of the flexfield for the attribute group
67 * @param P_ORGANIZATION_ID Organization identifier of the asset group
68 * @param P_INVENTORY_ITEM_ID Inventory item identifier of the asset group
69 * @param P_ENABLED_FLAG Flag to enable or disable the association
70 * @param P_CREATION_ORGANIZATION_ID Creation Organization Identifier
71 * @param X_NEW_ASSOCIATION_ID This is the newly created Primary Key for the association inserted. The association is created between asset group and attribute group.
72 * @return Returns the newly created Primary Key for the record inserted
73 * @rep:scope public
74 * @rep:displayname Insert Asset Attribute Group Association
75 */
76
77
78 PROCEDURE INSERT_ASSETATTR_GRP
79 ( P_API_VERSION IN NUMBER ,
80 P_INIT_MSG_LIST IN VARCHAR2:= FND_API.G_FALSE ,
81 P_COMMIT IN VARCHAR2:= FND_API.G_FALSE ,
82 P_VALIDATION_LEVEL IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
83 X_RETURN_STATUS OUT NOCOPY VARCHAR2 ,
84 X_MSG_COUNT OUT NOCOPY NUMBER ,
85 X_MSG_DATA OUT NOCOPY VARCHAR2 ,
86 P_APPLICATION_ID IN NUMBER DEFAULT 401 ,
87 P_DESCRIPTIVE_FLEXFIELD_NAME IN VARCHAR2 DEFAULT 'MTL_EAM_ASSET_ATTR_VALUES',
88 P_DESC_FLEX_CONTEXT_CODE IN VARCHAR2 ,
89 P_ORGANIZATION_ID IN NUMBER ,
90 P_INVENTORY_ITEM_ID IN NUMBER ,
91 P_ENABLED_FLAG IN VARCHAR2 DEFAULT 'Y',
92 P_CREATION_ORGANIZATION_ID IN NUMBER ,
93 X_NEW_ASSOCIATION_ID OUT NOCOPY NUMBER
94 );
95
96 /*
97 This procedure updates a record in the mtl_eam_asset_attr_groups table
98 -- Parameters :
99 -- IN : P_API_VERSION IN NUMBER REQUIRED
100 -- P_INIT_MSG_LIST IN VARCHAR2 OPTIONAL
101 -- DEFAULT = FND_API.G_FALSE
102 -- P_COMMIT IN VARCHAR2 OPTIONAL
103 -- DEFAULT = FND_API.G_FALSE
104 -- P_VALIDATION_LEVEL IN NUMBER OPTIONAL
105 -- DEFAULT = FND_API.G_VALID_LEVEL_FULL
106 -- P_APPLICATION_ID IN NUMBER
107 -- P_DESCRIPTIVE_FLEXFIELD_NAME IN VARCHAR2
108 -- DEFAULT NULL
109 -- P_DESC_FLEX_CONTEXT_CODE IN VARCHAR2
110 -- DEFAULT NULL
111 -- P_ORGANIZATION_ID IN NUMBER
112 -- P_INVENTORY_ITEM_ID IN NUMBER
113 -- P_ENABLED_FLAG IN VARCHAR2
114 -- DEFAULT NULL
115 -- P_CREATION_ORGANIZATION_ID IN NUMBER
116 --
117 -- OUT : x_return_status OUT NOCOPY VARCHAR2(1)
118 -- x_msg_count OUT NOCOPY NUMBER
119 -- x_msg_data OUT NOCOPY VARCHAR2 (2000)
120 -- Version : Current version: 1.0
121 -- Initial version: 1.0
122 --
123 -- Notes
124 */
125
126 /*#
127 * This procedure is used to update the existing records in MTL_EAM_ASSET_ATTR_GROUPS.
128 * It is used to update Asset Attribute Groups association.
129 * @param p_api_version Version of the API
130 * @param p_init_msg_list Flag to indicate initialization of message list
131 * @param p_commit Flag to indicate whether API should commit changes
132 * @param p_validation_level Validation Level of the API
133 * @param x_return_status Return status of the procedure call
134 * @param x_msg_count Count of the return messages that API returns
135 * @param x_msg_data The collection of the messages.
136 * @param P_ASSOCIATION_ID Primary Key Column. Asset Group and Attribute Group association ID
137 * @param P_APPLICATION_ID Application Identifier of the flexfield for the attribute group
138 * @param P_DESCRIPTIVE_FLEXFIELD_NAME Name of flexfield for the attribute group
139 * @param P_DESC_FLEX_CONTEXT_CODE Context code of the flexfield for the attribute group
140 * @param P_ORGANIZATION_ID Organization identifier of the asset group
141 * @param P_INVENTORY_ITEM_ID Inventory item identifier of the asset group
142 * @param P_ENABLED_FLAG Flag to enable or disable the association. Once the associations have been defined, it cannot be deleted, user can only disable it by using this flag.
143 * @param P_CREATION_ORGANIZATION_ID Creation Organization Identifier
144 * @return Returns the status of the procedure call as well as the return messages
145 * @rep:scope public
146 * @rep:displayname Update Asset Attribute Group Association
147 */
148
149 PROCEDURE UPDATE_ASSETATTR_GRP
150 ( P_API_VERSION IN NUMBER ,
151 P_INIT_MSG_LIST IN VARCHAR2:= FND_API.G_FALSE ,
152 P_COMMIT IN VARCHAR2:= FND_API.G_FALSE ,
153 P_VALIDATION_LEVEL IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
154 X_RETURN_STATUS OUT NOCOPY VARCHAR2 ,
155 X_MSG_COUNT OUT NOCOPY NUMBER ,
156 X_MSG_DATA OUT NOCOPY VARCHAR2 ,
157 P_ASSOCIATION_ID IN NUMBER ,
158 P_APPLICATION_ID IN NUMBER DEFAULT 401 ,
159 P_DESCRIPTIVE_FLEXFIELD_NAME IN VARCHAR2 DEFAULT 'MTL_EAM_ASSET_ATTR_VALUES',
160 P_DESC_FLEX_CONTEXT_CODE IN VARCHAR2 ,
161 P_ORGANIZATION_ID IN NUMBER ,
162 P_INVENTORY_ITEM_ID IN NUMBER ,
163 P_ENABLED_FLAG IN VARCHAR2 DEFAULT 'Y',
164 P_CREATION_ORGANIZATION_ID IN NUMBER
165 );
166
167
168
169 FUNCTION VALIDATE_DESC_FLEX_FIELD_NAME
170 ( P_DESCRIPTIVE_FLEXFIELD_NAME VARCHAR2)
171 return boolean;
172
173 FUNCTION CHECK_DESC_FLEX_CONTEXT_CODE
174 (P_DESC_FLEX_CONTEXT_CODE VARCHAR2,
175 P_APPLICATION_ID NUMBER)
176 return boolean;
177
178 FUNCTION VALIDATE_EAM_ENABLED
179 (P_ORGANIZATION_ID NUMBER)
180 return boolean;
181
182 FUNCTION VALIDATE_FLAG_FIELD
183 (P_ENABLED_FLAG VARCHAR2)
184 return boolean;
185
186
187 FUNCTION VALIDATE_ITEM_ID
188 (P_INVENTORY_ITEM_ID NUMBER,
189 P_ORGANIZATION_ID NUMBER)
190 return boolean;
191
192 FUNCTION get_item_type
193 (p_creation_organization_id in number,
194 p_inventory_item_id in number)
195 return number;
196
197 FUNCTION validate_row_exists
198 (p_item_type in number,
199 p_creation_organization_id in number,
200 p_inventory_item_id in number,
201 P_DESC_FLEX_CONTEXT_CODE in varchar2,
202 p_association_id in number default null)
203 return boolean;
204
205 PROCEDURE RAISE_ERROR (ERROR VARCHAR2);
206 PROCEDURE PRINT_LOG(info varchar2);
207
208 END EAM_ASSETATTR_GRP_PUB;