29: IF p_line_rec.sold_to_org_id IS NULL THEN
30: x_return_status := FND_API.G_RET_STS_ERROR;
31: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
32: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
33: OE_Order_UTIL.Get_Attribute_Name('SOLD_TO_ORG_ID'));
34: OE_MSG_PUB.ADD;
35: END IF;
36:
37: IF p_line_rec.invoice_to_org_id IS NULL THEN
37: IF p_line_rec.invoice_to_org_id IS NULL THEN
38: x_return_status := FND_API.G_RET_STS_ERROR;
39: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
40: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
41: OE_Order_UTIL.Get_Attribute_Name('INVOICE_TO_ORG_ID'));
42: OE_MSG_PUB.ADD;
43: END IF;
44:
45: IF p_line_rec.tax_exempt_flag IS NULL THEN
45: IF p_line_rec.tax_exempt_flag IS NULL THEN
46: x_return_status := FND_API.G_RET_STS_ERROR;
47: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
48: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
49: OE_Order_UTIL.Get_Attribute_Name('TAX_EXEMPT_FLAG'));
50: OE_MSG_PUB.ADD;
51: END IF;
52:
53:
55: IF p_line_rec.inventory_item_id IS NULL THEN
56: x_return_status := FND_API.G_RET_STS_ERROR;
57: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
58: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
59: OE_Order_UTIL.Get_Attribute_Name('INVENTORY_ITEM_ID'));
60: OE_MSG_PUB.ADD;
61: END IF;
62:
63: IF p_line_rec.order_quantity_uom IS NULL THEN
63: IF p_line_rec.order_quantity_uom IS NULL THEN
64: x_return_status := FND_API.G_RET_STS_ERROR;
65: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
66: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
67: OE_Order_UTIL.Get_Attribute_Name('ORDER_QUANTITY_UOM'));
68: OE_MSG_PUB.ADD;
69: END IF;
70:
71: -- Fix bug 1277092: ordered quantity should not be = 0 on a booked line
73: OR p_line_rec.ordered_quantity = 0 THEN
74: x_return_status := FND_API.G_RET_STS_ERROR;
75: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
76: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
77: OE_Order_UTIL.Get_Attribute_Name('ORDERED_QUANTITY'));
78: OE_MSG_PUB.ADD;
79: END IF;
80:
81: -- For all items that are NOT included items OR config items,
95: IF p_line_rec.price_list_id IS NULL THEN
96: x_return_status := FND_API.G_RET_STS_ERROR;
97: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
98: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
99: OE_Order_UTIL.Get_Attribute_Name('PRICE_LIST_ID'));
100: OE_MSG_PUB.ADD;
101: END IF;
102:
103: IF p_line_rec.unit_list_price IS NULL THEN
103: IF p_line_rec.unit_list_price IS NULL THEN
104: x_return_status := FND_API.G_RET_STS_ERROR;
105: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
106: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
107: OE_Order_UTIL.Get_Attribute_Name('UNIT_LIST_PRICE'));
108: OE_MSG_PUB.ADD;
109: END IF;
110:
111: IF p_line_rec.unit_selling_price IS NULL THEN
111: IF p_line_rec.unit_selling_price IS NULL THEN
112: x_return_status := FND_API.G_RET_STS_ERROR;
113: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
114: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
115: OE_Order_UTIL.Get_Attribute_Name('UNIT_SELLING_PRICE'));
116: OE_MSG_PUB.ADD;
117: END IF;
118:
119: END IF; -- End of check for pricing attributes.
128: IF p_line_rec.ship_to_org_id IS NULL THEN
129: x_return_status := FND_API.G_RET_STS_ERROR;
130: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
131: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
132: OE_Order_UTIL.Get_Attribute_Name('SHIP_TO_ORG_ID'));
133: OE_MSG_PUB.ADD;
134: END IF;
135:
136: IF p_line_rec.payment_term_id IS NULL THEN
136: IF p_line_rec.payment_term_id IS NULL THEN
137: x_return_status := FND_API.G_RET_STS_ERROR;
138: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_LINE_ATTRIBUTE');
139: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
140: OE_Order_UTIL.Get_Attribute_Name('PAYMENT_TERM_ID'));
141: OE_MSG_PUB.ADD;
142: END IF;
143:
144: END IF;
151: IF p_line_rec.ship_from_org_id IS NULL THEN
152: x_return_status := FND_API.G_RET_STS_ERROR;
153: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_RETURN_ATTRIBUTE');
154: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
155: OE_Order_UTIL.Get_Attribute_Name('SHIP_FROM_ORG_ID'));
156: OE_MSG_PUB.ADD;
157: END IF;
158:
159: IF p_line_rec.request_date IS NULL THEN
159: IF p_line_rec.request_date IS NULL THEN
160: x_return_status := FND_API.G_RET_STS_ERROR;
161: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_RETURN_ATTRIBUTE');
162: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
163: OE_Order_UTIL.Get_Attribute_Name('REQUEST_DATE'));
164: OE_MSG_PUB.ADD;
165: END IF;
166:
167: END IF;
172: THEN
173: x_return_status := FND_API.G_RET_STS_ERROR;
174: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_RETURN_ATTRIBUTE');
175: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
176: OE_Order_UTIL.Get_Attribute_Name('TAX_DATE'));
177: OE_MSG_PUB.ADD;
178: END IF;
179:
180: -- Tax code is required under following conditions.
224: IF p_line_rec.service_duration IS NULL THEN
225: x_return_status := FND_API.G_RET_STS_ERROR;
226: FND_MESSAGE.SET_NAME('ONT','OE_BOOK_REQD_SERVICE_DURATION');
227: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
228: OE_Order_UTIL.Get_Attribute_Name('SERVICE_DURATION'));
229: OE_MSG_PUB.ADD;
230: END IF;
231: END IF;
232: ------------------------------------------------------------------------
1238: l_return_status := FND_API.G_RET_STS_ERROR;
1239:
1240: fnd_message.set_name('ONT','OE_ATTRIBUTE_REQUIRED');
1241: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
1242: OE_Order_UTIL.Get_Attribute_Name('INVENTORY_ITEM_ID'));
1243: OE_MSG_PUB.Add;
1244:
1245: END IF;
1246:
1251: l_return_status := FND_API.G_RET_STS_ERROR;
1252:
1253: fnd_message.set_name('ONT','OE_ATTRIBUTE_REQUIRED');
1254: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
1255: OE_Order_UTIL.Get_Attribute_Name('LINE_TYPE_ID'));
1256: OE_MSG_PUB.Add;
1257:
1258: ELSIF p_line_rec.line_type_id IS NOT NULL THEN
1259: Validate_line_type(p_line_rec => p_line_rec);
1281: l_return_status := FND_API.G_RET_STS_ERROR;
1282:
1283: fnd_message.set_name('ONT','OE_ATTRIBUTE_REQUIRED');
1284: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
1285: OE_Order_UTIL.Get_Attribute_Name('RETURN_REASON_CODE'));
1286: OE_MSG_PUB.Add;
1287:
1288: END IF;
1289:
1299: oe_debug_pub.add('Entity Validateion: subinventory', 1);
1300: IF p_line_rec.ship_from_org_id is null THEN
1301: l_return_status := FND_API.G_RET_STS_ERROR;
1302: fnd_message.set_name('ONT', 'OE_ATTRIBUTE_REQUIRED');
1303: fnd_message.set_token('ATTRIBUTE',OE_Order_UTIL.Get_Attribute_Name('SHIP_FROM_ORG_ID'));
1304: OE_MSG_PUB.Add;
1305: END IF;
1306: ELSE -- external
1307: l_return_status := FND_API.G_RET_STS_ERROR;
1787: l_return_status := FND_API.G_RET_STS_ERROR;
1788: OE_MSG_PUB.Update_Msg_Context(p_attribute_code => 'TASK_ID');
1789: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
1790: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
1791: OE_Order_Util.Get_Attribute_Name('task_id'));
1792: OE_MSG_PUB.Add;
1793: OE_MSG_PUB.Update_Msg_Context(p_attribute_code => null);
1794:
1795: END IF;
1970: ) THEN
1971: l_return_status := FND_API.G_RET_STS_ERROR;
1972: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
1973: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
1974: OE_Order_Util.Get_Attribute_Name('ship_to_org_id'));
1975: OE_MSG_PUB.Add;
1976: END IF;
1977:
1978: END IF;
2006: WHEN NO_DATA_FOUND THEN
2007: l_return_status := FND_API.G_RET_STS_ERROR;
2008: FND_MESSAGE.SET_NAME('ONT','OE_INVALID_ATTRIBUTE');
2009: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2010: OE_Order_Util.Get_Attribute_Name('ship_to_contact_id'));
2011: OE_MSG_PUB.Add;
2012: WHEN OTHERS THEN
2013: IF OE_MSG_PUB.Check_Msg_Level (OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2014: OE_MSG_PUB.Add_Exc_Msg
2032: ) THEN
2033: l_return_status := FND_API.G_RET_STS_ERROR;
2034: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
2035: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2036: OE_Order_Util.Get_Attribute_Name('deliver_to_org_id'));
2037: OE_MSG_PUB.Add;
2038: END IF;
2039:
2040: END IF;
2067: WHEN NO_DATA_FOUND THEN
2068: l_return_status := FND_API.G_RET_STS_ERROR;
2069: FND_MESSAGE.SET_NAME('ONT','OE_INVALID_ATTRIBUTE');
2070: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2071: OE_Order_Util.Get_Attribute_Name('deliver_to_contact_id'));
2072: OE_MSG_PUB.Add;
2073: WHEN OTHERS THEN
2074: IF OE_MSG_PUB.Check_Msg_Level (OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2075: OE_MSG_PUB.Add_Exc_Msg
2143: WHEN NO_DATA_FOUND THEN
2144: l_return_status := FND_API.G_RET_STS_ERROR;
2145: FND_MESSAGE.SET_NAME('ONT','OE_INVALID_ATTRIBUTE');
2146: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2147: OE_Order_Util.Get_Attribute_Name('invoice_to_org_id'));
2148: OE_MSG_PUB.Add;
2149: WHEN OTHERS THEN
2150: IF OE_MSG_PUB.Check_Msg_Level (OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2151: OE_MSG_PUB.Add_Exc_Msg
2185: WHEN NO_DATA_FOUND THEN
2186: l_return_status := FND_API.G_RET_STS_ERROR;
2187: FND_MESSAGE.SET_NAME('ONT','OE_INVALID_ATTRIBUTE');
2188: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2189: OE_Order_Util.Get_Attribute_Name('invoice_to_contact_id'));
2190: OE_MSG_PUB.Add;
2191: WHEN OTHERS THEN
2192: IF OE_MSG_PUB.Check_Msg_Level (OE_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2193: OE_MSG_PUB.Add_Exc_Msg
2250: WHEN NO_DATA_FOUND THEN
2251: l_return_status := FND_API.G_RET_STS_ERROR;
2252: FND_MESSAGE.SET_NAME('ONT','OE_INVALID_ATTRIBUTE');
2253: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2254: OE_Order_Util.Get_Attribute_Name('TAX_CODE'));
2255: OE_MSG_PUB.Add;
2256:
2257: WHEN OTHERS THEN
2258: IF OE_MSG_PUB.Check_Msg_Level (
2279: IF OE_MSG_PUB.Check_Msg_Level (OE_MSG_PUB.G_MSG_LVL_ERROR)
2280: THEN
2281: fnd_message.set_name('ONT','OE_ATTRIBUTE_REQUIRED');
2282: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2283: OE_Order_Util.Get_Attribute_Name('TAX_EXEMPT_REASON_CODE'));
2284: OE_MSG_PUB.Add;
2285: END IF;
2286: END IF;
2287: END IF; -- If Tax handling is exempt
2391: IF OE_MSG_PUB.Check_Msg_Level(OE_MSG_PUB.G_MSG_LVL_ERROR)
2392: THEN
2393: fnd_message.set_name('ONT','OE_INVALID_ATTRIBUTE');
2394: FND_MESSAGE.SET_TOKEN('ATTRIBUTE',
2395: OE_Order_Util.Get_Attribute_Name('TAX_EXEMPT_NUMBER'));
2396: OE_MSG_PUB.Add;
2397: END IF;
2398:
2399: WHEN OTHERS THEN