[Home] [Help]
PACKAGE: APPS.AHL_PRD_BLK_PARTS_CHANGE_PVT
Source
1 PACKAGE AHL_PRD_BLK_PARTS_CHANGE_PVT AUTHID CURRENT_USER AS
2 /* $Header: AHLVBPCS.pls 120.0.12020000.2 2012/12/10 12:31:35 shnatu noship $ */
3
4 /* These Image file names should be in sync with ahl/uc/et/AhlucTreeNodeData.java */
5 G_EXTRA_NODE_IMAGE CONSTANT VARCHAR2(30) := 'notapplicableind_status.gif';
6 G_MISSING_NODE_IMAGE CONSTANT VARCHAR2(30) := 'itemtobeadded_status.gif';
7 G_FILLED_NODE_IMAGE CONSTANT VARCHAR2(30) := 'okind_status.gif';
8 G_SB_RULE_VIOLATED_NODE_IMAGE CONSTANT VARCHAR2(30) := 'criticalind_status.gif';
9
10
11 -- Record Structure corresponding to GLOBAL TEMPORARY TABLE AHL_BULK_REMOVAL_UC_DETAILS
12 -- used for storing hGrid detials on Bulk Removal - Parts change UI
13 TYPE uc_details_hgrid_rec_type IS RECORD
14 (
15 UNIT_NODE_ID NUMBER,
16 ROOT_INSTANCE_ID NUMBER,
17 PATH_POSITION_ID NUMBER,
18 RELATIONSHIP_ID NUMBER,
19 PARENT_REL_ID NUMBER,
20 PARENT_INSTANCE_ID NUMBER,
21 PARENT_INSTANCE_NUMBER VARCHAR2(240),
22 CSI_II_RELATIONSHIP_ID NUMBER ,
23 CSI_II_OBJECT_VERSION_NUM NUMBER ,
24 PART_CHANGE_ID NUMBER,
25 CURR_ITEM_ID NUMBER,
26 CURR_INSTANCE_ID NUMBER,
27 CURR_ITEM_NUMBER VARCHAR2(240),
28 CURR_INSTANCE_OBJ_VER_NUM NUMBER,
29 CURR_INSTANCE_NUMBER VARCHAR2(30),
30 CURR_SERIAL_NUMBER VARCHAR2(80),
31 CURR_LOT_NUMBER VARCHAR2(80),
32 CURR_QUANTITY NUMBER,
33 UNIT_OF_MEASURE VARCHAR2(30),
34 ATA VARCHAR2(80),
35 POSITION VARCHAR2(240),
36 POSITION_IMAGE VARCHAR2(30),
37 IS_POSITION_SRL_CONTROLLED VARCHAR2(1),
38 IS_CONTROLLED_POSITION VARCHAR2(1),
39 NODE_TYPE VARCHAR2(1),
40 QTY_PER_POSITION NUMBER,
41 OPERATION_SEQUENCE_NUM NUMBER,
42 INST_INSTANCE_ID NUMBER,
43 INST_ITEM_NUMBER VARCHAR2(240),
44 INST_INSTANCE_NUMBER VARCHAR2(30),
45 INST_SERIAL_NUMBER VARCHAR2(80),
46 INST_INSTANCE_OBJ_VER_NUM NUMBER,
47 INSTANCE_QUANTITY NUMBER,
48 INSTALL_QUANTITY NUMBER,
49 INSTALL_DATE DATE,
50 REMOVAL_DATE DATE,
51 REASON_ID NUMBER ,
52 REASON_NAME VARCHAR2(30),
53 REMOVAL_CODE_ID VARCHAR2(30),
54 REMOVAL_MEANING VARCHAR2(80),
55 NOT_LEAF_NODE_FLAG VARCHAR2(1),
56 NODE_LEVEL NUMBER,
57 HGRID_NODE_PATH VARCHAR2(240),
58 SELECT_DISABLE_FLAG VARCHAR2(1),
59 SEARCH_FLAG VARCHAR2(1),
60 DISPOSITION_ID NUMBER,
61 DISPOSITION_OBJ_VER_NUM NUMBER,
62 DISPOSITION_STATUS VARCHAR2(80),
63 DISPOSITION_QTY NUMBER,
64 COMMENTS VARCHAR2(2000),
65 IMMEDIATE_DISPOSITION_CODE VARCHAR2(30),
66 IMMEDIATE_DISPOSITION VARCHAR2(150) ,
67 SECONDARY_DISPOSITION_CODE VARCHAR2(30),
68 SECONDARY_DISPOSITION VARCHAR2(150) ,
69 SR_INCIDENT_ID NUMBER,
70 COLLECTION_ID NUMBER,
71 CONDITION_ID NUMBER,
72 CONDITION_MEANING VARCHAR2(150),
73 PROBLEM_CODE VARCHAR2(50),
74 PROBLEM_MEANING VARCHAR2(80),
75 SEVERITY_ID NUMBER,
76 SEVERITY_NAME VARCHAR2(30),
77 RESOLUTION_CODE VARCHAR2(80),
78 RESOLUTION_CODE_ID VARCHAR2(30),
79 ESTIMATED_DURATION NUMBER,
80 SERVICE_TYPE VARCHAR2(80),
81 SERVICE_TYPE_ID VARCHAR2(30),
82 SUMMARY VARCHAR2(240),
83 DISPOSITION_COUNT NUMBER,
84 QTY_UI_ELEMENT_TYP VARCHAR2(10),
85 MRB_QUALITY_TYP VARCHAR2(30),
86 BULK_PROCESS_FLAG VARCHAR2(1)
87 );
88
89 TYPE uc_details_hgrid_tbl_type IS TABLE OF uc_details_hgrid_rec_type INDEX BY BINARY_INTEGER;
90
91 ------------------------------------------------------------------------------------------------------
92 -- Start of Comments
93 -- Procedure name : Get_Bulk_Part_Chg_Details
94 -- Type : Public
95 -- Function : This procedure will update the temparory table to show data in hGrid.
96 -- Since this table is global temporary with ON COMMIT DELETE ROWS,
97 -- Always call this method with p_commit value : FND_API.G_FALSE
98 -- Pre-reqs :
99 -- Parameters :
100 --
101 -- Get_Bulk_Part_Chg_Details Parameters
102 -- p_workorder_id IN NUMBER
103 -- p_bulk_process_flag IN Either 'I' for Install or 'R' for Removal
104 --
105 -- End of Comments
106 -------------------------------------------------------------------------------------------------------
107 PROCEDURE Get_Bulk_Part_Chg_Details
108 (
109 p_api_version IN NUMBER := 1.0,
110 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
111 p_commit IN VARCHAR2 := FND_API.G_FALSE,
112 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
113 p_default IN VARCHAR2 := FND_API.G_FALSE,
114 p_module_type IN VARCHAR2 := NULL,
115 p_workorder_id IN NUMBER,
116 p_bulk_process_flag IN VARCHAR2,
117 x_uc_details_tbl OUT NOCOPY uc_details_hgrid_tbl_type,
118 x_return_status OUT NOCOPY VARCHAR2,
119 x_msg_count OUT NOCOPY NUMBER,
120 x_msg_data OUT NOCOPY VARCHAR2
121 );
122
123
124 -- Record Structure
125 -- used for storing hGrid detials on Bulk Removal - Parts change UI
126 TYPE filter_records_rec_type IS RECORD
127 (
128 PARAM VARCHAR2 (30),
129 PARAM_VALUE VARCHAR2 (240)
130 );
131
132 TYPE filter_records_tbl_type IS TABLE OF filter_records_rec_type INDEX BY BINARY_INTEGER;
133
134 ------------------------------------------------------------------------------------------------------
135 -- Start of Comments
136 -- Procedure name : Filter_records_uc_details
137 -- Type : Public
138 -- Function : This procedure will update the temparory table to filter data details in hGrid.
139 -- Since this table is global temporary with ON COMMIT DELETE ROWS,
140 -- Always call this method with p_commit value : FND_API.G_FALSE
141 -- It returns the hGrid_node path of the closest parent node.
142 -- Pre-reqs :
143 -- Parameters :
144 --
145 -- Filter_records_uc_details Parameters
146 -- p_filter_records_tbl IN filter_records__tbl_type
147 --
148 -- End of Comments
149 -------------------------------------------------------------------------------------------------------
150 PROCEDURE Filter_records_uc_details
151 (
152 p_api_version IN NUMBER := 1.0,
153 p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
154 p_commit IN VARCHAR2 := FND_API.G_FALSE,
155 p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
156 p_default IN VARCHAR2 := FND_API.G_FALSE,
157 p_module_type IN VARCHAR2 := NULL,
158 p_filter_records_tbl IN filter_records_tbl_type,
159 x_hGrid_node_path OUT NOCOPY VARCHAR2,
160 x_return_status OUT NOCOPY VARCHAR2,
161 x_msg_count OUT NOCOPY NUMBER,
162 x_msg_data OUT NOCOPY VARCHAR2
163 );
164
165 ------------------------------------------------------------------------------------
166 -- Procedure name : Calc_Qty_On_Inst_Selection
167 -- Type : Public
168 -- Function : Procedure to recalculate Position and Install quantity on Instance selection from Alternate Items UI.
169 -- Rules to calculate the quantities differ for Child of Control positions.
170 -- For Normal Positions,
171 -- Position Quantity rules are given in comments of API Calc_Position_Qty in package body.
172 -- Install Quantity = MIN(Available Instance Qty, Max Installable Qty)
173 -- where Max Installable Qty = Position Qty - Current Qty
174 --
175 -- For Child of Control Positions,
176 -- Rules for Position and Install Qty are given in comments of API Calc_Control_Position_Qty
177 -- in package body.
178 --
179 -- Pre-reqs :
180 -- Parameters :
181 --
182 -- Calc_Qty_On_Inst_Selection Parameters:
183 -- p_x_uc_details_rec IN OUT NOCOPY Record for given UC position. Required
184 --
185 -- End of Comments
186
187 PROCEDURE Calc_Qty_On_Inst_Selection(
188 p_x_uc_details_rec IN OUT NOCOPY uc_details_hgrid_rec_type
189 );
190 ------------------------------------------------------------------------------------
191
192
193 TYPE PART_CHANGE_REC_TYPE IS RECORD (
194 WORKORDER_ID NUMBER ,
195 OPERATION_SEQUENCE_NUM NUMBER ,
196 WORKORDER_OPERATION_ID NUMBER ,
197 OPERATION_TYPE VARCHAR2(1) ,
198 UNIT_CONFIG_HEADER_ID NUMBER ,
199 MC_RELATIONSHIP_ID NUMBER ,
200 CSI_II_RELATIONSHIP_ID NUMBER ,
201 CSI_II_OBJECT_VERSION_NUM NUMBER ,
202 PARENT_INSTALLED_INSTANCE_ID NUMBER ,
203 PARENT_INSTALLED_INSTANCE_NUM VARCHAR2(30) ,
204 INSTALLED_INSTANCE_ID NUMBER ,
205 INSTALLED_INSTANCE_NUM VARCHAR2(30) ,
206 INSTALLED_INSTANCE_OBJ_VER_NUM NUMBER ,
207 INSTALLED_QUANTITY NUMBER ,
208 INSTALLATION_DATE DATE ,
209 REMOVED_INSTANCE_ID NUMBER ,
210 REMOVED_INSTANCE_NUM VARCHAR2(30),
211 REMOVED_INSTANCE_OBJ_VER_NUM NUMBER ,
212 REMOVED_QUANTITY NUMBER ,
213 REMOVAL_CODE VARCHAR2(30) ,
214 REMOVAL_MEANING VARCHAR2(80) ,
215 REMOVAL_REASON_ID NUMBER ,
216 REMOVAL_REASON_NAME VARCHAR2(30) ,
217 REMOVAL_DATE DATE ,
218 CONDITION_ID NUMBER ,
219 CONDITION VARCHAR2(80) ,
220 SEVERITY_ID NUMBER ,
221 SEVERITY_NAME VARCHAR2(30) ,
222 PROBLEM_CODE VARCHAR2(30) ,
223 PROBLEM_MEANING VARCHAR2(80) ,
224 RESOLUTION_CODE VARCHAR2(30) ,
225 RESOLUTION_MEANING VARCHAR2(80) ,
226 SUMMARY VARCHAR2(240) ,
227 ESTIMATED_DURATION NUMBER ,
228 CREATE_WORK_ORDER_OPTION VARCHAR2(30) ,
232 DISPOSITION_ID NUMBER ,
229 CREATE_NR_FOR_PARENT VARCHAR2(1) ,
230 SERVICE_TYPE_CODE VARCHAR2(30) ,
231 SERVICE_TYPE VARCHAR2(80) ,
233 DISP_OBJECT_VERSION_NUMBER NUMBER ,
234 DISP_OPERATION_FLAG VARCHAR2(1) ,
235 IMMEDIATE_DISPOSITION_CODE VARCHAR2(30) ,
236 IMMEDIATE_DISPOSITION VARCHAR2(80) ,
237 SECONDARY_DISPOSITION_CODE VARCHAR2(30) ,
238 SECONDARY_DISPOSITION VARCHAR2(80) ,
239 DISP_COMMENTS VARCHAR2(2000) ,
240 COLLECTION_ID NUMBER ,
241 PART_CHANGE_TXN_ID NUMBER ,
242 PATH_POSITION_ID NUMBER );
243
244 TYPE PART_CHANGE_TBL_TYPE IS TABLE OF PART_CHANGE_REC_TYPE INDEX BY BINARY_INTEGER;
245
246 TYPE ERROR_MSG_REC_TYPE IS RECORD (
247 MESSAGE_LEVEL VARCHAR2(1), -- E(Error) or W(Warning)
248 MESSAGE VARCHAR2(4000) );
249
250 TYPE ERROR_MSG_TBL_TYPE IS TABLE OF ERROR_MSG_REC_TYPE INDEX BY BINARY_INTEGER;
251
252 PROCEDURE PROCESS_PART_CHANGES(
253 P_API_VERSION IN NUMBER DEFAULT 1.0,
254 P_INIT_MSG_LIST IN VARCHAR2 DEFAULT FND_API.G_FALSE,
255 P_COMMIT IN VARCHAR2 DEFAULT FND_API.G_FALSE,
256 P_VALIDATION_LEVEL IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
257 P_MODULE_TYPE IN VARCHAR2 DEFAULT NULL,
258 P_DEFAULT IN VARCHAR2 DEFAULT FND_API.G_TRUE,
259 P_X_PARTS_REC_TBL IN OUT NOCOPY PART_CHANGE_TBL_TYPE,
260 P_MR_ASSO_TBL IN AHL_PRD_NONROUTINE_PVT.MR_ASSOCIATION_TBL_TYPE,
261 X_RETURN_STATUS OUT NOCOPY VARCHAR2,
262 X_MSG_COUNT OUT NOCOPY NUMBER,
263 X_MSG_DATA OUT NOCOPY VARCHAR2,
264 X_ERROR_MSG_TBL OUT NOCOPY ERROR_MSG_TBL_TYPE );
265
266 END AHL_PRD_BLK_PARTS_CHANGE_PVT;
267