144: close is_supp_cost_rec_exist_cre_1;
145:
146: if ( l_exist = 'Y') then
147: l_error_msg_code := 'PA_CI_SC_REC_NOT_UNIQUE_CRE';
148: raise PA_API.G_EXCEPTION_ERROR;
149: else
150: -- If the change type is 'Update Existing' then
151: -- we need to check whether the same combination of Task,
152: -- Expenditure Type, Resource, Supplier, PO number and
155: fetch is_supp_cost_rec_exist_cre_2 into l_exist;
156: close is_supp_cost_rec_exist_cre_2;
157: if ( l_exist = 'Y') then
158: l_error_msg_code := 'PA_CI_SC_REC_NOT_UNIQUE_UPD';
159: raise PA_API.G_EXCEPTION_ERROR;
160: else
161: -- we need to check whether the same combination of Task,
162: -- Expenditure Type and Resource is present between Supplier
163: -- Cost end Direct Cost
165: fetch is_direct_cost_rec_exist into l_exist;
166: close is_direct_cost_rec_exist;
167: if ( l_exist = 'Y') then
168: l_error_msg_code := 'PA_FIN_SAME_PLANNING_ELEMENT';
169: raise PA_API.G_EXCEPTION_ERROR;
170: end if;
171: end if;
172: end if;
173: else if (p_record_status = 'CHANGED') then
180: close is_supp_cost_rec_exist_upd_1;
181:
182: if ( l_exist = 'Y') then
183: l_error_msg_code := 'PA_CI_SC_REC_NOT_UNIQUE_CRE';
184: raise PA_API.G_EXCEPTION_ERROR;
185: else
186: -- If the change type is 'Update Existing' then
187: -- we need to check whether the same combination of Task,
188: -- Expenditure Type, Resource, Supplier, PO number and
191: fetch is_supp_cost_rec_exist_upd_2 into l_exist;
192: close is_supp_cost_rec_exist_upd_2;
193: if ( l_exist = 'Y') then
194: l_error_msg_code := 'PA_CI_SC_REC_NOT_UNIQUE_UPD';
195: raise PA_API.G_EXCEPTION_ERROR;
196: end if;
197: end if;
198: end if;
199: end if;
198: end if;
199: end if;
200:
201: END IF;
202: x_return_status := PA_API.G_RET_STS_SUCCESS;
203: EXCEPTION
204: WHEN PA_API.G_EXCEPTION_ERROR THEN
205: x_msg_count := l_msg_count+1;
206: x_msg_data := l_error_msg_code;
200:
201: END IF;
202: x_return_status := PA_API.G_RET_STS_SUCCESS;
203: EXCEPTION
204: WHEN PA_API.G_EXCEPTION_ERROR THEN
205: x_msg_count := l_msg_count+1;
206: x_msg_data := l_error_msg_code;
207: x_return_status := PA_API.G_RET_STS_ERROR;
208: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
203: EXCEPTION
204: WHEN PA_API.G_EXCEPTION_ERROR THEN
205: x_msg_count := l_msg_count+1;
206: x_msg_data := l_error_msg_code;
207: x_return_status := PA_API.G_RET_STS_ERROR;
208: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
209: x_msg_count := l_msg_count+1;
210: x_msg_data := l_error_msg_code;
211: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
204: WHEN PA_API.G_EXCEPTION_ERROR THEN
205: x_msg_count := l_msg_count+1;
206: x_msg_data := l_error_msg_code;
207: x_return_status := PA_API.G_RET_STS_ERROR;
208: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
209: x_msg_count := l_msg_count+1;
210: x_msg_data := l_error_msg_code;
211: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
212: WHEN OTHERS THEN
207: x_return_status := PA_API.G_RET_STS_ERROR;
208: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
209: x_msg_count := l_msg_count+1;
210: x_msg_data := l_error_msg_code;
211: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
212: WHEN OTHERS THEN
213: x_msg_count := l_msg_count+1;
214: x_msg_data := l_error_msg_code||sqlerrm;
215: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
211: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
212: WHEN OTHERS THEN
213: x_msg_count := l_msg_count+1;
214: x_msg_data := l_error_msg_code||sqlerrm;
215: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
216:
217: END is_record_unique;
218: -- gboomina added for supplier cost 12.1.3 requirement - end
219:
1751: ) IS
1752:
1753: l_api_version number := 1;
1754: l_api_name CONSTANT VARCHAR2(30) := 'delete_supplier_costs';
1755: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1756: l_msg_count number := 0;
1757: l_msg_data varchar2(2000);
1758: l_error_msg_code varchar2(100):= null;
1759:
1772: l_budget_version_id number;
1773:
1774: begin
1775:
1776: l_return_status := PA_API.START_ACTIVITY(l_api_name,
1777: p_init_msg_list,
1778: NULL,
1779: x_return_status);
1780: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1776: l_return_status := PA_API.START_ACTIVITY(l_api_name,
1777: p_init_msg_list,
1778: NULL,
1779: x_return_status);
1780: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1781: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1782: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1783: RAISE PA_API.G_EXCEPTION_ERROR;
1784: END IF;
1777: p_init_msg_list,
1778: NULL,
1779: x_return_status);
1780: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1781: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1782: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1783: RAISE PA_API.G_EXCEPTION_ERROR;
1784: END IF;
1785:
1778: NULL,
1779: x_return_status);
1780: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1781: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1782: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1783: RAISE PA_API.G_EXCEPTION_ERROR;
1784: END IF;
1785:
1786: if (p_ci_transaction_id_tbl.count > 0) then
1779: x_return_status);
1780: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1781: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1782: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1783: RAISE PA_API.G_EXCEPTION_ERROR;
1784: END IF;
1785:
1786: if (p_ci_transaction_id_tbl.count > 0) then
1787: for i in p_ci_transaction_id_tbl.first..p_ci_transaction_id_tbl.last loop
1813: p_rlmi_id_tbl => p_rlmi_id_tbl,
1814: p_res_assgn_id_tbl => p_resource_assignment_id_tbl
1815: );
1816:
1817: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1818: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1819: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1820: RAISE PA_API.G_EXCEPTION_ERROR;
1821: END IF;
1814: p_res_assgn_id_tbl => p_resource_assignment_id_tbl
1815: );
1816:
1817: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1818: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1819: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1820: RAISE PA_API.G_EXCEPTION_ERROR;
1821: END IF;
1822:
1815: );
1816:
1817: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1818: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1819: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1820: RAISE PA_API.G_EXCEPTION_ERROR;
1821: END IF;
1822:
1823: end if;
1816:
1817: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
1818: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
1819: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
1820: RAISE PA_API.G_EXCEPTION_ERROR;
1821: END IF;
1822:
1823: end if;
1824:
1822:
1823: end if;
1824:
1825: x_return_status := l_return_status;
1826: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1827:
1828: EXCEPTION
1829: WHEN PA_API.G_EXCEPTION_ERROR THEN
1830: pa_api.set_message('PA',l_error_msg_code);
1825: x_return_status := l_return_status;
1826: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1827:
1828: EXCEPTION
1829: WHEN PA_API.G_EXCEPTION_ERROR THEN
1830: pa_api.set_message('PA',l_error_msg_code);
1831: x_msg_count := l_msg_count+1;
1832: x_msg_data := l_error_msg_code;
1833: FND_MSG_PUB.Count_And_Get
1826: PA_API.END_ACTIVITY(x_msg_count, x_msg_data);
1827:
1828: EXCEPTION
1829: WHEN PA_API.G_EXCEPTION_ERROR THEN
1830: pa_api.set_message('PA',l_error_msg_code);
1831: x_msg_count := l_msg_count+1;
1832: x_msg_data := l_error_msg_code;
1833: FND_MSG_PUB.Count_And_Get
1834: (
1834: (
1835: p_count => x_msg_count,
1836: p_data => x_msg_data
1837: );
1838: x_return_status := PA_API.G_RET_STS_ERROR;
1839: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1840: pa_api.set_message('PA',l_error_msg_code);
1841: x_msg_count := l_msg_count+1;
1842: x_msg_data := l_error_msg_code;
1835: p_count => x_msg_count,
1836: p_data => x_msg_data
1837: );
1838: x_return_status := PA_API.G_RET_STS_ERROR;
1839: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1840: pa_api.set_message('PA',l_error_msg_code);
1841: x_msg_count := l_msg_count+1;
1842: x_msg_data := l_error_msg_code;
1843: FND_MSG_PUB.Count_And_Get
1836: p_data => x_msg_data
1837: );
1838: x_return_status := PA_API.G_RET_STS_ERROR;
1839: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
1840: pa_api.set_message('PA',l_error_msg_code);
1841: x_msg_count := l_msg_count+1;
1842: x_msg_data := l_error_msg_code;
1843: FND_MSG_PUB.Count_And_Get
1844: (
1844: (
1845: p_count => x_msg_count,
1846: p_data => x_msg_data
1847: );
1848: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
1849: WHEN OTHERS THEN
1850: x_msg_count := l_msg_count+1;
1851: x_msg_data := l_error_msg_code||sqlerrm;
1852: FND_MSG_PUB.Count_And_Get
1853: (
1854: p_count => x_msg_count,
1855: p_data => x_msg_data
1856: );
1857: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
1858:
1859: end delete_supplier_costs;
1860:
1861:
1909: )
1910: IS
1911: l_api_version number := 1;
1912: l_api_name CONSTANT VARCHAR2(30) := 'save_supplier_costs';
1913: l_return_status VARCHAR2(1) := PA_API.G_RET_STS_SUCCESS;
1914: l_msg_count number := 0;
1915: l_msg_data varchar2(2000);
1916: l_error_msg_code varchar2(100):= null;
1917:
2022:
2023: sc_line_row get_sc_line%ROWTYPE;
2024:
2025: begin
2026: l_return_status := PA_API.START_ACTIVITY(l_api_name,
2027: p_init_msg_list,
2028: NULL,
2029: x_return_status);
2030: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2026: l_return_status := PA_API.START_ACTIVITY(l_api_name,
2027: p_init_msg_list,
2028: NULL,
2029: x_return_status);
2030: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2031: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2032: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2033: RAISE PA_API.G_EXCEPTION_ERROR;
2034: END IF;
2027: p_init_msg_list,
2028: NULL,
2029: x_return_status);
2030: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2031: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2032: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2033: RAISE PA_API.G_EXCEPTION_ERROR;
2034: END IF;
2035:
2028: NULL,
2029: x_return_status);
2030: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2031: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2032: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2033: RAISE PA_API.G_EXCEPTION_ERROR;
2034: END IF;
2035:
2036: -- Get the budget update method of the control item
2029: x_return_status);
2030: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2031: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2032: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2033: RAISE PA_API.G_EXCEPTION_ERROR;
2034: END IF;
2035:
2036: -- Get the budget update method of the control item
2037: open get_budget_update_method;
2100: ,p_po_line_id => l_po_line_id
2101: ,p_record_status => p_record_status_tbl(i)
2102: ,p_ci_transaction_id => l_ci_transaction_id );
2103:
2104: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2105: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2106: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2107: RAISE PA_API.G_EXCEPTION_ERROR;
2108: END IF;
2101: ,p_record_status => p_record_status_tbl(i)
2102: ,p_ci_transaction_id => l_ci_transaction_id );
2103:
2104: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2105: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2106: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2107: RAISE PA_API.G_EXCEPTION_ERROR;
2108: END IF;
2109: end if;
2102: ,p_ci_transaction_id => l_ci_transaction_id );
2103:
2104: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2105: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2106: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2107: RAISE PA_API.G_EXCEPTION_ERROR;
2108: END IF;
2109: end if;
2110:
2103:
2104: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2105: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2106: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2107: RAISE PA_API.G_EXCEPTION_ERROR;
2108: END IF;
2109: end if;
2110:
2111: PA_CI_SUPPLIER_PKG.insert_row (
2150: ,p_need_by_date => l_need_by_date
2151: ,x_return_status => l_return_status
2152: ,x_error_msg_code => l_error_msg_code );
2153:
2154: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2155: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2156: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2157: RAISE PA_API.G_EXCEPTION_ERROR;
2158: END IF;
2151: ,x_return_status => l_return_status
2152: ,x_error_msg_code => l_error_msg_code );
2153:
2154: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2155: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2156: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2157: RAISE PA_API.G_EXCEPTION_ERROR;
2158: END IF;
2159:
2152: ,x_error_msg_code => l_error_msg_code );
2153:
2154: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2155: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2156: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2157: RAISE PA_API.G_EXCEPTION_ERROR;
2158: END IF;
2159:
2160: -- populate the budget impact tables
2153:
2154: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2155: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2156: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2157: RAISE PA_API.G_EXCEPTION_ERROR;
2158: END IF;
2159:
2160: -- populate the budget impact tables
2161:
2198: ,p_po_line_id => l_po_line_id
2199: ,p_record_status => p_record_status_tbl(i)
2200: ,p_ci_transaction_id => l_ci_transaction_id );
2201:
2202: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2203: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2204: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2205: RAISE PA_API.G_EXCEPTION_ERROR;
2206: END IF;
2199: ,p_record_status => p_record_status_tbl(i)
2200: ,p_ci_transaction_id => l_ci_transaction_id );
2201:
2202: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2203: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2204: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2205: RAISE PA_API.G_EXCEPTION_ERROR;
2206: END IF;
2207: end if;
2200: ,p_ci_transaction_id => l_ci_transaction_id );
2201:
2202: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2203: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2204: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2205: RAISE PA_API.G_EXCEPTION_ERROR;
2206: END IF;
2207: end if;
2208:
2201:
2202: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2203: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2204: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2205: RAISE PA_API.G_EXCEPTION_ERROR;
2206: END IF;
2207: end if;
2208:
2209: -- populate the budget impact tables
2281: ,p_need_by_date => l_need_by_date
2282: ,x_return_status => l_return_status
2283: ,x_error_msg_code => l_error_msg_code );
2284:
2285: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2286: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2287: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2288: RAISE PA_API.G_EXCEPTION_ERROR;
2289: END IF;
2282: ,x_return_status => l_return_status
2283: ,x_error_msg_code => l_error_msg_code );
2284:
2285: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2286: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2287: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2288: RAISE PA_API.G_EXCEPTION_ERROR;
2289: END IF;
2290:
2283: ,x_error_msg_code => l_error_msg_code );
2284:
2285: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2286: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2287: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2288: RAISE PA_API.G_EXCEPTION_ERROR;
2289: END IF;
2290:
2291: end if;
2284:
2285: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2286: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2287: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2288: RAISE PA_API.G_EXCEPTION_ERROR;
2289: END IF;
2290:
2291: end if;
2292: l_ci_transaction_id_tbl.extend(1);
2334: p_quantity_tbl => b_ins_quantity_tbl, -- this will be null for supplier cost
2335: p_raw_cost_tbl => b_ins_raw_cost_tbl
2336: );
2337:
2338: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2339: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2340: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2341: RAISE PA_API.G_EXCEPTION_ERROR;
2342: END IF;
2335: p_raw_cost_tbl => b_ins_raw_cost_tbl
2336: );
2337:
2338: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2339: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2340: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2341: RAISE PA_API.G_EXCEPTION_ERROR;
2342: END IF;
2343:
2336: );
2337:
2338: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2339: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2340: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2341: RAISE PA_API.G_EXCEPTION_ERROR;
2342: END IF;
2343:
2344: -- update resource assignment id, effective dates and
2337:
2338: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2339: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2340: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2341: RAISE PA_API.G_EXCEPTION_ERROR;
2342: END IF;
2343:
2344: -- update resource assignment id, effective dates and
2345: -- burdened cost in supplier details table after
2385: p_quantity_tbl => b_upd_quantity_tbl, -- this will be null for supplier cost
2386: p_raw_cost_tbl => b_upd_raw_cost_tbl
2387: );
2388:
2389: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2390: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2391: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2392: RAISE PA_API.G_EXCEPTION_ERROR;
2393: END IF;
2386: p_raw_cost_tbl => b_upd_raw_cost_tbl
2387: );
2388:
2389: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2390: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2391: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2392: RAISE PA_API.G_EXCEPTION_ERROR;
2393: END IF;
2394:
2387: );
2388:
2389: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2390: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2391: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2392: RAISE PA_API.G_EXCEPTION_ERROR;
2393: END IF;
2394:
2395: -- update resource assignment id, effective dates and
2388:
2389: IF (l_return_status = PA_API.G_RET_STS_UNEXP_ERROR) THEN
2390: RAISE PA_API.G_EXCEPTION_UNEXPECTED_ERROR;
2391: ELSIF (l_return_status = PA_API.G_RET_STS_ERROR) THEN
2392: RAISE PA_API.G_EXCEPTION_ERROR;
2393: END IF;
2394:
2395: -- update resource assignment id, effective dates and
2396: -- burdened cost in supplier details table after
2419:
2420: --end if;
2421: end if;
2422:
2423: PA_API.END_ACTIVITY(x_msg_count,x_msg_data);
2424:
2425: EXCEPTION
2426: WHEN PA_API.G_EXCEPTION_ERROR THEN
2427: pa_api.set_message('PA',x_msg_data);
2422:
2423: PA_API.END_ACTIVITY(x_msg_count,x_msg_data);
2424:
2425: EXCEPTION
2426: WHEN PA_API.G_EXCEPTION_ERROR THEN
2427: pa_api.set_message('PA',x_msg_data);
2428: x_msg_count := l_msg_count+1;
2429: x_msg_data := x_msg_data;
2430: FND_MSG_PUB.Count_And_Get
2423: PA_API.END_ACTIVITY(x_msg_count,x_msg_data);
2424:
2425: EXCEPTION
2426: WHEN PA_API.G_EXCEPTION_ERROR THEN
2427: pa_api.set_message('PA',x_msg_data);
2428: x_msg_count := l_msg_count+1;
2429: x_msg_data := x_msg_data;
2430: FND_MSG_PUB.Count_And_Get
2431: (
2431: (
2432: p_count => x_msg_count,
2433: p_data => x_msg_data
2434: );
2435: x_return_status := PA_API.G_RET_STS_ERROR;
2436: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2437: pa_api.set_message('PA',x_msg_data);
2438: x_msg_count := l_msg_count+1;
2439: x_msg_data := x_msg_data;
2432: p_count => x_msg_count,
2433: p_data => x_msg_data
2434: );
2435: x_return_status := PA_API.G_RET_STS_ERROR;
2436: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2437: pa_api.set_message('PA',x_msg_data);
2438: x_msg_count := l_msg_count+1;
2439: x_msg_data := x_msg_data;
2440: FND_MSG_PUB.Count_And_Get
2433: p_data => x_msg_data
2434: );
2435: x_return_status := PA_API.G_RET_STS_ERROR;
2436: WHEN PA_API.G_EXCEPTION_UNEXPECTED_ERROR THEN
2437: pa_api.set_message('PA',x_msg_data);
2438: x_msg_count := l_msg_count+1;
2439: x_msg_data := x_msg_data;
2440: FND_MSG_PUB.Count_And_Get
2441: (
2441: (
2442: p_count => x_msg_count,
2443: p_data => x_msg_data
2444: );
2445: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
2446: WHEN OTHERS THEN
2447: x_msg_count := l_msg_count+1;
2448: x_msg_data := x_msg_data||sqlerrm;
2449: FND_MSG_PUB.Count_And_Get
2450: (
2451: p_count => x_msg_count,
2452: p_data => x_msg_data
2453: );
2454: x_return_status := PA_API.G_RET_STS_UNEXP_ERROR;
2455:
2456: end save_supplier_costs;
2457:
2458: -- gboomina added for 12.1.3 supplier cost requirement - end