DBA Data[Home] [Help]

APPS.WF_ENGINE_BULK dependencies on WF_CACHE

Line 863: if (WF_CACHE.MetaRefreshed) then

859:
860:
861:
862: --
863: if (WF_CACHE.MetaRefreshed) then
864: null;
865: end if;
866: -- Reset the table of failed items and successful items
867: g_FailedItems.DELETE;

Line 1258: WF_CACHE.GetProcessStartActivities(itemType=>itemtype,

1254: end if;
1255:
1256:
1257: -- Retrieve the starting activities from cache.
1258: WF_CACHE.GetProcessStartActivities(itemType=>itemtype,
1259: name=>process,
1260: version=>version,
1261: status=>status,
1262: psaIND=>psaIND);

Line 1264: if (status <> WF_CACHE.task_SUCCESS) then

1260: version=>version,
1261: status=>status,
1262: psaIND=>psaIND);
1263:
1264: if (status <> WF_CACHE.task_SUCCESS) then
1265: -- Starting activities are not in cache, so we will store them using a for
1266: -- loop to get all the next transition activities.
1267: -- Then we will access the list from cache to avoid maximum open cursor
1268: -- problem. First we need to retain the base index to be used later.

Line 1277: psaIND := WF_CACHE.HashKey(itemType||':'||process||':'||version||

1273: --We will locally store the record index from the last loop iteration.
1274: l_prevLnk := psaIND;
1275: --We will now generate an index for the start activity from the
1276: --itemType, name, version, and the current INSTANCE_ID
1277: psaIND := WF_CACHE.HashKey(itemType||':'||process||':'||version||
1278: ':'||WF_CACHE.ProcessStartActivities(psaIND).INSTANCE_ID);
1279:
1280: --Check to make sure a record is not already here.
1281: if (WF_CACHE.ProcessStartActivities.EXISTS(psaIND)) then

Line 1278: ':'||WF_CACHE.ProcessStartActivities(psaIND).INSTANCE_ID);

1274: l_prevLnk := psaIND;
1275: --We will now generate an index for the start activity from the
1276: --itemType, name, version, and the current INSTANCE_ID
1277: psaIND := WF_CACHE.HashKey(itemType||':'||process||':'||version||
1278: ':'||WF_CACHE.ProcessStartActivities(psaIND).INSTANCE_ID);
1279:
1280: --Check to make sure a record is not already here.
1281: if (WF_CACHE.ProcessStartActivities.EXISTS(psaIND)) then
1282: l_linkCollision := TRUE; --There should be no record here, so this

Line 1281: if (WF_CACHE.ProcessStartActivities.EXISTS(psaIND)) then

1277: psaIND := WF_CACHE.HashKey(itemType||':'||process||':'||version||
1278: ':'||WF_CACHE.ProcessStartActivities(psaIND).INSTANCE_ID);
1279:
1280: --Check to make sure a record is not already here.
1281: if (WF_CACHE.ProcessStartActivities.EXISTS(psaIND)) then
1282: l_linkCollision := TRUE; --There should be no record here, so this
1283: --is a hash collision. We will continue
1284: --populating this linked list, but after
1285: --we use it, we will clear the pl/sql table

Line 1292: --WF_CACHE.ProcessStartActivities(psaIND).PREV_LNK := l_prevLnk;

1288: --Now the PL/SQL table index has moved to the next link, so we will
1289: --populate the prev_lnk with our locally stored index. This feature,
1290: --not yet used, allows us to traverse backwards through the link list
1291: --if needed. Since it is not yet used, it is commented out.
1292: --WF_CACHE.ProcessStartActivities(psaIND).PREV_LNK := l_prevLnk;
1293:
1294: --l_prevLnk represents the index of the previous record, and we need
1295: --to update its NEXT_LNK field with the current index.
1296: WF_CACHE.ProcessStartActivities(l_prevLnk).NEXT_LNK := psaIND;

Line 1296: WF_CACHE.ProcessStartActivities(l_prevLnk).NEXT_LNK := psaIND;

1292: --WF_CACHE.ProcessStartActivities(psaIND).PREV_LNK := l_prevLnk;
1293:
1294: --l_prevLnk represents the index of the previous record, and we need
1295: --to update its NEXT_LNK field with the current index.
1296: WF_CACHE.ProcessStartActivities(l_prevLnk).NEXT_LNK := psaIND;
1297: --else
1298: -- WF_CACHE.ProcessStartActivities(psaIND).PREV_LNK := -1;
1299:
1300: end if;

Line 1298: -- WF_CACHE.ProcessStartActivities(psaIND).PREV_LNK := -1;

