[Home] [Help]
PACKAGE BODY: APPS.TAPI_DEV_KIT
Source
1 PACKAGE BODY TAPI_DEV_KIT AS
2 /* $Header: cscttdkb.pls 115.2 99/07/16 08:54:56 porting ship $ */
3 --------------------------------------------------------------------------------
4 -- FUNCTION start_activity
5 --------------------------------------------------------------------------------
6 FUNCTION start_activity(
7 p_api_name IN VARCHAR2,
8 p_pkg_name IN VARCHAR2,
9 p_current_version_number IN NUMBER,
10 p_caller_version_number IN NUMBER,
11 p_init_msg_list IN VARCHAR2,
12 p_api_type IN VARCHAR2,
13 x_return_status OUT VARCHAR2
14 ) RETURN VARCHAR2 IS
15 -- PL/SQL Block
16 BEGIN
17 -- Standard START OF API SAVEPOINT
18
19 DBMS_TRANSACTION.SAVEPOINT(p_api_name || p_api_type);
20 IF NOT FND_API.Compatible_API_CALL(
21 p_current_version_number,
22 p_caller_version_number,
23 p_api_name,
24 p_pkg_name)
25 THEN
26 RETURN(FND_API.G_RET_STS_UNEXP_ERROR);
27 ---RAISE FND_API.G_EXC_UNEXPECTED_ERROR;
28 END IF;
29
30 -- Initialize message list IF p_init_msg_list IS SET TO TRUE
31 IF FND_API.to_boolean(p_init_msg_list) THEN
32 FND_MSG_PUB.initialize;
33 END IF;
34 x_return_status := FND_API.G_RET_STS_SUCCESS;
35 RETURN(FND_API.G_RET_STS_SUCCESS);
36
37 END start_activity;
38 --------------------------------------------------------------------------------
39 -- FUNCTION handle_exceptions
40 --------------------------------------------------------------------------------
41 FUNCTION handle_exceptions (
42 p_api_name IN VARCHAR2,
43 p_pkg_name IN VARCHAR2,
44 p_exc_name IN VARCHAR2,
45 x_msg_count OUT NUMBER,
46 x_msg_data OUT VARCHAR2,
47 p_api_type IN VARCHAR2,
48 p_others_err_msg IN VARCHAR2
49 ) RETURN VARCHAR2 IS
50 l_return_value VARCHAR2(200) := FND_API.G_RET_STS_UNEXP_ERROR;
51 BEGIN
52 DBMS_TRANSACTION.ROLLBACK_SAVEPOINT(p_api_name || p_api_type);
53 IF p_exc_name = 'FND_API.G_RET_STS_ERROR' THEN
54 FND_MSG_PUB.Count_And_Get
55 (
56 p_encoded => FND_API.G_FALSE,
57 p_count => x_msg_count,
58 p_data => x_msg_data
59 );
60 l_return_value := FND_API.G_RET_STS_ERROR;
61 ELSIF p_exc_name = 'FND_API.G_RET_STS_UNEXP_ERROR' THEN
62 FND_MSG_PUB.Count_And_Get
63 (
64 p_encoded => FND_API.G_FALSE,
65 p_count => x_msg_count,
66 p_data => x_msg_data
67 );
68 ELSIF p_exc_name = 'TAPI_DEV_KIT.G_RET_STS_DUP_VAL_ON_INDEX' THEN
69 TAPI_DEV_KIT.set_message('CS','CS_ALL_DUPLICATE_VALUE');
70 FND_MSG_PUB.Count_And_Get
71 (
72 p_encoded => FND_API.G_FALSE,
73 p_count => x_msg_count,
74 p_data => x_msg_data
75 );
76 ELSE -- WHEN OTHERS EXCEPTION
77 IF (p_others_err_msg IS NOT NULL) THEN
78 TAPI_DEV_KIT.set_message('CS', 'CS_ORACLE_ERROR', 'ERR_MSG',
79 p_others_err_msg);
80 END IF;
81 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR)
82 THEN
83 FND_MSG_PUB.Add_Exc_Msg
84 (
85 p_pkg_name,
86 p_api_name,
87 p_api_name
88 );
89 END IF;
90 FND_MSG_PUB.Count_And_Get
91 (
92 p_encoded => FND_API.G_FALSE,
93 p_count => x_msg_count,
94 p_data => x_msg_data
95 );
96 END IF;
97 RETURN(l_return_value);
98 END handle_exceptions;
99
100 FUNCTION handle_exceptions (
101 p_api_name IN VARCHAR2,
102 p_pkg_name IN VARCHAR2,
103 p_exc_name IN VARCHAR2,
104 x_msg_count OUT NUMBER,
105 x_msg_data OUT VARCHAR2,
106 p_api_type IN VARCHAR2
107 ) RETURN VARCHAR2 IS
108 BEGIN
109 RETURN(handle_exceptions( p_api_name => p_api_name,
110 p_pkg_name => p_pkg_name,
111 p_exc_name => p_exc_name,
112 x_msg_count => x_msg_count,
113 x_msg_data => x_msg_data,
114 p_api_type => p_api_type,
115 p_others_err_msg => ''));
116 END handle_exceptions;
117 --------------------------------------------------------------------------------
118 -- FUNCTION end_activity
119 --------------------------------------------------------------------------------
120 PROCEDURE end_activity
121 (
122 P_COMMIT IN VARCHAR2,
123 X_MSG_COUNT IN OUT NUMBER,
124 X_MSG_DATA IN OUT VARCHAR2
125 ) IS
126 BEGIN
127 --- Standard CHECK OF p_commit
128
129 IF FND_API.To_Boolean( p_commit ) THEN
130 COMMIT WORK;
131 END IF;
132
133 --- Standard call to get message count and if count is 1, get message info
134
135 FND_MSG_PUB.Count_And_Get
136 (
137 p_count => x_msg_count,
138 p_data => x_msg_data
139 );
140 END end_activity;
141
142 --------------------------------------------------------------------------------
143 -- PROCEDURE get_who_info
144 --------------------------------------------------------------------------------
145 PROCEDURE get_who_info (
146 x_creation_date IN OUT DATE,
147 x_created_by IN OUT NUMBER,
148 x_last_update_date IN OUT DATE,
149 x_last_updated_by IN OUT NUMBER,
150 x_last_update_login IN OUT NUMBER
151 ) IS
152 BEGIN
153 x_creation_date := SYSDATE;
154 x_last_update_date := SYSDATE;
155
156 x_last_update_login := FND_GLOBAL.login_id;
157 x_created_by := FND_GLOBAL.user_id;
158 x_last_updated_by := FND_GLOBAL.user_id;
159 END get_who_info;
160
161 PROCEDURE get_who_info (
162 x_last_update_date IN OUT DATE,
163 x_last_updated_by IN OUT NUMBER,
164 x_last_update_login IN OUT NUMBER
165 ) IS
166 l_creation_date DATE;
167 l_created_by NUMBER;
168 BEGIN
169 get_who_info( x_creation_date => l_creation_date,
170 x_created_by => l_created_by,
171 x_last_update_date => x_last_update_date,
172 x_last_updated_by => x_last_updated_by,
173 x_last_update_login => x_last_update_login);
174 END get_who_info;
175
176 PROCEDURE get_who_info (
177 x_creation_date IN OUT DATE,
178 x_created_by IN OUT NUMBER
179 ) IS
180 l_last_update_date DATE;
181 l_last_updated_by NUMBER;
182 l_last_update_login NUMBER;
183 BEGIN
184 get_who_info( x_creation_date => x_creation_date,
185 x_created_by => x_created_by,
186 x_last_update_date => l_last_update_date,
187 x_last_updated_by => l_last_updated_by,
188 x_last_update_login => l_last_update_login);
189 END get_who_info;
190 --------------------------------------------------------------------------------
191 -- PROCEDURE set_message
192 --------------------------------------------------------------------------------
193 PROCEDURE set_message
194 (
195 P_APP_NAME IN VARCHAR2,
196 P_MSG_NAME IN VARCHAR2,
197 P_MSG_TOKEN IN VARCHAR2,
198 P_MSG_VALUE IN VARCHAR2
199 ) IS
200 BEGIN
201 --Check the message level and add an error message to the API msg list
202 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
203 THEN
204 FND_MESSAGE.SET_NAME( P_APP_NAME, P_MSG_NAME);
205 FND_MESSAGE.SET_TOKEN(P_MSG_TOKEN, P_MSG_VALUE);
206 -- FND_MSG_PUB.Add;
207 END IF;
208 END set_message;
209
210 PROCEDURE set_message
211 (
212 P_APP_NAME IN VARCHAR2,
213 P_MSG_NAME IN VARCHAR2
214 ) IS
215 BEGIN
216 --Check the message level and add an error message to the API msg list
217 IF FND_MSG_PUB.Check_Msg_Level(FND_MSG_PUB.G_MSG_LVL_ERROR)
218 THEN
219 FND_MESSAGE.SET_NAME( P_APP_NAME, P_MSG_NAME);
220 -- FND_MSG_PUB.Add;
221 END IF;
222 END set_message;
223
224 --------------------------------------------------------------------------------
225 -- FUNCTION get_primary_key
226 --------------------------------------------------------------------------------
227 FUNCTION get_primary_key
228 (
229 P_SEQ_NAME IN VARCHAR2
230 ) RETURN NUMBER IS
231 v_sql_stmt VARCHAR2(80);
232 v_cursor_id INTEGER;
233 v_dummy INTEGER;
234 x_id NUMBER;
235 Begin
236 v_cursor_id := dbms_sql.open_cursor;
237 v_sql_stmt := 'Select ' || p_seq_name || '.nextval seq into :x_id from dual' ;
238 dbms_sql.parse(v_cursor_id, v_sql_stmt, DBMS_SQL.V7);
239 dbms_sql.define_column(v_cursor_id, 1, x_id);
240 v_dummy := dbms_sql.execute_and_fetch(v_cursor_id);
241 dbms_sql.column_value(v_cursor_id, 1, x_id);
242 return(x_id);
243 End get_primary_key;
244 --------------------------------------------------------------------------------
245 -- FUNCTION g_miss_num_f
246 --------------------------------------------------------------------------------
247 FUNCTION g_miss_num_f RETURN NUMBER IS
248 BEGIN
249 RETURN(tapi_dev_kit.G_MISS_NUM);
250 END g_miss_num_f;
251 --------------------------------------------------------------------------------
252 -- FUNCTION g_miss_date_f
253 --------------------------------------------------------------------------------
254 FUNCTION g_miss_date_f RETURN DATE IS
255 BEGIN
256 RETURN(tapi_dev_kit.G_MISS_DATE);
257 END g_miss_date_f;
258 --------------------------------------------------------------------------------
259 -- FUNCTION g_miss_char_f
260 --------------------------------------------------------------------------------
261 FUNCTION g_miss_char_f RETURN VARCHAR2 IS
262 BEGIN
263 RETURN(tapi_dev_kit.G_MISS_CHAR);
264 END g_miss_char_f;
265
266 END tapi_dev_kit;