DBA Data[Home] [Help]

PACKAGE BODY: APPS.AHL_UTIL_PKG

Source


1 Package Body AHL_UTIL_PKG AS
2 /* $Header: AHLUTILB.pls 120.0.12010000.3 2008/10/23 11:56:10 jkjain ship $ */
3 
4 
5 ------------------------------------------
6 -- Convert messages on stack into table --
7 ------------------------------------------
8 Procedure ERR_MESG_TO_TABLE (
9     x_err_table  OUT NOCOPY  Err_Tbl_Type )  IS
10 
11 l_msg_count      NUMBER;
12 l_msg_index_out  NUMBER;
13 l_msg_data       VARCHAR2(2000);
14 l_err_rec        Err_Rec_Type;
15 
16 BEGIN
17 
18  -- Standard call to get message count.
19 l_msg_count := FND_MSG_PUB.Count_Msg;
20 
21 FOR i IN 1..l_msg_count LOOP
22   FND_MSG_PUB.get (
23       p_msg_index      => i,
24       p_encoded        => FND_API.G_FALSE,
25       p_data           => l_msg_data,
26       p_msg_index_out  => l_msg_index_out );
27   l_err_rec.msg_index := l_msg_index_out;
28   l_err_rec.msg_data  := l_msg_data;
29 
30   x_err_table(i) := l_err_rec;
31 END LOOP;
32 
33 END;
34 
35 FUNCTION is_pm_installed RETURN VARCHAR2 IS
36 
37 l_pm_install_flag       VARCHAR2(1);
38 l_appln_usage_defined   VARCHAR2(30);
39 l_return_status         VARCHAR2(1) ;
40 
41 BEGIN
42 
43   Get_Appln_Usage(l_appln_usage_defined,l_return_status );
44 
45   IF ( l_appln_usage_defined = 'PM')
46   THEN
47   l_pm_install_flag := 'Y';
48   ELSE
49   l_pm_install_flag := 'N';
50   END IF ;
51 
52   RETURN l_pm_install_flag  ;
53 
54 END is_pm_installed;
55 
56 -----------------------------------------------
57 PROCEDURE  Get_Appln_Usage(x_appln_code OUT NOCOPY VARCHAR2,x_return_status OUT NOCOPY VARCHAR2)
58 AS
59 BEGIN
60 
61   x_appln_code:= rtrim(ltrim(FND_PROFILE.value( 'AHL_APPLN_USAGE' )));
62   IF ( x_appln_code IS NULL ) THEN
63        Fnd_Message.set_name('AHL', 'AHL_COM_APP_PROF_UI');
64        Fnd_Msg_Pub.ADD;
65        x_return_status:=FND_API.G_RET_STS_ERROR;
66   ELSE
67        x_return_status:=FND_API.G_RET_STS_SUCCESS;
68   END IF;
69 
70 END Get_Appln_Usage;
71 
72 -- pdoki added
73 -- Start of Comments --
74 -- Function name : Get_User_Role
75 --
76 -- Parameters :
77 -- p_fnd_function_name Input FND function name.
78 --
79 -- Description : This function is used to retrieve the role associated with the current user
80 FUNCTION Get_User_Role(
81    p_function_key   IN    VARCHAR2 := NULL
82 ) RETURN VARCHAR2
83 
84 IS
85 l_user_role VARCHAR2(30);
86 
87 BEGIN
88 
89 AHL_DEBUG_PUB.debug( 'entering Get_User_Role' );
90 
91 IF ( upper(p_function_key) = 'AHL_DI_VIEW') THEN
92 IF (FND_FUNCTION.TEST('AHL_DI_VIEW')) THEN
93 -- Document Index: View Only User
94 l_user_role := 'AHL_DI_VIEW';
95 END IF;
96 END IF;
97 
98 IF ( upper(p_function_key) = 'AHL_RM_OPERATIONS_VIEW') THEN
99 IF (FND_FUNCTION.TEST('AHL_RM_OPERATIONS_VIEW')) THEN
100 -- Route Management: Operations View Only User
101 l_user_role := 'AHL_RM_OPERATIONS_VIEW';
102 END IF;
103 END IF;
104 
105 IF ( upper(p_function_key) = 'AHL_RM_ROUTES_VIEW') THEN
106 IF (FND_FUNCTION.TEST('AHL_RM_ROUTES_VIEW')) THEN
107 -- Route Management: Routes View Only User
108 l_user_role := 'AHL_RM_ROUTES_VIEW';
109 END IF;
110 END IF;
111 
112 IF ( upper(p_function_key) = 'AHL_FMP_VIEW') THEN
113 IF (FND_FUNCTION.TEST('AHL_FMP_VIEW')) THEN
114 -- Fleet Maintenance Program: View Only User
115 l_user_role := 'AHL_FMP_VIEW';
116 END IF;
117 END IF;
118 
119 AHL_DEBUG_PUB.debug( l_user_role );
120 
121 RETURN l_user_role;
122 
123 EXCEPTION
124 WHEN OTHERS THEN
125 IF FND_MSG_PUB.check_msg_level(FND_MSG_PUB.G_MSG_LVL_UNEXP_ERROR) THEN
126 fnd_msg_pub.add_exc_msg(p_pkg_name => 'AHL_UTIL_PKG',
127 p_procedure_name => 'Get_User_Role',
128 p_error_text => SUBSTR(SQLERRM,1,240));
129 END IF;
130 RETURN NULL;
131 
132 END Get_User_Role;
133 --pdoki ends
134 
135 
136 END AHL_UTIL_PKG;