76:
77:
78: -- Do nothing in cancel or timeout mode
79: --
80: if (funcmode <> wf_engine.eng_run) then
81:
82: resultout := wf_engine.eng_null;
83: return;
84:
78: -- Do nothing in cancel or timeout mode
79: --
80: if (funcmode <> wf_engine.eng_run) then
81:
82: resultout := wf_engine.eng_null;
83: return;
84:
85: end if;
86:
91: -- Context Setting Revamp
92: /* PO_REQAPPROVAL_INIT1.Set_doc_mgr_context(itemtype, itemkey); */
93:
94:
95: l_orgid := wf_engine.GetItemAttrNumber (itemtype => itemtype,
96: itemkey => itemkey,
97: aname => 'ORG_ID');
98:
99: IF l_orgid is NOT NULL THEN
101: PO_MOAC_UTILS_PVT.set_org_context(l_orgid) ; --
102:
103: END IF;
104:
105: l_po_header_id := wf_engine.GetItemAttrNumber (itemtype => itemtype,
106: itemkey => itemkey,
107: aname => 'DOCUMENT_ID');
108:
109:
106: itemkey => itemkey,
107: aname => 'DOCUMENT_ID');
108:
109:
110: l_doc_type := wf_engine.GetItemAttrText (itemtype => itemtype,
111: itemkey => itemkey,
112: aname => 'DOCUMENT_TYPE');
113:
114: IF l_doc_type IN ('PO','PA') THEN
122:
123: END IF;
124:
125: --
126: resultout := wf_engine.eng_completed || ':' || 'ACTIVITY_PERFORMED';
127: --
128: x_progress := 'PO_POAPPROVAL_INIT1.Get_PO_Attributes: 02';
129: IF (g_po_wf_debug = 'Y') THEN
130: /* DEBUG */ PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey,x_progress);
175:
176:
177: -- Do nothing in cancel or timeout mode
178: --
179: if (funcmode <> wf_engine.eng_run) then
180:
181: resultout := wf_engine.eng_null;
182: return;
183:
177: -- Do nothing in cancel or timeout mode
178: --
179: if (funcmode <> wf_engine.eng_run) then
180:
181: resultout := wf_engine.eng_null;
182: return;
183:
184: end if;
185:
182: return;
183:
184: end if;
185:
186: l_orgid := wf_engine.GetItemAttrNumber (itemtype => itemtype,
187: itemkey => itemkey,
188: aname => 'ORG_ID');
189:
190: IF l_orgid is NOT NULL THEN
193:
194: END IF;
195:
196:
197: l_doc_id := wf_engine.GetItemAttrNumber (itemtype => itemtype,
198: itemkey => itemkey,
199: aname => 'DOCUMENT_ID');
200:
201:
198: itemkey => itemkey,
199: aname => 'DOCUMENT_ID');
200:
201:
202: l_doc_type := wf_engine.GetItemAttrText (itemtype => itemtype,
203: itemkey => itemkey,
204: aname => 'DOCUMENT_TYPE');
205:
206: --< Bug 3554754 Start >
226: itemkey => itemkey,
227: aname => 'IS_NEW_DOCUMENT',
228: avalue => l_is_new_document );
229:
230: resultout := wf_engine.eng_completed || ':' || l_is_new_document;
231: --
232:
233: x_progress := 'PO_POAPPROVAL_INIT1.Is_this_new_doc: 02: ' || l_is_new_document;
234: IF (g_po_wf_debug = 'Y') THEN
283:
284:
285: -- Do nothing in cancel or timeout mode
286: --
287: if (funcmode <> wf_engine.eng_run) then
288:
289: resultout := wf_engine.eng_null;
290: return;
291:
285: -- Do nothing in cancel or timeout mode
286: --
287: if (funcmode <> wf_engine.eng_run) then
288:
289: resultout := wf_engine.eng_null;
290: return;
291:
292: end if;
293:
290: return;
291:
292: end if;
293:
294: l_orgid := wf_engine.GetItemAttrNumber (itemtype => itemtype,
295: itemkey => itemkey,
296: aname => 'ORG_ID');
297:
298: IF l_orgid is NOT NULL THEN
301:
302: END IF;
303:
304:
305: l_po_header_id := wf_engine.GetItemAttrNumber (itemtype => itemtype,
306: itemkey => itemkey,
307: aname => 'DOCUMENT_ID');
308:
309: l_doc_type := wf_engine.GetItemAttrText (itemtype => itemtype,
305: l_po_header_id := wf_engine.GetItemAttrNumber (itemtype => itemtype,
306: itemkey => itemkey,
307: aname => 'DOCUMENT_ID');
308:
309: l_doc_type := wf_engine.GetItemAttrText (itemtype => itemtype,
310: itemkey => itemkey,
311: aname => 'DOCUMENT_TYPE');
312:
313: IF l_doc_type IN ('PO','PA') THEN
327: END IF;
328:
329: IF NVL(l_acceptance_required,'N') = 'Y' THEN
330:
331: resultout := wf_engine.eng_completed || ':' || 'Y';
332:
333: ELSE
334:
335: resultout := wf_engine.eng_completed || ':' || 'N';
331: resultout := wf_engine.eng_completed || ':' || 'Y';
332:
333: ELSE
334:
335: resultout := wf_engine.eng_completed || ':' || 'N';
336:
337: END IF;
338:
339: x_progress := 'PO_POAPPROVAL_INIT1.Is_Acceptance_Required: 02';
463: /* DEBUG */ PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey,x_progress);
464: END IF;
465:
466:
467: wf_engine.SetItemAttrText ( itemtype => itemtype,
468: itemkey => itemkey,
469: aname => 'DOCUMENT_NUMBER',
470: avalue => POHdr_rec.segment1);
471: --
474: ** it is set at the time of startup.
475: */
476:
477: /*
478: wf_engine.SetItemAttrNumber ( itemtype => itemType,
479: itemkey => itemkey,
480: aname => 'DOCUMENT_ID',
481: avalue => POHdr_rec.po_header_id);
482: */
480: aname => 'DOCUMENT_ID',
481: avalue => POHdr_rec.po_header_id);
482: */
483: --
484: wf_engine.SetItemAttrText ( itemtype => itemtype,
485: itemkey => itemkey,
486: aname => 'AUTHORIZATION_STATUS',
487: avalue => POHdr_rec.authorization_status);
488: --
485: itemkey => itemkey,
486: aname => 'AUTHORIZATION_STATUS',
487: avalue => POHdr_rec.authorization_status);
488: --
489: wf_engine.SetItemAttrText ( itemtype => itemtype,
490: itemkey => itemkey,
491: aname => 'CLOSED_CODE',
492: avalue => POHdr_rec.closed_code);
493:
491: aname => 'CLOSED_CODE',
492: avalue => POHdr_rec.closed_code);
493:
494: --
495: wf_engine.SetItemAttrText ( itemtype => itemtype,
496: itemkey => itemkey,
497: aname => 'FUNCTIONAL_CURRENCY',
498: avalue => POHdr_rec.currency_code);
499: --
496: itemkey => itemkey,
497: aname => 'FUNCTIONAL_CURRENCY',
498: avalue => POHdr_rec.currency_code);
499: --
500: wf_engine.SetItemAttrText ( itemtype => itemtype,
501: itemkey => itemkey,
502: aname => 'PO_DESCRIPTION',
503: avalue => POHdr_rec.comments);
504:
502: aname => 'PO_DESCRIPTION',
503: avalue => POHdr_rec.comments);
504:
505:
506: l_doc_id := wf_engine.GetItemAttrNumber (itemtype => itemtype,
507: itemkey => itemkey,
508: aname => 'DOCUMENT_ID');
509:
510: /* Get the translated values for the DOC_TYPE, DOC_SUBTYPE, AUTH_STATUS and
509:
510: /* Get the translated values for the DOC_TYPE, DOC_SUBTYPE, AUTH_STATUS and
511: ** CLOSED_CODE. These will be displayed in the notifications.
512: */
513: l_doc_type := wf_engine.GetItemAttrText (itemtype => itemtype,
514: itemkey => itemkey,
515: aname => 'DOCUMENT_TYPE');
516:
517: l_doc_subtype := wf_engine.GetItemAttrText (itemtype => itemtype,
513: l_doc_type := wf_engine.GetItemAttrText (itemtype => itemtype,
514: itemkey => itemkey,
515: aname => 'DOCUMENT_TYPE');
516:
517: l_doc_subtype := wf_engine.GetItemAttrText (itemtype => itemtype,
518: itemkey => itemkey,
519: aname => 'DOCUMENT_SUBTYPE');
520:
521: OPEN C1(POHdr_rec.authorization_status);
546: CLOSE C4;
547: */
548:
549: --
550: wf_engine.SetItemAttrText ( itemtype => itemtype,
551: itemkey => itemkey,
552: aname => 'AUTHORIZATION_STATUS_DISP',
553: avalue => l_auth_stat);
554: --
551: itemkey => itemkey,
552: aname => 'AUTHORIZATION_STATUS_DISP',
553: avalue => l_auth_stat);
554: --
555: wf_engine.SetItemAttrText ( itemtype => itemtype,
556: itemkey => itemkey,
557: aname => 'CLOSED_CODE_DISP',
558: avalue => l_closed_code);
559:
559:
560: --
561: -- Removed FPI GA Modifications to get PO_GA_TYPE Message for GA
562:
563: wf_engine.SetItemAttrText ( itemtype => itemtype,
564: itemkey => itemkey,
565: aname => 'DOCUMENT_TYPE_DISP',
566: avalue => l_doc_type_disp);
567: --
571: ** subtype - DOCUMENT_TYPE_DISP, hence commenting the code below
572: */
573:
574: /*
575: wf_engine.SetItemAttrText ( itemtype => itemtype,
576: itemkey => itemkey,
577: aname => 'DOCUMENT_SUBTYPE_DISP',
578: avalue => l_doc_subtype_disp);
579:
589:
590: l_po_amount_disp := TO_CHAR(l_po_amount,FND_CURRENCY.GET_FORMAT_MASK(
591: POHdr_rec.currency_code,30));
592:
593: wf_engine.SetItemAttrText ( itemtype => itemtype,
594: itemkey => itemkey,
595: aname => 'PO_AMOUNT_DSP',
596: avalue => l_po_amount_disp);
597:
652:
653: l_tax_amount_disp := TO_CHAR(l_tax_amount,FND_CURRENCY.GET_FORMAT_MASK(
654: POHdr_rec.currency_code,30));
655:
656: wf_engine.SetItemAttrText ( itemtype => itemtype,
657: itemkey => itemkey,
658: aname => 'TAX_AMOUNT_DSP',
659: avalue => l_tax_amount_disp );
660:
662:
663: l_total_amount_disp := TO_CHAR(l_total_amount,FND_CURRENCY.GET_FORMAT_MASK(
664: POHdr_rec.currency_code,30));
665:
666: wf_engine.SetItemAttrText ( itemtype => itemtype,
667: itemkey => itemkey,
668: aname => 'TOTAL_AMOUNT_DSP',
669: avalue => l_total_amount_disp);
670:
789: /* DEBUG */ PO_WF_DEBUG_PKG.insert_debug(itemtype,itemkey,x_progress);
790: END IF;
791:
792:
793: wf_engine.SetItemAttrText ( itemtype => itemtype,
794: itemkey => itemkey,
795: aname => 'RELEASE_TYPE',
796: avalue => RelHdr_rec.Release_Type);
797: --
794: itemkey => itemkey,
795: aname => 'RELEASE_TYPE',
796: avalue => RelHdr_rec.Release_Type);
797: --
798: wf_engine.SetItemAttrNumber ( itemtype => itemType,
799: itemkey => itemkey,
800: aname => 'RELEASE_NUM',
801: avalue => RelHdr_rec.Release_num);
802: --
800: aname => 'RELEASE_NUM',
801: avalue => RelHdr_rec.Release_num);
802: --
803:
804: wf_engine.SetItemAttrText ( itemtype => itemtype,
805: itemkey => itemkey,
806: aname => 'AUTHORIZATION_STATUS',
807: avalue => RelHdr_rec.authorization_status);
808: --
805: itemkey => itemkey,
806: aname => 'AUTHORIZATION_STATUS',
807: avalue => RelHdr_rec.authorization_status);
808: --
809: wf_engine.SetItemAttrText ( itemtype => itemtype,
810: itemkey => itemkey,
811: aname => 'CLOSED_CODE',
812: avalue => RelHdr_rec.closed_code);
813: --
810: itemkey => itemkey,
811: aname => 'CLOSED_CODE',
812: avalue => RelHdr_rec.closed_code);
813: --
814: wf_engine.SetItemAttrText ( itemtype => itemtype,
815: itemkey => itemkey,
816: aname => 'DOCUMENT_NUMBER',
817: avalue => RelHdr_rec.po_number);
818: --
815: itemkey => itemkey,
816: aname => 'DOCUMENT_NUMBER',
817: avalue => RelHdr_rec.po_number);
818: --
819: wf_engine.SetItemAttrText ( itemtype => itemtype,
820: itemkey => itemkey,
821: aname => 'FUNCTIONAL_CURRENCY',
822: avalue => RelHdr_rec.currency_code);
823: --
820: itemkey => itemkey,
821: aname => 'FUNCTIONAL_CURRENCY',
822: avalue => RelHdr_rec.currency_code);
823: --
824: wf_engine.SetItemAttrText ( itemtype => itemtype,
825: itemkey => itemkey,
826: aname => 'RELEASE_NUM_DASH',
827: avalue => '-');
828:
848: CLOSE C4;
849: */
850:
851: --
852: wf_engine.SetItemAttrText ( itemtype => itemtype,
853: itemkey => itemkey,
854: aname => 'AUTHORIZATION_STATUS_DISP',
855: avalue => l_auth_stat);
856: --
854: aname => 'AUTHORIZATION_STATUS_DISP',
855: avalue => l_auth_stat);
856: --
857: /* Not using this currently
858: wf_engine.SetItemAttrText ( itemtype => itemtype,
859: itemkey => itemkey,
860: aname => 'CLOSED_CODE_DISP',
861: avalue => l_closed_code);
862: */
860: aname => 'CLOSED_CODE_DISP',
861: avalue => l_closed_code);
862: */
863: --
864: wf_engine.SetItemAttrText ( itemtype => itemtype,
865: itemkey => itemkey,
866: aname => 'DOCUMENT_TYPE_DISP',
867: avalue => l_doc_type_disp);
868: --
872: ** subtype - DOCUMENT_TYPE_DISP, hence commenting the code below
873: */
874:
875: /*
876: wf_engine.SetItemAttrText ( itemtype => itemtype,
877: itemkey => itemkey,
878: aname => 'DOCUMENT_SUBTYPE_DISP',
879: avalue => l_doc_subtype_disp);
880: */
878: aname => 'DOCUMENT_SUBTYPE_DISP',
879: avalue => l_doc_subtype_disp);
880: */
881:
882: l_doc_id := wf_engine.GetItemAttrNumber (itemtype => itemtype,
883: itemkey => itemkey,
884: aname => 'DOCUMENT_ID');
885:
886: l_po_amount := po_notifications_sv3.get_doc_total('RELEASE', l_doc_id);
887:
888: l_po_amount_disp := TO_CHAR(l_po_amount,FND_CURRENCY.GET_FORMAT_MASK(
889: RelHdr_rec.currency_code,30));
890:
891: wf_engine.SetItemAttrText ( itemtype => itemtype,
892: itemkey => itemkey,
893: aname => 'PO_AMOUNT_DSP',
894: avalue => l_po_amount_disp);
895:
951:
952: l_tax_amount_disp := TO_CHAR(l_tax_amount,FND_CURRENCY.GET_FORMAT_MASK(
953: RelHdr_rec.currency_code,30));
954:
955: wf_engine.SetItemAttrText ( itemtype => itemtype,
956: itemkey => itemkey,
957: aname => 'TAX_AMOUNT_DSP',
958: avalue => l_tax_amount_disp );
959:
962:
963: l_total_amount_disp := TO_CHAR(l_total_amount,FND_CURRENCY.GET_FORMAT_MASK(
964: RelHdr_rec.currency_code,30));
965:
966: wf_engine.SetItemAttrText ( itemtype => itemtype,
967: itemkey => itemkey,
968: aname => 'TOTAL_AMOUNT_DSP',
969: avalue => l_total_amount_disp);
970:
1465: l_item_key WF_ITEMS.item_key%TYPE;
1466: l_item_key_seq NUMBER;
1467: BEGIN
1468: -- Do nothing if the Workflow mode is Cancel or Timeout.
1469: if (funcmode <> wf_engine.eng_run) then
1470: resultout := wf_engine.eng_null;
1471: return;
1472: end if;
1473:
1466: l_item_key_seq NUMBER;
1467: BEGIN
1468: -- Do nothing if the Workflow mode is Cancel or Timeout.
1469: if (funcmode <> wf_engine.eng_run) then
1470: resultout := wf_engine.eng_null;
1471: return;
1472: end if;
1473:
1474: l_document_type := po_wf_util_pkg.GetItemAttrText (
1555: END LOOP; -- l_temp_labor_requesters_csr
1556:
1557: END IF; -- Standard PO
1558:
1559: resultout := wf_engine.eng_completed || ':' || 'ACTIVITY_PERFORMED';
1560:
1561: EXCEPTION
1562: WHEN OTHERS THEN
1563: wf_core.context( g_pkg_name, l_proc_name, l_progress );
1627:
1628: l_progress := '010';
1629:
1630: -- Create the child process.
1631: wf_engine.CreateProcess(itemtype => p_item_type,
1632: itemkey => p_item_key,
1633: process => p_process );
1634:
1635: l_progress := '020';
1720:
1721: l_progress := '030';
1722:
1723: -- Set the parent-child relationship between the 2 processes.
1724: wf_engine.SetItemParent (itemtype => p_item_type,
1725: itemkey => p_item_key,
1726: parent_itemtype => p_parent_item_type,
1727: parent_itemkey => p_parent_item_key,
1728: parent_context => NULL);
1729:
1730: l_progress := '040';
1731:
1732: -- Start the child process.
1733: wf_engine.StartProcess (itemtype => p_item_type,
1734: itemkey => p_item_key );
1735:
1736: EXCEPTION
1737: WHEN OTHERS THEN