1294: --l_prevLnk represents the index of the previous record, and we need
1295: --to update its NEXT_LNK field with the current index.
1296: WF_CACHE.ProcessStartActivities(l_prevLnk).NEXT_LNK := psaIND;
1297: --else
1298: -- WF_CACHE.ProcessStartActivities(psaIND).PREV_LNK := -1;
1299:
1300: end if;
1301:
1302: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_ITEM_TYPE :=

Line 1302: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_ITEM_TYPE :=

1298: -- WF_CACHE.ProcessStartActivities(psaIND).PREV_LNK := -1;
1299:
1300: end if;
1301:
1302: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_ITEM_TYPE :=
1303: child.PROCESS_ITEM_TYPE;
1304:
1305: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_NAME :=
1306: child.PROCESS_NAME;

Line 1305: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_NAME :=

1301:
1302: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_ITEM_TYPE :=
1303: child.PROCESS_ITEM_TYPE;
1304:
1305: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_NAME :=
1306: child.PROCESS_NAME;
1307:
1308: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_VERSION :=
1309: child.PROCESS_VERSION;

Line 1308: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_VERSION :=

1304:
1305: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_NAME :=
1306: child.PROCESS_NAME;
1307:
1308: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_VERSION :=
1309: child.PROCESS_VERSION;
1310:
1311: WF_CACHE.ProcessStartActivities(psaIND).INSTANCE_ID := child.INSTANCE_ID;
1312:

Line 1311: WF_CACHE.ProcessStartActivities(psaIND).INSTANCE_ID := child.INSTANCE_ID;

1307:
1308: WF_CACHE.ProcessStartActivities(psaIND).PROCESS_VERSION :=
1309: child.PROCESS_VERSION;
1310:
1311: WF_CACHE.ProcessStartActivities(psaIND).INSTANCE_ID := child.INSTANCE_ID;
1312:
1313: --While we are here, we can populate the ProcessActivities cache hoping
1314: --that a later request of any of these process activities will save us
1315: --another trip to the DB.

Line 1316: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_ITEM_TYPE :=

1312:
1313: --While we are here, we can populate the ProcessActivities cache hoping
1314: --that a later request of any of these process activities will save us
1315: --another trip to the DB.
1316: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_ITEM_TYPE :=
1317: child.PROCESS_ITEM_TYPE;
1318: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_NAME :=
1319: child.PROCESS_NAME;
1320: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_VERSION :=

Line 1318: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_NAME :=

1314: --that a later request of any of these process activities will save us
1315: --another trip to the DB.
1316: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_ITEM_TYPE :=
1317: child.PROCESS_ITEM_TYPE;
1318: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_NAME :=
1319: child.PROCESS_NAME;
1320: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_VERSION :=
1321: child.PROCESS_VERSION;
1322: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_ITEM_TYPE :=

Line 1320: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_VERSION :=

1316: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_ITEM_TYPE :=
1317: child.PROCESS_ITEM_TYPE;
1318: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_NAME :=
1319: child.PROCESS_NAME;
1320: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_VERSION :=
1321: child.PROCESS_VERSION;
1322: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_ITEM_TYPE :=
1323: child.ACTIVITY_ITEM_TYPE;
1324: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_NAME :=

Line 1322: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_ITEM_TYPE :=

1318: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_NAME :=
1319: child.PROCESS_NAME;
1320: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_VERSION :=
1321: child.PROCESS_VERSION;
1322: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_ITEM_TYPE :=
1323: child.ACTIVITY_ITEM_TYPE;
1324: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_NAME :=
1325: child.ACTIVITY_NAME;
1326: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_ID :=

Line 1324: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_NAME :=

1320: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PROCESS_VERSION :=
1321: child.PROCESS_VERSION;
1322: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_ITEM_TYPE :=
1323: child.ACTIVITY_ITEM_TYPE;
1324: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_NAME :=
1325: child.ACTIVITY_NAME;
1326: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_ID :=
1327: child.INSTANCE_ID;
1328: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_LABEL :=

Line 1326: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_ID :=

1322: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_ITEM_TYPE :=
1323: child.ACTIVITY_ITEM_TYPE;
1324: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_NAME :=
1325: child.ACTIVITY_NAME;
1326: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_ID :=
1327: child.INSTANCE_ID;
1328: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_LABEL :=
1329: child.INSTANCE_LABEL;
1330: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE :=

Line 1328: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_LABEL :=

1324: WF_CACHE.ProcessActivities(child.INSTANCE_ID).ACTIVITY_NAME :=
1325: child.ACTIVITY_NAME;
1326: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_ID :=
1327: child.INSTANCE_ID;
1328: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_LABEL :=
1329: child.INSTANCE_LABEL;
1330: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE :=
1331: child.PERFORM_ROLE;
1332: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE_TYPE :=

Line 1330: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE :=

