[Home] [Help]
PACKAGE BODY: APPS.HXC_ALIAS_TYPES_CHKS
Source
1 PACKAGE BODY HXC_ALIAS_TYPES_CHKS as
2 /* $Header: hxcaltchk.pkb 115.6 2004/01/13 14:44:43 jdupont noship $ */
3 PROCEDURE Check_Sql(X_P_ID IN NUMBER,
4 P_SQL_WC OUT NOCOPY VARCHAR2,
5 P_SQL_NC OUT NOCOPY VARCHAR2,
6 P_RET OUT NOCOPY VARCHAR2
7 ) is
8 l_select_nid varchar2(32000);
9 l_select_wid varchar2(32000);
10
11 Begin
12 p_id := X_P_ID;
13 p_name := G_MISS_CHAR;
14
15 fnd_flex_val_api.get_table_vset_select
16 (
17 P_VALUE_SET_ID => p_id
18 ,p_inc_id_col => 'N'
19 , p_inc_meaning_col => 'N'
20 ,X_SELECT => l_select_nid
21 ,X_MAPPING_CODE => p_X_mapping_code
22 ,X_SUCCESS => p_X_success);
23 fnd_flex_val_api.get_table_vset_select
24 (
25 P_VALUE_SET_ID => p_id
26 , p_inc_meaning_col => 'N'
27 ,X_SELECT => l_select_wid
28 ,X_MAPPING_CODE => p_X_mapping_code
29 ,X_SUCCESS => p_X_success);
30
31 if (l_select_nid = l_select_wid ) then
32 raise invalid_sql;
33 end if;
34
35 fnd_flex_val_api.GET_TABLE_VSET_SELECT
36 (
37 P_VALUE_SET_ID => p_id
38 ,P_VALUE_SET_NAME => p_name
39 ,p_inc_addtl_quickpick_cols => 'Y'
40 ,X_SELECT => p_X_SELECT_WC
41 ,X_MAPPING_CODE => p_X_MAPPING_CODE
42 ,X_SUCCESS => p_X_SUCCESS
43 );
44 if (p_X_SUCCESS <> 0)
45 then RAISE invalid_sql;
46 end if;
47
48 fnd_flex_val_api.GET_TABLE_VSET_SELECT
49 (
50 P_VALUE_SET_ID => p_id
51 ,P_VALUE_SET_NAME => p_name
52 ,X_SELECT => p_X_SELECT_NC
53 ,X_MAPPING_CODE => p_X_MAPPING_CODE
54 ,X_SUCCESS => p_X_SUCCESS
55 );
56 if (p_X_SUCCESS <> 0)
57 then RAISE invalid_sql;
58 end if;
59 c := dbms_sql.open_cursor;
60 -- test your SQL
61 dbms_sql.parse( c , p_X_SELECT_WC,dbms_sql.native);--dbms_sql.native) ;
62 -- get the column into rec_tab pl/sql table
63 dbms_sql.describe_columns( c , col_cnt , rec_tab ) ;
64 dbms_sql.close_cursor (c);
65 P_SQL_WC:=p_X_SELECT_WC;
66 P_SQL_NC:=p_X_SELECT_NC;
67 P_RET:='S';
68 return;
69 exception
70 when invalid_sql then
71 P_RET := 'E';
72 return;
73 when others then
74 P_RET := 'S';
75 P_SQL_WC :='E';
76 return;
77
78 End Check_Sql;
79
80 Procedure get_id_string (X_P_ID IN NUMBER,
81 P_SQL_WC OUT NOCOPY varchar2,
82 P_SQL_NC OUT NOCOPY varchar2,
83 P_RET OUT NOCOPY varchar2) is
84 l_select_nid varchar2(32000);
85 l_select_wid varchar2(32000);
86 Begin
87 p_id := X_P_ID;
88 p_name := G_MISS_CHAR;
89
90 fnd_flex_val_api.get_table_vset_select
91 (
92 P_VALUE_SET_ID => p_id
93 ,p_inc_id_col => 'N'
94 , p_inc_meaning_col => 'N'
95 ,X_SELECT => l_select_nid
96 ,X_MAPPING_CODE => p_X_mapping_code
97 ,X_SUCCESS => p_X_success);
98 -- Bug 2815168
99 if (p_X_SUCCESS <> 0)
100 then RAISE invalid_sql;
101 end if;
102 -- End bug 2815168
103 fnd_flex_val_api.get_table_vset_select
104 (
105 P_VALUE_SET_ID => p_id
106 , p_inc_meaning_col => 'N'
107 ,X_SELECT => l_select_wid
108 ,X_MAPPING_CODE => p_X_mapping_code
109 ,X_SUCCESS => p_X_success);
110
111 -- Bug 2815168
112 if (p_X_SUCCESS <> 0)
113 then RAISE invalid_sql;
114 end if;
115 -- End Bug 2815168
116
117 P_SQL_WC := l_select_wid;
118 P_SQL_NC := l_select_nid;
119 return;
120 exception
121 when invalid_sql then
122 P_RET := 'E';
123 return;
124 when others then
125 P_RET := 'S';
126 P_SQL_WC :='E';
127 return;
128 end get_id_string;
129
130 END HXC_ALIAS_TYPES_CHKS;