DBA Data[Home] [Help]

PACKAGE BODY: APPS.FTP_CONDITION_PVT

Source


1 Package BODY ftp_condition_pvt AS
2 /* $Header: ftpcondb.pls 120.1 2006/08/24 14:42:14 ashukuma noship $ */
3 
4 
5 /**
6   * Function to get object_id from fnd_objects goven a object name.
7   * @param     p_object_name    Object Name
8   * @return    object_id      Object Identifier
9   */
10 FUNCTION get_dim_member_name(p_dimension_id IN NUMBER, p_member_id IN VARCHAR2)
11   RETURN VARCHAR2 IS
12   l_member_table    fem_xdim_dimensions.member_vl_object_name%TYPE;
13   l_member_id_col   fem_xdim_dimensions.member_col%TYPE;
14   l_member_name_col fem_xdim_dimensions.member_name_col%TYPE;
15   l_member_name     VARCHAR2(150);
16   l_select_stmt     VARCHAR2(500);
17   l_cursor_id       INTEGER;
18   l_Dummy           INTEGER;
19 BEGIN
20   -- Open the cursor for processing.
21   l_cursor_id := DBMS_SQL.OPEN_CURSOR;
22 
23   -- Create the query string.
24   SELECT member_vl_object_name, member_col, member_name_col
25   INTO l_member_table, l_member_id_col, l_member_name_col
26   FROM fem_xdim_dimensions
27   WHERE dimension_id = p_dimension_id;
28 
29   l_select_stmt := 'SELECT ' || l_member_name_col ||
30                    ' FROM '  || l_member_table ||
31                    ' WHERE ' || l_member_id_col || '=:member_id';
32 
33   -- Parse the statement
34   DBMS_SQL.PARSE(l_cursor_id, l_select_stmt, DBMS_SQL.NATIVE);
35 
36   -- Bind the input variables.
37   DBMS_SQL.BIND_VARIABLE(l_cursor_id, ':member_id', p_member_id);
38 
39   -- Define the select list items.
40   DBMS_SQL.DEFINE_COLUMN(l_cursor_id, 1, l_member_name, 150);
41 
42   l_Dummy := DBMS_SQL.EXECUTE(l_cursor_id);
43 
44   IF DBMS_SQL.FETCH_ROWS(l_cursor_id) = 0 THEN
45     RETURN null;
46   ELSE
47     DBMS_SQL.COLUMN_VALUE(l_cursor_id, 1, l_member_name);
48   END IF;
49 DBMS_SQL.CLOSE_CURSOR (l_cursor_id );
50   RETURN l_member_name;
51 END;
52 
53 
54 END;