35:
36:
37: PROCEDURE upsert_attributes(
38: p_api_version_number IN NUMBER
39: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
40: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
41: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
42: ,p_attr_details_tbl IN PV_CONTACT_USER_BATCH_PUB.attr_details_tbl_type
43: ,p_contact_rel_id IN NUMBER
36:
37: PROCEDURE upsert_attributes(
38: p_api_version_number IN NUMBER
39: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
40: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
41: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
42: ,p_attr_details_tbl IN PV_CONTACT_USER_BATCH_PUB.attr_details_tbl_type
43: ,p_contact_rel_id IN NUMBER
44: ,x_log_msg OUT NOCOPY LOG_MESSAGE_TBL_TYPE
37: PROCEDURE upsert_attributes(
38: p_api_version_number IN NUMBER
39: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
40: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
41: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
42: ,p_attr_details_tbl IN PV_CONTACT_USER_BATCH_PUB.attr_details_tbl_type
43: ,p_contact_rel_id IN NUMBER
44: ,x_log_msg OUT NOCOPY LOG_MESSAGE_TBL_TYPE
45: ,x_attribute_creation_status OUT NOCOPY VARCHAR2
92: -- dbms_output.put_line ('attribute id '|| l_attribute_details_rec.attribute_id );
93:
94: PV_ENTY_ATTR_VALUE_PUB.Upsert_Attr_Value (
95: p_api_version_number=> 1.0
96: ,p_init_msg_list => FND_API.g_true
97: ,p_commit => FND_API.g_false
98: ,p_validation_level => FND_API.g_valid_level_full
99: ,x_return_status => l_return_status
100: ,x_msg_count => l_msg_count
93:
94: PV_ENTY_ATTR_VALUE_PUB.Upsert_Attr_Value (
95: p_api_version_number=> 1.0
96: ,p_init_msg_list => FND_API.g_true
97: ,p_commit => FND_API.g_false
98: ,p_validation_level => FND_API.g_valid_level_full
99: ,x_return_status => l_return_status
100: ,x_msg_count => l_msg_count
101: ,x_msg_data => l_msg_data
94: PV_ENTY_ATTR_VALUE_PUB.Upsert_Attr_Value (
95: p_api_version_number=> 1.0
96: ,p_init_msg_list => FND_API.g_true
97: ,p_commit => FND_API.g_false
98: ,p_validation_level => FND_API.g_valid_level_full
99: ,x_return_status => l_return_status
100: ,x_msg_count => l_msg_count
101: ,x_msg_data => l_msg_data
102: ,p_attribute_id => l_attribute_details_rec.attribute_id
111: -- dbms_output.put_line('Before message data : ');
112: -- dbms_output.put_line(' API msgdata=> '|| l_msg_data);
113:
114:
115: IF (l_return_status = FND_API.G_RET_STS_SUCCESS) THEN
116: x_attribute_creation_status:='SUCCESS';
117: END IF;
118:
119:
116: x_attribute_creation_status:='SUCCESS';
117: END IF;
118:
119:
120: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
121: x_attribute_creation_status:='ERROR';
122:
123:
124: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
120: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
121: x_attribute_creation_status:='ERROR';
122:
123:
124: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
125: /*FOR l_msg_index IN 1..l_msg_count LOOP
126: fnd_message.set_encoded(fnd_msg_pub.get(l_msg_index));
127: -- dbms_output.put_line(fnd_message.get);
128: l_log_count:= l_log_count + 1;
133: l_log_count:= l_log_count + 1;
134: fnd_message.set_encoded(fnd_msg_pub.get(l_msg_count));
135: x_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
136:
137: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
138: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
139: FND_MESSAGE.SET_TOKEN('API_NAME', 'PV_ENTY_ATTR_VALUE_PUB.Upsert_Attr_Value');
140: l_log_count:= l_log_count + 1;
141: x_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
154:
155: EXCEPTION
156:
157:
158: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
159: -- dbms_output.put_line ('entered unexpected error in attributes');
160: x_attribute_creation_status:='ERROR';
161:
162: WHEN OTHERS THEN
175:
176:
177: PROCEDURE contact_create (
178: p_api_version_number IN NUMBER
179: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
180: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
181: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
182: ,p_contact_details_rec IN CONTACT_DETAILS_REC_TYPE
183: ,p_update_flag IN VARCHAR2
176:
177: PROCEDURE contact_create (
178: p_api_version_number IN NUMBER
179: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
180: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
181: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
182: ,p_contact_details_rec IN CONTACT_DETAILS_REC_TYPE
183: ,p_update_flag IN VARCHAR2
184: ,x_contact_rel_id OUT NOCOPY NUMBER
177: PROCEDURE contact_create (
178: p_api_version_number IN NUMBER
179: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
180: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
181: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
182: ,p_contact_details_rec IN CONTACT_DETAILS_REC_TYPE
183: ,p_update_flag IN VARCHAR2
184: ,x_contact_rel_id OUT NOCOPY NUMBER
185: ,x_contact_output_rec OUT NOCOPY CONTACT_OUTPUT_REC_TYPE
601:
602: -- dbms_output.put_line('Mode = ' || l_mode);
603: -- dbms_output.put_line('l_update_allowed = ' || l_update_allowed);
604:
605: if l_mode = 'UPDATE' and l_update_allowed = FND_API.G_FALSE then
606: l_contact_create_ok:= 'FALSE';
607: fnd_message.set_name('PV', 'PV_CONTACT_EXISTS_ALREADY');
608: l_log_count:= l_log_count + 1;
609: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
651:
652:
653:
654:
655: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
656:
657: l_contact_create_ok := 'FALSE';
658: x_contact_output_rec.return_status:='ERROR';
659:
657: l_contact_create_ok := 'FALSE';
658: x_contact_output_rec.return_status:='ERROR';
659:
660:
661: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
662: /* FOR l_msg_index IN 1..l_msg_count LOOP
663: fnd_message.set_encoded(fnd_msg_pub.get(l_msg_index));
664: -- dbms_output.put_line(fnd_message.get);
665: l_log_count:= l_log_count + 1;
671: fnd_message.set_encoded(fnd_msg_pub.get(l_msg_count));
672: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
673:
674:
675: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
676: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
677: FND_MESSAGE.SET_TOKEN('API_NAME', 'HZ_PARTY_CONTACT_V2PUB.create_org_contact');
678: l_log_count:= l_log_count + 1;
679: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
700: l_contact_details_rec.location_rec.created_by_module:='PV';
701: l_contact_details_rec.location_rec.application_id:=691;
702:
703: HZ_LOCATION_V2PUB.create_location (
704: p_init_msg_list =>FND_API.g_false,
705: p_location_rec =>l_contact_details_rec.location_rec,
706: x_location_id =>l_location_id,
707: x_return_status =>l_return_status,
708: x_msg_count =>l_msg_count,
715: -- dbms_output.put_line('after create location' || l_return_status);
716:
717:
718:
719: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
720: l_contact_create_ok := 'FALSE';
721: x_contact_output_rec.return_status:='ERROR';
722: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
723: FOR l_msg_index IN 1..l_msg_count LOOP
718:
719: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
720: l_contact_create_ok := 'FALSE';
721: x_contact_output_rec.return_status:='ERROR';
722: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
723: FOR l_msg_index IN 1..l_msg_count LOOP
724: fnd_message.set_encoded(fnd_msg_pub.get(l_msg_index));
725: -- dbms_output.put_line(fnd_message.get);
726: l_log_count:= l_log_count + 1;
725: -- dbms_output.put_line(fnd_message.get);
726: l_log_count:= l_log_count + 1;
727: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
728: END LOOP;
729: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
730: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
731: FND_MESSAGE.SET_TOKEN('API_NAME', 'HZ_LOCATION_V2PUB.create_location');
732: l_log_count:= l_log_count + 1;
733: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
744:
745:
746:
747: HZ_PARTY_SITE_V2PUB.create_party_site (
748: p_init_msg_list =>FND_API.g_false,
749: p_party_site_rec =>l_party_site_rec,
750: x_party_site_id =>l_party_site_id,
751: x_party_site_number =>l_party_site_number,
752: x_return_status =>l_return_status,
754: x_msg_data =>l_msg_data
755: );
756:
757:
758: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
759: l_contact_create_ok := 'FALSE';
760: x_contact_output_rec.return_status:='ERROR';
761: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
762: FOR l_msg_index IN 1..l_msg_count LOOP
757:
758: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
759: l_contact_create_ok := 'FALSE';
760: x_contact_output_rec.return_status:='ERROR';
761: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
762: FOR l_msg_index IN 1..l_msg_count LOOP
763: fnd_message.set_encoded(fnd_msg_pub.get(l_msg_index));
764: -- dbms_output.put_line(fnd_message.get);
765: l_log_count:= l_log_count + 1;
764: -- dbms_output.put_line(fnd_message.get);
765: l_log_count:= l_log_count + 1;
766: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
767: END LOOP;
768: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
769: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
770: FND_MESSAGE.SET_TOKEN('API_NAME', 'HZ_PARTY_SITE_V2PUB.create_party_site');
771: l_log_count:= l_log_count + 1;
772: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
811:
812:
813:
814:
815: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
816: l_contact_create_ok := 'FALSE';
817: x_contact_output_rec.return_status:='ERROR';
818: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
819: FOR l_msg_index IN 1..l_msg_count LOOP
814:
815: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
816: l_contact_create_ok := 'FALSE';
817: x_contact_output_rec.return_status:='ERROR';
818: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
819: FOR l_msg_index IN 1..l_msg_count LOOP
820: fnd_message.set_encoded(fnd_msg_pub.get(l_msg_index));
821: -- -- dbms_output.put_line('Printing first time' || fnd_message.get);
822: l_log_count:= l_log_count + 1;
823: -- l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
824: l_log_msg(l_log_count):=fnd_message.get;
825: -- dbms_output.put_line('printing log ' || l_log_msg(l_log_count));
826: END LOOP;
827: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
828: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
829: FND_MESSAGE.SET_TOKEN('API_NAME', 'HZ_CONTACT_POINT_V2PUB.create_phone_contact_point');
830: l_log_count:= l_log_count + 1;
831: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
863: x_msg_count => l_msg_count,
864: x_msg_data => l_msg_data );
865:
866:
867: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
868: l_contact_create_ok := 'FALSE';
869: x_contact_output_rec.return_status:='ERROR';
870: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
871: FOR l_msg_index IN 1..l_msg_count LOOP
866:
867: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
868: l_contact_create_ok := 'FALSE';
869: x_contact_output_rec.return_status:='ERROR';
870: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
871: FOR l_msg_index IN 1..l_msg_count LOOP
872: fnd_message.set_encoded(fnd_msg_pub.get(l_msg_index));
873: -- dbms_output.put_line(fnd_message.get);
874: l_log_count:= l_log_count + 1;
873: -- dbms_output.put_line(fnd_message.get);
874: l_log_count:= l_log_count + 1;
875: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
876: END LOOP;
877: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
878: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
879: FND_MESSAGE.SET_TOKEN('API_NAME', 'HZ_CONTACT_POINT_V2PUB.create_email_contact_point');
880: l_log_count:= l_log_count + 1;
881: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
943:
944: -- dbms_output.put_line('Just before the Partner cust account API' );
945:
946: HZ_CUST_ACCOUNT_V2PUB.create_cust_account (
947: p_init_msg_list => FND_API.G_TRUE,
948: p_cust_account_rec => l_account_rec,
949: p_organization_rec => l_organization_rec,
950: p_customer_profile_rec => l_cust_profile_rec,
951: p_create_profile_amt => FND_API.G_TRUE,
947: p_init_msg_list => FND_API.G_TRUE,
948: p_cust_account_rec => l_account_rec,
949: p_organization_rec => l_organization_rec,
950: p_customer_profile_rec => l_cust_profile_rec,
951: p_create_profile_amt => FND_API.G_TRUE,
952: x_cust_account_id => l_partner_cust_acct,
953: x_account_number => l_account_number,
954: x_party_id => l_cust_party_id ,
955: x_party_number => l_cust_party_number,
960:
961:
962:
963: -- dbms_output.put_line('Partner cust account Return status' || l_return_status);
964: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
965: l_contact_create_ok := 'FALSE';
966: x_contact_output_rec.return_status:='ERROR';
967: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
968: FOR l_msg_index IN 1..l_msg_count LOOP
963: -- dbms_output.put_line('Partner cust account Return status' || l_return_status);
964: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
965: l_contact_create_ok := 'FALSE';
966: x_contact_output_rec.return_status:='ERROR';
967: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
968: FOR l_msg_index IN 1..l_msg_count LOOP
969: fnd_message.set_encoded(fnd_msg_pub.get(l_msg_index));
970: -- dbms_output.put_line(fnd_message.get);
971: l_log_count:= l_log_count + 1;
970: -- dbms_output.put_line(fnd_message.get);
971: l_log_count:= l_log_count + 1;
972: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
973: END LOOP;
974: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
975: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
976: FND_MESSAGE.SET_TOKEN('API_NAME', 'HZ_CONTACT_POINT_V2PUB.create_email_contact_point');
977: l_log_count:= l_log_count + 1;
978: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
1008: x_msg_count => l_msg_count,
1009: x_msg_data => l_msg_data );
1010:
1011:
1012: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1013: l_contact_create_ok := 'FALSE';
1014: x_contact_output_rec.return_status:='ERROR';
1015: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1016: FOR l_msg_index IN 1..l_msg_count LOOP
1011:
1012: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1013: l_contact_create_ok := 'FALSE';
1014: x_contact_output_rec.return_status:='ERROR';
1015: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1016: FOR l_msg_index IN 1..l_msg_count LOOP
1017: fnd_message.set_encoded(fnd_msg_pub.get(l_msg_index));
1018: -- dbms_output.put_line(fnd_message.get);
1019: l_log_count:= l_log_count + 1;
1018: -- dbms_output.put_line(fnd_message.get);
1019: l_log_count:= l_log_count + 1;
1020: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
1021: END LOOP;
1022: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1023: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1024: FND_MESSAGE.SET_TOKEN('API_NAME', 'HZ_CUST_ACCOUNT_ROLE_V2PUB.create_cust_account_role');
1025: l_log_count:= l_log_count + 1;
1026: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
1043: PV_CONTACT_USER_BATCH_PUB.upsert_attributes(
1044: p_api_version_number =>1.0
1045: ,p_init_msg_list =>'T'
1046: ,p_commit =>'F'
1047: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
1048: ,p_attr_details_tbl => l_contact_details_rec.attribute_details_tbl
1049: ,p_contact_rel_id => l_rel_party_id
1050: ,x_log_msg => l_attr_log_msg
1051: ,x_attribute_creation_status => l_attr_status
1110: OPEN USER_EXISTS_FOR_CONTACT(l_rel_party_id) ;
1111: FETCH USER_EXISTS_FOR_CONTACT INTO l_exists_user_name;
1112: CLOSE USER_EXISTS_FOR_CONTACT;
1113:
1114: if l_mode = 'UPDATE' and l_update_allowed = FND_API.G_FALSE then
1115:
1116: if l_exists_user_name is not null then
1117: l_contact_create_ok:= 'FALSE';
1118: x_contact_output_rec.return_status:='ERROR';
1122:
1123:
1124: end if;
1125:
1126: elsif l_mode ='UPDATE' and l_update_allowed =FND_API.G_TRUE then
1127:
1128: if l_contact_details_rec.user_name <> l_exists_user_name then
1129: l_contact_create_ok:= 'FALSE';
1130: x_contact_output_rec.return_status:='ERROR';
1155:
1156: /**********************TEST USER NAME ***********************************************************************************/
1157:
1158: -- dbms_output.put_line('Test user name');
1159: if l_update_allowed = FND_API.G_FALSE OR l_mode='CREATE' then
1160:
1161: l_test_user_return_code := FND_USER_PKG.TestUserName(l_contact_details_rec.user_name);
1162: if l_test_user_return_code = 1 then
1163: l_contact_create_ok:= 'FALSE';
1210: PV_CONTACT_USER_BATCH_PUB.user_create (
1211: p_api_version_number =>1.0
1212: ,p_init_msg_list =>'T'
1213: ,p_commit =>'F'
1214: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
1215: ,p_user_name => l_contact_details_rec.user_name
1216: ,p_password => l_password
1217: ,p_user_type_key =>l_user_type
1218: ,p_contact_rel_id =>l_rel_party_id
1224: else
1225:
1226: PV_CONTACT_USER_BATCH_PUB.user_update (
1227: p_api_version_number =>1.0
1228: ,p_init_msg_list => FND_API.G_TRUE
1229: ,p_commit => FND_API.G_FALSE
1230: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
1231: ,p_user_name => l_contact_details_rec.user_name
1232: ,p_user_type_key => l_user_type
1225:
1226: PV_CONTACT_USER_BATCH_PUB.user_update (
1227: p_api_version_number =>1.0
1228: ,p_init_msg_list => FND_API.G_TRUE
1229: ,p_commit => FND_API.G_FALSE
1230: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
1231: ,p_user_name => l_contact_details_rec.user_name
1232: ,p_user_type_key => l_user_type
1233: ,p_contact_rel_id => l_rel_party_id
1226: PV_CONTACT_USER_BATCH_PUB.user_update (
1227: p_api_version_number =>1.0
1228: ,p_init_msg_list => FND_API.G_TRUE
1229: ,p_commit => FND_API.G_FALSE
1230: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
1231: ,p_user_name => l_contact_details_rec.user_name
1232: ,p_user_type_key => l_user_type
1233: ,p_contact_rel_id => l_rel_party_id
1234: ,x_return_status => l_return_status
1240: end if;
1241: -- dbms_output.put_line('after user creation ' || l_return_status);
1242:
1243:
1244: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1245: l_contact_create_ok := 'FALSE';
1246: x_contact_output_rec.return_status:='ERROR';
1247: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1248: FOR l_msg_index IN 1..l_msg_count LOOP
1243:
1244: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1245: l_contact_create_ok := 'FALSE';
1246: x_contact_output_rec.return_status:='ERROR';
1247: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1248: FOR l_msg_index IN 1..l_msg_count LOOP
1249: fnd_message.set_encoded(fnd_msg_pub.get(l_msg_index));
1250: -- dbms_output.put_line(fnd_message.get);
1251: l_log_count:= l_log_count + 1;
1250: -- dbms_output.put_line(fnd_message.get);
1251: l_log_count:= l_log_count + 1;
1252: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
1253: END LOOP;
1254: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1255: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1256: FND_MESSAGE.SET_TOKEN('API_NAME', 'PV_CONTACT_USER_BATCH_PUB.user_create');
1257: l_log_count:= l_log_count + 1;
1258: l_log_msg(l_log_count):=substrb(fnd_message.get, 1, 1000);
1268: if l_contact_create_ok= 'FALSE' THEN
1269: rollback to contact_create_pvt;
1270: ELSE
1271: x_contact_rel_id:= l_rel_party_id;
1272: x_return_status:= FND_API.G_RET_STS_SUCCESS;
1273: x_contact_output_rec.contact_rel_party_id:=l_rel_party_id;
1274: x_contact_output_rec.return_status:='SUCCESS';
1275: x_contact_output_rec.user_name:=l_contact_details_rec.user_name;
1276: x_contact_output_rec.password:=l_password;
1284:
1285: EXCEPTION
1286:
1287:
1288: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1289: l_contact_create_ok := 'FALSE';
1290: x_contact_output_rec.return_status:='ERROR';
1291: ROLLBACK TO contact_create_pvt;
1292: x_log_msg:=l_log_msg;
1307:
1308:
1309: PROCEDURE user_create (
1310: p_api_version_number IN NUMBER
1311: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1312: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
1313: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
1314: ,p_user_name IN VARCHAR2
1315: ,p_password IN OUT NOCOPY VARCHAR2
1308:
1309: PROCEDURE user_create (
1310: p_api_version_number IN NUMBER
1311: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1312: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
1313: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
1314: ,p_user_name IN VARCHAR2
1315: ,p_password IN OUT NOCOPY VARCHAR2
1316: ,p_user_type_key IN VARCHAR2
1309: PROCEDURE user_create (
1310: p_api_version_number IN NUMBER
1311: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1312: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
1313: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
1314: ,p_user_name IN VARCHAR2
1315: ,p_password IN OUT NOCOPY VARCHAR2
1316: ,p_user_type_key IN VARCHAR2
1317: ,p_contact_rel_id IN NUMBER
1520:
1521: if l_contact_rel_id is null then
1522: fnd_message.SET_NAME ('PV', 'PV_CONTACT_ID_INVALID');
1523: fnd_msg_pub.ADD;
1524: raise FND_API.G_EXC_ERROR;
1525: END IF;
1526:
1527:
1528: OPEN CHECK_CONTACT(l_contact_rel_id) ;
1532:
1533: if l_contact_party_id is null then
1534: fnd_message.SET_NAME ('PV', 'PV_CONTACT_ID_INVALID');
1535: fnd_msg_pub.ADD;
1536: raise FND_API.G_EXC_ERROR;
1537:
1538: END IF;
1539:
1540:
1541:
1542: if l_user_name is null then
1543: fnd_message.SET_NAME ('PV', 'PV_USER_NAME_MISSING');
1544: fnd_msg_pub.ADD;
1545: raise FND_API.G_EXC_ERROR;
1546:
1547: END IF;
1548:
1549: -- dbms_output.put_line('after user name check');
1554: l_sso_enabled := fnd_profile.value('APPS_SSO_USER_CREATE_UPDATE');
1555: if l_sso_enabled = 'N' OR l_sso_enabled = 'FTTT' OR l_sso_enabled = 'FFFF' then
1556: fnd_message.set_name('PV', 'PV_SSO_CREATE_USER_NOT_ALLOWED');
1557: fnd_msg_pub.ADD;
1558: raise FND_API.G_EXC_ERROR;
1559: end if;
1560:
1561: -- dbms_output.put_line('after sso check ');
1562:
1577:
1578: if l_relationship_code is null or l_relationship_code <> 'EMPLOYEE_OF' then
1579: fnd_message.SET_NAME ('PV', 'PV_NOT_EMPLOYEE_REL');
1580: fnd_msg_pub.ADD;
1581: RAISE FND_API.G_EXC_ERROR;
1582: END IF;
1583:
1584: -- dbms_output.put_line('After relationship check');
1585:
1594:
1595: if l_party_status is null or l_party_status <> 'A' then
1596: fnd_message.SET_NAME ('PV', 'PV_CONTACT_NOT_ACTIVE');
1597: fnd_msg_pub.ADD;
1598: RAISE FND_API.G_EXC_ERROR;
1599:
1600: END IF;
1601:
1602:
1618: if l_email_address is null or l_email_address='' then
1619: l_return_status:='E';
1620: l_msg_count:=1;
1621: l_msg_data:='PV_EMAIL_ID_NEEDED';
1622: RAISE FND_API.G_EXC_ERROR;
1623: END IF;
1624:
1625:
1626: -- dbms_output.put_line('BEFORE get contact details');
1652:
1653: JTF_UM_PASSWORD_PVT.generate_password (
1654:
1655: p_api_version_number =>1.0
1656: ,p_init_msg_list =>FND_API.g_false
1657: ,p_commit =>FND_API.g_false
1658: , p_validation_level =>FND_API.G_VALID_LEVEL_FULL
1659: , x_password =>l_gen_password,
1660: x_return_status =>l_return_status,
1653: JTF_UM_PASSWORD_PVT.generate_password (
1654:
1655: p_api_version_number =>1.0
1656: ,p_init_msg_list =>FND_API.g_false
1657: ,p_commit =>FND_API.g_false
1658: , p_validation_level =>FND_API.G_VALID_LEVEL_FULL
1659: , x_password =>l_gen_password,
1660: x_return_status =>l_return_status,
1661: x_msg_count =>l_msg_count,
1654:
1655: p_api_version_number =>1.0
1656: ,p_init_msg_list =>FND_API.g_false
1657: ,p_commit =>FND_API.g_false
1658: , p_validation_level =>FND_API.G_VALID_LEVEL_FULL
1659: , x_password =>l_gen_password,
1660: x_return_status =>l_return_status,
1661: x_msg_count =>l_msg_count,
1662: x_msg_data =>l_msg_data
1667: -- dbms_output.put_line('Message count : '||l_msg_count);
1668: -- dbms_output.put_line('password = :' || l_gen_password);
1669: l_password := l_gen_password;
1670: l_password_date := null;
1671: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1672: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1673: RAISE FND_API.G_EXC_ERROR;
1674: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1675: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1668: -- dbms_output.put_line('password = :' || l_gen_password);
1669: l_password := l_gen_password;
1670: l_password_date := null;
1671: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1672: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1673: RAISE FND_API.G_EXC_ERROR;
1674: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1675: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1676: FND_MESSAGE.SET_TOKEN('API_NAME', 'JTF_UM_PASSWORD_PVT.generate_password ');
1669: l_password := l_gen_password;
1670: l_password_date := null;
1671: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1672: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1673: RAISE FND_API.G_EXC_ERROR;
1674: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1675: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1676: FND_MESSAGE.SET_TOKEN('API_NAME', 'JTF_UM_PASSWORD_PVT.generate_password ');
1677: FND_MSG_PUB.Add;
1670: l_password_date := null;
1671: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1672: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1673: RAISE FND_API.G_EXC_ERROR;
1674: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1675: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1676: FND_MESSAGE.SET_TOKEN('API_NAME', 'JTF_UM_PASSWORD_PVT.generate_password ');
1677: FND_MSG_PUB.Add;
1678: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1674: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1675: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1676: FND_MESSAGE.SET_TOKEN('API_NAME', 'JTF_UM_PASSWORD_PVT.generate_password ');
1677: FND_MSG_PUB.Add;
1678: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1679: END IF;
1680: END IF;
1681:
1682:
1685: if length(l_password) < l_pass_length THEN
1686: l_return_status:='E';
1687: l_msg_count:=1;
1688: l_msg_data:='Password length should be a minimum of '|| l_pass_length;
1689: RAISE FND_API.G_EXC_ERROR;
1690: END IF;
1691:
1692: END IF;
1693:
1730:
1731: PV_USER_MGMT_PVT.register_partner_user
1732: (
1733: p_api_version_number =>1.0
1734: ,p_init_msg_list =>FND_API.g_false
1735: ,p_commit =>FND_API.g_false
1736: ,p_partner_user_rec =>l_partner_user_rec
1737: --,p_isPartial => FND_API.g_false
1738: ,x_return_status => l_return_status ,
1731: PV_USER_MGMT_PVT.register_partner_user
1732: (
1733: p_api_version_number =>1.0
1734: ,p_init_msg_list =>FND_API.g_false
1735: ,p_commit =>FND_API.g_false
1736: ,p_partner_user_rec =>l_partner_user_rec
1737: --,p_isPartial => FND_API.g_false
1738: ,x_return_status => l_return_status ,
1739: x_msg_count => l_msg_count ,
1733: p_api_version_number =>1.0
1734: ,p_init_msg_list =>FND_API.g_false
1735: ,p_commit =>FND_API.g_false
1736: ,p_partner_user_rec =>l_partner_user_rec
1737: --,p_isPartial => FND_API.g_false
1738: ,x_return_status => l_return_status ,
1739: x_msg_count => l_msg_count ,
1740: x_msg_data => l_msg_data
1741: );
1744: -- dbms_output.put_line('Message count : '||l_msg_count);
1745: -- dbms_output.put_line('In user API msgdata=> '|| l_msg_data);
1746:
1747:
1748: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1749: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1750: RAISE FND_API.G_EXC_ERROR;
1751: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1752: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1745: -- dbms_output.put_line('In user API msgdata=> '|| l_msg_data);
1746:
1747:
1748: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1749: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1750: RAISE FND_API.G_EXC_ERROR;
1751: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1752: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1753: FND_MESSAGE.SET_TOKEN('API_NAME', 'PV_USER_MGMT_PVT.register_partner_user ');
1746:
1747:
1748: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1749: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1750: RAISE FND_API.G_EXC_ERROR;
1751: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1752: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1753: FND_MESSAGE.SET_TOKEN('API_NAME', 'PV_USER_MGMT_PVT.register_partner_user ');
1754: FND_MSG_PUB.Add;
1747:
1748: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1749: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1750: RAISE FND_API.G_EXC_ERROR;
1751: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1752: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1753: FND_MESSAGE.SET_TOKEN('API_NAME', 'PV_USER_MGMT_PVT.register_partner_user ');
1754: FND_MSG_PUB.Add;
1755: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1751: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1752: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1753: FND_MESSAGE.SET_TOKEN('API_NAME', 'PV_USER_MGMT_PVT.register_partner_user ');
1754: FND_MSG_PUB.Add;
1755: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1756: END IF;
1757: END IF;
1758:
1759:
1772:
1773:
1774: pv_user_resp_pvt.assign_resp(
1775: p_api_version_number => '1.0'
1776: ,p_init_msg_list => FND_API.G_FALSE
1777: ,p_commit => FND_API.G_true
1778: ,p_user_id => l_user_id
1779: ,p_resp_id => l_resp_id
1780: ,p_app_id => l_app_id
1773:
1774: pv_user_resp_pvt.assign_resp(
1775: p_api_version_number => '1.0'
1776: ,p_init_msg_list => FND_API.G_FALSE
1777: ,p_commit => FND_API.G_true
1778: ,p_user_id => l_user_id
1779: ,p_resp_id => l_resp_id
1780: ,p_app_id => l_app_id
1781: ,x_return_status => l_return_status
1782: ,x_msg_count => l_msg_count
1783: ,x_msg_data => l_msg_data
1784: );
1785:
1786: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1787: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1788: RAISE FND_API.G_EXC_ERROR;
1789: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1790: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1783: ,x_msg_data => l_msg_data
1784: );
1785:
1786: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1787: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1788: RAISE FND_API.G_EXC_ERROR;
1789: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1790: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1791: FND_MESSAGE.SET_TOKEN('API_NAME', 'pv_user_resp_pvt.assign_resp');
1784: );
1785:
1786: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1787: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1788: RAISE FND_API.G_EXC_ERROR;
1789: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1790: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1791: FND_MESSAGE.SET_TOKEN('API_NAME', 'pv_user_resp_pvt.assign_resp');
1792: FND_MSG_PUB.Add;
1785:
1786: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
1787: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
1788: RAISE FND_API.G_EXC_ERROR;
1789: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1790: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1791: FND_MESSAGE.SET_TOKEN('API_NAME', 'pv_user_resp_pvt.assign_resp');
1792: FND_MSG_PUB.Add;
1793: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1789: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1790: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
1791: FND_MESSAGE.SET_TOKEN('API_NAME', 'pv_user_resp_pvt.assign_resp');
1792: FND_MSG_PUB.Add;
1793: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1794: END IF;
1795: END IF;
1796:
1797: END LOOP; -- invalid program objects
1830:
1831:
1832: END IF ; --- USER CREATION ENDS
1833:
1834: x_return_status := FND_API.G_RET_STS_SUCCESS;
1835:
1836:
1837:
1838:
1837:
1838:
1839: EXCEPTION
1840:
1841: WHEN FND_API.G_EXC_ERROR THEN
1842: ROLLBACK TO user_create_pvt;
1843: x_return_status := FND_API.G_RET_STS_ERROR;
1844: x_msg_data:= l_msg_data;
1845: x_msg_count:= l_msg_count;
1839: EXCEPTION
1840:
1841: WHEN FND_API.G_EXC_ERROR THEN
1842: ROLLBACK TO user_create_pvt;
1843: x_return_status := FND_API.G_RET_STS_ERROR;
1844: x_msg_data:= l_msg_data;
1845: x_msg_count:= l_msg_count;
1846: -- Standard call to get message count and if count=1, get the message
1847: FND_MSG_PUB.Count_And_Get (
1844: x_msg_data:= l_msg_data;
1845: x_msg_count:= l_msg_count;
1846: -- Standard call to get message count and if count=1, get the message
1847: FND_MSG_PUB.Count_And_Get (
1848: p_encoded => FND_API.G_FALSE,
1849: p_count => x_msg_count,
1850: p_data => x_msg_data
1851: );
1852:
1856: x_msg_count, x_msg_data, 'ERROR');
1857: hz_utility_v2pub.debug('user_create (-)');
1858: END IF;
1859:
1860: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1861: ROLLBACK TO user_create_pvt;
1862: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1863:
1864: -- Standard call to get message count and if count=1, get the message
1858: END IF;
1859:
1860: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1861: ROLLBACK TO user_create_pvt;
1862: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1863:
1864: -- Standard call to get message count and if count=1, get the message
1865: FND_MSG_PUB.Count_And_Get (
1866: p_encoded => FND_API.G_FALSE,
1862: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1863:
1864: -- Standard call to get message count and if count=1, get the message
1865: FND_MSG_PUB.Count_And_Get (
1866: p_encoded => FND_API.G_FALSE,
1867: p_count => x_msg_count,
1868: p_data => x_msg_data
1869: );
1870:
1876: END IF;
1877:
1878: WHEN OTHERS THEN
1879: ROLLBACK TO user_create_pvt;
1880: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
1881: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
1882: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1883: END IF;
1884:
1883: END IF;
1884:
1885: -- Standard call to get message count and if count=1, get the message
1886: FND_MSG_PUB.Count_And_Get (
1887: p_encoded => FND_API.G_FALSE,
1888: p_count => x_msg_count,
1889: p_data => x_msg_data );
1890:
1891: -- Debug Message
1904:
1905:
1906: PROCEDURE user_update (
1907: p_api_version_number IN NUMBER
1908: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1909: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
1910: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
1911: ,p_user_name IN VARCHAR2
1912: ,p_user_type_key IN VARCHAR2
1905:
1906: PROCEDURE user_update (
1907: p_api_version_number IN NUMBER
1908: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1909: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
1910: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
1911: ,p_user_name IN VARCHAR2
1912: ,p_user_type_key IN VARCHAR2
1913: ,p_contact_rel_id IN NUMBER
1906: PROCEDURE user_update (
1907: p_api_version_number IN NUMBER
1908: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
1909: ,p_commit IN VARCHAR2 := FND_API.G_FALSE
1910: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
1911: ,p_user_name IN VARCHAR2
1912: ,p_user_type_key IN VARCHAR2
1913: ,p_contact_rel_id IN NUMBER
1914: ,x_return_status OUT NOCOPY VARCHAR2
2122:
2123: if l_contact_rel_id is null then
2124: fnd_message.SET_NAME ('PV', 'PV_CONTACT_ID_INVALID');
2125: fnd_msg_pub.ADD;
2126: raise FND_API.G_EXC_ERROR;
2127: END IF;
2128:
2129:
2130: OPEN CHECK_CONTACT(l_contact_rel_id,l_user_name) ;
2134:
2135: if l_contact_party_id is null then
2136: fnd_message.SET_NAME ('PV', 'PV_CONTACT_ID_INVALID');
2137: fnd_msg_pub.ADD;
2138: raise FND_API.G_EXC_ERROR;
2139:
2140: END IF;
2141:
2142:
2143:
2144: if l_user_name is null then
2145: fnd_message.SET_NAME ('PV', 'PV_USER_NAME_MISSING');
2146: fnd_msg_pub.ADD;
2147: raise FND_API.G_EXC_ERROR;
2148:
2149: END IF;
2150:
2151: -- dbms_output.put_line('after user name check');
2156: l_sso_enabled := fnd_profile.value('APPS_SSO_USER_CREATE_UPDATE');
2157: if l_sso_enabled = 'N' OR l_sso_enabled = 'FTTT' OR l_sso_enabled = 'FFFF' then
2158: fnd_message.set_name('PV', 'PV_SSO_CREATE_USER_NOT_ALLOWED');
2159: fnd_msg_pub.ADD;
2160: raise FND_API.G_EXC_ERROR;
2161: end if;
2162:
2163: -- dbms_output.put_line('after sso check ');
2164:
2175:
2176: if l_relationship_code is null or l_relationship_code <> 'EMPLOYEE_OF' then
2177: fnd_message.SET_NAME ('PV', 'PV_NOT_EMPLOYEE_REL');
2178: fnd_msg_pub.ADD;
2179: RAISE FND_API.G_EXC_ERROR;
2180: END IF;
2181:
2182: -- dbms_output.put_line('After relationship check');
2183:
2192:
2193: if l_party_status is null or l_party_status <> 'A' then
2194: fnd_message.SET_NAME ('PV', 'PV_CONTACT_NOT_ACTIVE');
2195: fnd_msg_pub.ADD;
2196: RAISE FND_API.G_EXC_ERROR;
2197:
2198: END IF;
2199:
2200:
2216: if l_email_address is null or l_email_address='' then
2217: l_return_status:='E';
2218: l_msg_count:=1;
2219: l_msg_data:='PV_EMAIL_ID_NEEDED';
2220: RAISE FND_API.G_EXC_ERROR;
2221: END IF;
2222:
2223:
2224: -- dbms_output.put_line('BEFORE get contact details');
2260:
2261: PV_USER_MGMT_PVT.register_partner_user
2262: (
2263: p_api_version_number =>1.0
2264: ,p_init_msg_list =>FND_API.g_false
2265: ,p_commit =>FND_API.g_false
2266: ,p_partner_user_rec =>l_partner_user_rec
2267: --,p_isPartial => FND_API.g_false
2268: ,x_return_status => l_return_status ,
2261: PV_USER_MGMT_PVT.register_partner_user
2262: (
2263: p_api_version_number =>1.0
2264: ,p_init_msg_list =>FND_API.g_false
2265: ,p_commit =>FND_API.g_false
2266: ,p_partner_user_rec =>l_partner_user_rec
2267: --,p_isPartial => FND_API.g_false
2268: ,x_return_status => l_return_status ,
2269: x_msg_count => l_msg_count ,
2263: p_api_version_number =>1.0
2264: ,p_init_msg_list =>FND_API.g_false
2265: ,p_commit =>FND_API.g_false
2266: ,p_partner_user_rec =>l_partner_user_rec
2267: --,p_isPartial => FND_API.g_false
2268: ,x_return_status => l_return_status ,
2269: x_msg_count => l_msg_count ,
2270: x_msg_data => l_msg_data
2271: );
2274: -- dbms_output.put_line('Message count : '||l_msg_count);
2275: -- dbms_output.put_line('In user API msgdata=> '|| l_msg_data);
2276:
2277:
2278: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2279: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2280: RAISE FND_API.G_EXC_ERROR;
2281: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2282: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
2275: -- dbms_output.put_line('In user API msgdata=> '|| l_msg_data);
2276:
2277:
2278: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2279: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2280: RAISE FND_API.G_EXC_ERROR;
2281: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2282: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
2283: FND_MESSAGE.SET_TOKEN('API_NAME', 'PV_USER_MGMT_PVT.register_partner_user ');
2276:
2277:
2278: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2279: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2280: RAISE FND_API.G_EXC_ERROR;
2281: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2282: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
2283: FND_MESSAGE.SET_TOKEN('API_NAME', 'PV_USER_MGMT_PVT.register_partner_user ');
2284: FND_MSG_PUB.Add;
2277:
2278: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2279: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2280: RAISE FND_API.G_EXC_ERROR;
2281: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2282: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
2283: FND_MESSAGE.SET_TOKEN('API_NAME', 'PV_USER_MGMT_PVT.register_partner_user ');
2284: FND_MSG_PUB.Add;
2285: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2281: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2282: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
2283: FND_MESSAGE.SET_TOKEN('API_NAME', 'PV_USER_MGMT_PVT.register_partner_user ');
2284: FND_MSG_PUB.Add;
2285: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2286: END IF;
2287: END IF;
2288:
2289:
2300:
2301: -- dbms_output.put_line(' resp = '|| l_resp_id); -- recompile succeeded
2302: pv_user_resp_pvt.assign_resp(
2303: p_api_version_number => '1.0'
2304: ,p_init_msg_list => FND_API.G_FALSE
2305: ,p_commit => FND_API.G_true
2306: ,p_user_id => l_user_id
2307: ,p_resp_id => l_resp_id
2308: ,p_app_id => l_app_id
2301: -- dbms_output.put_line(' resp = '|| l_resp_id); -- recompile succeeded
2302: pv_user_resp_pvt.assign_resp(
2303: p_api_version_number => '1.0'
2304: ,p_init_msg_list => FND_API.G_FALSE
2305: ,p_commit => FND_API.G_true
2306: ,p_user_id => l_user_id
2307: ,p_resp_id => l_resp_id
2308: ,p_app_id => l_app_id
2309: ,x_return_status => l_return_status
2310: ,x_msg_count => l_msg_count
2311: ,x_msg_data => l_msg_data
2312: );
2313:
2314: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2315: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2316: RAISE FND_API.G_EXC_ERROR;
2317: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2318: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
2311: ,x_msg_data => l_msg_data
2312: );
2313:
2314: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2315: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2316: RAISE FND_API.G_EXC_ERROR;
2317: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2318: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
2319: FND_MESSAGE.SET_TOKEN('API_NAME', 'pv_user_resp_pvt.assign_resp');
2312: );
2313:
2314: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2315: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2316: RAISE FND_API.G_EXC_ERROR;
2317: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2318: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
2319: FND_MESSAGE.SET_TOKEN('API_NAME', 'pv_user_resp_pvt.assign_resp');
2320: FND_MSG_PUB.Add;
2313:
2314: IF (l_return_status <> FND_API.G_RET_STS_SUCCESS) THEN
2315: IF l_return_status = FND_API.G_RET_STS_ERROR THEN
2316: RAISE FND_API.G_EXC_ERROR;
2317: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2318: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
2319: FND_MESSAGE.SET_TOKEN('API_NAME', 'pv_user_resp_pvt.assign_resp');
2320: FND_MSG_PUB.Add;
2321: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2317: ELSIF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
2318: FND_MESSAGE.SET_NAME('PV', 'PV_API_FAILED');
2319: FND_MESSAGE.SET_TOKEN('API_NAME', 'pv_user_resp_pvt.assign_resp');
2320: FND_MSG_PUB.Add;
2321: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
2322: END IF;
2323: END IF;
2324:
2325: END LOOP; -- invalid program objects
2359:
2360:
2361: END IF ; --- USER CREATION ENDS
2362:
2363: x_return_status := FND_API.G_RET_STS_SUCCESS;
2364:
2365:
2366:
2367:
2366:
2367:
2368: EXCEPTION
2369:
2370: WHEN FND_API.G_EXC_ERROR THEN
2371: ROLLBACK TO user_update_pvt;
2372: x_return_status := FND_API.G_RET_STS_ERROR;
2373: x_msg_data:= l_msg_data;
2374: x_msg_count:= l_msg_count;
2368: EXCEPTION
2369:
2370: WHEN FND_API.G_EXC_ERROR THEN
2371: ROLLBACK TO user_update_pvt;
2372: x_return_status := FND_API.G_RET_STS_ERROR;
2373: x_msg_data:= l_msg_data;
2374: x_msg_count:= l_msg_count;
2375: -- Standard call to get message count and if count=1, get the message
2376: FND_MSG_PUB.Count_And_Get (
2373: x_msg_data:= l_msg_data;
2374: x_msg_count:= l_msg_count;
2375: -- Standard call to get message count and if count=1, get the message
2376: FND_MSG_PUB.Count_And_Get (
2377: p_encoded => FND_API.G_FALSE,
2378: p_count => x_msg_count,
2379: p_data => x_msg_data
2380: );
2381:
2385: x_msg_count, x_msg_data, 'ERROR');
2386: hz_utility_v2pub.debug('user_update (-)');
2387: END IF;
2388:
2389: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2390: ROLLBACK TO user_update_pvt;
2391: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2392:
2393: -- Standard call to get message count and if count=1, get the message
2387: END IF;
2388:
2389: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
2390: ROLLBACK TO user_update_pvt;
2391: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2392:
2393: -- Standard call to get message count and if count=1, get the message
2394: FND_MSG_PUB.Count_And_Get (
2395: p_encoded => FND_API.G_FALSE,
2391: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2392:
2393: -- Standard call to get message count and if count=1, get the message
2394: FND_MSG_PUB.Count_And_Get (
2395: p_encoded => FND_API.G_FALSE,
2396: p_count => x_msg_count,
2397: p_data => x_msg_data
2398: );
2399:
2405: END IF;
2406:
2407: WHEN OTHERS THEN
2408: ROLLBACK TO user_update_pvt;
2409: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2410: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2411: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
2412: END IF;
2413:
2412: END IF;
2413:
2414: -- Standard call to get message count and if count=1, get the message
2415: FND_MSG_PUB.Count_And_Get (
2416: p_encoded => FND_API.G_FALSE,
2417: p_count => x_msg_count,
2418: p_data => x_msg_data );
2419:
2420: -- Debug Message
2429: END user_update;
2430:
2431: PROCEDURE Load_Contacts (
2432: p_api_version_number IN NUMBER
2433: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
2434: ,p_mode IN VARCHAR2 := 'EVALUATION'
2435: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
2436: ,x_return_status OUT NOCOPY VARCHAR2
2437: ,x_msg_data OUT NOCOPY VARCHAR2
2431: PROCEDURE Load_Contacts (
2432: p_api_version_number IN NUMBER
2433: ,p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE
2434: ,p_mode IN VARCHAR2 := 'EVALUATION'
2435: ,p_validation_level IN NUMBER := FND_API.G_VALID_LEVEL_FULL
2436: ,x_return_status OUT NOCOPY VARCHAR2
2437: ,x_msg_data OUT NOCOPY VARCHAR2
2438: ,x_msg_count OUT NOCOPY NUMBER
2439: ,p_contact_details_tbl IN CONTACT_DETAILS_TBL_TYPE
2446:
2447: L_API_NAME CONSTANT VARCHAR2(30) := 'Load_Contacts';
2448: L_API_VERSION_NUMBER CONSTANT NUMBER := 1.0;
2449: l_contact_details_rec CONTACT_DETAILS_REC_TYPE ;
2450: l_commit VARCHAR2(100) := FND_API.G_FALSE;
2451: l_return_status VARCHAR2(1);
2452: l_msg_count NUMBER;
2453: l_msg_data VARCHAR2(2000);
2454: l_contact_rel_id NUMBER;
2483:
2484:
2485:
2486: if p_mode = 'EXECUTION' then
2487: l_commit:=FND_API.G_TRUE;
2488: else
2489: l_commit:=FND_API.G_FALSE;
2490: end if;
2491:
2485:
2486: if p_mode = 'EXECUTION' then
2487: l_commit:=FND_API.G_TRUE;
2488: else
2489: l_commit:=FND_API.G_FALSE;
2490: end if;
2491:
2492:
2493:
2582: PV_CONTACT_USER_BATCH_PUB.contact_create (
2583: p_api_version_number =>1.0
2584: ,p_init_msg_list =>'T'
2585: ,p_commit =>'F'
2586: ,p_validation_level => FND_API.G_VALID_LEVEL_FULL
2587: ,p_contact_details_rec => l_contact_details_rec
2588: ,p_update_flag => l_update_allowed
2589: ,x_contact_rel_id => l_contact_rel_id
2590: ,x_contact_output_rec => l_contact_output_rec
2634: END LOOP; -- END FOR LOOP
2635:
2636: -- dbms_output.put_line ('Just before commit' );
2637:
2638: if l_commit = FND_API.G_TRUE then
2639: -- dbms_output.put_line ('I am going to commit' );
2640: Commit;
2641: else
2642: -- dbms_output.put_line ('I am going to rollback data' );
2702:
2703: ROLLBACK;
2704: /* utl_file.put_line(L_LOG_FILE,SQLERRM);
2705: FOR I IN 1..FND_MSG_PUB.Count_Msg LOOP
2706: utl_file.put_line(L_LOG_FILE,Substr(FND_MSG_PUB.Get(p_encoded => FND_API.G_FALSE ),1,1000));
2707: END LOOP;
2708: utl_file.fclose(l_log_file);
2709: */
2710:
2707: END LOOP;
2708: utl_file.fclose(l_log_file);
2709: */
2710:
2711: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR;
2712: IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
2713: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
2714: END IF;
2715:
2714: END IF;
2715:
2716: -- Standard call to get message count and if count=1, get the message
2717: FND_MSG_PUB.Count_And_Get (
2718: p_encoded => FND_API.G_FALSE,
2719: p_count => x_msg_count,
2720: p_data => x_msg_data );
2721:
2722: -- Debug Message