DBA Data[Home] [Help]

PACKAGE BODY: APPS.WF_ITEM_IMPORT

Source


1 package body wf_item_import as
2 /* $Header: WFHAIMPB.pls 120.2 2005/10/18 12:44:55 mfisher ship $ */
3 
4 -- Removes all trace of rows related to X_Item_type/X_Item_key from
5 -- Runtime tables
6 
7 procedure erase(X_Item_type VARCHAR2, X_Item_key VARCHAR2) is
8 
9 begin
10    -- wf_notification_attributes
11    delete from wf_notification_attributes
12    where rowid in
13       (select row_id
14 	 from wf_ha_ntfa_v v
15         where v.Item_type = X_Item_type
16 	  and v.Item_key = X_Item_key);
17 
18    -- wf_notifications
19    delete from wf_notifications
20    where rowid in
21       (select row_id
22          from wf_ha_ntf_v v
23         where v.Item_type = X_Item_type
24           and v.Item_key = X_Item_key);
25 
26    -- wf_item_activity_statuses
27    delete from wf_item_activity_statuses
28    where Item_type = X_Item_type
29      and Item_key = X_Item_key;
30 
31    -- wf_item_activity_statuses_h
32    delete from wf_item_activity_statuses_h
33    where Item_type = X_Item_type
34      and Item_key = X_Item_key;
35 
36    -- wf_item_attributes
37    delete from wf_item_attribute_values
38       where Item_type = X_Item_type
39      and Item_key = X_Item_key;
40 
41    -- wf_items
42    delete from wf_items
43       where Item_type = X_Item_type
44      and Item_key = X_Item_key;
45 end;
46 
47 
48 -- repopulates WF_ITEMS
49 procedure import_item_row(
50  X_ITEM_TYPE VARCHAR2,
51  X_ITEM_KEY  VARCHAR2,
52  X_ROOT_ACTIVITY VARCHAR2,
53  X_ROOT_ACTIVITY_VERSION NUMBER,
54  X_OWNER_ROLE VARCHAR2,
55  X_PARENT_ITEM_TYPE VARCHAR2,
56  X_PARENT_ITEM_KEY VARCHAR2,
57  X_PARENT_CONTEXT VARCHAR2,
58  X_BEGIN_DATE DATE,
59  X_END_DATE DATE,
60  X_USER_KEY VARCHAR2,
61  X_HA_MIGRATION_FLAG VARCHAR2) is
62 
63 begin
64     insert into WF_ITEMS
68      select X_ITEM_TYPE, X_ITEM_KEY, X_ROOT_ACTIVITY, X_ROOT_ACTIVITY_VERSION,
65     (ITEM_TYPE, ITEM_KEY, ROOT_ACTIVITY, ROOT_ACTIVITY_VERSION,
66      OWNER_ROLE, PARENT_ITEM_TYPE, PARENT_ITEM_KEY, PARENT_CONTEXT,
67      BEGIN_DATE, END_DATE, USER_KEY, HA_MIGRATION_FLAG)
69      X_OWNER_ROLE, X_PARENT_ITEM_TYPE, X_PARENT_ITEM_KEY, X_PARENT_CONTEXT,
70      X_BEGIN_DATE, X_END_DATE, X_USER_KEY, X_HA_MIGRATION_FLAG
71      from dual;
72 end;
73 
74 -- repopulates WF_ITEM_ATTRIBUTE_VALUES
75 procedure import_item_attr_row(
76  X_ITEM_TYPE VARCHAR2,
77  X_ITEM_KEY  VARCHAR2,
78  X_NAME      VARCHAR2,
79  X_TEXT_VALUE VARCHAR2,
80  X_NUMBER_VALUE NUMBER,
81  X_DATE_VALUE   DATE,
82  X_EVENT_VALUE  WF_EVENT_T) is
83 
84 begin
85     insert into WF_ITEM_ATTRIBUTE_VALUES
86     (ITEM_TYPE, ITEM_KEY, NAME, TEXT_VALUE, NUMBER_VALUE, DATE_VALUE,
87 	EVENT_VALUE)
88     select X_ITEM_TYPE, X_ITEM_KEY, X_NAME, X_TEXT_VALUE, X_NUMBER_VALUE,
89      X_DATE_VALUE, X_EVENT_VALUE
90      from dual;
91 end;
92 
93 -- repopulates WF_ITEM_ATTRIBUTES
94 procedure import_item_attr_row(
95  X_ITEM_TYPE VARCHAR2,
96  X_ITEM_KEY  VARCHAR2,
97  X_NAME      VARCHAR2,
98  X_TEXT_VALUE VARCHAR2,
99  X_NUMBER_VALUE NUMBER,
100  X_DATE_VALUE   DATE,
101  X_EVENT_VALUE  Number)  -- overload hack until we support events
102 
103 is
104 
105 begin
106     insert into WF_ITEM_ATTRIBUTE_VALUES
107     (ITEM_TYPE, ITEM_KEY, NAME, TEXT_VALUE, NUMBER_VALUE, DATE_VALUE)
108     select X_ITEM_TYPE, X_ITEM_KEY, X_NAME, X_TEXT_VALUE, X_NUMBER_VALUE,
109      X_DATE_VALUE
110      from dual;
111 end;
112 
113 -- repopulates WF_ITEM_ACTIVITY_STATUSES
114 procedure import_ias_row(
115  X_ITEM_TYPE             VARCHAR2,
116  X_ITEM_KEY              VARCHAR2,
117  X_PROCESS_ACTIVITY      NUMBER,
118  X_ACTIVITY_STATUS       VARCHAR2,
119  X_ACTIVITY_RESULT_CODE  VARCHAR2,
120  X_ASSIGNED_USER         VARCHAR2,
121  X_NOTIFICATION_ID       NUMBER,
122  X_BEGIN_DATE            DATE,
123  X_END_DATE              DATE,
124  X_EXECUTION_TIME        NUMBER,
125  X_ERROR_NAME            VARCHAR2,
126  X_ERROR_MESSAGE         VARCHAR2,
127  X_ERROR_STACK           VARCHAR2,
128  X_OUTBOUND_QUEUE_ID     VARCHAR2,
129  X_DUE_DATE              DATE) is
130 
131 begin
132     insert into WF_ITEM_ACTIVITY_STATUSES
133     (ITEM_TYPE, ITEM_KEY, PROCESS_ACTIVITY, ACTIVITY_STATUS,
134      ACTIVITY_RESULT_CODE, ASSIGNED_USER, NOTIFICATION_ID, BEGIN_DATE,
135      END_DATE, EXECUTION_TIME, ERROR_NAME, ERROR_MESSAGE,
136      ERROR_STACK, OUTBOUND_QUEUE_ID, DUE_DATE)
137     select X_ITEM_TYPE, X_ITEM_KEY, X_PROCESS_ACTIVITY, X_ACTIVITY_STATUS,
138      X_ACTIVITY_RESULT_CODE, X_ASSIGNED_USER, X_NOTIFICATION_ID, X_BEGIN_DATE,
139      X_END_DATE, X_EXECUTION_TIME, X_ERROR_NAME, X_ERROR_MESSAGE,
140      X_ERROR_STACK, hextoraw(X_OUTBOUND_QUEUE_ID), X_DUE_DATE
141     from dual;
142 end;
143 
144 -- repopulates WF_ITEM_ACTIVITY_STATUSES_H
145 procedure import_iash_row(
146  X_ITEM_TYPE            VARCHAR2,
147  X_ITEM_KEY             VARCHAR2,
148  X_PROCESS_ACTIVITY     NUMBER,
149  X_ACTIVITY_STATUS      VARCHAR2,
150  X_ACTIVITY_RESULT_CODE VARCHAR2,
151  X_ASSIGNED_USER        VARCHAR2,
152  X_NOTIFICATION_ID      NUMBER,
153  X_BEGIN_DATE           DATE,
154  X_END_DATE             DATE,
155  X_EXECUTION_TIME       NUMBER,
156  X_ERROR_NAME           VARCHAR2,
157  X_ERROR_MESSAGE        VARCHAR2,
158  X_ERROR_STACK          VARCHAR2,
159  X_OUTBOUND_QUEUE_ID    VARCHAR2,
160  X_DUE_DATE             DATE) is
161 
162 begin
163     insert into WF_ITEM_ACTIVITY_STATUSES_H
164     (ITEM_TYPE, ITEM_KEY, PROCESS_ACTIVITY, ACTIVITY_STATUS,
165      ACTIVITY_RESULT_CODE, ASSIGNED_USER, NOTIFICATION_ID, BEGIN_DATE,
166      END_DATE, EXECUTION_TIME, ERROR_NAME, ERROR_MESSAGE,
167      ERROR_STACK, OUTBOUND_QUEUE_ID, DUE_DATE)
168     select X_ITEM_TYPE, X_ITEM_KEY, X_PROCESS_ACTIVITY, X_ACTIVITY_STATUS,
169      X_ACTIVITY_RESULT_CODE, X_ASSIGNED_USER, X_NOTIFICATION_ID, X_BEGIN_DATE,
170      X_END_DATE, X_EXECUTION_TIME, X_ERROR_NAME, X_ERROR_MESSAGE,
171      X_ERROR_STACK, hextoraw(X_OUTBOUND_QUEUE_ID), X_DUE_DATE
172     from dual;
173 end;
174 
175 -- repopulates WF_NOTIFICATIONS
176 procedure import_ntf_row(
177  X_NOTIFICATION_ID NUMBER,
178  X_GROUP_ID        NUMBER,
179  X_MESSAGE_TYPE    VARCHAR2,
180  X_MESSAGE_NAME    VARCHAR2,
181  X_RECIPIENT_ROLE  VARCHAR2,
182  X_STATUS          VARCHAR2,
183  X_ACCESS_KEY      VARCHAR2,
184  X_MAIL_STATUS     VARCHAR2,
185  X_PRIORITY        NUMBER,
186  X_BEGIN_DATE      DATE,
187  X_END_DATE        DATE,
188  X_DUE_DATE        DATE,
189  X_RESPONDER       VARCHAR2,
190  X_USER_COMMENT    VARCHAR2,
191  X_CALLBACK        VARCHAR2,
192  X_CONTEXT         VARCHAR2,
193  X_ORIGINAL_RECIPIENT VARCHAR2,
194  X_FROM_USER       VARCHAR2,
195  X_TO_USER         VARCHAR2,
196  X_SUBJECT         VARCHAR2,
197  X_LANGUAGE        VARCHAR2,
198  X_MORE_INFO_ROLE  VARCHAR2) is
199 
200 begin
201     insert into WF_NOTIFICATIONS
202     (NOTIFICATION_ID, GROUP_ID, MESSAGE_TYPE, MESSAGE_NAME,
203      RECIPIENT_ROLE, STATUS, ACCESS_KEY, MAIL_STATUS, PRIORITY,
204      BEGIN_DATE, END_DATE, DUE_DATE, RESPONDER, USER_COMMENT,
205      CALLBACK, CONTEXT, ORIGINAL_RECIPIENT, FROM_USER, TO_USER,
206      SUBJECT, LANGUAGE, MORE_INFO_ROLE)
207     select X_NOTIFICATION_ID, X_GROUP_ID, X_MESSAGE_TYPE, X_MESSAGE_NAME,
208      X_RECIPIENT_ROLE, X_STATUS, X_ACCESS_KEY, X_MAIL_STATUS, X_PRIORITY,
209      X_BEGIN_DATE, X_END_DATE, X_DUE_DATE, X_RESPONDER, X_USER_COMMENT,
210      X_CALLBACK, X_CONTEXT, X_ORIGINAL_RECIPIENT, X_FROM_USER, X_TO_USER,
211      X_SUBJECT, X_LANGUAGE, X_MORE_INFO_ROLE
212     from dual;
213 end;
214 
215 
216 
217 -- repopulates WF_NOTIFICATION_ATTRIBUTES
218 procedure import_ntf_attr_row(
219  X_NOTIFICATION_ID NUMBER,
220  X_NAME            VARCHAR2,
221  X_TEXT_VALUE      VARCHAR2,
222  X_NUMBER_VALUE    NUMBER,
223  X_DATE_VALUE      DATE) is
224 
225 begin
226     insert into WF_NOTIFICATION_ATTRIBUTES
227     (NOTIFICATION_ID, NAME, TEXT_VALUE, NUMBER_VALUE, DATE_VALUE)
228     select X_NOTIFICATION_ID, X_NAME, X_TEXT_VALUE, X_NUMBER_VALUE,
229 	X_DATE_VALUE
230     from dual;
231 end;
232 
233 -- helper function to get around limitation of maps
234 procedure raw2hex(myraw in raw, myhex out nocopy varchar2) is
235 begin
236 	myhex := rawtohex(myraw);
237 end;
238 
239 end;