78: l_progress := '020';
79: -- Check the required fields
80: IF ((p_document_id is NULL) OR (p_document_type is NULL) OR
81: (p_document_subtype IS NULL)) THEN
82: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
83: FND_MESSAGE.set_token('ERROR_TEXT', 'Mandatory parameters are NULL');
84: FND_MSG_PUB.Add;
85: RAISE FND_API.G_EXC_ERROR;
86: END IF; /*(p_document_id is NULL) OR (p_document_type is NULL)*/
79: -- Check the required fields
80: IF ((p_document_id is NULL) OR (p_document_type is NULL) OR
81: (p_document_subtype IS NULL)) THEN
82: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
83: FND_MESSAGE.set_token('ERROR_TEXT', 'Mandatory parameters are NULL');
84: FND_MSG_PUB.Add;
85: RAISE FND_API.G_EXC_ERROR;
86: END IF; /*(p_document_id is NULL) OR (p_document_type is NULL)*/
87:
87:
88: l_progress := '030';
89: --check p_document_type
90: IF p_document_type NOT IN ('RELEASE', 'PO', 'PA') THEN
91: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
92: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid document type');
93: FND_MSG_PUB.Add;
94: RAISE FND_API.G_EXC_ERROR;
95: END IF; /*p_document_type NOT IN ('RELEASE', 'PO', 'PA')*/
88: l_progress := '030';
89: --check p_document_type
90: IF p_document_type NOT IN ('RELEASE', 'PO', 'PA') THEN
91: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
92: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid document type');
93: FND_MSG_PUB.Add;
94: RAISE FND_API.G_EXC_ERROR;
95: END IF; /*p_document_type NOT IN ('RELEASE', 'PO', 'PA')*/
96:
97: l_progress := '040';
98: --check that document_subtype matches
99: IF p_document_type = 'RELEASE' THEN
100: IF p_document_subtype NOT IN ('SCHEDULED', 'BLANKET') THEN
101: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
102: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid Release document subtype');
103: FND_MSG_PUB.Add;
104: RAISE FND_API.G_EXC_ERROR;
105: END IF;
98: --check that document_subtype matches
99: IF p_document_type = 'RELEASE' THEN
100: IF p_document_subtype NOT IN ('SCHEDULED', 'BLANKET') THEN
101: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
102: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid Release document subtype');
103: FND_MSG_PUB.Add;
104: RAISE FND_API.G_EXC_ERROR;
105: END IF;
106: ELSIF p_document_type = 'PO' THEN
104: RAISE FND_API.G_EXC_ERROR;
105: END IF;
106: ELSIF p_document_type = 'PO' THEN
107: IF p_document_subtype NOT IN ('STANDARD', 'PLANNED') THEN
108: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
109: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid PO document subtype');
110: FND_MSG_PUB.Add;
111: RAISE FND_API.G_EXC_ERROR;
112: END IF;
105: END IF;
106: ELSIF p_document_type = 'PO' THEN
107: IF p_document_subtype NOT IN ('STANDARD', 'PLANNED') THEN
108: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
109: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid PO document subtype');
110: FND_MSG_PUB.Add;
111: RAISE FND_API.G_EXC_ERROR;
112: END IF;
113: ELSIF p_document_type = 'PA' THEN
111: RAISE FND_API.G_EXC_ERROR;
112: END IF;
113: ELSIF p_document_type = 'PA' THEN
114: IF p_document_subtype NOT IN ('BLANKET', 'CONTRACT') THEN
115: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
116: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid PA document subtype');
117: FND_MSG_PUB.Add;
118: RAISE FND_API.G_EXC_ERROR;
119: END IF;
112: END IF;
113: ELSIF p_document_type = 'PA' THEN
114: IF p_document_subtype NOT IN ('BLANKET', 'CONTRACT') THEN
115: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
116: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid PA document subtype');
117: FND_MSG_PUB.Add;
118: RAISE FND_API.G_EXC_ERROR;
119: END IF;
120: END IF; /*p_document_type = 'RELEASE'*/
134: WHERE po_release_id= p_document_id;
135: END IF; /*p_document_type IN ('PO', 'PA')*/
136: EXCEPTION
137: WHEN NO_DATA_FOUND THEN
138: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
139: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid document_id passed');
140: FND_MSG_PUB.Add;
141: RAISE FND_API.G_EXC_ERROR;
142: END;
135: END IF; /*p_document_type IN ('PO', 'PA')*/
136: EXCEPTION
137: WHEN NO_DATA_FOUND THEN
138: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
139: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid document_id passed');
140: FND_MSG_PUB.Add;
141: RAISE FND_API.G_EXC_ERROR;
142: END;
143:
210: l_progress := '000';
211: --check p_process
212: IF (p_process is NULL OR
213: p_process NOT IN ('PRINT', 'APPROVE')) THEN
214: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
215: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid process value');
216: FND_MSG_PUB.Add;
217: RAISE FND_API.G_EXC_ERROR;
218: END IF; /* p_process NOT IN ('PRINT', 'APPROVE')*/
211: --check p_process
212: IF (p_process is NULL OR
213: p_process NOT IN ('PRINT', 'APPROVE')) THEN
214: FND_MESSAGE.set_name('PO', 'PO_ARC_GENERAL_ERROR');
215: FND_MESSAGE.set_token('ERROR_TEXT', 'Invalid process value');
216: FND_MSG_PUB.Add;
217: RAISE FND_API.G_EXC_ERROR;
218: END IF; /* p_process NOT IN ('PRINT', 'APPROVE')*/
219: