DBA Data[Home] [Help]

PACKAGE BODY: APPS.ISG_BPEL_CTX_PKG

Source


1 PACKAGE body ISG_BPEL_CTX_PKG AS
2 /* $Header: ISGBPELCTXB.pls 120.0.12020000.5 2013/05/21 09:55:27 smunnalu noship $ */
3 pAppsBaseLang fnd_languages.nls_language%type;
4 
5 
6 function  getAppsBaseLang
7 return varchar2
8 is
9 begin
10 
11          IF ISG_BPEL_CTX_PKG.pAppsBaseLang IS NULL THEN
12          	SELECT language_code
13         	INTO   ISG_BPEL_CTX_PKG.pAppsBaseLang
14         	FROM   fnd_languages
15         	WHERE  Installed_flag = 'B';
16          END IF;
17          return ISG_BPEL_CTX_PKG.pAppsBaseLang;
18 
19 end;
20 
21 
22 
23  procedure getUserLang( userId Number,
24                         lang_code OUT NOCOPY  varchar2)
25     is
26     	pTemp fnd_languages.nls_language%type;
27     begin
28                             pTemp:=fnd_profile.value_specific('ICX_LANGUAGE',user_id=>userId);
29                             SELECT language_code
30                             INTO   lang_code
31                             FROM   fnd_languages
32                             WHERE  nls_language = pTemp
33                             and Installed_flag in ('B','I');
34     exception
35     	WHEN No_Data_found THEN
36     		lang_code :=ISG_BPEL_CTX_PKG.getAppsBaseLang;
37     end;
38 
39 
40 PROCEDURE GET_MESSAGE( pUserName VARCHAR2,
41                        pLang                VARCHAR2,
42                        pAdapterErrorCode    VARCHAR2,
43 		       pISGErrorDetail  VARCHAR2,
44                        PApiName VARCHAR2,
45 		       pOperationName VARCHAR2,
46 		       pinstanceId   VARCHAR2,
47 		       pconversationId VARCHAR2,
48                        pISGErrorMsg OUT NOCOPY   VARCHAR2,
49 		       pISGErrorCode OUT NOCOPY  VARCHAR2,
50 		       pResolution OUT NOCOPY VARCHAR2
51                        )
52 IS
53 pUserID NUMBER;
54 pLangCode VARCHAR2(10);
55 
56 BEGIN
57 pLangCode:='US';
58 
59 SELECT isg_code
60 INTO pISGErrorCode
61 FROM error_codes_map
62 WHERE adapter_code = pAdapterErrorCode;
63 
64 IF (pISGErrorCode IS NULL) THEN
65   pISGErrorCode := 'ISG_SYSTEM_ERROR';
66   pResolution := 'System error, please see service log trace for details';
67 ELSE
68 SELECT description
69 INTO pResolution
70 FROM error_codes_map
71 WHERE adapter_code = pAdapterErrorCode;
72 END IF;
73 
74 
75 SELECT user_id
76 INTO pUserID
77 FROM fnd_user
78 WHERE user_name = upper(pUserName);
79 IF ( pLang IS NULL OR pISGErrorCode = 'ISG_INVALID_LANGUAGE_CODE') THEN
80                 --No language specified get the details from profile, else default to US
81 ISG_BPEL_CTX_PKG.getUserLang( pUserID, pLangCode);
82 ELSE
83 SELECT language_code
84 INTO   pLangCode
85 FROM   fnd_languages
86 WHERE  nls_language = upper(pLang)
87 and Installed_flag in ('B','I');
88 END IF;
89 SELECT message_text
90 INTO pISGErrorMsg
91 FROM fnd_new_messages
92 WHERE message_name = pISGErrorCode
93 AND  language_code = pLangCode;
94 ISG_RAISE_EVENT(PApiName, pOperationName, pinstanceId, pconversationId, pISGErrorCode, pISGErrorMsg, pISGErrorDetail);
95 END GET_MESSAGE;
96 
97 
98 
99 PROCEDURE ISG_RAISE_EVENT( PApiName VARCHAR2,
100 		       pOperationName VARCHAR2,
101 		       pinstanceId   VARCHAR2,
102 		       pconversationId VARCHAR2,
103 		       pISGErrorCode    VARCHAR2,
104                        pISGErrorMsg   VARCHAR2,
105                        pISGErrorDetail VARCHAR2
106                        )
107 IS
108 l_parameterlist  wf_parameter_list_t := wf_parameter_list_t();
109 l_eventKey varchar2(50);
110 BEGIN
111 wf_event.AddParameterToList('API_NAME', PApiName, l_parameterlist);
112 wf_event.AddParameterToList('OPERATION_NAME', pOperationName, l_parameterlist);
113 wf_event.AddParameterToList('BPEL_INSTANCE_ID', pinstanceId, l_parameterlist);
114 wf_event.AddParameterToList('BPEL_CONVERSATION_ID', pconversationId, l_parameterlist);
115 wf_event.AddParameterToList('ERROR_CODE', pISGErrorCode, l_parameterlist);
116 wf_event.AddParameterToList('ERROR_MESSAGE', pISGErrorMsg, l_parameterlist);
117 wf_event.AddParameterToList('ERROR_DETAIL', pISGErrorDetail, l_parameterlist);
118 l_eventKey := to_char(sysdate,'DD/MM/YYYY HH24:MI:SS');
119 wf_event.raise(p_event_name => 'oracle.apps.fnd.isg.error.handle',
120                 p_event_key  => l_eventKey,
121                 p_parameters => l_parameterlist );
122 
123 
124 
125 END ISG_RAISE_EVENT;
126 
127 
128 
129 
130 END ISG_BPEL_CTX_PKG;