8: -- Pre-reqs : None
9: -- Return Value : N/A
10: -- Prameters
11: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
12: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
13: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
14: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
15: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
16: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
9: -- Return Value : N/A
10: -- Prameters
11: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
12: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
13: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
14: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
15: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
16: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
17: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
10: -- Prameters
11: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
12: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
13: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
14: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
15: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
16: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
17: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
18: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
11: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
12: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
13: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
14: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
15: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
16: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
17: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
18: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
19: -- p_project_id IN NUMBER REQUIRED
14: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
15: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
16: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
17: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
18: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
19: -- p_project_id IN NUMBER REQUIRED
20: -- p_distribution_rule IN VARCHAR2 REQUIRED
21: -- p_billing_cycle_id IN NUMBER REQUIRED
22: -- p_first_bill_offset IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
18: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
19: -- p_project_id IN NUMBER REQUIRED
20: -- p_distribution_rule IN VARCHAR2 REQUIRED
21: -- p_billing_cycle_id IN NUMBER REQUIRED
22: -- p_first_bill_offset IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
23: -- p_next_billing_date IN DATE OPTIONAL
24: -- p_output_tax_code IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CHAR
25: -- p_billing_job_group_id IN NUMBER REQUIRED
26: -- p_invoice_comment IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CHAR
20: -- p_distribution_rule IN VARCHAR2 REQUIRED
21: -- p_billing_cycle_id IN NUMBER REQUIRED
22: -- p_first_bill_offset IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
23: -- p_next_billing_date IN DATE OPTIONAL
24: -- p_output_tax_code IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CHAR
25: -- p_billing_job_group_id IN NUMBER REQUIRED
26: -- p_invoice_comment IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CHAR
27: -- p_labor_id IN NUMBER REQUIRED
28: -- p_non_labor_id IN NUMBER OPTIONAL
22: -- p_first_bill_offset IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
23: -- p_next_billing_date IN DATE OPTIONAL
24: -- p_output_tax_code IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CHAR
25: -- p_billing_job_group_id IN NUMBER REQUIRED
26: -- p_invoice_comment IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CHAR
27: -- p_labor_id IN NUMBER REQUIRED
28: -- p_non_labor_id IN NUMBER OPTIONAL
29: -- p_retention_inv_format_id IN VARCHAR2 OPTIONAL
30: -- p_retention_inv_format_name IN VARCHAR2 OPTIONAL
42: --
43:
44: PROCEDURE update_revenue_and_billing(
45: p_api_version IN NUMBER DEFAULT 1.0,
46: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
47: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
48: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
49: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
50: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
43:
44: PROCEDURE update_revenue_and_billing(
45: p_api_version IN NUMBER DEFAULT 1.0,
46: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
47: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
48: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
49: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
50: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
51: p_debug_mode IN VARCHAR2 DEFAULT 'N',
44: PROCEDURE update_revenue_and_billing(
45: p_api_version IN NUMBER DEFAULT 1.0,
46: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
47: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
48: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
49: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
50: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
51: p_debug_mode IN VARCHAR2 DEFAULT 'N',
52: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
45: p_api_version IN NUMBER DEFAULT 1.0,
46: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
47: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
48: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
49: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
50: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
51: p_debug_mode IN VARCHAR2 DEFAULT 'N',
52: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
53: p_project_id IN NUMBER ,
48: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
49: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
50: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
51: p_debug_mode IN VARCHAR2 DEFAULT 'N',
52: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
53: p_project_id IN NUMBER ,
54: p_distribution_rule IN VARCHAR2 ,
55: p_billing_cycle_id IN NUMBER ,
56: p_first_bill_offset IN NUMBER DEFAULT FND_API.G_MISS_NUM,
52: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
53: p_project_id IN NUMBER ,
54: p_distribution_rule IN VARCHAR2 ,
55: p_billing_cycle_id IN NUMBER ,
56: p_first_bill_offset IN NUMBER DEFAULT FND_API.G_MISS_NUM,
57: p_next_billing_date OUT NOCOPY DATE , --File.Sql.39 bug 4440895
58: p_output_tax_code IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
59: p_billing_job_group_id IN NUMBER ,
60: p_invoice_comment IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
54: p_distribution_rule IN VARCHAR2 ,
55: p_billing_cycle_id IN NUMBER ,
56: p_first_bill_offset IN NUMBER DEFAULT FND_API.G_MISS_NUM,
57: p_next_billing_date OUT NOCOPY DATE , --File.Sql.39 bug 4440895
58: p_output_tax_code IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
59: p_billing_job_group_id IN NUMBER ,
60: p_invoice_comment IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
61: p_labor_id IN NUMBER ,
62: p_non_labor_id IN NUMBER ,
56: p_first_bill_offset IN NUMBER DEFAULT FND_API.G_MISS_NUM,
57: p_next_billing_date OUT NOCOPY DATE , --File.Sql.39 bug 4440895
58: p_output_tax_code IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
59: p_billing_job_group_id IN NUMBER ,
60: p_invoice_comment IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
61: p_labor_id IN NUMBER ,
62: p_non_labor_id IN NUMBER ,
63: p_retention_inv_format_id IN VARCHAR2 ,
64: p_retention_inv_format_name IN VARCHAR2 ,
105: THEN
106: pa_debug.debug('Update Revenue and Bill Info PUB : Checking the api version number.');
107: END IF;
108:
109: IF p_commit = FND_API.G_TRUE
110: THEN
111: SAVEPOINT revenue_and_billing;
112: END IF;
113:
110: THEN
111: SAVEPOINT revenue_and_billing;
112: END IF;
113:
114: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
115: p_api_version,
116: l_api_name,
117: g_pkg_name)
118: THEN
115: p_api_version,
116: l_api_name,
117: g_pkg_name)
118: THEN
119: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
120: END IF;
121:
122: if (p_debug_mode = 'Y') then
123: pa_debug.debug('Update Revenue and Bill Info PUB : Initializing message stack.');
124: end if;
125:
126: pa_debug.init_err_stack('PA_BILLING_SETUP_PUB.update_revenue_and_billing');
127:
128: if FND_API.to_boolean(nvl(p_init_msg_list, FND_API.G_FALSE)) then
129: fnd_msg_pub.initialize;
130: end if;
131:
132: x_return_status := 'S';
130: end if;
131:
132: x_return_status := 'S';
133:
134: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
135: THEN
136: --Assign null to the variables that are passed as G_MISS....
137:
138: IF p_first_bill_offset = FND_API.G_MISS_NUM
134: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
135: THEN
136: --Assign null to the variables that are passed as G_MISS....
137:
138: IF p_first_bill_offset = FND_API.G_MISS_NUM
139: THEN
140: l_first_bill_offset := null;
141: ELSE
142: l_first_bill_offset := p_first_bill_offset;
141: ELSE
142: l_first_bill_offset := p_first_bill_offset;
143: END IF;
144:
145: IF p_next_billing_date = FND_API.G_MISS_DATE
146: THEN
147: l_next_billing_date := null;
148: ELSE
149: l_next_billing_date := p_next_billing_date;
148: ELSE
149: l_next_billing_date := p_next_billing_date;
150: END IF;
151:
152: IF p_output_tax_code = FND_API.G_MISS_CHAR
153: THEN
154: l_output_tax_code := null;
155: ELSE
156: l_output_tax_code := p_output_tax_code;
155: ELSE
156: l_output_tax_code := p_output_tax_code;
157: END IF;
158:
159: IF p_invoice_comment = FND_API.G_MISS_CHAR
160: THEN
161: l_invoice_comment := null;
162: ELSE
163: l_invoice_comment := p_invoice_comment;
162: ELSE
163: l_invoice_comment := p_invoice_comment;
164: END IF;
165:
166: IF p_retention_percent = FND_API.G_MISS_NUM
167: THEN
168: l_retention_percent := null;
169: ELSE
170: l_retention_percent := p_retention_percent;
169: ELSE
170: l_retention_percent := p_retention_percent;
171: END IF;
172:
173: IF p_retention_output_tax_code = FND_API.G_MISS_CHAR
174: THEN
175: l_retention_output_tax_code := null;
176: ELSE
177: l_retention_output_tax_code := p_retention_output_tax_code;
182: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
183: p_msg_name => 'PA_PRJ_BILL_OFFSET_GR_ZR' );
184: x_msg_data := 'PA_PRJ_BILL_OFFSET_GR_ZR';
185: x_return_status := 'E';
186: RAISE FND_API.G_EXC_ERROR;
187: END IF;
188:
189: IF NVL( p_retention_percent, 0 ) < 0
190: THEN
191: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
192: p_msg_name => 'PA_PRJ_RETN_PERCENT_GR_ZR' );
193: x_msg_data := 'PA_PRJ_RETN_PERCENT_GR_ZR';
194: x_return_status := 'E';
195: RAISE FND_API.G_EXC_ERROR;
196: END IF;
197:
198: --Validate and convert name to id for retention_inv_format.
199: IF ( p_retention_inv_format_id IS NOT NULL AND p_retention_inv_format_id <> FND_API.G_MISS_NUM ) OR
195: RAISE FND_API.G_EXC_ERROR;
196: END IF;
197:
198: --Validate and convert name to id for retention_inv_format.
199: IF ( p_retention_inv_format_id IS NOT NULL AND p_retention_inv_format_id <> FND_API.G_MISS_NUM ) OR
200: ( p_retention_inv_format_name IS NOT NULL AND p_retention_inv_format_name <> FND_API.G_MISS_CHAR )
201: THEN
202: if (p_debug_mode = 'Y') then
203: pa_debug.debug('Update rev and Billing Info PUB : Checking retention invoice format id');
196: END IF;
197:
198: --Validate and convert name to id for retention_inv_format.
199: IF ( p_retention_inv_format_id IS NOT NULL AND p_retention_inv_format_id <> FND_API.G_MISS_NUM ) OR
200: ( p_retention_inv_format_name IS NOT NULL AND p_retention_inv_format_name <> FND_API.G_MISS_CHAR )
201: THEN
202: if (p_debug_mode = 'Y') then
203: pa_debug.debug('Update rev and Billing Info PUB : Checking retention invoice format id');
204: end if;
209: ,x_retention_inv_format_id => l_retention_inv_format_id
210: ,x_return_status => l_return_status
211: ,x_error_msg_code => l_error_msg_code);
212:
213: IF l_return_status = FND_API.G_RET_STS_ERROR
214: THEN
215: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
216: p_msg_name => l_error_msg_code);
217: x_msg_data := l_error_msg_code;
234: null );
235: END IF;
236:
237: PA_BILLING_SETUP_PVT.update_revenue_and_billing(
238: p_commit => FND_API.G_FALSE,
239: p_validate_only => p_validate_only,
240: p_validation_level => p_validation_level,
241: p_calling_module => p_calling_module,
242: p_debug_mode => p_debug_mode,
272: If l_msg_count > 0 THEN
273: x_msg_count := l_msg_count;
274: If l_msg_count = 1 THEN
275: pa_interface_utils_pub.get_messages
276: (p_encoded => FND_API.G_TRUE ,
277: p_msg_index => 1,
278: p_msg_count => l_msg_count ,
279: p_msg_data => l_msg_data,
280: p_data => l_data,
280: p_data => l_data,
281: p_msg_index_out => l_msg_index_out );
282: x_msg_data := l_data;
283: End if;
284: RAISE FND_API.G_EXC_ERROR;
285: End if;
286:
287: IF FND_API.TO_BOOLEAN(P_COMMIT)
288: THEN
283: End if;
284: RAISE FND_API.G_EXC_ERROR;
285: End if;
286:
287: IF FND_API.TO_BOOLEAN(P_COMMIT)
288: THEN
289: COMMIT WORK;
290: END IF;
291:
289: COMMIT WORK;
290: END IF;
291:
292: EXCEPTION
293: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
294: IF p_commit = FND_API.G_TRUE
295: THEN
296: ROLLBACK TO revenue_and_billing;
297: END IF;
290: END IF;
291:
292: EXCEPTION
293: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
294: IF p_commit = FND_API.G_TRUE
295: THEN
296: ROLLBACK TO revenue_and_billing;
297: END IF;
298: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
294: IF p_commit = FND_API.G_TRUE
295: THEN
296: ROLLBACK TO revenue_and_billing;
297: END IF;
298: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
299: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
300: p_procedure_name => 'update_revenue_and_Billing',
301: p_error_text => SUBSTRB(SQLERRM,1,240));
302: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
298: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
299: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
300: p_procedure_name => 'update_revenue_and_Billing',
301: p_error_text => SUBSTRB(SQLERRM,1,240));
302: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
303:
304: WHEN FND_API.G_EXC_ERROR THEN
305: IF p_commit = FND_API.G_TRUE
306: THEN
300: p_procedure_name => 'update_revenue_and_Billing',
301: p_error_text => SUBSTRB(SQLERRM,1,240));
302: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
303:
304: WHEN FND_API.G_EXC_ERROR THEN
305: IF p_commit = FND_API.G_TRUE
306: THEN
307: ROLLBACK TO revenue_and_billing;
308: END IF;
301: p_error_text => SUBSTRB(SQLERRM,1,240));
302: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
303:
304: WHEN FND_API.G_EXC_ERROR THEN
305: IF p_commit = FND_API.G_TRUE
306: THEN
307: ROLLBACK TO revenue_and_billing;
308: END IF;
309: x_return_status := 'E';
308: END IF;
309: x_return_status := 'E';
310:
311: WHEN OTHERS THEN
312: IF p_commit = FND_API.G_TRUE
313: THEN
314: ROLLBACK TO revenue_and_billing;
315: END IF;
316: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
312: IF p_commit = FND_API.G_TRUE
313: THEN
314: ROLLBACK TO revenue_and_billing;
315: END IF;
316: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
317: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
318: p_procedure_name => 'update_revenue_and_Billing',
319: p_error_text => SUBSTRB(SQLERRM,1,240));
320: RAISE;
327: -- Pre-reqs : None
328: -- Return Value : N/A
329: -- Prameters
330: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
331: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
332: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
333: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
334: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
335: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
328: -- Return Value : N/A
329: -- Prameters
330: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
331: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
332: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
333: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
334: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
335: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
336: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
329: -- Prameters
330: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
331: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
332: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
333: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
334: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
335: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
336: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
337: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
330: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
331: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
332: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
333: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
334: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
335: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
336: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
337: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
338: -- p_project_id IN NUMBER REQUIRED
333: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
334: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
335: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
336: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
337: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
338: -- p_project_id IN NUMBER REQUIRED
339: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
340: -- p_credit_type IN VARCHAR2 REQUIRED
341: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
335: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
336: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
337: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
338: -- p_project_id IN NUMBER REQUIRED
339: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
340: -- p_credit_type IN VARCHAR2 REQUIRED
341: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
342: -- p_person_name IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CAHR
343: -- p_emp_number IN VARCHAR2 OPTIONAL DEFAULT FND_API.G_MISS_CHAR,
337: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
338: -- p_project_id IN NUMBER REQUIRED
339: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
340: -- p_credit_type IN VARCHAR2 REQUIRED
341: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
342: -- p_person_name IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CAHR
343: -- p_emp_number IN VARCHAR2 OPTIONAL DEFAULT FND_API.G_MISS_CHAR,
344: -- p_credit_percentage IN NUMBER REQUIRED
345: -- p_transfer_to_AR IN VARCHAR2 REQUIRED
338: -- p_project_id IN NUMBER REQUIRED
339: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
340: -- p_credit_type IN VARCHAR2 REQUIRED
341: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
342: -- p_person_name IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CAHR
343: -- p_emp_number IN VARCHAR2 OPTIONAL DEFAULT FND_API.G_MISS_CHAR,
344: -- p_credit_percentage IN NUMBER REQUIRED
345: -- p_transfer_to_AR IN VARCHAR2 REQUIRED
346: -- p_effective_from_date IN DATE REQUIRED
339: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
340: -- p_credit_type IN VARCHAR2 REQUIRED
341: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
342: -- p_person_name IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CAHR
343: -- p_emp_number IN VARCHAR2 OPTIONAL DEFAULT FND_API.G_MISS_CHAR,
344: -- p_credit_percentage IN NUMBER REQUIRED
345: -- p_transfer_to_AR IN VARCHAR2 REQUIRED
346: -- p_effective_from_date IN DATE REQUIRED
347: -- p_effective_to_date IN DATE OPTIONAL DEFAULT=FND_API.G_MISS_DATE
343: -- p_emp_number IN VARCHAR2 OPTIONAL DEFAULT FND_API.G_MISS_CHAR,
344: -- p_credit_percentage IN NUMBER REQUIRED
345: -- p_transfer_to_AR IN VARCHAR2 REQUIRED
346: -- p_effective_from_date IN DATE REQUIRED
347: -- p_effective_to_date IN DATE OPTIONAL DEFAULT=FND_API.G_MISS_DATE
348: -- x_credit_receiver_id OUT NUMBER REQUIRED
349: -- x_return_status OUT VARCHAR2 REQUIRED
350: -- x_msg_count OUT VARCHAR2 REQUIRED
351: -- x_msg_data OUT VARCHAR2 REQUIRED
357: --
358:
359: PROCEDURE create_credit_receivers(
360: p_api_version IN NUMBER DEFAULT 1.0,
361: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
362: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
363: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
364: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
365: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
358:
359: PROCEDURE create_credit_receivers(
360: p_api_version IN NUMBER DEFAULT 1.0,
361: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
362: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
363: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
364: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
365: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
366: p_debug_mode IN VARCHAR2 DEFAULT 'N',
359: PROCEDURE create_credit_receivers(
360: p_api_version IN NUMBER DEFAULT 1.0,
361: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
362: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
363: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
364: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
365: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
366: p_debug_mode IN VARCHAR2 DEFAULT 'N',
367: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
360: p_api_version IN NUMBER DEFAULT 1.0,
361: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
362: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
363: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
364: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
365: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
366: p_debug_mode IN VARCHAR2 DEFAULT 'N',
367: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
368: p_project_id IN NUMBER ,
363: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
364: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
365: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
366: p_debug_mode IN VARCHAR2 DEFAULT 'N',
367: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
368: p_project_id IN NUMBER ,
369: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
370: p_credit_type IN VARCHAR2 ,
371: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
365: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
366: p_debug_mode IN VARCHAR2 DEFAULT 'N',
367: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
368: p_project_id IN NUMBER ,
369: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
370: p_credit_type IN VARCHAR2 ,
371: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
372: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
373: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
367: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
368: p_project_id IN NUMBER ,
369: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
370: p_credit_type IN VARCHAR2 ,
371: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
372: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
373: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
374: p_credit_percentage IN NUMBER ,
375: p_transfer_to_AR IN VARCHAR2 ,
368: p_project_id IN NUMBER ,
369: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
370: p_credit_type IN VARCHAR2 ,
371: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
372: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
373: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
374: p_credit_percentage IN NUMBER ,
375: p_transfer_to_AR IN VARCHAR2 ,
376: p_effective_from_date IN DATE ,
369: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
370: p_credit_type IN VARCHAR2 ,
371: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
372: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
373: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
374: p_credit_percentage IN NUMBER ,
375: p_transfer_to_AR IN VARCHAR2 ,
376: p_effective_from_date IN DATE ,
377: p_effective_to_date IN DATE DEFAULT FND_API.G_MISS_DATE,
373: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
374: p_credit_percentage IN NUMBER ,
375: p_transfer_to_AR IN VARCHAR2 ,
376: p_effective_from_date IN DATE ,
377: p_effective_to_date IN DATE DEFAULT FND_API.G_MISS_DATE,
378: x_credit_receiver_id OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
379: x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
380: x_msg_count OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
381: x_msg_data OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
405: THEN
406: pa_debug.debug('Update Revenue and Bill Info PUB : Checking the api version number.');
407: END IF;
408:
409: IF p_commit = FND_API.G_TRUE
410: THEN
411: SAVEPOINT credit_receivers;
412: END IF;
413:
410: THEN
411: SAVEPOINT credit_receivers;
412: END IF;
413:
414: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
415: p_api_version,
416: l_api_name,
417: g_pkg_name)
418: THEN
415: p_api_version,
416: l_api_name,
417: g_pkg_name)
418: THEN
419: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
420: END IF;
421:
422: if (p_debug_mode = 'Y') then
423: pa_debug.debug('Update Revenue and Bill Info PUB : Initializing message stack.');
424: end if;
425:
426: pa_debug.init_err_stack('PA_BILLING_SETUP_PUB.update_revenue_and_billing');
427:
428: if FND_API.to_boolean(nvl(p_init_msg_list, FND_API.G_FALSE)) then
429: fnd_msg_pub.initialize;
430: end if;
431:
432: x_return_status := 'S';
430: end if;
431:
432: x_return_status := 'S';
433:
434: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
435: THEN
436: IF p_task_id = FND_API.G_MISS_NUM
437: THEN
438: l_task_id := null;
432: x_return_status := 'S';
433:
434: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
435: THEN
436: IF p_task_id = FND_API.G_MISS_NUM
437: THEN
438: l_task_id := null;
439: ELSE
440: l_task_id := p_task_id;
439: ELSE
440: l_task_id := p_task_id;
441: END IF;
442:
443: IF p_credit_percentage = FND_API.G_MISS_NUM
444: THEN
445: l_credit_percentage := null;
446: ELSE
447: l_credit_percentage := p_credit_percentage;
446: ELSE
447: l_credit_percentage := p_credit_percentage;
448: END IF;
449:
450: IF p_effective_to_date = FND_API.G_MISS_DATE
451: THEN
452: l_effective_to_date := null;
453: ELSE
454: l_effective_to_date := p_effective_to_date;
455: END IF;
456:
457:
458: --Validating employee or person id
459: IF ( p_person_id IS NOT NULL AND p_person_id <> FND_API.G_MISS_NUM ) OR
460: ( p_person_name IS NOT NULL AND p_person_name <> FND_API.G_MISS_CHAR ) OR
461: ( p_emp_number IS NOT NULL AND p_emp_number <> FND_API.G_MISS_CHAR )
462: THEN
463: if (p_debug_mode = 'Y') then
456:
457:
458: --Validating employee or person id
459: IF ( p_person_id IS NOT NULL AND p_person_id <> FND_API.G_MISS_NUM ) OR
460: ( p_person_name IS NOT NULL AND p_person_name <> FND_API.G_MISS_CHAR ) OR
461: ( p_emp_number IS NOT NULL AND p_emp_number <> FND_API.G_MISS_CHAR )
462: THEN
463: if (p_debug_mode = 'Y') then
464: pa_debug.debug('CREATE CREDIT RECEIVERS : Validating person id');
457:
458: --Validating employee or person id
459: IF ( p_person_id IS NOT NULL AND p_person_id <> FND_API.G_MISS_NUM ) OR
460: ( p_person_name IS NOT NULL AND p_person_name <> FND_API.G_MISS_CHAR ) OR
461: ( p_emp_number IS NOT NULL AND p_emp_number <> FND_API.G_MISS_CHAR )
462: THEN
463: if (p_debug_mode = 'Y') then
464: pa_debug.debug('CREATE CREDIT RECEIVERS : Validating person id');
465: end if;
479: ,x_person_id => l_person_id
480: ,x_return_status => l_return_status
481: ,x_error_msg_code => l_error_msg_code);
482:
483: IF l_return_status = FND_API.G_RET_STS_ERROR
484: THEN
485: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
486: p_msg_name => l_error_msg_code);
487: x_msg_data := l_error_msg_code;
485: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
486: p_msg_name => l_error_msg_code);
487: x_msg_data := l_error_msg_code;
488: x_return_status := 'E';
489: RAISE FND_API.G_EXC_ERROR;
490: END IF;
491: END IF;
492:
493: PA_BILLING_SETUP_PVT.create_credit_receivers(
490: END IF;
491: END IF;
492:
493: PA_BILLING_SETUP_PVT.create_credit_receivers(
494: p_commit => FND_API.G_FALSE,
495: p_validate_only => p_validate_only,
496: p_validation_level => p_validation_level,
497: p_calling_module => p_calling_module,
498: p_debug_mode => p_debug_mode,
519: If l_msg_count > 0 THEN
520: x_msg_count := l_msg_count;
521: If l_msg_count = 1 THEN
522: pa_interface_utils_pub.get_messages
523: (p_encoded => FND_API.G_TRUE ,
524: p_msg_index => 1,
525: p_msg_count => l_msg_count ,
526: p_msg_data => l_msg_data,
527: p_data => l_data,
527: p_data => l_data,
528: p_msg_index_out => l_msg_index_out );
529: x_msg_data := l_data;
530: End if;
531: RAISE FND_API.G_EXC_ERROR;
532: End if;
533:
534: IF FND_API.TO_BOOLEAN(P_COMMIT)
535: THEN
530: End if;
531: RAISE FND_API.G_EXC_ERROR;
532: End if;
533:
534: IF FND_API.TO_BOOLEAN(P_COMMIT)
535: THEN
536: COMMIT WORK;
537: END IF;
538:
536: COMMIT WORK;
537: END IF;
538:
539: EXCEPTION
540: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
541: IF p_commit = FND_API.G_TRUE
542: THEN
543: ROLLBACK TO credit_receivers;
544: END IF;
537: END IF;
538:
539: EXCEPTION
540: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
541: IF p_commit = FND_API.G_TRUE
542: THEN
543: ROLLBACK TO credit_receivers;
544: END IF;
545: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
541: IF p_commit = FND_API.G_TRUE
542: THEN
543: ROLLBACK TO credit_receivers;
544: END IF;
545: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
546: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
547: p_procedure_name => 'CREATE_CREDIT_RECEIVERS',
548: p_error_text => SUBSTRB(SQLERRM,1,240));
549: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
545: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
546: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
547: p_procedure_name => 'CREATE_CREDIT_RECEIVERS',
548: p_error_text => SUBSTRB(SQLERRM,1,240));
549: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
550:
551: x_credit_receiver_id := null;
552:
553: WHEN FND_API.G_EXC_ERROR THEN
549: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
550:
551: x_credit_receiver_id := null;
552:
553: WHEN FND_API.G_EXC_ERROR THEN
554: IF p_commit = FND_API.G_TRUE
555: THEN
556: ROLLBACK TO credit_receivers;
557: END IF;
550:
551: x_credit_receiver_id := null;
552:
553: WHEN FND_API.G_EXC_ERROR THEN
554: IF p_commit = FND_API.G_TRUE
555: THEN
556: ROLLBACK TO credit_receivers;
557: END IF;
558: x_return_status := 'E';
559:
560: x_credit_receiver_id := null;
561:
562: WHEN OTHERS THEN
563: IF p_commit = FND_API.G_TRUE
564: THEN
565: ROLLBACK TO credit_receivers;
566: END IF;
567: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
563: IF p_commit = FND_API.G_TRUE
564: THEN
565: ROLLBACK TO credit_receivers;
566: END IF;
567: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
568: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
569: p_procedure_name => 'CREATE_CREDIT_RECEIVERS',
570: p_error_text => SUBSTRB(SQLERRM,1,240));
571:
579: -- Pre-reqs : None
580: -- Return Value : N/A
581: -- Prameters
582: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
583: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
584: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
585: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
586: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
587: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
580: -- Return Value : N/A
581: -- Prameters
582: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
583: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
584: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
585: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
586: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
587: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
588: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
581: -- Prameters
582: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
583: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
584: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
585: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
586: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
587: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
588: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
589: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
582: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
583: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
584: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
585: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
586: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
587: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
588: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
589: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
590: -- p_credit_receiver_id IN NUMBER REQUIRED
585: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
586: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
587: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
588: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
589: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
590: -- p_credit_receiver_id IN NUMBER REQUIRED
591: -- p_project_id IN NUMBER REQUIRED
592: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
593: -- p_credit_type IN VARCHAR2 REQUIRED
588: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
589: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
590: -- p_credit_receiver_id IN NUMBER REQUIRED
591: -- p_project_id IN NUMBER REQUIRED
592: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
593: -- p_credit_type IN VARCHAR2 REQUIRED
594: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
595: -- p_person_name IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CAHR
596: -- p_emp_number IN VARCHAR2 OPTIONAL DEFAULT FND_API.G_MISS_CHAR,
590: -- p_credit_receiver_id IN NUMBER REQUIRED
591: -- p_project_id IN NUMBER REQUIRED
592: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
593: -- p_credit_type IN VARCHAR2 REQUIRED
594: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
595: -- p_person_name IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CAHR
596: -- p_emp_number IN VARCHAR2 OPTIONAL DEFAULT FND_API.G_MISS_CHAR,
597: -- p_credit_percentage IN NUMBER REQUIRED
598: -- p_transfer_to_AR IN VARCHAR2 REQUIRED
591: -- p_project_id IN NUMBER REQUIRED
592: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
593: -- p_credit_type IN VARCHAR2 REQUIRED
594: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
595: -- p_person_name IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CAHR
596: -- p_emp_number IN VARCHAR2 OPTIONAL DEFAULT FND_API.G_MISS_CHAR,
597: -- p_credit_percentage IN NUMBER REQUIRED
598: -- p_transfer_to_AR IN VARCHAR2 REQUIRED
599: -- p_effective_from_date IN DATE REQUIRED
592: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
593: -- p_credit_type IN VARCHAR2 REQUIRED
594: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
595: -- p_person_name IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CAHR
596: -- p_emp_number IN VARCHAR2 OPTIONAL DEFAULT FND_API.G_MISS_CHAR,
597: -- p_credit_percentage IN NUMBER REQUIRED
598: -- p_transfer_to_AR IN VARCHAR2 REQUIRED
599: -- p_effective_from_date IN DATE REQUIRED
600: -- p_effective_to_date IN DATE OPTIONAL DEFAULT=FND_API.G_MISS_DATE
596: -- p_emp_number IN VARCHAR2 OPTIONAL DEFAULT FND_API.G_MISS_CHAR,
597: -- p_credit_percentage IN NUMBER REQUIRED
598: -- p_transfer_to_AR IN VARCHAR2 REQUIRED
599: -- p_effective_from_date IN DATE REQUIRED
600: -- p_effective_to_date IN DATE OPTIONAL DEFAULT=FND_API.G_MISS_DATE
601: -- p_record_version_number IN NUMBER REQUIRED DEFAULT=1
602: -- x_return_status OUT VARCHAR2 REQUIRED
603: -- x_msg_count OUT VARCHAR2 REQUIRED
604: -- x_msg_data OUT VARCHAR2 REQUIRED
610: --
611:
612: PROCEDURE update_credit_receivers(
613: p_api_version IN NUMBER DEFAULT 1.0,
614: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
615: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
616: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
617: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
618: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
611:
612: PROCEDURE update_credit_receivers(
613: p_api_version IN NUMBER DEFAULT 1.0,
614: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
615: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
616: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
617: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
618: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
619: p_debug_mode IN VARCHAR2 DEFAULT 'N',
612: PROCEDURE update_credit_receivers(
613: p_api_version IN NUMBER DEFAULT 1.0,
614: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
615: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
616: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
617: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
618: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
619: p_debug_mode IN VARCHAR2 DEFAULT 'N',
620: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
613: p_api_version IN NUMBER DEFAULT 1.0,
614: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
615: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
616: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
617: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
618: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
619: p_debug_mode IN VARCHAR2 DEFAULT 'N',
620: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
621: p_credit_receiver_id IN NUMBER,
616: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
617: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
618: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
619: p_debug_mode IN VARCHAR2 DEFAULT 'N',
620: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
621: p_credit_receiver_id IN NUMBER,
622: p_project_id IN NUMBER ,
623: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
624: p_credit_type IN VARCHAR2 ,
619: p_debug_mode IN VARCHAR2 DEFAULT 'N',
620: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
621: p_credit_receiver_id IN NUMBER,
622: p_project_id IN NUMBER ,
623: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
624: p_credit_type IN VARCHAR2 ,
625: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
626: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
627: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
621: p_credit_receiver_id IN NUMBER,
622: p_project_id IN NUMBER ,
623: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
624: p_credit_type IN VARCHAR2 ,
625: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
626: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
627: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
628: p_credit_percentage IN NUMBER DEFAULT FND_API.G_MISS_NUM,
629: p_transfer_to_AR IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
622: p_project_id IN NUMBER ,
623: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
624: p_credit_type IN VARCHAR2 ,
625: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
626: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
627: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
628: p_credit_percentage IN NUMBER DEFAULT FND_API.G_MISS_NUM,
629: p_transfer_to_AR IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
630: p_effective_from_date IN DATE ,
623: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
624: p_credit_type IN VARCHAR2 ,
625: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
626: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
627: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
628: p_credit_percentage IN NUMBER DEFAULT FND_API.G_MISS_NUM,
629: p_transfer_to_AR IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
630: p_effective_from_date IN DATE ,
631: p_effective_to_date IN DATE DEFAULT FND_API.G_MISS_DATE,
624: p_credit_type IN VARCHAR2 ,
625: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
626: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
627: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
628: p_credit_percentage IN NUMBER DEFAULT FND_API.G_MISS_NUM,
629: p_transfer_to_AR IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
630: p_effective_from_date IN DATE ,
631: p_effective_to_date IN DATE DEFAULT FND_API.G_MISS_DATE,
632: p_record_version_number IN NUMBER DEFAULT 1,
625: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
626: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
627: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
628: p_credit_percentage IN NUMBER DEFAULT FND_API.G_MISS_NUM,
629: p_transfer_to_AR IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
630: p_effective_from_date IN DATE ,
631: p_effective_to_date IN DATE DEFAULT FND_API.G_MISS_DATE,
632: p_record_version_number IN NUMBER DEFAULT 1,
633: x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
627: p_emp_number IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
628: p_credit_percentage IN NUMBER DEFAULT FND_API.G_MISS_NUM,
629: p_transfer_to_AR IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
630: p_effective_from_date IN DATE ,
631: p_effective_to_date IN DATE DEFAULT FND_API.G_MISS_DATE,
632: p_record_version_number IN NUMBER DEFAULT 1,
633: x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
634: x_msg_count OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
635: x_msg_data OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
658: THEN
659: pa_debug.debug('Update credit receivers PUB : Checking the api version number.');
660: END IF;
661:
662: IF p_commit = FND_API.G_TRUE
663: THEN
664: SAVEPOINT credit_receivers;
665: END IF;
666:
663: THEN
664: SAVEPOINT credit_receivers;
665: END IF;
666:
667: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
668: p_api_version,
669: l_api_name,
670: g_pkg_name)
671: THEN
668: p_api_version,
669: l_api_name,
670: g_pkg_name)
671: THEN
672: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
673: END IF;
674:
675: if (p_debug_mode = 'Y') then
676: pa_debug.debug('Update credit receivers PUB : Initializing message stack.');
677: end if;
678:
679: pa_debug.init_err_stack('PA_BILLING_SETUP_PUB.update_credit receivers');
680:
681: if FND_API.to_boolean(nvl(p_init_msg_list, FND_API.G_FALSE)) then
682: fnd_msg_pub.initialize;
683: end if;
684:
685: x_return_status := 'S';
683: end if;
684:
685: x_return_status := 'S';
686:
687: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
688: THEN
689: IF p_task_id = FND_API.G_MISS_NUM
690: THEN
691: l_task_id := null;
685: x_return_status := 'S';
686:
687: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
688: THEN
689: IF p_task_id = FND_API.G_MISS_NUM
690: THEN
691: l_task_id := null;
692: ELSE
693: l_task_id := p_task_id;
692: ELSE
693: l_task_id := p_task_id;
694: END IF;
695:
696: IF p_credit_percentage = FND_API.G_MISS_NUM
697: THEN
698: l_credit_percentage := null;
699: ELSE
700: l_credit_percentage := p_credit_percentage;
699: ELSE
700: l_credit_percentage := p_credit_percentage;
701: END IF;
702:
703: IF p_effective_to_date = FND_API.G_MISS_DATE
704: THEN
705: l_effective_to_date := null;
706: ELSE
707: l_effective_to_date := p_effective_to_date;
708: END IF;
709:
710:
711: --Validating employee or person id
712: IF ( p_person_id IS NOT NULL AND p_person_id <> FND_API.G_MISS_NUM ) OR
713: ( p_person_name IS NOT NULL AND p_person_name <> FND_API.G_MISS_CHAR ) OR
714: ( p_emp_number IS NOT NULL AND p_emp_number <> FND_API.G_MISS_CHAR )
715: THEN
716: if (p_debug_mode = 'Y') then
709:
710:
711: --Validating employee or person id
712: IF ( p_person_id IS NOT NULL AND p_person_id <> FND_API.G_MISS_NUM ) OR
713: ( p_person_name IS NOT NULL AND p_person_name <> FND_API.G_MISS_CHAR ) OR
714: ( p_emp_number IS NOT NULL AND p_emp_number <> FND_API.G_MISS_CHAR )
715: THEN
716: if (p_debug_mode = 'Y') then
717: pa_debug.debug('UPDATE CREDIT RECEIVERS : Validating person id');
710:
711: --Validating employee or person id
712: IF ( p_person_id IS NOT NULL AND p_person_id <> FND_API.G_MISS_NUM ) OR
713: ( p_person_name IS NOT NULL AND p_person_name <> FND_API.G_MISS_CHAR ) OR
714: ( p_emp_number IS NOT NULL AND p_emp_number <> FND_API.G_MISS_CHAR )
715: THEN
716: if (p_debug_mode = 'Y') then
717: pa_debug.debug('UPDATE CREDIT RECEIVERS : Validating person id');
718: end if;
732: ,x_person_id => l_person_id
733: ,x_return_status => l_return_status
734: ,x_error_msg_code => l_error_msg_code);
735:
736: IF l_return_status = FND_API.G_RET_STS_ERROR
737: THEN
738: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
739: p_msg_name => l_error_msg_code);
740: x_msg_data := l_error_msg_code;
738: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
739: p_msg_name => l_error_msg_code);
740: x_msg_data := l_error_msg_code;
741: x_return_status := 'E';
742: RAISE FND_API.G_EXC_ERROR;
743: END IF;
744: END IF;
745:
746: PA_BILLING_SETUP_PVT.update_credit_receivers(
743: END IF;
744: END IF;
745:
746: PA_BILLING_SETUP_PVT.update_credit_receivers(
747: p_commit => FND_API.G_FALSE,
748: p_validate_only => p_validate_only,
749: p_validation_level => p_validation_level,
750: p_calling_module => p_calling_module,
751: p_debug_mode => p_debug_mode,
774: If l_msg_count > 0 THEN
775: x_msg_count := l_msg_count;
776: If l_msg_count = 1 THEN
777: pa_interface_utils_pub.get_messages
778: (p_encoded => FND_API.G_TRUE ,
779: p_msg_index => 1,
780: p_msg_count => l_msg_count ,
781: p_msg_data => l_msg_data,
782: p_data => l_data,
782: p_data => l_data,
783: p_msg_index_out => l_msg_index_out );
784: x_msg_data := l_data;
785: End if;
786: RAISE FND_API.G_EXC_ERROR;
787: End if;
788:
789: IF FND_API.TO_BOOLEAN(P_COMMIT)
790: THEN
785: End if;
786: RAISE FND_API.G_EXC_ERROR;
787: End if;
788:
789: IF FND_API.TO_BOOLEAN(P_COMMIT)
790: THEN
791: COMMIT WORK;
792: END IF;
793:
791: COMMIT WORK;
792: END IF;
793:
794: EXCEPTION
795: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
796: IF p_commit = FND_API.G_TRUE
797: THEN
798: ROLLBACK TO credit_receivers;
799: END IF;
792: END IF;
793:
794: EXCEPTION
795: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
796: IF p_commit = FND_API.G_TRUE
797: THEN
798: ROLLBACK TO credit_receivers;
799: END IF;
800: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
796: IF p_commit = FND_API.G_TRUE
797: THEN
798: ROLLBACK TO credit_receivers;
799: END IF;
800: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
801: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
802: p_procedure_name => 'UPDATE_CREDIT_RECEIVERS',
803: p_error_text => SUBSTRB(SQLERRM,1,240));
804: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
800: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
801: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
802: p_procedure_name => 'UPDATE_CREDIT_RECEIVERS',
803: p_error_text => SUBSTRB(SQLERRM,1,240));
804: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
805:
806: WHEN FND_API.G_EXC_ERROR THEN
807: IF p_commit = FND_API.G_TRUE
808: THEN
802: p_procedure_name => 'UPDATE_CREDIT_RECEIVERS',
803: p_error_text => SUBSTRB(SQLERRM,1,240));
804: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
805:
806: WHEN FND_API.G_EXC_ERROR THEN
807: IF p_commit = FND_API.G_TRUE
808: THEN
809: ROLLBACK TO credit_receivers;
810: END IF;
803: p_error_text => SUBSTRB(SQLERRM,1,240));
804: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
805:
806: WHEN FND_API.G_EXC_ERROR THEN
807: IF p_commit = FND_API.G_TRUE
808: THEN
809: ROLLBACK TO credit_receivers;
810: END IF;
811: x_return_status := 'E';
810: END IF;
811: x_return_status := 'E';
812:
813: WHEN OTHERS THEN
814: IF p_commit = FND_API.G_TRUE
815: THEN
816: ROLLBACK TO credit_receivers;
817: END IF;
818: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
814: IF p_commit = FND_API.G_TRUE
815: THEN
816: ROLLBACK TO credit_receivers;
817: END IF;
818: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
819: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
820: p_procedure_name => 'UPDATE_CREDIT_RECEIVERS',
821: p_error_text => SUBSTRB(SQLERRM,1,240));
822: RAISE;
830: -- Pre-reqs : None
831: -- Return Value : N/A
832: -- Prameters
833: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
834: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
835: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
836: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
837: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
838: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
831: -- Return Value : N/A
832: -- Prameters
833: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
834: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
835: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
836: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
837: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
838: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
839: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
832: -- Prameters
833: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
834: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
835: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
836: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
837: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
838: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
839: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
840: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
833: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
834: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
835: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
836: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
837: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
838: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
839: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
840: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
841: -- p_credit_receiver_id IN NUMBER REQUIRED
836: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
837: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
838: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
839: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
840: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
841: -- p_credit_receiver_id IN NUMBER REQUIRED
842: -- p_project_id IN NUMBER REQUIRED
843: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
844: -- p_credit_type IN VARCHAR2 REQUIRED
839: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
840: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
841: -- p_credit_receiver_id IN NUMBER REQUIRED
842: -- p_project_id IN NUMBER REQUIRED
843: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
844: -- p_credit_type IN VARCHAR2 REQUIRED
845: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
846: -- p_person_name IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CAHR
847: -- p_effective_from_date IN DATE REQUIRED
841: -- p_credit_receiver_id IN NUMBER REQUIRED
842: -- p_project_id IN NUMBER REQUIRED
843: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
844: -- p_credit_type IN VARCHAR2 REQUIRED
845: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
846: -- p_person_name IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CAHR
847: -- p_effective_from_date IN DATE REQUIRED
848: -- p_record_version_number IN NUMBER REQUIRED DEFAULT=1
849: -- x_return_status OUT VARCHAR2 REQUIRED
842: -- p_project_id IN NUMBER REQUIRED
843: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
844: -- p_credit_type IN VARCHAR2 REQUIRED
845: -- p_person_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
846: -- p_person_name IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CAHR
847: -- p_effective_from_date IN DATE REQUIRED
848: -- p_record_version_number IN NUMBER REQUIRED DEFAULT=1
849: -- x_return_status OUT VARCHAR2 REQUIRED
850: -- x_msg_count OUT VARCHAR2 REQUIRED
857: --
858:
859: PROCEDURE delete_credit_receivers(
860: p_api_version IN NUMBER DEFAULT 1.0,
861: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
862: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
863: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
864: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
865: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
858:
859: PROCEDURE delete_credit_receivers(
860: p_api_version IN NUMBER DEFAULT 1.0,
861: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
862: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
863: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
864: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
865: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
866: p_debug_mode IN VARCHAR2 DEFAULT 'N',
859: PROCEDURE delete_credit_receivers(
860: p_api_version IN NUMBER DEFAULT 1.0,
861: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
862: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
863: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
864: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
865: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
866: p_debug_mode IN VARCHAR2 DEFAULT 'N',
867: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
860: p_api_version IN NUMBER DEFAULT 1.0,
861: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
862: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
863: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
864: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
865: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
866: p_debug_mode IN VARCHAR2 DEFAULT 'N',
867: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
868: p_credit_receiver_id IN NUMBER,
863: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
864: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
865: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
866: p_debug_mode IN VARCHAR2 DEFAULT 'N',
867: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
868: p_credit_receiver_id IN NUMBER,
869: p_project_id IN NUMBER ,
870: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
871: p_credit_type IN VARCHAR2 ,
866: p_debug_mode IN VARCHAR2 DEFAULT 'N',
867: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
868: p_credit_receiver_id IN NUMBER,
869: p_project_id IN NUMBER ,
870: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
871: p_credit_type IN VARCHAR2 ,
872: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
873: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
874: p_effective_from_date IN DATE ,
868: p_credit_receiver_id IN NUMBER,
869: p_project_id IN NUMBER ,
870: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
871: p_credit_type IN VARCHAR2 ,
872: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
873: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
874: p_effective_from_date IN DATE ,
875: p_record_version_number IN NUMBER DEFAULT 1,
876: x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
869: p_project_id IN NUMBER ,
870: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
871: p_credit_type IN VARCHAR2 ,
872: p_person_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
873: p_person_name IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
874: p_effective_from_date IN DATE ,
875: p_record_version_number IN NUMBER DEFAULT 1,
876: x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
877: x_msg_count OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
900: THEN
901: pa_debug.debug('Delete credit receivers PUB : Checking the api version number.');
902: END IF;
903:
904: IF p_commit = FND_API.G_TRUE
905: THEN
906: SAVEPOINT credit_receivers;
907: END IF;
908:
905: THEN
906: SAVEPOINT credit_receivers;
907: END IF;
908:
909: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
910: p_api_version,
911: l_api_name,
912: g_pkg_name)
913: THEN
910: p_api_version,
911: l_api_name,
912: g_pkg_name)
913: THEN
914: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
915: END IF;
916:
917: if (p_debug_mode = 'Y') then
918: pa_debug.debug('Delete credit receivers PUB : Initializing message stack.');
919: end if;
920:
921: pa_debug.init_err_stack('PA_BILLING_SETUP_PUB.Delete_credit receivers');
922:
923: if FND_API.to_boolean(nvl(p_init_msg_list, FND_API.G_FALSE)) then
924: fnd_msg_pub.initialize;
925: end if;
926:
927: x_return_status := 'S';
925: end if;
926:
927: x_return_status := 'S';
928:
929: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
930: THEN
931: IF p_task_id = FND_API.G_MISS_NUM
932: THEN
933: l_task_id := null;
927: x_return_status := 'S';
928:
929: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
930: THEN
931: IF p_task_id = FND_API.G_MISS_NUM
932: THEN
933: l_task_id := null;
934: ELSE
935: l_task_id := p_task_id;
936: END IF;
937:
938:
939: --Validating employee or person id
940: IF ( p_person_id IS NOT NULL AND p_person_id <> FND_API.G_MISS_NUM ) OR
941: ( p_person_name IS NOT NULL AND p_person_name <> FND_API.G_MISS_CHAR )
942: THEN
943: if (p_debug_mode = 'Y') then
944: pa_debug.debug('UPDATE CREDIT RECEIVERS : Validating person id');
937:
938:
939: --Validating employee or person id
940: IF ( p_person_id IS NOT NULL AND p_person_id <> FND_API.G_MISS_NUM ) OR
941: ( p_person_name IS NOT NULL AND p_person_name <> FND_API.G_MISS_CHAR )
942: THEN
943: if (p_debug_mode = 'Y') then
944: pa_debug.debug('UPDATE CREDIT RECEIVERS : Validating person id');
945: end if;
950: ,x_person_id => l_person_id
951: ,x_return_status => l_return_status
952: ,x_error_msg_code => l_error_msg_code);
953:
954: IF l_return_status = FND_API.G_RET_STS_ERROR
955: THEN
956: PA_UTILS.ADD_MESSAGE(p_app_short_name => 'PA',
957: p_msg_name => l_error_msg_code);
958: x_msg_data := l_error_msg_code;
960: END IF;
961: END IF;
962:
963: PA_BILLING_SETUP_PVT.delete_credit_receivers(
964: p_commit => FND_API.G_FALSE,
965: p_validate_only => p_validate_only,
966: p_validation_level => p_validation_level,
967: p_calling_module => p_calling_module,
968: p_debug_mode => p_debug_mode,
987: If l_msg_count > 0 THEN
988: x_msg_count := l_msg_count;
989: If l_msg_count = 1 THEN
990: pa_interface_utils_pub.get_messages
991: (p_encoded => FND_API.G_TRUE ,
992: p_msg_index => 1,
993: p_msg_count => l_msg_count ,
994: p_msg_data => l_msg_data,
995: p_data => l_data,
995: p_data => l_data,
996: p_msg_index_out => l_msg_index_out );
997: x_msg_data := l_data;
998: End if;
999: RAISE FND_API.G_EXC_ERROR;
1000: End if;
1001:
1002: IF FND_API.TO_BOOLEAN(P_COMMIT)
1003: THEN
998: End if;
999: RAISE FND_API.G_EXC_ERROR;
1000: End if;
1001:
1002: IF FND_API.TO_BOOLEAN(P_COMMIT)
1003: THEN
1004: COMMIT WORK;
1005: END IF;
1006:
1004: COMMIT WORK;
1005: END IF;
1006:
1007: EXCEPTION
1008: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1009: IF p_commit = FND_API.G_TRUE
1010: THEN
1011: ROLLBACK TO credit_receivers;
1012: END IF;
1005: END IF;
1006:
1007: EXCEPTION
1008: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1009: IF p_commit = FND_API.G_TRUE
1010: THEN
1011: ROLLBACK TO credit_receivers;
1012: END IF;
1013: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1009: IF p_commit = FND_API.G_TRUE
1010: THEN
1011: ROLLBACK TO credit_receivers;
1012: END IF;
1013: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1014: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1015: p_procedure_name => 'DELETE_CREDIT_RECEIVERS',
1016: p_error_text => SUBSTRB(SQLERRM,1,240));
1017: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1013: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1014: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1015: p_procedure_name => 'DELETE_CREDIT_RECEIVERS',
1016: p_error_text => SUBSTRB(SQLERRM,1,240));
1017: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1018:
1019: WHEN FND_API.G_EXC_ERROR THEN
1020: IF p_commit = FND_API.G_TRUE
1021: THEN
1015: p_procedure_name => 'DELETE_CREDIT_RECEIVERS',
1016: p_error_text => SUBSTRB(SQLERRM,1,240));
1017: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1018:
1019: WHEN FND_API.G_EXC_ERROR THEN
1020: IF p_commit = FND_API.G_TRUE
1021: THEN
1022: ROLLBACK TO credit_receivers;
1023: END IF;
1016: p_error_text => SUBSTRB(SQLERRM,1,240));
1017: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1018:
1019: WHEN FND_API.G_EXC_ERROR THEN
1020: IF p_commit = FND_API.G_TRUE
1021: THEN
1022: ROLLBACK TO credit_receivers;
1023: END IF;
1024: x_return_status := 'E';
1023: END IF;
1024: x_return_status := 'E';
1025:
1026: WHEN OTHERS THEN
1027: IF p_commit = FND_API.G_TRUE
1028: THEN
1029: ROLLBACK TO credit_receivers;
1030: END IF;
1031: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1027: IF p_commit = FND_API.G_TRUE
1028: THEN
1029: ROLLBACK TO credit_receivers;
1030: END IF;
1031: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1032: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1033: p_procedure_name => 'DELETE_CREDIT_RECEIVERS',
1034: p_error_text => SUBSTRB(SQLERRM,1,240));
1035: RAISE;
1040: -- Pre-reqs : None
1041: -- Return Value : N/A
1042: -- Prameters
1043: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1044: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1045: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1046: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1047: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1048: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1041: -- Return Value : N/A
1042: -- Prameters
1043: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1044: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1045: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1046: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1047: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1048: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1049: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1042: -- Prameters
1043: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1044: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1045: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1046: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1047: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1048: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1049: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1050: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1043: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1044: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1045: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1046: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1047: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1048: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1049: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1050: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1051: -- p_project_id IN NUMBER REQUIRED
1046: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1047: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1048: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1049: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1050: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1051: -- p_project_id IN NUMBER REQUIRED
1052: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1053: -- p_billing_extension_id IN NUMBER REQUIRED
1054: -- p_amount IN NUMBER REQUIRED
1048: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1049: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1050: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1051: -- p_project_id IN NUMBER REQUIRED
1052: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1053: -- p_billing_extension_id IN NUMBER REQUIRED
1054: -- p_amount IN NUMBER REQUIRED
1055: -- p_percent IN NUMBER REQUIRED
1056: -- p_active IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CHAR
1052: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1053: -- p_billing_extension_id IN NUMBER REQUIRED
1054: -- p_amount IN NUMBER REQUIRED
1055: -- p_percent IN NUMBER REQUIRED
1056: -- p_active IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CHAR
1057: -- x_billing_assignment_id OUT NUMBER REQUIRED
1058: -- x_return_status OUT VARCHAR2 REQUIRED
1059: -- x_msg_count OUT VARCHAR2 REQUIRED
1060: -- x_msg_data OUT VARCHAR2 REQUIRED
1066: --
1067:
1068: PROCEDURE create_billing_assignments(
1069: p_api_version IN NUMBER DEFAULT 1.0,
1070: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1071: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1072: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1073: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1074: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1067:
1068: PROCEDURE create_billing_assignments(
1069: p_api_version IN NUMBER DEFAULT 1.0,
1070: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1071: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1072: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1073: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1074: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1075: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1068: PROCEDURE create_billing_assignments(
1069: p_api_version IN NUMBER DEFAULT 1.0,
1070: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1071: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1072: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1073: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1074: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1075: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1076: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1069: p_api_version IN NUMBER DEFAULT 1.0,
1070: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1071: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1072: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1073: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1074: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1075: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1076: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1077: p_project_id IN NUMBER ,
1072: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1073: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1074: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1075: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1076: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1077: p_project_id IN NUMBER ,
1078: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1079: p_billing_extension_id IN NUMBER ,
1080: p_amount IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1074: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1075: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1076: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1077: p_project_id IN NUMBER ,
1078: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1079: p_billing_extension_id IN NUMBER ,
1080: p_amount IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1081: p_percent IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1082: p_active IN VARCHAR2 ,
1076: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1077: p_project_id IN NUMBER ,
1078: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1079: p_billing_extension_id IN NUMBER ,
1080: p_amount IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1081: p_percent IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1082: p_active IN VARCHAR2 ,
1083: x_billing_assignment_id OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
1084: x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
1077: p_project_id IN NUMBER ,
1078: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1079: p_billing_extension_id IN NUMBER ,
1080: p_amount IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1081: p_percent IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1082: p_active IN VARCHAR2 ,
1083: x_billing_assignment_id OUT NOCOPY NUMBER, --File.Sql.39 bug 4440895
1084: x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
1085: x_msg_count OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
1109: THEN
1110: pa_debug.debug('create_billing_assignments PUB : Checking the api version number.');
1111: END IF;
1112:
1113: IF p_commit = FND_API.G_TRUE
1114: THEN
1115: SAVEPOINT billing_assignments;
1116: END IF;
1117:
1114: THEN
1115: SAVEPOINT billing_assignments;
1116: END IF;
1117:
1118: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
1119: p_api_version,
1120: l_api_name,
1121: g_pkg_name)
1122: THEN
1119: p_api_version,
1120: l_api_name,
1121: g_pkg_name)
1122: THEN
1123: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1124: END IF;
1125:
1126: if (p_debug_mode = 'Y') then
1127: pa_debug.debug('create_billing_assignments PUB : Initializing message stack.');
1128: end if;
1129:
1130: pa_debug.init_err_stack('PA_BILLING_SETUP_PUB.create_billing_assignments');
1131:
1132: if FND_API.to_boolean(nvl(p_init_msg_list, FND_API.G_FALSE)) then
1133: fnd_msg_pub.initialize;
1134: end if;
1135:
1136: x_return_status := 'S';
1134: end if;
1135:
1136: x_return_status := 'S';
1137:
1138: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
1139: THEN
1140: IF p_task_id = FND_API.G_MISS_NUM
1141: THEN
1142: l_task_id := null;
1136: x_return_status := 'S';
1137:
1138: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
1139: THEN
1140: IF p_task_id = FND_API.G_MISS_NUM
1141: THEN
1142: l_task_id := null;
1143: ELSE
1144: l_task_id := p_task_id;
1143: ELSE
1144: l_task_id := p_task_id;
1145: END IF;
1146:
1147: IF p_amount = FND_API.G_MISS_NUM
1148: THEN
1149: l_amount := null;
1150: ELSE
1151: l_amount := p_amount;
1150: ELSE
1151: l_amount := p_amount;
1152: END IF;
1153:
1154: IF p_percent = FND_API.G_MISS_NUM
1155: THEN
1156: l_percent := null;
1157: ELSE
1158: l_percent := p_percent;
1158: l_percent := p_percent;
1159: END IF;
1160:
1161: PA_BILLING_SETUP_PVT.create_billing_assignments(
1162: p_commit => FND_API.G_FALSE,
1163: p_validate_only => p_validate_only,
1164: p_validation_level => p_validation_level,
1165: p_calling_module => p_calling_module,
1166: p_debug_mode => p_debug_mode,
1185: If l_msg_count > 0 THEN
1186: x_msg_count := l_msg_count;
1187: If l_msg_count = 1 THEN
1188: pa_interface_utils_pub.get_messages
1189: (p_encoded => FND_API.G_TRUE ,
1190: p_msg_index => 1,
1191: p_msg_count => l_msg_count ,
1192: p_msg_data => l_msg_data,
1193: p_data => l_data,
1193: p_data => l_data,
1194: p_msg_index_out => l_msg_index_out );
1195: x_msg_data := l_data;
1196: End if;
1197: RAISE FND_API.G_EXC_ERROR;
1198: End if;
1199:
1200: IF FND_API.TO_BOOLEAN(P_COMMIT)
1201: THEN
1196: End if;
1197: RAISE FND_API.G_EXC_ERROR;
1198: End if;
1199:
1200: IF FND_API.TO_BOOLEAN(P_COMMIT)
1201: THEN
1202: COMMIT WORK;
1203: END IF;
1204:
1202: COMMIT WORK;
1203: END IF;
1204:
1205: EXCEPTION
1206: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1207: IF p_commit = FND_API.G_TRUE
1208: THEN
1209: ROLLBACK TO billing_assignments;
1210: END IF;
1203: END IF;
1204:
1205: EXCEPTION
1206: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1207: IF p_commit = FND_API.G_TRUE
1208: THEN
1209: ROLLBACK TO billing_assignments;
1210: END IF;
1211: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1207: IF p_commit = FND_API.G_TRUE
1208: THEN
1209: ROLLBACK TO billing_assignments;
1210: END IF;
1211: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1212: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1213: p_procedure_name => 'create_billing_assignments',
1214: p_error_text => SUBSTRB(SQLERRM,1,240));
1215: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1211: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1212: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1213: p_procedure_name => 'create_billing_assignments',
1214: p_error_text => SUBSTRB(SQLERRM,1,240));
1215: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1216:
1217: x_billing_assignment_id := null;
1218:
1219: WHEN FND_API.G_EXC_ERROR THEN
1215: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1216:
1217: x_billing_assignment_id := null;
1218:
1219: WHEN FND_API.G_EXC_ERROR THEN
1220: IF p_commit = FND_API.G_TRUE
1221: THEN
1222: ROLLBACK TO billing_assignments;
1223: END IF;
1216:
1217: x_billing_assignment_id := null;
1218:
1219: WHEN FND_API.G_EXC_ERROR THEN
1220: IF p_commit = FND_API.G_TRUE
1221: THEN
1222: ROLLBACK TO billing_assignments;
1223: END IF;
1224: x_return_status := 'E';
1225:
1226: x_billing_assignment_id := null;
1227:
1228: WHEN OTHERS THEN
1229: IF p_commit = FND_API.G_TRUE
1230: THEN
1231: ROLLBACK TO billing_assignments;
1232: END IF;
1233: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1229: IF p_commit = FND_API.G_TRUE
1230: THEN
1231: ROLLBACK TO billing_assignments;
1232: END IF;
1233: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1234: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1235: p_procedure_name => 'create_billing_assignments',
1236: p_error_text => SUBSTRB(SQLERRM,1,240));
1237:
1247: -- Pre-reqs : None
1248: -- Return Value : N/A
1249: -- Prameters
1250: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1251: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1252: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1253: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1254: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1255: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1248: -- Return Value : N/A
1249: -- Prameters
1250: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1251: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1252: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1253: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1254: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1255: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1256: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1249: -- Prameters
1250: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1251: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1252: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1253: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1254: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1255: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1256: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1257: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1250: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1251: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1252: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1253: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1254: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1255: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1256: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1257: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1258: -- p_project_id IN NUMBER REQUIRED
1253: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1254: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1255: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1256: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1257: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1258: -- p_project_id IN NUMBER REQUIRED
1259: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1260: -- p_billing_extension_id IN NUMBER REQUIRED
1261: -- p_amount IN NUMBER REQUIRED
1255: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1256: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1257: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1258: -- p_project_id IN NUMBER REQUIRED
1259: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1260: -- p_billing_extension_id IN NUMBER REQUIRED
1261: -- p_amount IN NUMBER REQUIRED
1262: -- p_percent IN NUMBER REQUIRED
1263: -- p_active IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CHAR
1259: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1260: -- p_billing_extension_id IN NUMBER REQUIRED
1261: -- p_amount IN NUMBER REQUIRED
1262: -- p_percent IN NUMBER REQUIRED
1263: -- p_active IN VARCHAR2 OPTIONAL DEFAULT=FND_API.G_MISS_CHAR
1264: -- p_record_version_number IN NUMBER REQUIRED DEFAULT=1
1265: -- x_return_status OUT VARCHAR2 REQUIRED
1266: -- x_msg_count OUT VARCHAR2 REQUIRED
1267: -- x_msg_data OUT VARCHAR2 REQUIRED
1273: --
1274:
1275: PROCEDURE update_billing_assignments(
1276: p_api_version IN NUMBER DEFAULT 1.0,
1277: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1278: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1279: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1280: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1281: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1274:
1275: PROCEDURE update_billing_assignments(
1276: p_api_version IN NUMBER DEFAULT 1.0,
1277: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1278: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1279: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1280: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1281: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1282: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1275: PROCEDURE update_billing_assignments(
1276: p_api_version IN NUMBER DEFAULT 1.0,
1277: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1278: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1279: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1280: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1281: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1282: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1283: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1276: p_api_version IN NUMBER DEFAULT 1.0,
1277: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1278: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1279: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1280: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1281: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1282: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1283: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1284: p_project_id IN NUMBER ,
1279: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1280: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1281: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1282: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1283: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1284: p_project_id IN NUMBER ,
1285: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1286: p_billing_extension_id IN NUMBER ,
1287: p_billing_assignment_id IN NUMBER ,
1281: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1282: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1283: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1284: p_project_id IN NUMBER ,
1285: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1286: p_billing_extension_id IN NUMBER ,
1287: p_billing_assignment_id IN NUMBER ,
1288: p_amount IN NUMBER ,
1289: p_percent IN NUMBER ,
1286: p_billing_extension_id IN NUMBER ,
1287: p_billing_assignment_id IN NUMBER ,
1288: p_amount IN NUMBER ,
1289: p_percent IN NUMBER ,
1290: p_active IN VARCHAR2 DEFAULT FND_API.G_MISS_CHAR,
1291: p_record_version_number IN NUMBER DEFAULT 1,
1292: x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
1293: x_msg_count OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
1294: x_msg_data OUT NOCOPY VARCHAR2 --File.Sql.39 bug 4440895
1317: THEN
1318: pa_debug.debug('update_billing_assignments PUB : Checking the api version number.');
1319: END IF;
1320:
1321: IF p_commit = FND_API.G_TRUE
1322: THEN
1323: SAVEPOINT billing_assignments;
1324: END IF;
1325:
1322: THEN
1323: SAVEPOINT billing_assignments;
1324: END IF;
1325:
1326: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
1327: p_api_version,
1328: l_api_name,
1329: g_pkg_name)
1330: THEN
1327: p_api_version,
1328: l_api_name,
1329: g_pkg_name)
1330: THEN
1331: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1332: END IF;
1333:
1334: if (p_debug_mode = 'Y') then
1335: pa_debug.debug('update_billing_assignments PUB : Initializing message stack.');
1336: end if;
1337:
1338: pa_debug.init_err_stack('PA_BILLING_SETUP_PUB.update_billing_assignments');
1339:
1340: if FND_API.to_boolean(nvl(p_init_msg_list, FND_API.G_FALSE)) then
1341: fnd_msg_pub.initialize;
1342: end if;
1343:
1344: x_return_status := 'S';
1342: end if;
1343:
1344: x_return_status := 'S';
1345:
1346: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
1347: THEN
1348: IF p_task_id = FND_API.G_MISS_NUM
1349: THEN
1350: l_task_id := null;
1344: x_return_status := 'S';
1345:
1346: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
1347: THEN
1348: IF p_task_id = FND_API.G_MISS_NUM
1349: THEN
1350: l_task_id := null;
1351: ELSE
1352: l_task_id := p_task_id;
1351: ELSE
1352: l_task_id := p_task_id;
1353: END IF;
1354:
1355: IF p_amount = FND_API.G_MISS_NUM
1356: THEN
1357: l_amount := null;
1358: ELSE
1359: l_amount := p_amount;
1358: ELSE
1359: l_amount := p_amount;
1360: END IF;
1361:
1362: IF p_percent = FND_API.G_MISS_NUM
1363: THEN
1364: l_percent := null;
1365: ELSE
1366: l_percent := p_percent;
1366: l_percent := p_percent;
1367: END IF;
1368:
1369: PA_BILLING_SETUP_PVT.update_billing_assignments(
1370: p_commit => FND_API.G_FALSE,
1371: p_validate_only => p_validate_only,
1372: p_validation_level => p_validation_level,
1373: p_calling_module => p_calling_module,
1374: p_debug_mode => p_debug_mode,
1394: If l_msg_count > 0 THEN
1395: x_msg_count := l_msg_count;
1396: If l_msg_count = 1 THEN
1397: pa_interface_utils_pub.get_messages
1398: (p_encoded => FND_API.G_TRUE ,
1399: p_msg_index => 1,
1400: p_msg_count => l_msg_count ,
1401: p_msg_data => l_msg_data,
1402: p_data => l_data,
1402: p_data => l_data,
1403: p_msg_index_out => l_msg_index_out );
1404: x_msg_data := l_data;
1405: End if;
1406: RAISE FND_API.G_EXC_ERROR;
1407: End if;
1408:
1409: IF FND_API.TO_BOOLEAN(P_COMMIT)
1410: THEN
1405: End if;
1406: RAISE FND_API.G_EXC_ERROR;
1407: End if;
1408:
1409: IF FND_API.TO_BOOLEAN(P_COMMIT)
1410: THEN
1411: COMMIT WORK;
1412: END IF;
1413:
1411: COMMIT WORK;
1412: END IF;
1413:
1414: EXCEPTION
1415: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1416: IF p_commit = FND_API.G_TRUE
1417: THEN
1418: ROLLBACK TO billing_assignments;
1419: END IF;
1412: END IF;
1413:
1414: EXCEPTION
1415: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1416: IF p_commit = FND_API.G_TRUE
1417: THEN
1418: ROLLBACK TO billing_assignments;
1419: END IF;
1420: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1416: IF p_commit = FND_API.G_TRUE
1417: THEN
1418: ROLLBACK TO billing_assignments;
1419: END IF;
1420: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1421: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1422: p_procedure_name => 'update_billing_assignments',
1423: p_error_text => SUBSTRB(SQLERRM,1,240));
1424: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1420: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1421: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1422: p_procedure_name => 'update_billing_assignments',
1423: p_error_text => SUBSTRB(SQLERRM,1,240));
1424: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1425:
1426: WHEN FND_API.G_EXC_ERROR THEN
1427: IF p_commit = FND_API.G_TRUE
1428: THEN
1422: p_procedure_name => 'update_billing_assignments',
1423: p_error_text => SUBSTRB(SQLERRM,1,240));
1424: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1425:
1426: WHEN FND_API.G_EXC_ERROR THEN
1427: IF p_commit = FND_API.G_TRUE
1428: THEN
1429: ROLLBACK TO billing_assignments;
1430: END IF;
1423: p_error_text => SUBSTRB(SQLERRM,1,240));
1424: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1425:
1426: WHEN FND_API.G_EXC_ERROR THEN
1427: IF p_commit = FND_API.G_TRUE
1428: THEN
1429: ROLLBACK TO billing_assignments;
1430: END IF;
1431: x_return_status := 'E';
1430: END IF;
1431: x_return_status := 'E';
1432:
1433: WHEN OTHERS THEN
1434: IF p_commit = FND_API.G_TRUE
1435: THEN
1436: ROLLBACK TO billing_assignments;
1437: END IF;
1438: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1434: IF p_commit = FND_API.G_TRUE
1435: THEN
1436: ROLLBACK TO billing_assignments;
1437: END IF;
1438: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1439: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1440: p_procedure_name => 'update_billing_assignments',
1441: p_error_text => SUBSTRB(SQLERRM,1,240));
1442: RAISE;
1448: -- Pre-reqs : None
1449: -- Return Value : N/A
1450: -- Prameters
1451: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1452: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1453: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1454: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1455: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1456: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1449: -- Return Value : N/A
1450: -- Prameters
1451: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1452: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1453: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1454: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1455: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1456: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1457: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1450: -- Prameters
1451: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1452: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1453: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1454: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1455: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1456: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1457: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1458: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1451: -- p_api_version IN NUMBER REQUIRED DEFAULT=1.0
1452: -- p_init_msg_list IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1453: -- p_commit IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_FALSE
1454: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1455: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1456: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1457: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1458: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1459: -- p_project_id IN NUMBER REQUIRED
1454: -- p_validate_only IN VARCHAR2 REQUIRED DEFAULT=FND_API.G_TRUE
1455: -- p_validation_level IN NUMBER OPTIONAL DEFAULT=FND_API.G_VALID_LEVEL_FULL
1456: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1457: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1458: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1459: -- p_project_id IN NUMBER REQUIRED
1460: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1461: -- p_billing_extension_id IN NUMBER REQUIRED
1462: -- p_record_version_number IN NUMBER REQUIRED DEFAULT=1
1456: -- p_calling_module IN VARCHAR2 OPTIONAL DEFAULT='SELF_SERVICE'
1457: -- p_debug_mode IN VARCHAR2 OPTIONAL DEFAULT='N'
1458: -- p_max_msg_count IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1459: -- p_project_id IN NUMBER REQUIRED
1460: -- p_task_id IN NUMBER OPTIONAL DEFAULT=FND_API.G_MISS_NUM
1461: -- p_billing_extension_id IN NUMBER REQUIRED
1462: -- p_record_version_number IN NUMBER REQUIRED DEFAULT=1
1463: -- x_return_status OUT VARCHAR2 REQUIRED
1464: -- x_msg_count OUT VARCHAR2 REQUIRED
1471: --
1472:
1473: PROCEDURE delete_billing_assignments(
1474: p_api_version IN NUMBER DEFAULT 1.0,
1475: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1476: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1477: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1478: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1479: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1472:
1473: PROCEDURE delete_billing_assignments(
1474: p_api_version IN NUMBER DEFAULT 1.0,
1475: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1476: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1477: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1478: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1479: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1480: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1473: PROCEDURE delete_billing_assignments(
1474: p_api_version IN NUMBER DEFAULT 1.0,
1475: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1476: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1477: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1478: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1479: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1480: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1481: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1474: p_api_version IN NUMBER DEFAULT 1.0,
1475: p_init_msg_list IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1476: p_commit IN VARCHAR2 DEFAULT FND_API.G_FALSE,
1477: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1478: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1479: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1480: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1481: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1482: p_project_id IN NUMBER ,
1477: p_validate_only IN VARCHAR2 DEFAULT FND_API.G_TRUE,
1478: p_validation_level IN NUMBER DEFAULT FND_API.G_VALID_LEVEL_FULL,
1479: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1480: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1481: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1482: p_project_id IN NUMBER ,
1483: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1484: p_billing_extension_id IN NUMBER ,
1485: p_billing_assignment_id IN NUMBER ,
1479: p_calling_module IN VARCHAR2 DEFAULT 'SELF_SERVICE',
1480: p_debug_mode IN VARCHAR2 DEFAULT 'N',
1481: p_max_msg_count IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1482: p_project_id IN NUMBER ,
1483: p_task_id IN NUMBER DEFAULT FND_API.G_MISS_NUM,
1484: p_billing_extension_id IN NUMBER ,
1485: p_billing_assignment_id IN NUMBER ,
1486: p_record_version_number IN NUMBER DEFAULT 1,
1487: x_return_status OUT NOCOPY VARCHAR2 , --File.Sql.39 bug 4440895
1512: THEN
1513: pa_debug.debug('delete_billing_assignments PUB : Checking the api version number.');
1514: END IF;
1515:
1516: IF p_commit = FND_API.G_TRUE
1517: THEN
1518: SAVEPOINT billing_assignments;
1519: END IF;
1520:
1517: THEN
1518: SAVEPOINT billing_assignments;
1519: END IF;
1520:
1521: IF NOT FND_API.COMPATIBLE_API_CALL(l_api_version,
1522: p_api_version,
1523: l_api_name,
1524: g_pkg_name)
1525: THEN
1522: p_api_version,
1523: l_api_name,
1524: g_pkg_name)
1525: THEN
1526: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1527: END IF;
1528:
1529: if (p_debug_mode = 'Y') then
1530: pa_debug.debug('delete_billing_assignments PUB : Initializing message stack.');
1531: end if;
1532:
1533: pa_debug.init_err_stack('PA_BILLING_SETUP_PUB.delete_billing_assignments');
1534:
1535: if FND_API.to_boolean(nvl(p_init_msg_list, FND_API.G_FALSE)) then
1536: fnd_msg_pub.initialize;
1537: end if;
1538:
1539: x_return_status := 'S';
1537: end if;
1538:
1539: x_return_status := 'S';
1540:
1541: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
1542: THEN
1543: IF p_task_id = FND_API.G_MISS_NUM
1544: THEN
1545: l_task_id := null;
1539: x_return_status := 'S';
1540:
1541: IF p_validate_only = FND_API.G_TRUE AND p_validation_level > 0
1542: THEN
1543: IF p_task_id = FND_API.G_MISS_NUM
1544: THEN
1545: l_task_id := null;
1546: ELSE
1547: l_task_id := p_task_id;
1547: l_task_id := p_task_id;
1548: END IF;
1549:
1550: PA_BILLING_SETUP_PVT.delete_billing_assignments(
1551: p_commit => FND_API.G_FALSE,
1552: p_validate_only => p_validate_only,
1553: p_validation_level => p_validation_level,
1554: p_calling_module => p_calling_module,
1555: p_debug_mode => p_debug_mode,
1572: If l_msg_count > 0 THEN
1573: x_msg_count := l_msg_count;
1574: If l_msg_count = 1 THEN
1575: pa_interface_utils_pub.get_messages
1576: (p_encoded => FND_API.G_TRUE ,
1577: p_msg_index => 1,
1578: p_msg_count => l_msg_count ,
1579: p_msg_data => l_msg_data,
1580: p_data => l_data,
1580: p_data => l_data,
1581: p_msg_index_out => l_msg_index_out );
1582: x_msg_data := l_data;
1583: End if;
1584: RAISE FND_API.G_EXC_ERROR;
1585: End if;
1586:
1587: IF FND_API.TO_BOOLEAN(P_COMMIT)
1588: THEN
1583: End if;
1584: RAISE FND_API.G_EXC_ERROR;
1585: End if;
1586:
1587: IF FND_API.TO_BOOLEAN(P_COMMIT)
1588: THEN
1589: COMMIT WORK;
1590: END IF;
1591:
1589: COMMIT WORK;
1590: END IF;
1591:
1592: EXCEPTION
1593: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1594: IF p_commit = FND_API.G_TRUE
1595: THEN
1596: ROLLBACK TO billing_assignments;
1597: END IF;
1590: END IF;
1591:
1592: EXCEPTION
1593: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1594: IF p_commit = FND_API.G_TRUE
1595: THEN
1596: ROLLBACK TO billing_assignments;
1597: END IF;
1598: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1594: IF p_commit = FND_API.G_TRUE
1595: THEN
1596: ROLLBACK TO billing_assignments;
1597: END IF;
1598: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1599: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1600: p_procedure_name => 'delete_billing_assignments',
1601: p_error_text => SUBSTRB(SQLERRM,1,240));
1602: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1598: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1599: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1600: p_procedure_name => 'delete_billing_assignments',
1601: p_error_text => SUBSTRB(SQLERRM,1,240));
1602: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1603:
1604: WHEN FND_API.G_EXC_ERROR THEN
1605: IF p_commit = FND_API.G_TRUE
1606: THEN
1600: p_procedure_name => 'delete_billing_assignments',
1601: p_error_text => SUBSTRB(SQLERRM,1,240));
1602: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1603:
1604: WHEN FND_API.G_EXC_ERROR THEN
1605: IF p_commit = FND_API.G_TRUE
1606: THEN
1607: ROLLBACK TO billing_assignments;
1608: END IF;
1601: p_error_text => SUBSTRB(SQLERRM,1,240));
1602: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1603:
1604: WHEN FND_API.G_EXC_ERROR THEN
1605: IF p_commit = FND_API.G_TRUE
1606: THEN
1607: ROLLBACK TO billing_assignments;
1608: END IF;
1609: x_return_status := 'E';
1608: END IF;
1609: x_return_status := 'E';
1610:
1611: WHEN OTHERS THEN
1612: IF p_commit = FND_API.G_TRUE
1613: THEN
1614: ROLLBACK TO billing_assignments;
1615: END IF;
1616: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1612: IF p_commit = FND_API.G_TRUE
1613: THEN
1614: ROLLBACK TO billing_assignments;
1615: END IF;
1616: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1617: fnd_msg_pub.add_exc_msg(p_pkg_name => 'PA_BILLING_SETUP_PUB',
1618: p_procedure_name => 'delete_billing_assignments',
1619: p_error_text => SUBSTRB(SQLERRM,1,240));
1620: RAISE;