9: g_kffcache_key_flex key_flex_type;
10:
11: g_cache_return_code VARCHAR2(30);
12: g_cache_key VARCHAR2(2000);
13: g_cache_value fnd_plsql_cache.generic_cache_value_type;
14:
15: -- --------------------------------------------------
16: -- sgc : Segment count cache
17: -- --------------------------------------------------
14:
15: -- --------------------------------------------------
16: -- sgc : Segment count cache
17: -- --------------------------------------------------
18: sgc_cache_controller fnd_plsql_cache.cache_1to1_controller_type;
19: sgc_cache_storage fnd_plsql_cache.generic_cache_values_type;
20:
21: -- --------------------------------------------------
22: -- wfp : Workflow Process Name cache.
15: -- --------------------------------------------------
16: -- sgc : Segment count cache
17: -- --------------------------------------------------
18: sgc_cache_controller fnd_plsql_cache.cache_1to1_controller_type;
19: sgc_cache_storage fnd_plsql_cache.generic_cache_values_type;
20:
21: -- --------------------------------------------------
22: -- wfp : Workflow Process Name cache.
23: -- --------------------------------------------------
20:
21: -- --------------------------------------------------
22: -- wfp : Workflow Process Name cache.
23: -- --------------------------------------------------
24: wfp_cache_controller fnd_plsql_cache.cache_1to1_controller_type;
25: wfp_cache_storage fnd_plsql_cache.generic_cache_values_type;
26:
27: -- --------------------------------------------------
28: -- aid : Application id cache.
21: -- --------------------------------------------------
22: -- wfp : Workflow Process Name cache.
23: -- --------------------------------------------------
24: wfp_cache_controller fnd_plsql_cache.cache_1to1_controller_type;
25: wfp_cache_storage fnd_plsql_cache.generic_cache_values_type;
26:
27: -- --------------------------------------------------
28: -- aid : Application id cache.
29: -- --------------------------------------------------
26:
27: -- --------------------------------------------------
28: -- aid : Application id cache.
29: -- --------------------------------------------------
30: aid_cache_controller fnd_plsql_cache.cache_1to1_controller_type;
31: aid_cache_storage fnd_plsql_cache.generic_cache_values_type;
32:
33: --
34: -- Global variables
27: -- --------------------------------------------------
28: -- aid : Application id cache.
29: -- --------------------------------------------------
30: aid_cache_controller fnd_plsql_cache.cache_1to1_controller_type;
31: aid_cache_storage fnd_plsql_cache.generic_cache_values_type;
32:
33: --
34: -- Global variables
35: --
182: l_pname VARCHAR2(30);
183: BEGIN
184: g_cache_key := (appl_short_name || '.' || code || '.' ||
185: num || '.' || itemtype);
186: fnd_plsql_cache.generic_1to1_get_value(wfp_cache_controller,
187: wfp_cache_storage,
188: g_cache_key,
189: g_cache_value,
190: g_cache_return_code);
188: g_cache_key,
189: g_cache_value,
190: g_cache_return_code);
191:
192: IF (g_cache_return_code = fnd_plsql_cache.CACHE_FOUND) THEN
193: l_pname := g_cache_value.varchar2_1;
194: ELSE
195: SELECT
196: wf_process_name
201: AND fwk.id_flex_code = code
202: AND fwk.id_flex_num = num
203: AND fwk.wf_item_type = itemtype;
204:
205: fnd_plsql_cache.generic_cache_new_value
206: (x_value => g_cache_value,
207: p_varchar2_1 => l_pname);
208:
209: fnd_plsql_cache.generic_1to1_put_value(wfp_cache_controller,
205: fnd_plsql_cache.generic_cache_new_value
206: (x_value => g_cache_value,
207: p_varchar2_1 => l_pname);
208:
209: fnd_plsql_cache.generic_1to1_put_value(wfp_cache_controller,
210: wfp_cache_storage,
211: g_cache_key,
212: g_cache_value);
213: END IF;
296: --
297: -- Get Application ID
298: --
299: g_cache_key := appl_short_name;
300: fnd_plsql_cache.generic_1to1_get_value(aid_cache_controller,
301: aid_cache_storage,
302: g_cache_key,
303: g_cache_value,
304: g_cache_return_code);
301: aid_cache_storage,
302: g_cache_key,
303: g_cache_value,
304: g_cache_return_code);
305: IF (g_cache_return_code = fnd_plsql_cache.CACHE_FOUND) THEN
306: l_application_id := g_cache_value.number_1;
307: ELSE
308: SELECT
309: application_id
310: INTO l_application_id
311: FROM fnd_application
312: WHERE application_short_name = appl_short_name;
313:
314: fnd_plsql_cache.generic_cache_new_value
315: (x_value => g_cache_value,
316: p_number_1 => l_application_id);
317:
318: fnd_plsql_cache.generic_1to1_put_value(aid_cache_controller,
314: fnd_plsql_cache.generic_cache_new_value
315: (x_value => g_cache_value,
316: p_number_1 => l_application_id);
317:
318: fnd_plsql_cache.generic_1to1_put_value(aid_cache_controller,
319: aid_cache_storage,
320: g_cache_key,
321: g_cache_value);
322: END IF;
324: --
325: -- Get the number of enabled segments for this flexfield structure
326: --
327: g_cache_key := l_application_id || '.' || code || '.' || num;
328: fnd_plsql_cache.generic_1to1_get_value(sgc_cache_controller,
329: sgc_cache_storage,
330: g_cache_key,
331: g_cache_value,
332: g_cache_return_code);
329: sgc_cache_storage,
330: g_cache_key,
331: g_cache_value,
332: g_cache_return_code);
333: IF (g_cache_return_code = fnd_plsql_cache.CACHE_FOUND) THEN
334: l_nsegments := g_cache_value.number_1;
335: ELSE
336: SELECT
337: COUNT(*)
341: AND id_flex_code = code
342: AND id_flex_num = num
343: AND enabled_flag = 'Y';
344:
345: fnd_plsql_cache.generic_cache_new_value
346: (x_value => g_cache_value,
347: p_number_1 => l_nsegments);
348:
349: fnd_plsql_cache.generic_1to1_put_value(sgc_cache_controller,
345: fnd_plsql_cache.generic_cache_new_value
346: (x_value => g_cache_value,
347: p_number_1 => l_nsegments);
348:
349: fnd_plsql_cache.generic_1to1_put_value(sgc_cache_controller,
350: sgc_cache_storage,
351: g_cache_key,
352: g_cache_value);
353: END IF;
1103:
1104: g_kffcache_item_type := '$FLEX$';
1105: g_kffcache_item_key := '$FLEX$';
1106:
1107: fnd_plsql_cache.generic_1to1_init('WKF.SGC',
1108: sgc_cache_controller,
1109: sgc_cache_storage);
1110:
1111: fnd_plsql_cache.generic_1to1_init('WKF.WFP',
1107: fnd_plsql_cache.generic_1to1_init('WKF.SGC',
1108: sgc_cache_controller,
1109: sgc_cache_storage);
1110:
1111: fnd_plsql_cache.generic_1to1_init('WKF.WFP',
1112: wfp_cache_controller,
1113: wfp_cache_storage);
1114:
1115: fnd_plsql_cache.generic_1to1_init('WKF.AID',
1111: fnd_plsql_cache.generic_1to1_init('WKF.WFP',
1112: wfp_cache_controller,
1113: wfp_cache_storage);
1114:
1115: fnd_plsql_cache.generic_1to1_init('WKF.AID',
1116: aid_cache_controller,
1117: aid_cache_storage);
1118: END fnd_flex_workflow;