[Home] [Help]
PACKAGE BODY: APPS.GCS_LEX_MAP_PKG
Source
1 PACKAGE BODY GCS_LEX_MAP_PKG as
2 /* $Header: gcslxmpb.pls 115.1 2003/08/15 19:28:56 jhhuang noship $ */
3
4
5 FUNCTION get_concat_conditions (Derivation_Id NUMBER) RETURN VARCHAR2 IS
6 CURSOR condition_cur(derivId NUMBER) IS
7 select column_name,
8 meaning,
9 comparison_value
10 from gcs_lex_map_conditions,
11 fnd_lookup_values,
12 gcs_lex_map_columns
13 where derivation_id = derivId
14 and source_column_id = column_id
15 and lookup_type = 'COMPARISON_OPERATOR'
16 and lookup_code =comparison_operator_code
17 and language = 'US'
18 and view_application_id = 266;
19
20 cond_text VARCHAR2(1000);
21 v_deriv_id NUMBER(15);
22 v_counter NUMBER(15);
23
24 BEGIN
25
26 v_counter :=0;
27 v_deriv_id := Derivation_Id;
28 --dbms_output.put_line('v_deriv_id= '|| v_deriv_id);
29 FOR cond_record IN condition_cur(v_deriv_id) LOOP
30 --dbms_output.put_line('in the for loop');
31 IF (v_counter >0) THEN
32 --dbms_output.put_line('v_counter = '|| v_counter);
33 cond_text := cond_text || ' AND ';
34 END IF;
35 cond_text := cond_text ||
36 cond_record.column_name || ' ' ||
37 cond_record.meaning;
38 IF(cond_record.comparison_value is not null) THEN
39 cond_text:= cond_text || ' ''' ||
40 cond_record.comparison_value || '''';
41 END IF;
42 v_counter := v_counter + 1 ;
43
44 --dbms_output.put_line(cond_text);
45 END LOOP;
46 RETURN(cond_text);
47
48 EXCEPTION
49 WHEN app_exceptions.application_exception THEN
50 RAISE;
51 WHEN OTHERS THEN
52 fnd_message.set_name('SQLGL', 'GL_UNHANDLED_EXCEPTION');
53 fnd_message.set_token('PROCEDURE', 'gcs_lex_map_pkg.get_concatenated_con
54 ditions');
55
56 RAISE;
57 END get_concat_conditions;
58
59 END GCS_LEX_MAP_PKG;
60
61