122: l_conversion_type VARCHAR2(30) ;
123:
124: BEGIN
125: -- Initialize return status to success.
126: x_return_status := FND_API.G_RET_STS_SUCCESS;
127:
128: -- Give call to Function to get the Profile value defined for Currency Conversion type
129: -- Profile option Has to be defined -- Dt : 10/23/99
130: l_conversion_type := FND_PROFILE.Value('AMS_CURR_CONVERSION_TYPE');
156: -- transaction currency and functional currency
157: FND_MESSAGE.Set_Name('AMS', 'AMS_TRIG_CURR_NO_RATE');
158: FND_MSG_PUB.Add;
159: END IF;
160: x_return_status := FND_API.G_RET_STS_ERROR;
161:
162: -- If any error happens abort API.
163: RETURN;
164: WHEN GL_CURRENCY_API.INVALID_CURRENCY THEN
167: -- Atleast One of the two Currencies specified is invalid
168: FND_MESSAGE.Set_Name('AMS', 'AMS_TRIG_INVALID_CURR');
169: FND_MSG_PUB.Add;
170: END IF;
171: x_return_status := FND_API.G_RET_STS_ERROR;
172:
173: -- If any error happens abort API.
174: RETURN;
175:
199: -- End of Comments
200:
201:
202: PROCEDURE Validate_Sql( p_api_version IN NUMBER,
203: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
204:
205: x_return_status OUT NOCOPY VARCHAR2,
206: x_msg_count OUT NOCOPY NUMBER ,
207: x_msg_data OUT NOCOPY VARCHAR2,
281:
282: --
283: -- Initialize message list if p_init_msg_list is set to TRUE.
284: --
285: IF FND_API.To_Boolean( p_init_msg_list ) THEN
286: FND_MSG_PUB.Initialize;
287: END IF;
288:
289: --
288:
289: --
290: -- Standard call to check for call compatibility.
291: --
292: IF NOT FND_API.Compatible_API_Call ( l_api_version,
293: p_api_version,
294: l_api_name,
295: G_PKG_NAME)
296: THEN
293: p_api_version,
294: l_api_name,
295: G_PKG_NAME)
296: THEN
297: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
298: END IF;
299:
300: -- Initialize API return status to success
301: x_return_status := FND_API.G_RET_STS_SUCCESS;
297: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
298: END IF;
299:
300: -- Initialize API return status to success
301: x_return_status := FND_API.G_RET_STS_SUCCESS;
302:
303: --
304: -- API body
305: -- Take the sql query into PLSQL table
398: FND_MESSAGE.set_name('AMS', 'AMS_TRIG_INVALID_DISC_TOOROW');
399: FND_MSG_PUB.Add;
400: END IF;
401: DBMS_SQL.Close_Cursor(l_cur_hdl) ;
402: x_return_status := FND_API.G_RET_STS_ERROR;
403: -- If any errors happen abort API/Procedure.
404: RAISE FND_API.G_EXC_ERROR;
405: ELSIF l_rows = 0 THEN
406: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR)
400: END IF;
401: DBMS_SQL.Close_Cursor(l_cur_hdl) ;
402: x_return_status := FND_API.G_RET_STS_ERROR;
403: -- If any errors happen abort API/Procedure.
404: RAISE FND_API.G_EXC_ERROR;
405: ELSIF l_rows = 0 THEN
406: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR)
407: THEN -- MMSG
408: -- dbms_OUTPUT.Put_Line('The SQL statement in Discoverer is invalid: returns no rows');
409: FND_MESSAGE.set_name('AMS', 'AMS_TRIG_INVALID_DISC_NOROW');
410: FND_MSG_PUB.Add;
411: END IF;
412: DBMS_SQL.Close_Cursor(l_cur_hdl) ;
413: x_return_status := FND_API.G_RET_STS_ERROR;
414: -- If any errors happen abort API/Procedure.
415: RAISE FND_API.G_EXC_ERROR;
416: END IF;
417: -- dbms_OUTPUT.Put_Line('returns one row');
411: END IF;
412: DBMS_SQL.Close_Cursor(l_cur_hdl) ;
413: x_return_status := FND_API.G_RET_STS_ERROR;
414: -- If any errors happen abort API/Procedure.
415: RAISE FND_API.G_EXC_ERROR;
416: END IF;
417: -- dbms_OUTPUT.Put_Line('returns one row');
418:
419: -- If query returns only one row check whether it returns only one column
426: FND_MESSAGE.set_name('AMS', 'AMS_TRIG_INVALID_DISC_TOOCOL');
427: FND_MSG_PUB.Add;
428: END IF;
429: DBMS_SQL.Close_Cursor(l_cur_hdl) ;
430: x_return_status := FND_API.G_RET_STS_ERROR;
431: -- If any errors happen abort API/Procedure.
432: RAISE FND_API.G_EXC_ERROR;
433: END IF;
434: -- dbms_OUTPUT.Put_Line('returns one column');
428: END IF;
429: DBMS_SQL.Close_Cursor(l_cur_hdl) ;
430: x_return_status := FND_API.G_RET_STS_ERROR;
431: -- If any errors happen abort API/Procedure.
432: RAISE FND_API.G_EXC_ERROR;
433: END IF;
434: -- dbms_OUTPUT.Put_Line('returns one column');
435: -- If query returns only one column check whether the datatype is number
436:
443: FND_MESSAGE.set_name('AMS', 'AMS_TRIG_INVALID_DISC_NONUM');
444: FND_MSG_PUB.Add;
445: END IF;
446: DBMS_SQL.Close_Cursor(l_cur_hdl) ;
447: x_return_status := FND_API.G_RET_STS_ERROR;
448: -- If any errors happen abort API/Procedure.
449: RAISE FND_API.G_EXC_ERROR;
450: END IF;
451:
445: END IF;
446: DBMS_SQL.Close_Cursor(l_cur_hdl) ;
447: x_return_status := FND_API.G_RET_STS_ERROR;
448: -- If any errors happen abort API/Procedure.
449: RAISE FND_API.G_EXC_ERROR;
450: END IF;
451:
452:
453: -- If column is number return the number
472: -- dbms_OUTPUT.Put_Line('The SQL statement in Discoverer is invalid: Datatype of the column is not Number');
473: FND_MESSAGE.set_name('AMS', 'AMS_TRIG_INVALID_DISC_NONUM');
474: FND_MSG_PUB.Add;
475: END IF;
476: x_return_status := FND_API.G_Ret_Sts_Error ;
477: DBMS_SQL.Close_Cursor(l_cur_hdl);
478: -- If any errors happen abort API/Procedure.
479: RAISE FND_API.G_EXC_ERROR;
480: END;
475: END IF;
476: x_return_status := FND_API.G_Ret_Sts_Error ;
477: DBMS_SQL.Close_Cursor(l_cur_hdl);
478: -- If any errors happen abort API/Procedure.
479: RAISE FND_API.G_EXC_ERROR;
480: END;
481:
482:
483: ELSE -- It is Native SQL
505: -- dbms_OUTPUT.Put_Line('The SQL statement in Discoverer is invalid: returns more than one column');
506: FND_MESSAGE.set_name('AMS', 'AMS_TRIG_INVALID_DISC_TOOCOL');
507: FND_MSG_PUB.Add;
508: END IF;
509: x_return_status := FND_API.G_RET_STS_ERROR;
510: -- If any errors happen abort API/Procedure.
511: RAISE FND_API.G_EXC_ERROR;
512: EXCEPTION
513: WHEN valid_no_columns THEN
507: FND_MSG_PUB.Add;
508: END IF;
509: x_return_status := FND_API.G_RET_STS_ERROR;
510: -- If any errors happen abort API/Procedure.
511: RAISE FND_API.G_EXC_ERROR;
512: EXCEPTION
513: WHEN valid_no_columns THEN
514: -- The query Returns only one row , So the query is right
515: -- dbms_output.put_line('Query Returns only one row');
518: AMS_Utility_PVT.debug_message(l_full_name ||': Query Returns One row');
519: END IF;
520: Null;
521: WHEN OTHERS THEN
522: x_return_status := FND_API.G_RET_STS_ERROR;
523: -- If any errors happen abort API/Procedure.
524: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
525: END;
526:
520: Null;
521: WHEN OTHERS THEN
522: x_return_status := FND_API.G_RET_STS_ERROR;
523: -- If any errors happen abort API/Procedure.
524: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
525: END;
526:
527: -- Now Check for No of rows and Column Datatype
528: BEGIN
534: -- dbms_OUTPUT.Put_Line('The SQL statement in Discoverer is invalid: returns no rows');
535: FND_MESSAGE.set_name('AMS', 'AMS_TRIG_INVALID_DISC_NOROW');
536: FND_MSG_PUB.Add;
537: END IF;
538: x_return_status := FND_API.G_RET_STS_ERROR;
539: -- If any errors happen abort API/Procedure.
540: RAISE FND_API.G_EXC_ERROR;
541: WHEN TOO_MANY_ROWS THEN
542: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR)
536: FND_MSG_PUB.Add;
537: END IF;
538: x_return_status := FND_API.G_RET_STS_ERROR;
539: -- If any errors happen abort API/Procedure.
540: RAISE FND_API.G_EXC_ERROR;
541: WHEN TOO_MANY_ROWS THEN
542: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR)
543: THEN -- MMSG
544: -- dbms_OUTPUT.Put_Line('The SQL statement in Discoverer is invalid: returns more than one row');
544: -- dbms_OUTPUT.Put_Line('The SQL statement in Discoverer is invalid: returns more than one row');
545: FND_MESSAGE.set_name('AMS', 'AMS_TRIG_INVALID_DISC_TOOROW');
546: FND_MSG_PUB.Add;
547: END IF;
548: x_return_status := FND_API.G_RET_STS_ERROR;
549: -- If any errors happen abort API/Procedure.
550: RAISE FND_API.G_EXC_ERROR;
551:
552: WHEN INVALID_NUMBER THEN
546: FND_MSG_PUB.Add;
547: END IF;
548: x_return_status := FND_API.G_RET_STS_ERROR;
549: -- If any errors happen abort API/Procedure.
550: RAISE FND_API.G_EXC_ERROR;
551:
552: WHEN INVALID_NUMBER THEN
553: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR)
554: THEN -- MMSG
555: -- dbms_OUTPUT.Put_Line('The SQL statement in Discoverer is invalid: Column should be a NUMBER value');
556: FND_MESSAGE.set_name('AMS', 'AMS_TRIG_INVALID_DISC_NONUM');
557: FND_MSG_PUB.Add;
558: END IF;
559: x_return_status := FND_API.G_RET_STS_ERROR;
560: -- If any errors happen abort API/Procedure.
561: RAISE FND_API.G_EXC_ERROR;
562:
563: WHEN OTHERS THEN
557: FND_MSG_PUB.Add;
558: END IF;
559: x_return_status := FND_API.G_RET_STS_ERROR;
560: -- If any errors happen abort API/Procedure.
561: RAISE FND_API.G_EXC_ERROR;
562:
563: WHEN OTHERS THEN
564: IF FND_MSG_PUB.Check_Msg_Level (FND_MSG_PUB.G_MSG_LVL_ERROR)
565: THEN -- MMSG
566: -- dbms_OUTPUT.Put_Line('The SQL statement in Discoverer is invalid:');
567: FND_MESSAGE.set_name('AMS', 'AMS_TRIG_INVALID_DISC_SQL');
568: FND_MSG_PUB.Add;
569: END IF;
570: x_return_status := FND_API.G_RET_STS_ERROR;
571: -- If any errors happen abort API/Procedure.
572: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
573: END;
574:
568: FND_MSG_PUB.Add;
569: END IF;
570: x_return_status := FND_API.G_RET_STS_ERROR;
571: -- If any errors happen abort API/Procedure.
572: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
573: END;
574:
575: --
576: -- Debug Message
600: -- Standard call to get message count AND IF count is 1, get message info.
601: FND_MSG_PUB.Count_AND_Get
602: ( p_count => x_msg_count,
603: p_data => x_msg_data,
604: p_encoded => FND_API.G_FALSE
605: );
606:
607:
608:
607:
608:
609: EXCEPTION
610:
611: WHEN FND_API.G_EXC_ERROR THEN
612:
613: x_return_status := FND_API.G_Ret_Sts_Error ;
614:
615: FND_MSG_PUB.Count_And_Get
609: EXCEPTION
610:
611: WHEN FND_API.G_EXC_ERROR THEN
612:
613: x_return_status := FND_API.G_Ret_Sts_Error ;
614:
615: FND_MSG_PUB.Count_And_Get
616: ( p_count => x_msg_count,
617: p_data => x_msg_data,
614:
615: FND_MSG_PUB.Count_And_Get
616: ( p_count => x_msg_count,
617: p_data => x_msg_data,
618: p_encoded => FND_API.G_FALSE
619: );
620:
621:
622: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
618: p_encoded => FND_API.G_FALSE
619: );
620:
621:
622: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
623:
624: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
625:
626: FND_MSG_PUB.Count_And_Get
620:
621:
622: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
623:
624: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
625:
626: FND_MSG_PUB.Count_And_Get
627: ( p_count => x_msg_count,
628: p_data => x_msg_data,
625:
626: FND_MSG_PUB.Count_And_Get
627: ( p_count => x_msg_count,
628: p_data => x_msg_data,
629: p_encoded => FND_API.G_FALSE
630: );
631:
632:
633:
632:
633:
634: WHEN OTHERS THEN
635:
636: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
637:
638: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR )
639: THEN
640: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
642:
643: FND_MSG_PUB.Count_AND_Get
644: ( p_count => x_msg_count,
645: p_data => x_msg_data,
646: p_encoded => FND_API.G_FALSE
647: );
648:
649:
650:
695:
696: l_count NUMBER ;
697: BEGIN
698: -- Initialize API return status to success
699: x_return_status := FND_API.G_RET_STS_SUCCESS;
700:
701: OPEN c_act_det ;
702: FETCH c_act_det INTO l_count ;
703: CLOSE c_act_det;
718: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
719: FND_MSG_PUB.Add;
720: END IF;
721:
722: RAISE FND_API.G_EXC_ERROR;
723: END IF;
724: x_result_id := null ;
725: ELSE
726: -- Insert
792: END IF;
793:
794: EXCEPTION
795: WHEN OTHERS THEN
796: x_return_status := FND_API.G_RET_STS_ERROR ;
797: END Record_Result ;
798:
799: -- Start of Comments
800: --
816: -- End of Comments
817:
818: PROCEDURE Schedule_Next_Trigger_Run
819: (p_api_version IN NUMBER,
820: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
821: p_commit IN VARCHAR2 := FND_API.G_FALSE,
822: p_trigger_id IN NUMBER,
823: x_msg_count OUT NOCOPY NUMBER,
824: x_msg_data OUT NOCOPY VARCHAR2,
817:
818: PROCEDURE Schedule_Next_Trigger_Run
819: (p_api_version IN NUMBER,
820: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
821: p_commit IN VARCHAR2 := FND_API.G_FALSE,
822: p_trigger_id IN NUMBER,
823: x_msg_count OUT NOCOPY NUMBER,
824: x_msg_data OUT NOCOPY VARCHAR2,
825: x_return_status OUT NOCOPY VARCHAR2,
866:
867: --
868: -- Initialize message list IF p_init_msg_list is set to TRUE.
869: --
870: IF FND_API.to_Boolean( p_init_msg_list ) THEN
871: FND_MSG_PUB.initialize;
872: END IF;
873:
874: --
873:
874: --
875: -- Standard call to check for call compatibility.
876: --
877: IF NOT FND_API.Compatible_API_Call ( l_api_version,
878: p_api_version,
879: l_api_name,
880: G_PKG_NAME)
881: THEN
878: p_api_version,
879: l_api_name,
880: G_PKG_NAME)
881: THEN
882: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
883: END IF;
884:
885: --
886: -- Initialize API return status to success
884:
885: --
886: -- Initialize API return status to success
887: --
888: x_return_status := FND_API.G_RET_STS_SUCCESS;
889:
890: --
891: -- API Body
892: --
931: ElSIF l_trigger.repeat_frequency_type = 'HOURLY' THEN
932: l_sch_date := l_cur_date + (l_trigger.repeat_every_x_frequency/24) ;
933: /*
934: --cgoyal fixed the trigger reschedule error on 27 May 03.
935: IF (l_trigger.repeat_daily_start_time IS NOT NULL) AND (l_trigger.repeat_daily_start_time <> FND_API.G_MISS_DATE) AND (l_trigger.repeat_daily_end_time IS NOT NULL) AND (l_trigger.repeat_daily_end_time <> FND_API.G_MISS_DATE) THEN
936: IF l_sch_date > l_trigger.repeat_daily_end_time THEN
937: l_tmp := TO_CHAR(l_sch_date+1,'DD') ;
938: l_str := l_tmp||to_char(l_sch_date,'-MON-YYYY')||' '|| to_char(l_trigger.repeat_daily_start_time,'HH:MI:SS AM') ;
939: l_sch_date := TO_DATE(l_str) ;
958:
959: x_out_time => l_user_last_run_date_time
960: ) ;
961:
962: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
963: RAISE FND_API.G_EXC_ERROR ;
964: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
965: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
966: END IF;
959: x_out_time => l_user_last_run_date_time
960: ) ;
961:
962: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
963: RAISE FND_API.G_EXC_ERROR ;
964: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
965: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
966: END IF;
967:
960: ) ;
961:
962: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
963: RAISE FND_API.G_EXC_ERROR ;
964: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
965: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
966: END IF;
967:
968: AMS_Utility_PVT.Convert_Timezone(
961:
962: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
963: RAISE FND_API.G_EXC_ERROR ;
964: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
965: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
966: END IF;
967:
968: AMS_Utility_PVT.Convert_Timezone(
969: p_init_msg_list => p_init_msg_list,
977:
978: x_out_time => l_user_next_run_date_time
979: ) ;
980:
981: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
982: RAISE FND_API.G_EXC_ERROR ;
983: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
984: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
985: END IF;
978: x_out_time => l_user_next_run_date_time
979: ) ;
980:
981: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
982: RAISE FND_API.G_EXC_ERROR ;
983: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
984: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
985: END IF;
986:
979: ) ;
980:
981: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
982: RAISE FND_API.G_EXC_ERROR ;
983: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
984: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
985: END IF;
986:
987: ----------------------------------------------------------------
980:
981: IF x_return_status = FND_API.G_RET_STS_ERROR THEN
982: RAISE FND_API.G_EXC_ERROR ;
983: ELSIF x_return_status = FND_API.G_RET_STS_ERROR THEN
984: RAISE FND_API.G_EXC_UNEXPECTED_ERROR ;
985: END IF;
986:
987: ----------------------------------------------------------------
988: -- End of Code added by ptendulk on 26th Apr
1011: FND_MESSAGE.set_name('AMS', 'AMS_API_RECORD_NOT_FOUND');
1012: FND_MSG_PUB.Add;
1013: END IF;
1014:
1015: RAISE FND_API.G_EXC_ERROR;
1016: END IF;
1017:
1018: -- Assign the out Value
1019: x_sch_date := l_sch_date ;
1032: --
1033: --
1034: -- Standard check of p_commit.
1035: --
1036: IF FND_API.To_Boolean ( p_commit )
1037: THEN
1038: COMMIT WORK;
1039: END IF;
1040:
1043: --
1044: FND_MSG_PUB.Count_AND_Get
1045: ( p_count => x_msg_count,
1046: p_data => x_msg_data,
1047: p_encoded => FND_API.G_FALSE
1048: );
1049:
1050:
1051: EXCEPTION
1049:
1050:
1051: EXCEPTION
1052:
1053: WHEN FND_API.G_EXC_ERROR THEN
1054:
1055: x_return_status := FND_API.G_RET_STS_ERROR ;
1056:
1057: FND_MSG_PUB.Count_And_Get
1051: EXCEPTION
1052:
1053: WHEN FND_API.G_EXC_ERROR THEN
1054:
1055: x_return_status := FND_API.G_RET_STS_ERROR ;
1056:
1057: FND_MSG_PUB.Count_And_Get
1058: ( p_count => x_msg_count,
1059: p_data => x_msg_data,
1056:
1057: FND_MSG_PUB.Count_And_Get
1058: ( p_count => x_msg_count,
1059: p_data => x_msg_data,
1060: p_encoded => FND_API.G_FALSE
1061: );
1062:
1063:
1064: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1060: p_encoded => FND_API.G_FALSE
1061: );
1062:
1063:
1064: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1065:
1066: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1067:
1068: FND_MSG_PUB.Count_And_Get
1062:
1063:
1064: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1065:
1066: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1067:
1068: FND_MSG_PUB.Count_And_Get
1069: ( p_count => x_msg_count,
1070: p_data => x_msg_data,
1067:
1068: FND_MSG_PUB.Count_And_Get
1069: ( p_count => x_msg_count,
1070: p_data => x_msg_data,
1071: p_encoded => FND_API.G_FALSE
1072: );
1073:
1074:
1075: WHEN OTHERS THEN
1073:
1074:
1075: WHEN OTHERS THEN
1076:
1077: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1078:
1079: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR )
1080: THEN
1081: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1083:
1084: FND_MSG_PUB.Count_AND_Get
1085: ( p_count => x_msg_count,
1086: p_data => x_msg_data,
1087: p_encoded => FND_API.G_FALSE
1088: );
1089:
1090:
1091: END Schedule_Next_Trigger_Run ;
1110: -- 31-aug-2005 soagrawa Modified to add variance and variance percentage for R12 Monitors
1111: -- End of Comments
1112:
1113: PROCEDURE Perform_Checks(p_api_version IN NUMBER ,
1114: p_init_msg_list IN VARCHAR2 := FND_API.G_FALSE,
1115:
1116: x_msg_count OUT NOCOPY NUMBER,
1117: x_msg_data OUT NOCOPY VARCHAR2,
1118: x_return_status OUT NOCOPY VARCHAR2,
1191:
1192: --
1193: -- Initialize message list IF p_init_msg_list is set to TRUE.
1194: --
1195: IF FND_API.to_Boolean( p_init_msg_list ) THEN
1196: FND_MSG_PUB.initialize;
1197: END IF;
1198:
1199: --
1198:
1199: --
1200: -- Standard call to check for call compatibility.
1201: --
1202: IF NOT FND_API.Compatible_API_Call ( l_api_version,
1203: p_api_version,
1204: l_api_name,
1205: G_PKG_NAME)
1206: THEN
1203: p_api_version,
1204: l_api_name,
1205: G_PKG_NAME)
1206: THEN
1207: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1208: END IF;
1209:
1210: -- Initialize API return status to success
1211: x_return_status := FND_API.G_RET_STS_SUCCESS;
1207: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1208: END IF;
1209:
1210: -- Initialize API return status to success
1211: x_return_status := FND_API.G_RET_STS_SUCCESS;
1212:
1213: --
1214: -- API body
1215: --
1221: THEN
1222: AMS_REFRESHMETRIC_PVT.Refresh_Metric (
1223: p_api_version => p_api_version,
1224: p_init_msg_list => p_init_msg_list,
1225: p_commit => FND_API.G_FALSE,
1226: x_return_status => l_return_status,
1227: x_msg_count => x_msg_count,
1228: x_msg_data => x_msg_data,
1229: p_arc_act_metric_used_by => l_trigger_checks.chk1_arc_source_code_from,
1229: p_arc_act_metric_used_by => l_trigger_checks.chk1_arc_source_code_from,
1230: p_act_metric_used_by_id => l_trigger_checks.chk1_source_code_metric_id
1231: );
1232:
1233: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1234: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1235: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1236: RAISE FND_API.G_EXC_ERROR;
1237: END IF;
1230: p_act_metric_used_by_id => l_trigger_checks.chk1_source_code_metric_id
1231: );
1232:
1233: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1234: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1235: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1236: RAISE FND_API.G_EXC_ERROR;
1237: END IF;
1238:
1231: );
1232:
1233: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1234: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1235: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1236: RAISE FND_API.G_EXC_ERROR;
1237: END IF;
1238:
1239: END IF;
1232:
1233: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1234: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1235: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1236: RAISE FND_API.G_EXC_ERROR;
1237: END IF;
1238:
1239: END IF;
1240:
1246: THEN
1247: AMS_REFRESHMETRIC_PVT.Refresh_Metric (
1248: p_api_version => p_api_version,
1249: p_init_msg_list => p_init_msg_list,
1250: p_commit => FND_API.G_FALSE,
1251: x_return_status => l_return_status,
1252: x_msg_count => x_msg_count,
1253: x_msg_data => x_msg_data,
1254: p_arc_act_metric_used_by => l_trigger_checks.chk2_arc_source_code_from,
1254: p_arc_act_metric_used_by => l_trigger_checks.chk2_arc_source_code_from,
1255: p_act_metric_used_by_id => l_trigger_checks.chk2_source_code_metric_id
1256: );
1257:
1258: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1259: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1260: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1261: RAISE FND_API.G_EXC_ERROR;
1262: END IF;
1255: p_act_metric_used_by_id => l_trigger_checks.chk2_source_code_metric_id
1256: );
1257:
1258: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1259: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1260: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1261: RAISE FND_API.G_EXC_ERROR;
1262: END IF;
1263: END IF;
1256: );
1257:
1258: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1259: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1260: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1261: RAISE FND_API.G_EXC_ERROR;
1262: END IF;
1263: END IF;
1264: END IF;
1257:
1258: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1259: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1260: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1261: RAISE FND_API.G_EXC_ERROR;
1262: END IF;
1263: END IF;
1264: END IF;
1265: END IF;
1345:
1346:
1347: -- dbms_OUTPUT.Put_Line('Value of the Discoverer 1: '||l_rhs_val);
1348: -- If any errors happen abort API.
1349: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1350: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1351: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1352: RAISE FND_API.G_EXC_ERROR;
1353: END IF;
1346:
1347: -- dbms_OUTPUT.Put_Line('Value of the Discoverer 1: '||l_rhs_val);
1348: -- If any errors happen abort API.
1349: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1350: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1351: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1352: RAISE FND_API.G_EXC_ERROR;
1353: END IF;
1354: END IF;
1347: -- dbms_OUTPUT.Put_Line('Value of the Discoverer 1: '||l_rhs_val);
1348: -- If any errors happen abort API.
1349: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1350: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1351: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1352: RAISE FND_API.G_EXC_ERROR;
1353: END IF;
1354: END IF;
1355: --insert_log_mesg ('Anirban just AFTER validate sql api, value of variable l_rhs_val: the api retutns the result: '||l_rhs_val);
1348: -- If any errors happen abort API.
1349: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1350: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1351: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1352: RAISE FND_API.G_EXC_ERROR;
1353: END IF;
1354: END IF;
1355: --insert_log_mesg ('Anirban just AFTER validate sql api, value of variable l_rhs_val: the api retutns the result: '||l_rhs_val);
1356: IF l_trigger_checks.chk2_type = 'STATIC_VALUE' THEN
1375: p_to_currency_code => l_trigger_checks.chk2_currency_code,
1376: p_orig_amount => l_uom_val,
1377: x_converted_amount => l_final_val
1378: ) ;
1379: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1380: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1381: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1382: RAISE FND_API.G_EXC_ERROR;
1383: END IF;
1376: p_orig_amount => l_uom_val,
1377: x_converted_amount => l_final_val
1378: ) ;
1379: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1380: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1381: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1382: RAISE FND_API.G_EXC_ERROR;
1383: END IF;
1384: ELSE
1377: x_converted_amount => l_final_val
1378: ) ;
1379: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1380: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1381: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1382: RAISE FND_API.G_EXC_ERROR;
1383: END IF;
1384: ELSE
1385: l_final_val := l_uom_val ;
1378: ) ;
1379: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1380: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1381: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1382: RAISE FND_API.G_EXC_ERROR;
1383: END IF;
1384: ELSE
1385: l_final_val := l_uom_val ;
1386:
1477: x_result_id => x_result_id,
1478: x_return_status => x_return_status ) ;
1479:
1480: -- If any errors happen abort API.
1481: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1482: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1483: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1484: RAISE FND_API.G_EXC_ERROR;
1485: END IF;
1478: x_return_status => x_return_status ) ;
1479:
1480: -- If any errors happen abort API.
1481: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1482: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1483: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1484: RAISE FND_API.G_EXC_ERROR;
1485: END IF;
1486:
1479:
1480: -- If any errors happen abort API.
1481: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1482: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1483: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1484: RAISE FND_API.G_EXC_ERROR;
1485: END IF;
1486:
1487: --insert_log_mesg ('Anirban , just AFTER Record_Result gets called :: '||p_trigger_id);
1480: -- If any errors happen abort API.
1481: IF l_return_status = FND_API.G_RET_STS_UNEXP_ERROR THEN
1482: RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
1483: ELSIF l_return_status = FND_API.G_RET_STS_ERROR THEN
1484: RAISE FND_API.G_EXC_ERROR;
1485: END IF;
1486:
1487: --insert_log_mesg ('Anirban , just AFTER Record_Result gets called :: '||p_trigger_id);
1488: --insert_log_mesg ('Anirban , just AFTER Record_Result gets called :: '||l_lhs_val);
1498: --
1499: FND_MSG_PUB.Count_AND_Get
1500: ( p_count => x_msg_count,
1501: p_data => x_msg_data,
1502: p_encoded => FND_API.G_FALSE
1503: );
1504:
1505: IF (AMS_DEBUG_HIGH_ON) THEN
1506:
1512:
1513:
1514: EXCEPTION
1515:
1516: WHEN FND_API.G_EXC_ERROR THEN
1517:
1518: Record_Result(p_result_for_id => p_trigger_id,
1519: p_chk1_value => l_lhs_val,
1520: p_chk2_value => x_check_val,
1524: p_check_met => NULL,
1525: x_result_id => x_result_id,
1526: x_return_status => x_return_status) ;
1527:
1528: x_return_status := FND_API.G_RET_STS_ERROR ;
1529:
1530: FND_MSG_PUB.Count_And_Get
1531: ( p_count => x_msg_count,
1532: p_data => x_msg_data,
1529:
1530: FND_MSG_PUB.Count_And_Get
1531: ( p_count => x_msg_count,
1532: p_data => x_msg_data,
1533: p_encoded => FND_API.G_FALSE
1534: );
1535:
1536:
1537: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1533: p_encoded => FND_API.G_FALSE
1534: );
1535:
1536:
1537: WHEN FND_API.G_EXC_UNEXPECTED_ERROR THEN
1538:
1539: Record_Result(p_result_for_id => p_trigger_id,
1540: p_chk1_value => l_lhs_val,
1541: p_chk2_value => x_check_val,
1545: p_check_met => NULL,
1546: x_result_id => x_result_id,
1547: x_return_status => x_return_status) ;
1548:
1549: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1550:
1551: FND_MSG_PUB.Count_And_Get
1552: ( p_count => x_msg_count,
1553: p_data => x_msg_data,
1550:
1551: FND_MSG_PUB.Count_And_Get
1552: ( p_count => x_msg_count,
1553: p_data => x_msg_data,
1554: p_encoded => FND_API.G_FALSE
1555: );
1556:
1557:
1558: WHEN OTHERS THEN
1566: p_check_met => NULL,
1567: x_result_id => x_result_id,
1568: x_return_status => x_return_status) ;
1569:
1570: x_return_status := FND_API.G_RET_STS_UNEXP_ERROR ;
1571:
1572: IF FND_MSG_PUB.Check_Msg_Level ( FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR )
1573: THEN
1574: FND_MSG_PUB.Add_Exc_Msg( G_PKG_NAME,l_api_name);
1576:
1577: FND_MSG_PUB.Count_AND_Get
1578: ( p_count => x_msg_count,
1579: p_data => x_msg_data,
1580: p_encoded => FND_API.G_FALSE
1581: );
1582:
1583:
1584: END Perform_checks ;