528: x_Progress VARCHAR2(2000);
529:
530: begin
531:
532: l_LineCaller := wf_engine.GetItemAttrText(itemtype => AreAllLinesDone.itemtype,
533: itemkey => AreAllLinesDone.itemkey,
534: aname => 'LINE_PROCESSING_CALLER');
535:
536: if l_LineCaller = 'BUNDLE' then
573: x_Progress VARCHAR2(2000);
574:
575: begin
576:
577: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => AreAllLinesDoneForBundleCaller.itemtype,
578: itemkey => AreAllLinesDoneForBundleCaller.itemkey,
579: aname => 'ORDER_ID');
580:
581: l_BundleID := wf_engine.GetItemAttrNumber(itemtype => AreAllLinesDoneForBundleCaller.itemtype,
577: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => AreAllLinesDoneForBundleCaller.itemtype,
578: itemkey => AreAllLinesDoneForBundleCaller.itemkey,
579: aname => 'ORDER_ID');
580:
581: l_BundleID := wf_engine.GetItemAttrNumber(itemtype => AreAllLinesDoneForBundleCaller.itemtype,
582: itemkey => AreAllLinesDoneForBundleCaller.itemkey,
583: aname => 'BUNDLE_ID');
584:
585: l_CurrentLineSeq := wf_engine.GetItemAttrNumber(itemtype => AreAllLinesDoneForBundleCaller.itemtype,
581: l_BundleID := wf_engine.GetItemAttrNumber(itemtype => AreAllLinesDoneForBundleCaller.itemtype,
582: itemkey => AreAllLinesDoneForBundleCaller.itemkey,
583: aname => 'BUNDLE_ID');
584:
585: l_CurrentLineSeq := wf_engine.GetItemAttrNumber(itemtype => AreAllLinesDoneForBundleCaller.itemtype,
586: itemkey => AreAllLinesDoneForBundleCaller.itemkey,
587: aname => 'CURRENT_LINE_SEQUENCE');
588:
589:
690: x_Progress VARCHAR2(2000);
691:
692: begin
693:
694: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => AreAllLinesDoneForOrderCaller.itemtype,
695: itemkey => AreAllLinesDoneForOrderCaller.itemkey,
696: aname => 'ORDER_ID');
697:
698: l_CurrentLineSeq := wf_engine.GetItemAttrNumber(itemtype => AreAllLinesDoneForOrderCaller.itemtype,
694: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => AreAllLinesDoneForOrderCaller.itemtype,
695: itemkey => AreAllLinesDoneForOrderCaller.itemkey,
696: aname => 'ORDER_ID');
697:
698: l_CurrentLineSeq := wf_engine.GetItemAttrNumber(itemtype => AreAllLinesDoneForOrderCaller.itemtype,
699: itemkey => AreAllLinesDoneForOrderCaller.itemkey,
700: aname => 'CURRENT_LINE_SEQUENCE');
701:
702: if c_LineSeq%ISOPEN then
751: x_Progress VARCHAR2(2000);
752:
753: begin
754:
755: l_LineCaller := wf_engine.GetItemAttrText(itemtype => LaunchLineItemProcess.itemtype,
756: itemkey => LaunchLineItemProcess.itemkey,
757: aname => 'LINE_PROCESSING_CALLER');
758:
759: if l_LineCaller = 'BUNDLE' then
810: ErrStr varchar2(1996);
811:
812: begin
813:
814: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => LaunchLineItemProcessForBundle.itemtype,
815: itemkey => LaunchLineItemProcessForBundle.itemkey,
816: aname => 'ORDER_ID');
817:
818: l_BundleID := wf_engine.GetItemAttrNumber(itemtype => LaunchLineItemProcessForBundle.itemtype,
814: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => LaunchLineItemProcessForBundle.itemtype,
815: itemkey => LaunchLineItemProcessForBundle.itemkey,
816: aname => 'ORDER_ID');
817:
818: l_BundleID := wf_engine.GetItemAttrNumber(itemtype => LaunchLineItemProcessForBundle.itemtype,
819: itemkey => LaunchLineItemProcessForBundle.itemkey,
820: aname => 'BUNDLE_ID');
821:
822: l_PrevLineSeq := wf_engine.GetItemAttrNumber(itemtype => LaunchLineItemProcessForBundle.itemtype,
818: l_BundleID := wf_engine.GetItemAttrNumber(itemtype => LaunchLineItemProcessForBundle.itemtype,
819: itemkey => LaunchLineItemProcessForBundle.itemkey,
820: aname => 'BUNDLE_ID');
821:
822: l_PrevLineSeq := wf_engine.GetItemAttrNumber(itemtype => LaunchLineItemProcessForBundle.itemtype,
823: itemkey => LaunchLineItemProcessForBundle.itemkey,
824: aname => 'CURRENT_LINE_SEQUENCE');
825:
826:
858: LineitemID => l_LineItemID,
859: WIInstanceID => null,
860: FAInstanceID => null);
861:
862: wf_engine.SetItemAttrText(itemtype => 'XDPPROV',
863: itemkey => l_tempKey,
864: aname => 'MASTER_TO_CONTINUE',
865: avalue => 'WAITFORFLOW-LINE-DEP');
866:
903: end if;
904:
905: /* Launch the Line Item Fulfillment Process */
906: FOR i in 1..l_Counter LOOP
907: wf_engine.StartProcess(t_ChildTypes(i),
908: t_ChildKeys(i));
909:
910: END LOOP;
911:
945: LineitemID => l_LineItemID,
946: WIInstanceID => null,
947: FAInstanceID => null);
948:
949: wf_engine.SetItemAttrText(itemtype => 'XDPPROV',
950: itemkey => l_tempKey,
951: aname => 'MASTER_TO_CONTINUE',
952: avalue => 'WAITFORFLOW-LINE-DEP');
953:
1008: end if;
1009:
1010: /* Launch the Line Item Fulfillment Process */
1011: FOR i in 1..l_Counter LOOP
1012: wf_engine.StartProcess(t_ChildTypes(i),
1013: t_ChildKeys(i));
1014: END LOOP;
1015:
1016: end if;
1091: ErrStr varchar2(1996);
1092:
1093: begin
1094:
1095: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => LaunchLineItemProcessForOrder.itemtype,
1096: itemkey => LaunchLineItemProcessForOrder.itemkey,
1097: aname => 'ORDER_ID');
1098:
1099: l_PrevLineSeq := wf_engine.GetItemAttrNumber(itemtype => LaunchLineItemProcessForOrder.itemtype,
1095: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => LaunchLineItemProcessForOrder.itemtype,
1096: itemkey => LaunchLineItemProcessForOrder.itemkey,
1097: aname => 'ORDER_ID');
1098:
1099: l_PrevLineSeq := wf_engine.GetItemAttrNumber(itemtype => LaunchLineItemProcessForOrder.itemtype,
1100: itemkey => LaunchLineItemProcessForOrder.itemkey,
1101: aname => 'CURRENT_LINE_SEQUENCE');
1102:
1103:
1133: WIInstanceID => null,
1134: FAInstanceID => null);
1135:
1136:
1137: wf_engine.SetItemAttrText(itemtype => 'XDPPROV',
1138: itemkey => l_tempKey,
1139: aname => 'MASTER_TO_CONTINUE',
1140: avalue => 'WAITFORFLOW-LINE-DEP');
1141:
1203:
1204:
1205: /* Launch the Line Item Fulfillment Process */
1206: FOR i in 1..l_Counter LOOP
1207: wf_engine.StartProcess(t_ChildTypes(i),
1208: t_ChildKeys(i));
1209:
1210: END LOOP;
1211:
1289: begin
1290:
1291: l_Counter := 0;
1292:
1293: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => LaunchLineForOrderProcess.itemtype,
1294: itemkey => LaunchLineForOrderProcess.itemkey,
1295: aname => 'ORDER_ID');
1296:
1297: l_LineMaster := 'WAITFORFLOW-ORDER_LINE';
1407:
1408: /* Now start the workflow process */
1409: FOR i in 1..l_Counter LOOP
1410:
1411: wf_engine.StartProcess(t_ChildTypes(i),
1412: t_ChildKeys(i));
1413: END LOOP;
1414:
1415: exception
1459: l_result varchar2(1) := 'N';
1460:
1461: begin
1462:
1463: l_LineCaller := wf_engine.GetItemAttrText(itemtype =>LaunchAllIndLines.itemtype,
1464: itemkey =>LaunchAllIndLines.itemkey,
1465: aname => 'LINE_PROCESSING_CALLER');
1466:
1467: if l_LineCaller = 'BUNDLE' then
1513:
1514: begin
1515:
1516:
1517: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => LaunchAllIndLinesForOrder.itemtype,
1518: itemkey => LaunchAllIndLinesForOrder.itemkey,
1519: aname => 'ORDER_ID');
1520:
1521:
1546: LineitemID => l_LineItemID,
1547: WIInstanceID => null,
1548: FAInstanceID => null);
1549:
1550: wf_engine.SetItemAttrText(itemtype => 'XDPPROV',
1551: itemkey => t_ChildKeys(l_Counter),
1552: aname => 'MASTER_TO_CONTINUE',
1553: avalue => 'WAITFORFLOW-LINE-IND');
1554:
1574:
1575: /* Now start the workflow process */
1576:
1577: FOR i in 1..l_Counter LOOP
1578: wf_engine.StartProcess( 'XDPPROV', t_ChildKeys(i));
1579: END LOOP;
1580:
1581: return l_result;
1582:
1647:
1648: begin
1649:
1650:
1651: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => LaunchAllIndLinesForBundle.itemtype,
1652: itemkey => LaunchAllIndLinesForBundle.itemkey,
1653: aname => 'ORDER_ID');
1654:
1655: l_BundleID := wf_engine.GetItemAttrNumber(itemtype => LaunchAllIndLinesForBundle.itemtype,
1651: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => LaunchAllIndLinesForBundle.itemtype,
1652: itemkey => LaunchAllIndLinesForBundle.itemkey,
1653: aname => 'ORDER_ID');
1654:
1655: l_BundleID := wf_engine.GetItemAttrNumber(itemtype => LaunchAllIndLinesForBundle.itemtype,
1656: itemkey => LaunchAllIndLinesForBundle.itemkey,
1657: aname => 'BUNDLE_ID');
1658:
1659:
1686: LineitemID => l_LineItemID,
1687: WIInstanceID => null,
1688: FAInstanceID => null);
1689:
1690: wf_engine.SetItemAttrText(itemtype => 'XDPPROV',
1691: itemkey => t_ChildKeys(l_Counter),
1692: aname => 'MASTER_TO_CONTINUE',
1693: avalue => 'WAITFORFLOW-LINE-IND');
1694:
1737: LineitemID => l_LineItemID,
1738: WIInstanceID => null,
1739: FAInstanceID => null);
1740:
1741: wf_engine.SetItemAttrText(itemtype => 'XDPPROV',
1742: itemkey => t_ChildKeys(l_Counter),
1743: aname => 'MASTER_TO_CONTINUE',
1744: avalue => 'WAITFORFLOW-LINE-IND');
1745:
1766: end if;
1767: /* Now start the workflow process */
1768:
1769: FOR i in 1..l_Counter LOOP
1770: wf_engine.StartProcess( 'XDPPROV', t_ChildKeys(i));
1771: END LOOP;
1772:
1773: return L_result;
1774:
1804: l_resultout varchar2(5) ;
1805:
1806: begin
1807:
1808: l_PackageFlag := wf_engine.GetItemAttrText(itemtype => IsLineaPackage.itemtype,
1809: itemkey => IsLineaPackage.itemkey,
1810: aname => 'IS_PACKAGE_FLAG');
1811:
1812: l_ib_source := wf_engine.GetItemAttrText(itemtype => IsLineaPackage.itemtype,
1808: l_PackageFlag := wf_engine.GetItemAttrText(itemtype => IsLineaPackage.itemtype,
1809: itemkey => IsLineaPackage.itemkey,
1810: aname => 'IS_PACKAGE_FLAG');
1811:
1812: l_ib_source := wf_engine.GetItemAttrText(itemtype => IsLineaPackage.itemtype,
1813: itemkey => IsLineaPackage.itemkey,
1814: aname => 'IB_SOURCE');
1815:
1816: l_ib_source_id := wf_engine.GetItemAttrNumber(itemtype => IsLineaPackage.itemtype,
1812: l_ib_source := wf_engine.GetItemAttrText(itemtype => IsLineaPackage.itemtype,
1813: itemkey => IsLineaPackage.itemkey,
1814: aname => 'IB_SOURCE');
1815:
1816: l_ib_source_id := wf_engine.GetItemAttrNumber(itemtype => IsLineaPackage.itemtype,
1817: itemkey => IsLineaPackage.itemkey,
1818: aname => 'IB_SOURCE_ID');
1819:
1820: IF ((l_PackageFlag = 'Y') OR
1849: x_Progress VARCHAR2(2000);
1850:
1851: begin
1852:
1853: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => LaunchServiceProcess.itemtype,
1854: itemkey => LaunchServiceProcess.itemkey,
1855: aname => 'ORDER_ID');
1856:
1857: l_LineItemID := wf_engine.GetItemAttrNumber(itemtype => LaunchServiceProcess.itemtype,
1853: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => LaunchServiceProcess.itemtype,
1854: itemkey => LaunchServiceProcess.itemkey,
1855: aname => 'ORDER_ID');
1856:
1857: l_LineItemID := wf_engine.GetItemAttrNumber(itemtype => LaunchServiceProcess.itemtype,
1858: itemkey => LaunchServiceProcess.itemkey,
1859: aname => 'LINE_ITEM_ID');
1860:
1861:
1873: LineitemID => l_LineItemID,
1874: WIInstanceID => null,
1875: FAInstanceID => null);
1876:
1877: wf_engine.SetItemAttrText(itemtype => 'XDPPROV',
1878: itemkey => l_tempKey,
1879: aname => 'MASTER_TO_CONTINUE',
1880: avalue => 'WAITFORFLOW-SERVICE');
1881:
1879: aname => 'MASTER_TO_CONTINUE',
1880: avalue => 'WAITFORFLOW-SERVICE');
1881:
1882:
1883: wf_engine.StartProcess(itemtype => 'XDPPROV',
1884: itemkey => l_tempKey);
1885:
1886:
1887: exception
1902: x_Progress VARCHAR2(2000);
1903:
1904: begin
1905:
1906: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => InitializeLine.itemtype,
1907: itemkey => InitializeLine.itemkey,
1908: aname => 'ORDER_ID');
1909:
1910: l_LineItemID := wf_engine.GetItemAttrNumber(itemtype => InitializeLine.itemtype,
1906: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => InitializeLine.itemtype,
1907: itemkey => InitializeLine.itemkey,
1908: aname => 'ORDER_ID');
1909:
1910: l_LineItemID := wf_engine.GetItemAttrNumber(itemtype => InitializeLine.itemtype,
1911: itemkey => InitializeLine.itemkey,
1912: aname => 'LINE_ITEM_ID');
1913:
1914:
2067:
2068:
2069: begin
2070:
2071: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => UpdateInstallBase.itemtype,
2072: itemkey => UpdateInstallBase.itemkey,
2073: aname => 'ORDER_ID');
2074:
2075: l_LineItemID := wf_engine.GetItemAttrNumber(itemtype => UpdateInstallBase.itemtype,
2071: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => UpdateInstallBase.itemtype,
2072: itemkey => UpdateInstallBase.itemkey,
2073: aname => 'ORDER_ID');
2074:
2075: l_LineItemID := wf_engine.GetItemAttrNumber(itemtype => UpdateInstallBase.itemtype,
2076: itemkey => UpdateInstallBase.itemkey,
2077: aname => 'LINE_ITEM_ID');
2078:
2079: if l_OrderID is not null and
2154: and LINE_SEQUENCE > 0;
2155:
2156: begin
2157:
2158: l_OrderID := wf_engine.GetItemAttrNumber(itemtype => ResolveIndDepLines.itemtype,
2159: itemkey => ResolveIndDepLines.itemkey,
2160: aname => 'ORDER_ID');
2161:
2162: FOR lv_LineRec in c_GetIndLines( l_OrderID ) LOOP
2195: x_Progress VARCHAR2(2000);
2196:
2197: begin
2198:
2199: l_LineItemID := wf_engine.GetItemAttrNumber(itemtype => IsSerPartPackage.itemtype,
2200: itemkey => IsSerPartPackage.itemkey,
2201: aname => 'LINE_ITEM_ID');
2202: SELECT is_virtual_line_flag INTO l_flag
2203: FROM xdp_order_line_items
2230: e_publish_exception EXCEPTION ;
2231:
2232: BEGIN
2233:
2234: l_line_item_id := WF_ENGINE.GetItemAttrNumber
2235: (itemtype => PublishXDPLineDone.itemtype ,
2236: itemkey => PublishXDPLineDone.itemkey ,
2237: aname => 'LINE_ITEM_ID' );
2238:
2235: (itemtype => PublishXDPLineDone.itemtype ,
2236: itemkey => PublishXDPLineDone.itemkey ,
2237: aname => 'LINE_ITEM_ID' );
2238:
2239: l_order_id := WF_ENGINE.GetItemAttrNumber
2240: (itemtype => PublishXDPLineDone.itemtype ,
2241: itemkey => PublishXDPLineDone.itemkey ,
2242: aname => 'ORDER_ID' );
2243: