[Home] [Help]
PACKAGE BODY: APPS.JTF_FM_REQUEST_GRP_WF
Source
1 PACKAGE BODY jtf_fm_request_grp_wf AS
2 /* $Header: jtffmwfb.pls 115.5 2000/02/15 10:51:14 pkm ship $*/
3 v_ItemType VARCHAR2(30) := 'FULFILL3';
4 v_ItemKey VARCHAR2(30) ;
5 v_ItemUserKey VARCHAR2(80) := FND_GLOBAL.CONC_LOGIN_ID; --FND_GLOBAL.USER_ID;
6
7 l_party_id NUMBER := 10;
8 l_user_id NUMBER := 11;
9 l_order_id NUMBER := 0;
10 l_msg_count NUMBER;
11 l_msg_data VARCHAR2(1000);
12 l_return_status VARCHAR2(10);
13 --
14 l_content_xml VARCHAR2(1000);
15 l_request_id NUMBER;
16 l_template_id NUMBER;
17 outvar VARCHAR2(1000);
18
19 ---------------------------------------------------------------------
20 -- PROCEDURE
21 -- StartFulfillProcess
22 --
23 -- PURPOSE
24 -- Start the fulfillment workflow process
25 --
26 -- PARAMETERS
27 --
28 -- NOTES
29 --
30 ---------------------------------------------------------------------
31 PROCEDURE StartFulfillProcess (
32 l_api_version IN NUMBER,
33 l_commit IN VARCHAR2,
34 l_validation_level IN NUMBER,
35 l_content_xml IN VARCHAR2,
36 l_request_id IN NUMBER,
37 l_template_id IN NUMBER,
38 l_status OUT VARCHAR2,
39 l_result OUT VARCHAR2 )
40 IS
41
42 x_orig_system_id NUMBER;
43 x_requester_username VARCHAR2(30);
44 x_requester_disp_name VARCHAR2(30);
45 BEGIN
46 SELECT TO_CHAR(JTF_FM_WORKFLOW_S.nextval)
47 INTO v_ItemKey
48 FROM sys.dual;
49
50 SELECT orig_system_id
51 INTO x_orig_system_id
52 FROM wf_users
53 WHERE name = ( SELECT user
54 FROM DUAL);
55
56 wf_engine.CreateProcess( ItemType => v_ItemType,
57 ItemKey => v_ItemKey,
58 process => 'SUB_REQ' );
59
60 --
61 -- Initialize workflow item attributes
62 --
63 wf_engine.SetItemAttrText (itemtype => v_ItemType,
64 itemkey => v_ItemKey,
65 aname => 'API_VERSION',
66 avalue => l_api_version);
67 wf_engine.SetItemAttrText (itemtype => v_ItemType,
68 itemkey => v_ItemKey,
69 aname => 'COMMIT',
70 avalue => l_commit);
71 wf_engine.SetItemAttrText (itemtype => v_ItemType,
72 itemkey => v_ItemKey,
73 aname => 'VALIDATION_LEVEL',
74 avalue => l_validation_level);
75 wf_engine.SetItemAttrText (itemtype => v_ItemType,
76 itemkey => v_ItemKey,
77 aname => 'CONTENT_XML',
78 avalue => l_content_xml);
79 wf_engine.SetItemAttrText (itemtype => v_ItemType,
80 itemkey => v_ItemKey,
81 aname => 'REQUEST_ID',
82 avalue => l_request_id);
83 wf_engine.SetItemAttrText (itemtype => v_ItemType,
84 itemkey => v_ItemKey,
85 aname => 'TEMP_ID',
86 avalue => l_template_id);
87 wf_directory.GetUserName (p_orig_system => 'PER',
88 p_orig_system_id => x_orig_system_id,
89 p_name => x_requester_username,
90 p_display_name => x_requester_disp_name);
91
92 wf_engine.SetItemAttrText (itemtype => v_ItemType,
93 itemkey => v_ItemKey,
94 aname => 'REQUESTER_USERNAME',
95 avalue => x_requester_username);
96
97 wf_engine.StartProcess( itemtype => v_ItemType,
98 itemkey => v_ItemKey );
99
100 wf_engine.ItemStatus(itemtype => v_ItemType,
101 itemkey => v_ItemKey,
102 status => l_status,
103 result => l_result);
104
105 -- DBMS_OUTPUT.PUT_LINE('Workflow: '||v_ItemType||' '||
106 -- v_ItemKey||' '||' '||
107 -- x_orig_system_id||' '||
108 -- x_requester_username||' '||
109 -- l_status||' '||l_result);
110
111 EXCEPTION
112 WHEN OTHERS THEN
113 WF_CORE.CONTEXT('JTF_FM_REQUEST_GRP_WF', 'StartFulfillProcess', 'SQL Error ' || sqlcode);
114 RAISE;
115 END StartFulfillProcess;
116
117 ---------------------------------------------------------------------
118 -- PROCEDURE
119 -- Submit_Request
120 --
121 -- PURPOSE
122 -- Calling JTF_FM_REQUEST_GRP.SUBMIT_REQUEST
123 --
124 -- PARAMETERS
125 --
126 -- NOTES
127 --
128 ---------------------------------------------------------------------
129 PROCEDURE submit_request (
130 itemtype IN VARCHAR2,
131 itemkey IN VARCHAR2,
132 actid IN NUMBER,
133 funcmode IN VARCHAR2,
134 resultout OUT VARCHAR2) IS
135
136 x_api_version NUMBER;
137 x_commit VARCHAR2(30);
138 x_validation_level NUMBER;
139 x_request_id NUMBER;
140
141 BEGIN
142
143 IF (funcmode = 'RUN') THEN
144 x_api_version := wf_engine.GetItemAttrNumber(
145 itemtype => v_itemtype,
146 itemkey => v_itemkey,
147 aname => 'API_VERSION');
148 x_commit := wf_engine.GetItemAttrNumber(
149 itemtype => v_itemtype,
150 itemkey => v_itemkey,
151 aname => 'COMMIT');
152 x_validation_level := wf_engine.GetItemAttrNumber(
153 itemtype => v_itemtype,
154 itemkey => v_itemkey,
155 aname => 'VALIDATION_LEVEL');
156 x_request_id := wf_engine.GetItemAttrNumber(
157 itemtype => v_itemtype,
158 itemkey => v_itemkey,
159 aname => 'REQUEST_ID');
160
161 apps.JTF_FM_REQUEST_GRP.Submit_Request
162 ( p_api_version => x_api_version,
163 p_commit => x_commit,
164 x_return_status => l_return_status,
165 x_msg_count => l_msg_count,
166 x_msg_data => l_msg_data,
167 p_party_id => l_party_id,
168 p_user_id => l_user_id,
169 p_server_id => 1,
170 p_content_xml => 'TEST',
171 p_request_id => x_request_id
172 );
173 END IF;
174
175 IF l_return_status = 'S' THEN
176 resultout := 'COMPLETE:Y';
177 ELSE
178 resultout := 'COMPLETE:N';
179 END IF;
180 RETURN;
181
182 EXCEPTION
183 WHEN OTHERS THEN
184 WF_CORE.CONTEXT('JTF_FM_REQUEST_GRP_WF', 'Submit_Request', 'SQL Error ' || sqlcode);
185 RAISE;
186 END Submit_Request;
187
188 ---------------------------------------------------------------------
189 -- PROCEDURE
190 -- Resubmit_Request
191 --
192 -- PURPOSE
193 -- Calling JTF_FM_REQUEST_GRP.RESUBMIT_REQUEST
194 --
195 -- PARAMETERS
196 --
197 -- NOTES
198 --
199 ---------------------------------------------------------------------
200 PROCEDURE resubmit_request (
201 itemtype IN VARCHAR2,
202 itemkey IN VARCHAR2,
203 actid IN NUMBER,
204 funcmode IN VARCHAR2,
205 resultout OUT VARCHAR2) IS
206
207 x_api_version NUMBER;
208 x_commit VARCHAR2(30);
209 x_validation_level NUMBER;
210 x_request_id NUMBER;
211 l_party_id number := 101;
212 l_user_id number := 111;
213
214
215 BEGIN
216 IF (funcmode = 'RUN') THEN
217 x_api_version := wf_engine.GetItemAttrNumber(
218 itemtype => v_itemtype,
219 itemkey => v_itemkey,
220 aname => 'API_VERSION');
221 x_commit := wf_engine.GetItemAttrNumber(
222 itemtype => v_itemtype,
223 itemkey => v_itemkey,
224 aname => 'COMMIT');
225 x_validation_level := wf_engine.GetItemAttrNumber(
226 itemtype => v_itemtype,
227 itemkey => v_itemkey,
228 aname => 'VALIDATION_LEVEL');
229 x_request_id := wf_engine.GetItemAttrNumber(
230 itemtype => v_itemtype,
231 itemkey => v_itemkey,
232 aname => 'REQUEST_ID');
233
234 apps.JTF_FM_REQUEST_GRP.RESUBMIT_REQUEST
235 (
236 p_api_version => x_api_version,
237 p_commit => x_commit,
238 p_validation_level => x_validation_level,
239 x_return_status => l_return_status,
240 x_msg_count => l_msg_count,
241 x_msg_data => l_msg_data,
242 p_request_id => x_request_id
243 );
244 END IF;
245
246 IF l_return_status = 'S' THEN
247 resultout := 'COMPLETE:Y';
248 ELSE
249 resultout := 'COMPLETE:N';
250 END IF;
251 RETURN;
252
253 EXCEPTION
254 WHEN OTHERS THEN
255 WF_CORE.CONTEXT('JTF_FM_REQUEST_GRP_WF', 'Resubmit_Request', 'SQL Error ' || sqlcode);
256 RAISE;
257 END Resubmit_Request;
258
259 END jtf_fm_request_grp_wf;
260