23: avalue in wf_event_t)
24: is
25: begin
26: if ((nid is null) or (aname is null)) then
27: wf_core.token('NID', to_char(nid));
28: wf_core.token('ANAME', aname);
29: wf_core.raise('WFSQL_ARGS');
30: end if;
31:
24: is
25: begin
26: if ((nid is null) or (aname is null)) then
27: wf_core.token('NID', to_char(nid));
28: wf_core.token('ANAME', aname);
29: wf_core.raise('WFSQL_ARGS');
30: end if;
31:
32: -- Update attribute value
25: begin
26: if ((nid is null) or (aname is null)) then
27: wf_core.token('NID', to_char(nid));
28: wf_core.token('ANAME', aname);
29: wf_core.raise('WFSQL_ARGS');
30: end if;
31:
32: -- Update attribute value
33: update WF_NOTIFICATION_ATTRIBUTES
34: set EVENT_VALUE = avalue
35: where NOTIFICATION_ID = nid and NAME = aname;
36:
37: if (SQL%NOTFOUND) then
38: wf_core.token('NID', to_char(nid));
39: wf_core.token('ATTRIBUTE', aname);
40: wf_core.raise('WFNTF_ATTR');
41: end if;
42:
35: where NOTIFICATION_ID = nid and NAME = aname;
36:
37: if (SQL%NOTFOUND) then
38: wf_core.token('NID', to_char(nid));
39: wf_core.token('ATTRIBUTE', aname);
40: wf_core.raise('WFNTF_ATTR');
41: end if;
42:
43: exception
36:
37: if (SQL%NOTFOUND) then
38: wf_core.token('NID', to_char(nid));
39: wf_core.token('ATTRIBUTE', aname);
40: wf_core.raise('WFNTF_ATTR');
41: end if;
42:
43: exception
44: when others then
41: end if;
42:
43: exception
44: when others then
45: wf_core.context('Wf_Notification_Util', 'SetAttrEvent', to_char(nid), aname);
46: raise;
47: end SetAttrEvent;
48:
49: -- GetAttrEvent Bug# 2376197
60: return wf_event_t is
61: lvalue wf_event_t;
62: begin
63: if ((nid is null) or (aname is null)) then
64: wf_core.token('NID', to_char(nid));
65: wf_core.token('ANAME', aname);
66: wf_core.raise('WFSQL_ARGS');
67: end if;
68:
61: lvalue wf_event_t;
62: begin
63: if ((nid is null) or (aname is null)) then
64: wf_core.token('NID', to_char(nid));
65: wf_core.token('ANAME', aname);
66: wf_core.raise('WFSQL_ARGS');
67: end if;
68:
69: begin
62: begin
63: if ((nid is null) or (aname is null)) then
64: wf_core.token('NID', to_char(nid));
65: wf_core.token('ANAME', aname);
66: wf_core.raise('WFSQL_ARGS');
67: end if;
68:
69: begin
70: select WNA.EVENT_VALUE
72: from WF_NOTIFICATION_ATTRIBUTES WNA
73: where WNA.NOTIFICATION_ID = nid and WNA.NAME = aname;
74: exception
75: when no_data_found then
76: wf_core.token('NID', to_char(nid));
77: wf_core.token('ATTRIBUTE', aname);
78: wf_core.raise('WFNTF_ATTR');
79: end;
80: return(lvalue);
73: where WNA.NOTIFICATION_ID = nid and WNA.NAME = aname;
74: exception
75: when no_data_found then
76: wf_core.token('NID', to_char(nid));
77: wf_core.token('ATTRIBUTE', aname);
78: wf_core.raise('WFNTF_ATTR');
79: end;
80: return(lvalue);
81: exception
74: exception
75: when no_data_found then
76: wf_core.token('NID', to_char(nid));
77: wf_core.token('ATTRIBUTE', aname);
78: wf_core.raise('WFNTF_ATTR');
79: end;
80: return(lvalue);
81: exception
82: when others then
79: end;
80: return(lvalue);
81: exception
82: when others then
83: wf_core.context('Wf_Notification_Util', 'GetAttrEvent', to_char(nid), aname);
84: raise;
85: end GetAttrEvent;
86:
87:
169:
170: return 'SUCCESS';
171: exception
172: when others then
173: wf_core.context('Wf_Notification_util', 'Denormalize_Rf', to_char(l_nid));
174: wf_event.setErrorInfo(p_event, 'ERROR');
175: return 'ERROR';
176: end denormalize_rf;
177:
188: if ((instr(bindparam,'(') > 0) OR (instr(bindparam,';') > 0)
189: OR (instr(bindparam,')')>0)) then
190: if (raise_error IS NULL or raise_error) then
191: --raise error
192: wf_core.token('PARAM',bindparam);
193: wf_core.raise('WFNTF_ILLEGAL_CHAR');
194:
195: else
196: --If u just want to check for illegal characters
189: OR (instr(bindparam,')')>0)) then
190: if (raise_error IS NULL or raise_error) then
191: --raise error
192: wf_core.token('PARAM',bindparam);
193: wf_core.raise('WFNTF_ILLEGAL_CHAR');
194:
195: else
196: --If u just want to check for illegal characters
197: --and not raise any exception
228: l_dotPos number; -- position for '.'
229: l_api varchar2(50):='wf.plsql.wf_notification_util.getNLSContext';
230:
231: begin
232: -- ensure that wf_core NLS defaults are in fact set
233: if (g_wfcore_nls_set = false) then
234: wf_core.initializeNLSDefaults;
235: g_wfcore_nls_set := true;
236: end if;
230:
231: begin
232: -- ensure that wf_core NLS defaults are in fact set
233: if (g_wfcore_nls_set = false) then
234: wf_core.initializeNLSDefaults;
235: g_wfcore_nls_set := true;
236: end if;
237:
238: -- Get NLS param from USERENV namespace or query v$nls_parameter
347: SetCurrentNID(p_nid);
348:
349: exception
350: when others then
351: wf_core.context('Wf_Notification_Util', 'SetNLSContext',
352: p_nid,
353: p_nlsLanguage ,
354: p_nlsTerritory ,
355: p_nlsDateFormat ,
496: else
497: l_user := wfa_sec.GetUser();
498: if (l_user is null) then
499: -- use default values
500: l_date_format := wf_core.nls_date_format;
501: l_nls_calendar := wf_core.nls_calendar;
502: else
503: wf_directory.GetRoleInfo2(Role => l_user, Role_Info_Tbl => l_parTb);
504: l_date_format := l_parTb(1).NLS_DATE_FORMAT;
497: l_user := wfa_sec.GetUser();
498: if (l_user is null) then
499: -- use default values
500: l_date_format := wf_core.nls_date_format;
501: l_nls_calendar := wf_core.nls_calendar;
502: else
503: wf_directory.GetRoleInfo2(Role => l_user, Role_Info_Tbl => l_parTb);
504: l_date_format := l_parTb(1).NLS_DATE_FORMAT;
505: l_nls_calendar := l_parTb(1).NLS_CALENDAR;