[Home] [Help]
PACKAGE BODY: APPS.FND_API
Source
1 PACKAGE BODY FND_API AS
2 /* $Header: AFASAPIB.pls 115.1 99/07/16 23:08:33 porting sh $ */
3
4 -- Constants used as tokens for unexpected error messages.
5
6 G_PKG_NAME CONSTANT VARCHAR2(15):= 'FND_API';
7
8 -- FUNCTION Compatible_API_Call
9 --
10 -- Desc Checks if a call to an API is has the same major
11 -- version number as the API major version number.
12 -- If they are the same it returns TRUE, if not, it
13 -- returns FALSE and writes a message to the message
14 -- table.
15
16 FUNCTION Compatible_API_Call
17 ( p_current_version_number IN NUMBER,
18 p_caller_version_number IN NUMBER,
19 p_api_name IN VARCHAR2,
20 p_pkg_name IN VARCHAR2
21 ) RETURN BOOLEAN
22 IS
23 BEGIN
24
25 IF TRUNC(p_current_version_number) = TRUNC(p_caller_version_number) THEN
26
27 RETURN TRUE; -- Compatible call
28
29 ELSIF TRUNC(p_current_version_number) > TRUNC(p_caller_version_number) THEN
30
31 -- Incompatible call
32
33 FND_MESSAGE.SET_NAME ('FND','FND_AS_INCOMPATIBLE_API_CALL');
34 FND_MESSAGE.SET_TOKEN ('API_NAME', p_api_name );
35 FND_MESSAGE.SET_TOKEN ('PKG_NAME', p_pkg_name );
36 FND_MESSAGE.SET_TOKEN ('CURR_VER_NUM',p_current_version_number);
37 FND_MESSAGE.SET_TOKEN ('CALLER_VER_NUM',p_caller_version_number);
38
39 FND_MSG_PUB.Add;
40 RETURN FALSE;
41
42 ELSE -- Invalid caller version number
43
44 FND_MESSAGE.SET_NAME ('FND','FND_AS_INVALID_VER_NUM');
45 FND_MESSAGE.SET_TOKEN ('API_NAME', p_api_name );
46 FND_MESSAGE.SET_TOKEN ('PKG_NAME', p_pkg_name );
47 FND_MESSAGE.SET_TOKEN ('CURR_VER_NUM',p_current_version_number);
48 FND_MESSAGE.SET_TOKEN ('CALLER_VER_NUM',p_caller_version_number);
49
50 FND_MSG_PUB.Add;
51 RETURN FALSE;
52
53 END IF;
54
55 END; -- Compatible_API_Call
56
57 -- FUNCTION To_Boolean
58 --
59
60 FUNCTION To_Boolean ( p_char IN VARCHAR2 )
61 RETURN BOOLEAN
62 IS
63 BEGIN
64
65 IF p_char = G_TRUE THEN
66 RETURN TRUE;
67 ELSIF p_char = G_FALSE THEN
68 RETURN FALSE;
69 ELSIF p_char IS NULL THEN
70 RETURN NULL;
71 ELSE
72
73 -- Unrecognized character.
74
75 FND_MSG_PUB.Add_Exc_Msg
76 ( p_pkg_name => G_PKG_NAME ,
77 p_procedure_name => 'TO_BOOLEAN' ,
78 p_error_text => 'Unrecognized character : '||p_char
79 );
80
81 RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
82
83 END IF;
84
85 END To_Boolean;
86
87 END FND_API; -- FND_API package body.
88