1326: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_ID :=
1327: child.INSTANCE_ID;
1328: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_LABEL :=
1329: child.INSTANCE_LABEL;
1330: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE :=
1331: child.PERFORM_ROLE;
1332: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE_TYPE :=
1333: child.PERFORM_ROLE_TYPE;
1334: WF_CACHE.ProcessActivities(child.INSTANCE_ID).START_END :=

Line 1332: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE_TYPE :=

1328: WF_CACHE.ProcessActivities(child.INSTANCE_ID).INSTANCE_LABEL :=
1329: child.INSTANCE_LABEL;
1330: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE :=
1331: child.PERFORM_ROLE;
1332: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE_TYPE :=
1333: child.PERFORM_ROLE_TYPE;
1334: WF_CACHE.ProcessActivities(child.INSTANCE_ID).START_END :=
1335: child.START_END;
1336: WF_CACHE.ProcessActivities(child.INSTANCE_ID).DEFAULT_RESULT :=

Line 1334: WF_CACHE.ProcessActivities(child.INSTANCE_ID).START_END :=

1330: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE :=
1331: child.PERFORM_ROLE;
1332: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE_TYPE :=
1333: child.PERFORM_ROLE_TYPE;
1334: WF_CACHE.ProcessActivities(child.INSTANCE_ID).START_END :=
1335: child.START_END;
1336: WF_CACHE.ProcessActivities(child.INSTANCE_ID).DEFAULT_RESULT :=
1337: child.DEFAULT_RESULT;
1338:

Line 1336: WF_CACHE.ProcessActivities(child.INSTANCE_ID).DEFAULT_RESULT :=

1332: WF_CACHE.ProcessActivities(child.INSTANCE_ID).PERFORM_ROLE_TYPE :=
1333: child.PERFORM_ROLE_TYPE;
1334: WF_CACHE.ProcessActivities(child.INSTANCE_ID).START_END :=
1335: child.START_END;
1336: WF_CACHE.ProcessActivities(child.INSTANCE_ID).DEFAULT_RESULT :=
1337: child.DEFAULT_RESULT;
1338:
1339: TransitionCount := TransitionCount+1;
1340: end loop;

Line 1341: WF_CACHE.ProcessStartActivities(psaIND).NEXT_LNK := -1;

1337: child.DEFAULT_RESULT;
1338:
1339: TransitionCount := TransitionCount+1;
1340: end loop;
1341: WF_CACHE.ProcessStartActivities(psaIND).NEXT_LNK := -1;
1342: psaIND := l_baseLnk; --Reset the index back to the beginning.
1343: status := WF_CACHE.task_SUCCESS; --We now have the records successfully
1344: --in cache.
1345:

Line 1343: status := WF_CACHE.task_SUCCESS; --We now have the records successfully

1339: TransitionCount := TransitionCount+1;
1340: end loop;
1341: WF_CACHE.ProcessStartActivities(psaIND).NEXT_LNK := -1;
1342: psaIND := l_baseLnk; --Reset the index back to the beginning.
1343: status := WF_CACHE.task_SUCCESS; --We now have the records successfully
1344: --in cache.
1345:
1346: end if;
1347:

Line 1353: childarr(i) := WF_CACHE.ProcessStartActivities(psaIND).INSTANCE_ID;

1349: -- occurs. Since the ProcessStartActivities Cache is global, any
1350: -- hashCollision would clear the cache and could cause problems as we
1351: -- process activities in recursive calls.
1352: while (psaIND <> -1) loop
1353: childarr(i) := WF_CACHE.ProcessStartActivities(psaIND).INSTANCE_ID;
1354: i := i+1;
1355: psaIND := WF_CACHE.ProcessStartActivities(psaIND).NEXT_LNK;
1356: end loop;
1357: childarr(i) := '';

Line 1355: psaIND := WF_CACHE.ProcessStartActivities(psaIND).NEXT_LNK;

1351: -- process activities in recursive calls.
1352: while (psaIND <> -1) loop
1353: childarr(i) := WF_CACHE.ProcessStartActivities(psaIND).INSTANCE_ID;
1354: i := i+1;
1355: psaIND := WF_CACHE.ProcessStartActivities(psaIND).NEXT_LNK;
1356: end loop;
1357: childarr(i) := '';
1358:
1359: if (l_linkCollision) then

Line 1364: WF_CACHE.ProcessStartActivities.DELETE;

1360: --When populating the linked list, we discovered that a hash collision
1361: --caused us to overwrite a link belonging to another list. This would
1362: --cause the other list to be incorrect. We will clear the table so the
1363: --lists will be rebuilt after this transaction.
1364: WF_CACHE.ProcessStartActivities.DELETE;
1365:
1366: end if;
1367:
1368: