33:
34:
35:
36: Procedure Match_partner(p_api_version_number IN NUMBER,
37: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
38: p_commit IN VARCHAR2 := FND_API.G_FALSE,
39: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
40: p_sql IN VArchar2,
41: p_num_of_attrs IN NUMBER,
34:
35:
36: Procedure Match_partner(p_api_version_number IN NUMBER,
37: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
38: p_commit IN VARCHAR2 := FND_API.G_FALSE,
39: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
40: p_sql IN VArchar2,
41: p_num_of_attrs IN NUMBER,
42: x_matched_prt OUT JTF_VARCHAR2_TABLE_100,
35:
36: Procedure Match_partner(p_api_version_number IN NUMBER,
37: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
38: p_commit IN VARCHAR2 := FND_API.G_FALSE,
39: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
40: p_sql IN VArchar2,
41: p_num_of_attrs IN NUMBER,
42: x_matched_prt OUT JTF_VARCHAR2_TABLE_100,
43: x_prt_matched OUT boolean,
71: begin
72:
73: -- Standard call to check for call compatibility.
74:
75: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
76: p_api_version_number,
77: l_api_name,
78: G_PKG_NAME) THEN
79:
76: p_api_version_number,
77: l_api_name,
78: G_PKG_NAME) THEN
79:
80: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
81:
82: END IF;
83:
84: -- Initialize message list if p_init_msg_list is set to TRUE.
81:
82: END IF;
83:
84: -- Initialize message list if p_init_msg_list is set to TRUE.
85: IF FND_API.to_Boolean( p_init_msg_list )
86: THEN
87: fnd_msg_pub.initialize;
88: END IF;
89:
86: THEN
87: fnd_msg_pub.initialize;
88: END IF;
89:
90: x_return_status := FND_API.G_RET_STS_SUCCESS ;
91: x_matched_prt := JTF_VARCHAR2_TABLE_100();
92:
93:
94: l_top_n_rows :=nvl(fnd_profile.value('PV_TOP_N_MATCH_PARTNERS'), 10);
241: x_matched_attr_cnt := 0;
242: end if;
243:
244:
245: IF FND_API.To_Boolean ( p_commit ) THEN
246: COMMIT WORK;
247: END IF;
248:
249: -- Standard call to get message count and if count is 1, get message info.
246: COMMIT WORK;
247: END IF;
248:
249: -- Standard call to get message count and if count is 1, get message info.
250: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
251: p_count => x_msg_count,
252: p_data => x_msg_data);
253:
254: EXCEPTION
251: p_count => x_msg_count,
252: p_data => x_msg_data);
253:
254: EXCEPTION
255: WHEN FND_API.G_EXC_ERROR THEN
256:
257: x_return_status := FND_API.G_RET_STS_ERROR ;
258:
259: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
253:
254: EXCEPTION
255: WHEN FND_API.G_EXC_ERROR THEN
256:
257: x_return_status := FND_API.G_RET_STS_ERROR ;
258:
259: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
260: p_count => x_msg_count,
261: p_data => x_msg_data);
255: WHEN FND_API.G_EXC_ERROR THEN
256:
257: x_return_status := FND_API.G_RET_STS_ERROR ;
258:
259: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
260: p_count => x_msg_count,
261: p_data => x_msg_data);
262:
263: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
259: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
260: p_count => x_msg_count,
261: p_data => x_msg_data);
262:
263: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
264:
265: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
266:
267: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
261: p_data => x_msg_data);
262:
263: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
264:
265: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
266:
267: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
268: p_count => x_msg_count,
269: p_data => x_msg_data);
263: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
264:
265: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
266:
267: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
268: p_count => x_msg_count,
269: p_data => x_msg_data);
270:
271: WHEN OTHERS THEN
269: p_data => x_msg_data);
270:
271: WHEN OTHERS THEN
272:
273: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
274:
275: FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
276:
277: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
273: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
274:
275: FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
276:
277: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
278: p_count => x_msg_count,
279: p_data => x_msg_data);
280:
281: END Match_partner;
311:
312:
313: procedure Form_Where_Clause(
314: p_api_version_number IN NUMBER,
315: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
316: p_commit IN VARCHAR2 := FND_API.G_FALSE,
317: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
318: p_attr_tbl IN OUT JTF_VARCHAR2_TABLE_100,
319: p_attr_val_count IN JTF_VARCHAR2_TABLE_100,
312:
313: procedure Form_Where_Clause(
314: p_api_version_number IN NUMBER,
315: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
316: p_commit IN VARCHAR2 := FND_API.G_FALSE,
317: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
318: p_attr_tbl IN OUT JTF_VARCHAR2_TABLE_100,
319: p_attr_val_count IN JTF_VARCHAR2_TABLE_100,
320: p_val_attr_tbl IN OUT JTF_VARCHAR2_TABLE_100,
313: procedure Form_Where_Clause(
314: p_api_version_number IN NUMBER,
315: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
316: p_commit IN VARCHAR2 := FND_API.G_FALSE,
317: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
318: p_attr_tbl IN OUT JTF_VARCHAR2_TABLE_100,
319: p_attr_val_count IN JTF_VARCHAR2_TABLE_100,
320: p_val_attr_tbl IN OUT JTF_VARCHAR2_TABLE_100,
321: p_cm_id IN number,
360:
361:
362: -- Standard call to check for call compatibility.
363:
364: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
365: p_api_version_number,
366: l_api_name,
367: G_PKG_NAME) THEN
368:
365: p_api_version_number,
366: l_api_name,
367: G_PKG_NAME) THEN
368:
369: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
370:
371: END IF;
372:
373: -- Initialize message list if p_init_msg_list is set to TRUE.
370:
371: END IF;
372:
373: -- Initialize message list if p_init_msg_list is set to TRUE.
374: IF FND_API.to_Boolean( p_init_msg_list )
375: THEN
376: fnd_msg_pub.initialize;
377: END IF;
378:
375: THEN
376: fnd_msg_pub.initialize;
377: END IF;
378:
379: x_return_status := FND_API.G_RET_STS_SUCCESS ;
380: x_matched_id_tbl := JTF_VARCHAR2_TABLE_100();
381:
382:
383: IF FND_API.To_Boolean ( p_commit ) THEN
379: x_return_status := FND_API.G_RET_STS_SUCCESS ;
380: x_matched_id_tbl := JTF_VARCHAR2_TABLE_100();
381:
382:
383: IF FND_API.To_Boolean ( p_commit ) THEN
384: COMMIT WORK;
385: END IF;
386:
387: -- Standard call to get message count and if count is 1, get message info.
384: COMMIT WORK;
385: END IF;
386:
387: -- Standard call to get message count and if count is 1, get message info.
388: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
389: p_count => x_msg_count,
390: p_data => x_msg_data);
391: EXCEPTION
392:
389: p_count => x_msg_count,
390: p_data => x_msg_data);
391: EXCEPTION
392:
393: WHEN FND_API.G_EXC_ERROR THEN
394:
395: x_return_status := FND_API.G_RET_STS_ERROR ;
396:
397: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
391: EXCEPTION
392:
393: WHEN FND_API.G_EXC_ERROR THEN
394:
395: x_return_status := FND_API.G_RET_STS_ERROR ;
396:
397: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
398: p_count => x_msg_count,
399: p_data => x_msg_data);
393: WHEN FND_API.G_EXC_ERROR THEN
394:
395: x_return_status := FND_API.G_RET_STS_ERROR ;
396:
397: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
398: p_count => x_msg_count,
399: p_data => x_msg_data);
400:
401: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
397: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
398: p_count => x_msg_count,
399: p_data => x_msg_data);
400:
401: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
402:
403: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
404:
405: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
399: p_data => x_msg_data);
400:
401: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
402:
403: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
404:
405: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
406: p_count => x_msg_count,
407: p_data => x_msg_data);
401: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
402:
403: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
404:
405: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
406: p_count => x_msg_count,
407: p_data => x_msg_data);
408:
409: WHEN OTHERS THEN
407: p_data => x_msg_data);
408:
409: WHEN OTHERS THEN
410:
411: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
412:
413: FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
414:
415: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
411: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
412:
413: FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
414:
415: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
416: p_count => x_msg_count,
417: p_data => x_msg_data);
418:
419: END Form_Where_Clause;
442:
443:
444: Procedure Auto_Match_Criteria (
445: p_api_version_number IN NUMBER,
446: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
447: p_commit IN VARCHAR2 := FND_API.G_FALSE,
448: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
449: p_lead_id IN Number,
450: x_matched_attr OUT JTF_VARCHAR2_TABLE_100,
443:
444: Procedure Auto_Match_Criteria (
445: p_api_version_number IN NUMBER,
446: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
447: p_commit IN VARCHAR2 := FND_API.G_FALSE,
448: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
449: p_lead_id IN Number,
450: x_matched_attr OUT JTF_VARCHAR2_TABLE_100,
451: x_matched_attr_val OUT JTF_VARCHAR2_TABLE_100,
444: Procedure Auto_Match_Criteria (
445: p_api_version_number IN NUMBER,
446: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
447: p_commit IN VARCHAR2 := FND_API.G_FALSE,
448: p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL,
449: p_lead_id IN Number,
450: x_matched_attr OUT JTF_VARCHAR2_TABLE_100,
451: x_matched_attr_val OUT JTF_VARCHAR2_TABLE_100,
452: x_original_attr OUT JTF_VARCHAR2_TABLE_100,
483: Begin
484:
485: -- Standard call to check for call compatibility.
486:
487: IF NOT FND_API.Compatible_API_Call (l_api_version_number,
488: p_api_version_number,
489: l_api_name,
490: G_PKG_NAME) THEN
491:
488: p_api_version_number,
489: l_api_name,
490: G_PKG_NAME) THEN
491:
492: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
493:
494: END IF;
495:
496: -- Initialize message list if p_init_msg_list is set to TRUE.
493:
494: END IF;
495:
496: -- Initialize message list if p_init_msg_list is set to TRUE.
497: IF FND_API.to_Boolean( p_init_msg_list )
498: THEN
499: fnd_msg_pub.initialize;
500: END IF;
501:
505: x_original_attr_val := JTF_VARCHAR2_TABLE_100();
506: l_attr_val_cnt := JTF_VARCHAR2_TABLE_100();
507: x_matched_id := JTF_VARCHAR2_TABLE_100();
508:
509: x_return_status := FND_API.G_RET_STS_SUCCESS ;
510:
511: for attr_rec IN attr_cur loop
512:
513: l_val_count := 0;
520: fnd_message.SET_TOKEN ('P_ENTITY' , 'LEAD');
521: fnd_message.SET_TOKEN ('P_ATTRIBUTE' , attr_rec.short_name);
522: fnd_msg_pub.ADD;
523:
524: raise FND_API.G_EXC_ERROR;
525:
526: end if;
527:
528: if(attr_rec.src_pkcol_name = 'LEAD_ID' ) then
575: Form_Where_clause(
576: p_api_version_number => l_api_version_number
577: ,p_init_msg_list => p_init_msg_list
578: ,p_commit => p_commit
579: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
580: ,p_attr_tbl => x_matched_attr
581: ,p_attr_val_count => l_attr_val_cnt
582: ,p_val_attr_tbl => x_matched_attr_val
583: ,p_cm_id => 0
588: ,x_return_status => x_return_status
589: ,x_msg_count => x_msg_count
590: ,x_msg_data => x_msg_data);
591:
592: IF (x_return_status = fnd_api.g_ret_sts_error) THEN
593: RAISE fnd_api.g_exc_error;
594: ELSIF (x_return_status = fnd_api.g_ret_sts_unexp_error) THEN
595: RAISE fnd_api.g_exc_unexpected_error;
596: END IF;
589: ,x_msg_count => x_msg_count
590: ,x_msg_data => x_msg_data);
591:
592: IF (x_return_status = fnd_api.g_ret_sts_error) THEN
593: RAISE fnd_api.g_exc_error;
594: ELSIF (x_return_status = fnd_api.g_ret_sts_unexp_error) THEN
595: RAISE fnd_api.g_exc_unexpected_error;
596: END IF;
597:
590: ,x_msg_data => x_msg_data);
591:
592: IF (x_return_status = fnd_api.g_ret_sts_error) THEN
593: RAISE fnd_api.g_exc_error;
594: ELSIF (x_return_status = fnd_api.g_ret_sts_unexp_error) THEN
595: RAISE fnd_api.g_exc_unexpected_error;
596: END IF;
597:
598: IF FND_API.To_Boolean ( p_commit ) THEN
591:
592: IF (x_return_status = fnd_api.g_ret_sts_error) THEN
593: RAISE fnd_api.g_exc_error;
594: ELSIF (x_return_status = fnd_api.g_ret_sts_unexp_error) THEN
595: RAISE fnd_api.g_exc_unexpected_error;
596: END IF;
597:
598: IF FND_API.To_Boolean ( p_commit ) THEN
599: COMMIT WORK;
594: ELSIF (x_return_status = fnd_api.g_ret_sts_unexp_error) THEN
595: RAISE fnd_api.g_exc_unexpected_error;
596: END IF;
597:
598: IF FND_API.To_Boolean ( p_commit ) THEN
599: COMMIT WORK;
600: END IF;
601:
602: -- Standard call to get message count and if count is 1, get message info.
599: COMMIT WORK;
600: END IF;
601:
602: -- Standard call to get message count and if count is 1, get message info.
603: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
604: p_count => x_msg_count,
605: p_data => x_msg_data);
606: EXCEPTION
607:
604: p_count => x_msg_count,
605: p_data => x_msg_data);
606: EXCEPTION
607:
608: WHEN FND_API.G_EXC_ERROR THEN
609:
610: x_return_status := FND_API.G_RET_STS_ERROR ;
611:
612: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
606: EXCEPTION
607:
608: WHEN FND_API.G_EXC_ERROR THEN
609:
610: x_return_status := FND_API.G_RET_STS_ERROR ;
611:
612: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
613: p_count => x_msg_count,
614: p_data => x_msg_data);
608: WHEN FND_API.G_EXC_ERROR THEN
609:
610: x_return_status := FND_API.G_RET_STS_ERROR ;
611:
612: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
613: p_count => x_msg_count,
614: p_data => x_msg_data);
615:
616: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
612: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
613: p_count => x_msg_count,
614: p_data => x_msg_data);
615:
616: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
617:
618: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
619:
620: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
614: p_data => x_msg_data);
615:
616: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
617:
618: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
619:
620: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
621: p_count => x_msg_count,
622: p_data => x_msg_data);
616: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
617:
618: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
619:
620: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
621: p_count => x_msg_count,
622: p_data => x_msg_data);
623:
624: WHEN OTHERS THEN
622: p_data => x_msg_data);
623:
624: WHEN OTHERS THEN
625:
626: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
627:
628: FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
629:
630: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
626: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
627:
628: FND_MSG_PUB.Add_Exc_Msg(G_PKG_NAME, l_api_name);
629:
630: fnd_msg_pub.Count_And_Get( p_encoded => FND_API.G_FALSE,
631: p_count => x_msg_count,
632: p_data => x_msg_data);
633:
634: End Auto_Match_Criteria;