118: IF l_item_group_rec.OPERATION_FLAG <> 'D' THEN
119: IF l_item_group_rec.type_code IS NOT NULL THEN
120: IF NOT AHL_UTIL_MC_PKG.VALIDATE_LOOKUP_CODE(P_LOOKUP_TYPE => 'AHL_ITEMGROUP_TYPE',
121: P_LOOKUP_CODE =>l_item_group_rec.type_code) THEN
122: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_INAVLID');
123: FND_MSG_PUB.ADD;
124: END IF;
125: ELSIF l_item_group_rec.type_meaning IS NOT NULL THEN
126: AHL_UTIL_MC_PKG.CONVERT_TO_LOOKUPCODE(
128: P_LOOKUP_MEANING => l_item_group_rec.TYPE_MEANING,
129: X_LOOKUP_CODE => l_item_group_rec.type_code,
130: X_RETURN_VAL => l_return_val);
131: IF NOT l_return_val THEN
132: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_INAVLID');
133: FND_MSG_PUB.ADD;
134: END IF;
135: ELSIF l_item_group_rec.OPERATION_FLAG = 'C' THEN
136: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_NULL');
132: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_INAVLID');
133: FND_MSG_PUB.ADD;
134: END IF;
135: ELSIF l_item_group_rec.OPERATION_FLAG = 'C' THEN
136: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_NULL');
137: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
138: FND_MSG_PUB.ADD;
139: END IF;
140:
133: FND_MSG_PUB.ADD;
134: END IF;
135: ELSIF l_item_group_rec.OPERATION_FLAG = 'C' THEN
136: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_NULL');
137: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
138: FND_MSG_PUB.ADD;
139: END IF;
140:
141: IF l_item_group_rec.status_code IS NOT NULL THEN
140:
141: IF l_item_group_rec.status_code IS NOT NULL THEN
142: IF NOT AHL_UTIL_MC_PKG.VALIDATE_LOOKUP_CODE(P_LOOKUP_TYPE => 'AHL_ITEMGROUP_STATUS',
143: P_LOOKUP_CODE =>l_item_group_rec.status_code) THEN
144: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_STATUS_INAVLID');
145: FND_MSG_PUB.ADD;
146: END IF;
147: ELSIF l_item_group_rec.status_meaning IS NOT NULL THEN
148: AHL_UTIL_MC_PKG.CONVERT_TO_LOOKUPCODE(
150: P_LOOKUP_MEANING => l_item_group_rec.status_meaning,
151: X_LOOKUP_CODE => l_item_group_rec.status_code,
152: X_RETURN_VAL => l_return_val);
153: IF NOT l_return_val THEN
154: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_STATUS_INAVLID');
155: FND_MSG_PUB.ADD;
156: END IF;
157: END IF;
158:
192:
193:
194: IF l_item_group_rec.name IS NULL
195: THEN
196: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_NAME_NULL');
197: FND_MSG_PUB.ADD;
198:
199: END IF;
200:
201: IF l_item_group_rec.status_code IS NOT NULL
202: AND l_item_group_rec.status_code <> FND_API.G_MISS_CHAR
203: AND l_item_group_rec.status_code <> 'DRAFT'
204: THEN
205: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_CRE_DRAFT');
206: FND_MSG_PUB.ADD;
207:
208: END IF;
209:
209:
210: IF l_item_group_rec.type_code IS NULL AND
211: l_item_group_rec.TYPE_MEANING IS NULL
212: THEN
213: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_NULL');
214: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
215: FND_MSG_PUB.ADD;
216: ELSIF l_item_group_rec.TYPE_MEANING IS NOT NULL THEN
217: AHL_UTIL_MC_PKG.Convert_To_LookupCode('AHL_ITEMGROUP_TYPE',
210: IF l_item_group_rec.type_code IS NULL AND
211: l_item_group_rec.TYPE_MEANING IS NULL
212: THEN
213: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_NULL');
214: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
215: FND_MSG_PUB.ADD;
216: ELSIF l_item_group_rec.TYPE_MEANING IS NOT NULL THEN
217: AHL_UTIL_MC_PKG.Convert_To_LookupCode('AHL_ITEMGROUP_TYPE',
218: l_item_group_rec.TYPE_MEANING,
220: l_return_val);
221: IF (l_return_val) THEN
222: p_x_item_group_rec.type_code := l_lookup_code;
223: ELSE
224: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_INAVLID');
225: FND_MSG_PUB.ADD;
226: END IF;
227:
228: END IF;
241: FETCH ahl_item_group_csr INTO l_item_group_id,l_type_code;
242: IF (ahl_item_group_csr%FOUND) THEN
243: p_x_item_group_rec.item_group_id := l_item_group_id;
244: IF l_type_code <> p_x_item_group_rec.type_code THEN
245: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_NOUPDATE');
246: FND_MSG_PUB.ADD;
247: END IF;
248:
249: ELSE
246: FND_MSG_PUB.ADD;
247: END IF;
248:
249: ELSE
250: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_INVALID');
251: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
252: FND_MSG_PUB.ADD;
253: END IF;
254:
247: END IF;
248:
249: ELSE
250: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_INVALID');
251: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
252: FND_MSG_PUB.ADD;
253: END IF;
254:
255: ELSE
253: END IF;
254:
255: ELSE
256: -- Both ID and name are missing.
257: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_NULL');
258: FND_MSG_PUB.ADD;
259:
260: END IF;
261: ELSIF NVL(p_module_type,'X') <> 'JSP' THEN
263: FETCH Item_grp_name_csr INTO l_item_group_name,l_type_code;
264: IF (Item_grp_name_csr%FOUND) THEN
265: IF l_item_group_name <> p_x_item_group_rec.name
266: THEN
267: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_INVALID');
268: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
269: FND_MSG_PUB.ADD;
270: END IF;
271: IF l_type_code <> p_x_item_group_rec.type_code THEN
264: IF (Item_grp_name_csr%FOUND) THEN
265: IF l_item_group_name <> p_x_item_group_rec.name
266: THEN
267: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_INVALID');
268: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
269: FND_MSG_PUB.ADD;
270: END IF;
271: IF l_type_code <> p_x_item_group_rec.type_code THEN
272: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_NOUPDATE');
268: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
269: FND_MSG_PUB.ADD;
270: END IF;
271: IF l_type_code <> p_x_item_group_rec.type_code THEN
272: FND_MESSAGE.Set_Name('AHL','AHL_MC_IG_TYPE_NOUPDATE');
273: FND_MSG_PUB.ADD;
274: END IF;
275:
276: ELSE
273: FND_MSG_PUB.ADD;
274: END IF;
275:
276: ELSE
277: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_INVALID');
278: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
279: FND_MSG_PUB.ADD;
280: END IF;
281:
274: END IF;
275:
276: ELSE
277: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_INVALID');
278: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
279: FND_MSG_PUB.ADD;
280: END IF;
281:
282: END IF;
298: ELSE
299: -- if group name exists then it does not match group_rec.
300: IF (p_x_items_tbl(i).item_group_name IS NOT NULL) AND
301: (p_x_items_tbl(i).item_group_name <> FND_API.G_MISS_CHAR) THEN
302: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_MISMATCH');
303: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
304: FND_MESSAGE.Set_Token('ASSO_GRP',p_x_items_tbl(i).item_group_name);
305: FND_MSG_PUB.ADD;
306: --dbms_output.put_line('Item Association record does not match Item Group');
299: -- if group name exists then it does not match group_rec.
300: IF (p_x_items_tbl(i).item_group_name IS NOT NULL) AND
301: (p_x_items_tbl(i).item_group_name <> FND_API.G_MISS_CHAR) THEN
302: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_MISMATCH');
303: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
304: FND_MESSAGE.Set_Token('ASSO_GRP',p_x_items_tbl(i).item_group_name);
305: FND_MSG_PUB.ADD;
306: --dbms_output.put_line('Item Association record does not match Item Group');
307: ELSE
300: IF (p_x_items_tbl(i).item_group_name IS NOT NULL) AND
301: (p_x_items_tbl(i).item_group_name <> FND_API.G_MISS_CHAR) THEN
302: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_MISMATCH');
303: FND_MESSAGE.Set_Token('ITEM_GRP',l_item_group_rec.name);
304: FND_MESSAGE.Set_Token('ASSO_GRP',p_x_items_tbl(i).item_group_name);
305: FND_MSG_PUB.ADD;
306: --dbms_output.put_line('Item Association record does not match Item Group');
307: ELSE
308: -- Both ID and Name are missing.
305: FND_MSG_PUB.ADD;
306: --dbms_output.put_line('Item Association record does not match Item Group');
307: ELSE
308: -- Both ID and Name are missing.
309: FND_MESSAGE.Set_Name('AHL','AHL_MC_ITEMGRP_NULL');
310: FND_MSG_PUB.ADD;
311: END IF;
312: END IF;
313: END IF;
534: FETCH mtl_parameters_csr INTO l_inventory_org_id;
535: IF (mtl_parameters_csr%FOUND) THEN
536: l_item_assoc_rec.inventory_org_id := l_inventory_org_id;
537: ELSE
538: FND_MESSAGE.Set_Name('AHL','AHL_MC_ORG_INVALID');
539: FND_MESSAGE.Set_Token('ORG',l_item_assoc_rec.inventory_org_code);
540: FND_MSG_PUB.ADD;
541: END IF;
542: CLOSE mtl_parameters_csr;
535: IF (mtl_parameters_csr%FOUND) THEN
536: l_item_assoc_rec.inventory_org_id := l_inventory_org_id;
537: ELSE
538: FND_MESSAGE.Set_Name('AHL','AHL_MC_ORG_INVALID');
539: FND_MESSAGE.Set_Token('ORG',l_item_assoc_rec.inventory_org_code);
540: FND_MSG_PUB.ADD;
541: END IF;
542: CLOSE mtl_parameters_csr;
543: ELSIF (l_item_assoc_rec.operation_flag = 'C') THEN
541: END IF;
542: CLOSE mtl_parameters_csr;
543: ELSIF (l_item_assoc_rec.operation_flag = 'C') THEN
544: -- Both ID and code are missing.
545: FND_MESSAGE.Set_Name('AHL','AHL_MC_ORG_NULL');
546: FND_MSG_PUB.ADD;
547: END IF;
548:
549: END IF;
562: IF (mtl_system_items_csr%FOUND) THEN
563: l_item_assoc_rec.inventory_item_id := l_inventory_id;
564:
565: ELSE
566: FND_MESSAGE.Set_Name('AHL','AHL_MC_INV_INVALID');
567: FND_MESSAGE.Set_Token('INV_ITEM',l_item_assoc_rec.inventory_item_name);
568: FND_MSG_PUB.ADD;
569: END IF;
570: CLOSE mtl_system_items_csr;
563: l_item_assoc_rec.inventory_item_id := l_inventory_id;
564:
565: ELSE
566: FND_MESSAGE.Set_Name('AHL','AHL_MC_INV_INVALID');
567: FND_MESSAGE.Set_Token('INV_ITEM',l_item_assoc_rec.inventory_item_name);
568: FND_MSG_PUB.ADD;
569: END IF;
570: CLOSE mtl_system_items_csr;
571: ELSIF (l_item_assoc_rec.operation_flag = 'C') THEN
569: END IF;
570: CLOSE mtl_system_items_csr;
571: ELSIF (l_item_assoc_rec.operation_flag = 'C') THEN
572: -- Both ID and name missing.
573: FND_MESSAGE.Set_Name('AHL','AHL_MC_INV_NULL');
574: FND_MSG_PUB.ADD;
575: END IF;
576:
577: ELSE
578: OPEN mtl_segment_csr(l_item_assoc_rec.inventory_item_id,
579: l_item_assoc_rec.inventory_org_id);
580: FETCH mtl_segment_csr INTO l_concatenated_segments;
581: IF (mtl_segment_csr%NOTFOUND) THEN
582: FND_MESSAGE.Set_Name('AHL','AHL_MC_INV_INVALID');
583: FND_MESSAGE.Set_Token('INV_ITEM',l_item_assoc_rec.inventory_item_id);
584: FND_MSG_PUB.ADD;
585: ELSE
586: l_item_assoc_rec.inventory_item_name := l_concatenated_segments;
579: l_item_assoc_rec.inventory_org_id);
580: FETCH mtl_segment_csr INTO l_concatenated_segments;
581: IF (mtl_segment_csr%NOTFOUND) THEN
582: FND_MESSAGE.Set_Name('AHL','AHL_MC_INV_INVALID');
583: FND_MESSAGE.Set_Token('INV_ITEM',l_item_assoc_rec.inventory_item_id);
584: FND_MSG_PUB.ADD;
585: ELSE
586: l_item_assoc_rec.inventory_item_name := l_concatenated_segments;
587: END IF;
592: -- For priority
593: IF (l_item_assoc_rec.priority IS NULL OR
594: l_item_assoc_rec.priority = FND_API.G_MISS_NUM)
595: THEN
596: FND_MESSAGE.Set_Name('AHL','AHL_MC_PRIORITY_NULL');
597: FND_MESSAGE.Set_Token('INV_ITEM',l_item_assoc_rec.inventory_item_name);
598: FND_MSG_PUB.ADD;
599: ELSIF ( INSTR(l_item_assoc_rec.priority,'.') > 0 )
600: THEN
593: IF (l_item_assoc_rec.priority IS NULL OR
594: l_item_assoc_rec.priority = FND_API.G_MISS_NUM)
595: THEN
596: FND_MESSAGE.Set_Name('AHL','AHL_MC_PRIORITY_NULL');
597: FND_MESSAGE.Set_Token('INV_ITEM',l_item_assoc_rec.inventory_item_name);
598: FND_MSG_PUB.ADD;
599: ELSIF ( INSTR(l_item_assoc_rec.priority,'.') > 0 )
600: THEN
601: FND_MESSAGE.Set_Name('AHL','AHL_MC_PRIORITY_INVALID_JSP');
597: FND_MESSAGE.Set_Token('INV_ITEM',l_item_assoc_rec.inventory_item_name);
598: FND_MSG_PUB.ADD;
599: ELSIF ( INSTR(l_item_assoc_rec.priority,'.') > 0 )
600: THEN
601: FND_MESSAGE.Set_Name('AHL','AHL_MC_PRIORITY_INVALID_JSP');
602: FND_MSG_PUB.ADD;
603: END IF;
604:
605:
614: FETCH ahl_item_associations_csr INTO l_item_association_id;
615: IF (ahl_item_associations_csr%FOUND) THEN
616: l_item_assoc_rec.item_association_id := l_item_association_id;
617: ELSE
618: FND_MESSAGE.Set_Name('AHL','AHL_MC_ASSOC_NULL');
619: FND_MSG_PUB.ADD;
620: END IF;
621: END IF;
622: END IF; /* operation flag */
634: l_return_val);
635: IF (l_return_val) THEN
636: l_item_assoc_rec.interchange_type_code := l_lookup_code;
637: ELSE
638: FND_MESSAGE.Set_Name('AHL','AHL_MC_INTER_INVALID');
639: FND_MESSAGE.Set_Token('INV_ITEM',l_item_assoc_rec.inventory_item_name);
640: FND_MESSAGE.Set_Token('INTER_CODE',l_item_assoc_rec.Interchange_type_meaning);
641: FND_MSG_PUB.ADD;
642: END IF;
635: IF (l_return_val) THEN
636: l_item_assoc_rec.interchange_type_code := l_lookup_code;
637: ELSE
638: FND_MESSAGE.Set_Name('AHL','AHL_MC_INTER_INVALID');
639: FND_MESSAGE.Set_Token('INV_ITEM',l_item_assoc_rec.inventory_item_name);
640: FND_MESSAGE.Set_Token('INTER_CODE',l_item_assoc_rec.Interchange_type_meaning);
641: FND_MSG_PUB.ADD;
642: END IF;
643: ELSE
636: l_item_assoc_rec.interchange_type_code := l_lookup_code;
637: ELSE
638: FND_MESSAGE.Set_Name('AHL','AHL_MC_INTER_INVALID');
639: FND_MESSAGE.Set_Token('INV_ITEM',l_item_assoc_rec.inventory_item_name);
640: FND_MESSAGE.Set_Token('INTER_CODE',l_item_assoc_rec.Interchange_type_meaning);
641: FND_MSG_PUB.ADD;
642: END IF;
643: ELSE
644: IF (l_item_assoc_rec.Interchange_type_meaning IS NULL) THEN