DBA Data[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;