62: IF p_line_rec.sold_to_org_id(p_index) IS NULL THEN
63: x_return_status := FND_API.G_RET_STS_ERROR;
64: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
65: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
66: OE_Order_UTIL.Get_Attribute_Name('SOLD_TO_ORG_ID'));
67: OE_BULK_MSG_PUB.ADD;
68: END IF;
69:
70: IF p_line_rec.invoice_to_org_id(p_index) IS NULL THEN
70: IF p_line_rec.invoice_to_org_id(p_index) IS NULL THEN
71: x_return_status := FND_API.G_RET_STS_ERROR;
72: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
73: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
74: OE_Order_UTIL.Get_Attribute_Name('INVOICE_TO_ORG_ID'));
75: OE_BULK_MSG_PUB.ADD;
76: END IF;
77:
78: IF p_line_rec.tax_exempt_flag(p_index) IS NULL THEN
78: IF p_line_rec.tax_exempt_flag(p_index) IS NULL THEN
79: x_return_status := FND_API.G_RET_STS_ERROR;
80: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
81: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
82: OE_Order_UTIL.Get_Attribute_Name('TAX_EXEMPT_FLAG'));
83: OE_BULK_MSG_PUB.ADD;
84: END IF;
85:
86: -- Quantity and UOM Required
88: IF p_line_rec.order_quantity_uom(p_index) IS NULL THEN
89: x_return_status := FND_API.G_RET_STS_ERROR;
90: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
91: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
92: OE_Order_UTIL.Get_Attribute_Name('ORDER_QUANTITY_UOM'));
93: OE_BULK_MSG_PUB.ADD;
94: END IF;
95:
96: -- Fix bug 1277092: ordered quantity should not be = 0 on a booked line
98: OR p_line_rec.ordered_quantity(p_index) = 0 THEN
99: x_return_status := FND_API.G_RET_STS_ERROR;
100: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
101: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
102: OE_Order_UTIL.Get_Attribute_Name('ORDERED_QUANTITY'));
103: OE_BULK_MSG_PUB.ADD;
104: END IF;
105:
106: -- Fix bug 1262790
113: IF p_line_rec.ship_to_org_id(p_index) IS NULL THEN
114: x_return_status := FND_API.G_RET_STS_ERROR;
115: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
116: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
117: OE_Order_UTIL.Get_Attribute_Name('SHIP_TO_ORG_ID'));
118: OE_BULK_MSG_PUB.ADD;
119: END IF;
120:
121: IF p_line_rec.payment_term_id(p_index) IS NULL THEN
121: IF p_line_rec.payment_term_id(p_index) IS NULL THEN
122: x_return_status := FND_API.G_RET_STS_ERROR;
123: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
124: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
125: OE_Order_UTIL.Get_Attribute_Name('PAYMENT_TERM_ID'));
126: OE_BULK_MSG_PUB.ADD;
127: END IF;
128: --serla
129: IF OE_CODE_CONTROL.Get_Code_Release_Level >= '110509' THEN
144: IF p_line_rec.accounting_rule_duration(p_index) IS NULL THEN
145: x_return_status := FND_API.G_RET_STS_ERROR;
146: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
147: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
148: OE_Order_UTIL.Get_Attribute_Name('ACCOUNTING_RULE_DURATION'));
149: OE_BULK_MSG_PUB.ADD;
150: END IF; -- end of accounting_rule_duration null
151: END IF; -- end of variable accounting rule type
152: END IF; -- end of accounting_rule_id not null
163: IF p_line_rec.tax_date(p_index) IS NULL THEN
164: x_return_status := FND_API.G_RET_STS_ERROR;
165: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
166: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
167: OE_Order_UTIL.Get_Attribute_Name('TAX_DATE'));
168: OE_BULK_MSG_PUB.ADD;
169: END IF;
170: */
171: -- Tax field checks not required, as checks would prevent orders from
182: IF p_line_rec.price_list_id(p_index) IS NULL THEN
183: x_return_status := FND_API.G_RET_STS_ERROR;
184: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
185: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
186: OE_Order_UTIL.Get_Attribute_Name('PRICE_LIST_ID'));
187: OE_BULK_MSG_PUB.ADD;
188: END IF;
189:
190: END IF;
795: IF p_ship_from_org_id is null THEN
796:
797: fnd_message.set_name('ONT', 'OE_ATTRIBUTE_REQUIRED');
798: fnd_message.set_token('ATTRIBUTE'
799: ,OE_Order_UTIL.Get_Attribute_Name('SHIP_FROM_ORG_ID'));
800: OE_BULK_MSG_PUB.Add;
801: RETURN FALSE;
802:
803: ELSE
2033: -- fix bug 5109227
2034: p_line_rec.lock_control(p_index) := -99 ;
2035: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
2036: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2037: OE_Order_UTIL.Get_Attribute_Name('LINE_TYPE_ID'));
2038: OE_BULK_MSG_PUB.Add('Y','ERROR');
2039: -- fix bug 5109227
2040:
2041: IF l_debug_level > 0 THEN
2490: IF (p_line_rec.inventory_item_id(l_index) IS NULL) THEN
2491:
2492: fnd_message.set_name('ONT','OE_ATTRIBUTE_REQUIRED');
2493: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2494: OE_Order_UTIL.Get_Attribute_Name('INVENTORY_ITEM_ID'));
2495: OE_BULK_MSG_PUB.Add('Y','ERROR');
2496: p_line_rec.lock_control(l_index) := -99;
2497:
2498: -- To avoid Insert failure, populate not null column.
2508: IF (p_line_rec.line_type_id(l_index) IS NULL) THEN
2509:
2510: fnd_message.set_name('ONT','OE_ATTRIBUTE_REQUIRED');
2511: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2512: OE_Order_UTIL.Get_Attribute_Name('LINE_TYPE_ID'));
2513: OE_BULK_MSG_PUB.Add('Y','ERROR');
2514: p_line_rec.lock_control(l_index) := -99;
2515: IF l_debug_level > 0 THEN
2516: oe_debug_pub.add( 'IN ERROR 2 ' ) ;
2534:
2535: p_line_rec.lock_control(l_index) := -99 ;
2536: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
2537: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2538: OE_Order_UTIL.Get_Attribute_Name('LINE_TYPE_ID'));
2539: OE_BULK_MSG_PUB.Add('Y','ERROR');
2540:
2541: ELSE
2542:
2558: END IF;
2559: p_line_rec.lock_control(l_index) := -99 ;
2560: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
2561: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2562: OE_Order_UTIL.Get_Attribute_Name('LINE_TYPE_ID'));
2563: OE_BULK_MSG_PUB.Add('Y','ERROR');
2564: ELSE
2565: p_line_rec.wf_process_name(l_index) := l_process_name;
2566: END IF;
2588:
2589: p_line_rec.lock_control(l_index) := -99;
2590: FND_MESSAGE.SET_NAME('ONT','OE_INVALID_ATTRIBUTE');
2591: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2592: OE_Order_UTIL.Get_Attribute_Name('TAX_EXEMPT_REASON_CODE'));
2593: OE_BULK_MSG_PUB.Add('Y','ERROR');
2594:
2595: END IF;
2596:
2691:
2692: OE_BULK_MSG_PUB.Update_Msg_Context(p_attribute_code => 'SHIPPING_METHOD');
2693: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
2694: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2695: OE_Order_UTIL.Get_Attribute_Name('SHIPPING_METHOD_CODE'));
2696: OE_BULK_MSG_PUB.Add;
2697: OE_BULK_MSG_PUB.Update_Msg_Context(p_attribute_code => null);
2698: END IF;
2699:
2898: IF NOT Validate_task(p_line_rec.project_id(l_index),
2899: p_line_rec.task_id(l_index)) THEN
2900: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
2901: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2902: OE_Order_Util.Get_Attribute_Name('task_id'));
2903: OE_BULK_MSG_PUB.Add('Y','ERROR');
2904: p_line_rec.lock_control(l_index) := -99;
2905: IF l_debug_level > 0 THEN
2906: oe_debug_pub.add( 'IN ERROR 14 ' ) ;
3106: oe_debug_pub.add( 'IN ERROR 22 ' ) ;
3107: END IF;
3108: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
3109: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
3110: OE_Order_Util.Get_Attribute_Name('INVOICE_TO_ORG_ID'));
3111: OE_BULK_MSG_PUB.Add('Y','ERROR');
3112: END IF;
3113:
3114: END IF; -- Invoice to is not null
3129: oe_debug_pub.add( 'IN ERROR 22 ' ) ;
3130: END IF;
3131: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
3132: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
3133: OE_Order_Util.Get_Attribute_Name('ship_to_org_id'));
3134: OE_BULK_MSG_PUB.Add('Y','ERROR');
3135: END IF;
3136:
3137: END IF; -- ship to is not null
3151: oe_debug_pub.add( 'IN ERROR 22 ' ) ;
3152: END IF;
3153: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
3154: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
3155: OE_Order_Util.Get_Attribute_Name('DELIVER_TO_ORG_ID'));
3156: OE_BULK_MSG_PUB.Add('Y','ERROR');
3157: END IF;
3158:
3159: END IF; -- deliver to is not null
3251: AND NOT OE_GLOBALS.Equal(p_line_rec.end_Customer_id(l_index),p_header_rec.end_customer_id(header_counter))THEN
3252: IF NOT OE_BULK_PROCESS_HEADER.Validate_End_Customer(p_line_rec.end_customer_id(l_index)) THEN
3253: p_line_rec.lock_control(l_index) := -99;
3254: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
3255: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',OE_Order_Util.Get_Attribute_Name('end_customer_id'));
3256: OE_BULK_MSG_PUB.Add('Y','ERROR');
3257: END IF;
3258: END IF;
3259:
3261: NOT OE_GLOBALS.Equal(p_line_rec.end_Customer_Contact_id(l_index),p_header_rec.end_customer_Contact_id(header_counter)) THEN
3262: IF NOT OE_BULK_PROCESS_HEADER.Validate_End_Customer_Contact(p_line_rec.end_customer_contact_id(l_index)) THEN
3263: p_line_rec.lock_control(l_index) := -99;
3264: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
3265: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',OE_Order_Util.Get_Attribute_Name('end_customer_contact_id'));
3266: OE_BULK_MSG_PUB.Add('Y','ERROR');
3267: END IF;
3268: END IF;
3269:
3273: IF NOT OE_BULK_PROCESS_HEADER.Validate_End_Customer_site_use(p_line_rec.end_customer_site_use_id(l_index),
3274: p_line_rec.end_customer_id(l_index)) THEN
3275: p_line_rec.lock_control(l_index) := -99;
3276: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
3277: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',OE_Order_Util.Get_Attribute_Name('end_customer_site_use_id'));
3278: OE_BULK_MSG_PUB.Add('Y','ERROR');
3279: END IF;
3280: END IF;
3281:
3283: OE_GLOBALS.Equal(p_line_rec.IB_owner(l_index),p_header_rec.IB_owner(header_counter))THEN
3284: IF NOT OE_BULK_PROCESS_HEADER.Validate_IB_Owner(p_line_rec.IB_owner(l_index)) THEN
3285: p_line_rec.lock_control(l_index) := -99;
3286: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
3287: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',OE_Order_Util.Get_Attribute_Name('IB_owner'));
3288: OE_BULK_MSG_PUB.Add('Y','ERROR');
3289: END IF;
3290: END IF;
3291:
3293: OE_GLOBALS.Equal(p_line_rec.IB_current_location(l_index),p_header_rec.IB_current_location(header_counter)) THEN
3294: IF NOT OE_BULK_PROCESS_HEADER.Validate_IB_current_Location (p_line_rec.IB_current_location(l_index)) THEN
3295: p_line_rec.lock_control(l_index) := -99;
3296: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
3297: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',OE_Order_Util.Get_Attribute_Name('IB_location'));
3298: OE_BULK_MSG_PUB.Add('Y','ERROR');
3299: END IF;
3300: END IF;
3301:
3303: OE_GLOBALS.Equal(p_line_rec.IB_Installed_at_location(l_index),p_header_rec.IB_Installed_at_location(header_counter)) THEN
3304: IF NOT OE_BULK_PROCESS_HEADER.Validate_IB_Inst_loc(p_line_rec.IB_Installed_at_location(l_index)) THEN
3305: p_line_rec.lock_control(l_index) := -99;
3306: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
3307: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',OE_Order_Util.Get_Attribute_Name('Installed_at_location'));
3308: OE_BULK_MSG_PUB.Add('Y','ERROR');
3309: END IF;
3310: END IF;
3311: --Bug 5054618}
3330: END IF;
3331: IF l_rule_type = 'PP_DR_ALL' OR l_rule_type = 'PP_DR_PP' THEN
3332: p_line_rec.lock_control(l_index) := -99 ;
3333: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
3334: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',OE_Order_UTIL.Get_Attribute_Name('ACCOUNTING_RULE_ID'));
3335: OE_BULK_MSG_PUB.Add('Y','ERROR');
3336: END IF; -- end of accounting rule type
3337: END IF; -- end of accounting_rule_id not null
3338: END IF; -- end of non-service line