DBA Data[Home] [Help]

PACKAGE BODY: APPS.MSC_EVENT

Source


1 package body msc_event as
2 /* $Header: MSCEVNTB.pls 120.1 2005/07/05 12:36:32 vpillari noship $ */
3 
4 function user_name_changed ( p_subscription_guid in     raw
5                            , p_event             in out nocopy wf_event_t
6                            ) return varchar2 is
7   cursor dblink is
8   select trim(a2m_dblink)
9   from   mrp_ap_apps_instances;
10   db     varchar2(2000);
11   updsql varchar2(32000);
12   key    varchar2(401);
13   newVal varchar2(200);
14   oldVal varchar2(200);
15 
16 begin
17   log('start');
18   open   dblink;
19   fetch  dblink into db;
20   close  dblink;
21   key    := p_event.getEventKey();
22   newVal := substr(key,1,instr(key,':')-1);
23   oldVal := substr(key,instr(key,':')+1);
24   if db is not null then
25     updsql := 'update msc_planners'||'@'||db;
26   else
27     updsql := 'update msc_planners ';
28   end if;
29   updsql := updsql||' set user_name = '''||newVal||
30             ''' where '||' user_name = '''||oldVal||'''';
31   execute immediate updsql;
32   log('after update ');
33   return SUCCESS;
34 exception
35   when others then
36     return ( handleError ( PKG_NAME
37                          , 'user_name_changed'
38                          , p_event
39                          , p_subscription_guid
40                          , ERROR
41                          ));
42 
43 end user_name_changed;
44 
45 function handleError     ( p_pkg_name          in     varchar2
46                          , p_function_name     in     varchar2
47                          , p_event             in out nocopy wf_event_t
48                          , p_subscription_guid in     raw
49                          , p_error_type        in     varchar2
50                          ) return varchar2 is
51 
52   l_error_type varchar2(100);
53 
54 begin
55   if p_error_type in (ERROR,WARNING) then
56     l_error_type := p_error_type;
57   else
58     l_error_type := p_error_type;
59   end if;
60   if l_error_type = WARNING then
61      wf_core.context ( p_pkg_name
62                      , p_function_name
63                      , p_event.getEventName()
64                      , p_subscription_guid
65                      );
66      wf_event.setErrorInfo (p_event, WARNING);
67      return WARNING;
68   else
69      wf_core.context ( p_pkg_name
70                      , p_function_name
71                      , p_event.getEventName()
72                      , p_subscription_guid
73                      );
74      wf_event.setErrorInfo (p_event, ERROR);
75      return ERROR;
76   end if;
77 end handleError;
78 
79 
80 procedure log (msg in varchar2) is
81 begin
82   if (fnd_log.level_statement >= fnd_log.g_current_runtime_level ) then
83     fnd_log.string ( fnd_log.level_statement
84                    , PKG_NAME
85                    , msg
86                    );
87   end if;
88 end log;
89 
90 end msc_event;