299: --
300: -- Also, if you want to use a different item type or process ,you must
301: -- change the value for the variable ItemType and the
302: -- change the value for the parameter "process" in the
303: -- call to wf_engine.Create_Process.
304: -- Make sure that you have a thorough understanding
305: -- of the Oracle Workflow product and how to use PL/SQL with Workflow.
306: --
307:
684: -- 'PA Budget Approval Workflow'.
685: -- ------------------------------------------------------------------------------------
686: --dbms_output.put_line('Call for CreateProcess');
687:
688: wf_engine.CreateProcess( ItemType => ItemType,
689: ItemKey => ItemKey,
690: process => 'PRO_BASELINE_BUDGET' );
691:
692: --dbms_output.put_line('SetitemAttributes');
691:
692: --dbms_output.put_line('SetitemAttributes');
693:
694:
695: wf_engine.SetItemAttrNumber ( itemtype => itemtype,
696: itemkey => itemkey,
697: aname => 'PROJECT_ID',
698: avalue => p_project_id);
699: --
696: itemkey => itemkey,
697: aname => 'PROJECT_ID',
698: avalue => p_project_id);
699: --
700: wf_engine.SetItemAttrText ( itemtype => itemtype,
701: itemkey => itemkey,
702: aname => 'PM_PROJECT_REFERENCE',
703: avalue => l_pm_project_reference );
704:
701: itemkey => itemkey,
702: aname => 'PM_PROJECT_REFERENCE',
703: avalue => l_pm_project_reference );
704:
705: wf_engine.SetItemAttrText ( itemtype => itemtype,
706: itemkey => itemkey,
707: aname => 'PA_PROJECT_NUMBER',
708: avalue => l_pa_project_number );
709:
706: itemkey => itemkey,
707: aname => 'PA_PROJECT_NUMBER',
708: avalue => l_pa_project_number );
709:
710: wf_engine.SetItemAttrText ( itemtype => itemtype,
711: itemkey => itemkey,
712: aname => 'PROJECT_NAME',
713: avalue => l_project_name );
714:
711: itemkey => itemkey,
712: aname => 'PROJECT_NAME',
713: avalue => l_project_name );
714:
715: wf_engine.SetItemAttrText ( itemtype => itemtype,
716: itemkey => itemkey,
717: aname => 'PROJECT_DESCRIPTION',
718: avalue => l_description );
719:
716: itemkey => itemkey,
717: aname => 'PROJECT_DESCRIPTION',
718: avalue => l_description );
719:
720: wf_engine.SetItemAttrText ( itemtype => itemtype,
721: itemkey => itemkey,
722: aname => 'PROJECT_TYPE',
723: avalue => l_project_type );
724:
721: itemkey => itemkey,
722: aname => 'PROJECT_TYPE',
723: avalue => l_project_type );
724:
725: wf_engine.SetItemAttrText ( itemtype => itemtype,
726: itemkey => itemkey,
727: aname => 'PM_PROJECT_PRODUCT_CODE',
728: avalue => l_pm_project_product_code );
729:
726: itemkey => itemkey,
727: aname => 'PM_PROJECT_PRODUCT_CODE',
728: avalue => l_pm_project_product_code );
729:
730: wf_engine.SetItemAttrNumber ( itemtype => itemtype,
731: itemkey => itemkey,
732: aname => 'CARRYING_OUT_ORG_ID',
733: avalue => l_carrying_out_org_id);
734:
731: itemkey => itemkey,
732: aname => 'CARRYING_OUT_ORG_ID',
733: avalue => l_carrying_out_org_id);
734:
735: wf_engine.SetItemAttrText ( itemtype => itemtype,
736: itemkey => itemkey,
737: aname => 'CARRYING_OUT_ORG_NAME',
738: avalue => l_carrying_out_org_name);
739:
736: itemkey => itemkey,
737: aname => 'CARRYING_OUT_ORG_NAME',
738: avalue => l_carrying_out_org_name);
739:
740: wf_engine.SetItemAttrText ( itemtype => itemtype,
741: itemkey => itemkey,
742: aname => 'PROJECT_TYPE_CLASS_CODE',
743: avalue => l_project_type_class_code);
744:
741: itemkey => itemkey,
742: aname => 'PROJECT_TYPE_CLASS_CODE',
743: avalue => l_project_type_class_code);
744:
745: wf_engine.SetItemAttrNumber ( itemtype => itemtype,
746: itemkey => itemkey,
747: aname => 'WORKFLOW_STARTED_BY_ID',
748: avalue => l_workflow_started_by_id);
749:
746: itemkey => itemkey,
747: aname => 'WORKFLOW_STARTED_BY_ID',
748: avalue => l_workflow_started_by_id);
749:
750: wf_engine.SetItemAttrText ( itemtype => itemtype,
751: itemkey => itemkey,
752: aname => 'WORKFLOW_STARTED_BY_NAME',
753: avalue => l_user_name);
754:
751: itemkey => itemkey,
752: aname => 'WORKFLOW_STARTED_BY_NAME',
753: avalue => l_user_name);
754:
755: wf_engine.SetItemAttrText ( itemtype => itemtype,
756: itemkey => itemkey,
757: aname => 'WORKFLOW_STARTED_BY_FULL_NAME',
758: avalue => l_full_name);
759:
764: , role_display_name => l_full_name
765: , expiration_date => sysdate+1
766: );
767:
768: wf_engine.SetItemAttrText
769: (itemtype => itemtype,
770: itemkey => itemkey,
771: aname => 'WORKFLOW_STARTED_BY_ROLE',
772: avalue => l_wf_starter_role );
774: OPEN l_get_change_reason_csr(l_budget_change_reason_code);
775: FETCH l_get_change_reason_csr INTO l_budget_change_reason_meaning;
776: CLOSE l_get_change_reason_csr; -- Bug #14623649
777:
778: wf_engine.SetItemAttrNumber ( itemtype => itemtype,
779: itemkey => itemkey,
780: aname => 'RESPONSIBILITY_ID',
781: avalue => l_resp_id);
782:
779: itemkey => itemkey,
780: aname => 'RESPONSIBILITY_ID',
781: avalue => l_resp_id);
782:
783: wf_engine.SetItemAttrText ( itemtype => itemtype,
784: itemkey => itemkey,
785: aname => 'BUDGET_TYPE_CODE',
786: avalue => l_budget_type_code);
787:
784: itemkey => itemkey,
785: aname => 'BUDGET_TYPE_CODE',
786: avalue => l_budget_type_code);
787:
788: wf_engine.SetItemAttrText ( itemtype => itemtype,
789: itemkey => itemkey,
790: aname => 'BUDGET_TYPE',
791: avalue => l_budget_type);
792:
789: itemkey => itemkey,
790: aname => 'BUDGET_TYPE',
791: avalue => l_budget_type);
792:
793: wf_engine.SetItemAttrText ( itemtype => itemtype,
794: itemkey => itemkey,
795: aname => 'PM_BUDGET_REFERENCE',
796: avalue => l_pm_budget_reference);
797:
794: itemkey => itemkey,
795: aname => 'PM_BUDGET_REFERENCE',
796: avalue => l_pm_budget_reference);
797:
798: wf_engine.SetItemAttrText ( itemtype => itemtype,
799: itemkey => itemkey,
800: aname => 'BUDGET_DESCRIPTION',
801: avalue => l_budget_description);
802:
799: itemkey => itemkey,
800: aname => 'BUDGET_DESCRIPTION',
801: avalue => l_budget_description);
802:
803: wf_engine.SetItemAttrText ( itemtype => itemtype,
804: itemkey => itemkey,
805: aname => 'CHANGE_REASON_CODE',
806: avalue => l_budget_change_reason_code);
807:
804: itemkey => itemkey,
805: aname => 'CHANGE_REASON_CODE',
806: avalue => l_budget_change_reason_code);
807:
808: wf_engine.SetItemAttrText ( itemtype => itemtype,
809: itemkey => itemkey,
810: aname => 'CHANGE_REASON_MEANING',
811: avalue => l_budget_change_reason_meaning); --Bug #14623649
812:
809: itemkey => itemkey,
810: aname => 'CHANGE_REASON_MEANING',
811: avalue => l_budget_change_reason_meaning); --Bug #14623649
812:
813: wf_engine.SetItemAttrText ( itemtype => itemtype,
814: itemkey => itemkey,
815: aname => 'BUDGET_ENTRY_METHOD',
816: avalue => l_budget_entry_method);
817:
814: itemkey => itemkey,
815: aname => 'BUDGET_ENTRY_METHOD',
816: avalue => l_budget_entry_method);
817:
818: wf_engine.SetItemAttrText ( itemtype => itemtype,
819: itemkey => itemkey,
820: aname => 'BUDGET_ENTRY_METHOD_CODE',
821: avalue => l_budget_entry_method_code);
822:
819: itemkey => itemkey,
820: aname => 'BUDGET_ENTRY_METHOD_CODE',
821: avalue => l_budget_entry_method_code);
822:
823: wf_engine.SetItemAttrText ( itemtype => itemtype,
824: itemkey => itemkey,
825: aname => 'PM_BUDGET_PRODUCT_CODE',
826: avalue => l_pm_budget_product_code);
827:
824: itemkey => itemkey,
825: aname => 'PM_BUDGET_PRODUCT_CODE',
826: avalue => l_pm_budget_product_code);
827:
828: wf_engine.SetItemAttrNumber ( itemtype => itemtype,
829: itemkey => itemkey,
830: aname => 'TOTAL_LABOR_HOURS',
831: avalue => l_total_labor_hours);
832:
829: itemkey => itemkey,
830: aname => 'TOTAL_LABOR_HOURS',
831: avalue => l_total_labor_hours);
832:
833: wf_engine.SetItemAttrNumber ( itemtype => itemtype,
834: itemkey => itemkey,
835: aname => 'TOTAL_RAW_COST',
836: avalue => l_total_raw_cost);
837:
834: itemkey => itemkey,
835: aname => 'TOTAL_RAW_COST',
836: avalue => l_total_raw_cost);
837:
838: wf_engine.SetItemAttrNumber ( itemtype => itemtype,
839: itemkey => itemkey,
840: aname => 'TOTAL_BURDENED_COST',
841: avalue => l_total_burdened_cost);
842:
839: itemkey => itemkey,
840: aname => 'TOTAL_BURDENED_COST',
841: avalue => l_total_burdened_cost);
842:
843: wf_engine.SetItemAttrNumber ( itemtype => itemtype,
844: itemkey => itemkey,
845: aname => 'TOTAL_REVENUE',
846: avalue => l_total_revenue);
847:
844: itemkey => itemkey,
845: aname => 'TOTAL_REVENUE',
846: avalue => l_total_revenue);
847:
848: wf_engine.SetItemAttrNumber ( itemtype => itemtype,
849: itemkey => itemkey,
850: aname => 'RESOURCE_LIST_ID',
851: avalue => l_resource_list_id);
852:
849: itemkey => itemkey,
850: aname => 'RESOURCE_LIST_ID',
851: avalue => l_resource_list_id);
852:
853: wf_engine.SetItemAttrText ( itemtype => itemtype,
854: itemkey => itemkey,
855: aname => 'RESOURCE_LIST_NAME',
856: avalue => l_resource_list_name);
857:
854: itemkey => itemkey,
855: aname => 'RESOURCE_LIST_NAME',
856: avalue => l_resource_list_name);
857:
858: wf_engine.SetItemAttrText ( itemtype => itemtype,
859: itemkey => itemkey,
860: aname => 'RESOURCE_LIST_DESCRIPTION',
861: avalue => l_resource_list_description);
862:
859: itemkey => itemkey,
860: aname => 'RESOURCE_LIST_DESCRIPTION',
861: avalue => l_resource_list_description);
862:
863: wf_engine.SetItemAttrText ( itemtype => itemtype,
864: itemkey => itemkey,
865: aname => 'MARK_AS_ORIGINAL',
866: avalue => l_mark_as_original);
867:
864: itemkey => itemkey,
865: aname => 'MARK_AS_ORIGINAL',
866: avalue => l_mark_as_original);
867:
868: wf_engine.SetItemAttrText (itemtype => itemtype,
869: itemkey => itemkey,
870: aname => 'WF_STARTED_DATE',
871: avalue => l_wf_started_date);
872:
870: aname => 'WF_STARTED_DATE',
871: avalue => l_wf_started_date);
872:
873:
874: wf_engine.SetItemAttrNumber ( itemtype => itemtype,
875: itemkey => itemkey,
876: aname => 'DRAFT_VERSION_ID',
877: avalue => p_draft_version_id);
878:
879:
880:
881: -- Budget Integration Attributes ------------------------------------------
882:
883: wf_engine.SetItemAttrText (itemtype => itemtype,
884: itemkey => itemkey,
885: aname => 'FCK_REQ_FLAG',
886: avalue => p_fck_req_flag);
887:
884: itemkey => itemkey,
885: aname => 'FCK_REQ_FLAG',
886: avalue => p_fck_req_flag);
887:
888: wf_engine.SetItemAttrText (itemtype => itemtype,
889: itemkey => itemkey,
890: aname => 'BGT_INTG_FLAG',
891: avalue => p_bgt_intg_flag);
892:
895:
896:
897:
898:
899: wf_engine.SetItemAttrNumber ( itemtype => itemtype,
900: itemkey => itemkey,
901: aname => 'FIN_PLAN_TYPE_ID',
902: avalue => l_fin_plan_type_id);
903:
900: itemkey => itemkey,
901: aname => 'FIN_PLAN_TYPE_ID',
902: avalue => l_fin_plan_type_id);
903:
904: wf_engine.SetItemAttrText ( itemtype => itemtype,
905: itemkey => itemkey,
906: aname => 'VERSION_TYPE',
907: avalue => l_version_type);
908:
905: itemkey => itemkey,
906: aname => 'VERSION_TYPE',
907: avalue => l_version_type);
908:
909: wf_engine.SetItemAttrText ( itemtype => itemtype,
910: itemkey => itemkey,
911: aname => 'FIN_PLAN_TYPE_NAME',
912: avalue => l_fin_plan_type_name);
913:
910: itemkey => itemkey,
911: aname => 'FIN_PLAN_TYPE_NAME',
912: avalue => l_fin_plan_type_name);
913:
914: wf_engine.SetItemAttrText ( itemtype => itemtype,
915: itemkey => itemkey,
916: aname => 'FIN_PLAN_LEVEL',
917: avalue => l_fin_plan_level);
918:
915: itemkey => itemkey,
916: aname => 'FIN_PLAN_LEVEL',
917: avalue => l_fin_plan_level);
918:
919: wf_engine.SetItemAttrText ( itemtype => itemtype,
920: itemkey => itemkey,
921: aname => 'FIN_PLAN_TIME_PHASE',
922: avalue => l_fin_plan_time_phase);
923:
935: ||'&'||'paTemplateFlag='||l_template_flag
936: ||'&'||'paCallingPage=paBudgetWF'
937: ||'&'||'addBreadCrumb=Y';
938:
939: wf_engine.SetItemAttrText( itemtype
940: , itemkey
941: , 'FINANCIAL_PLAN_URL'
942: , l_url
943: );
949:
950:
951:
952:
953: wf_engine.StartProcess( itemtype => itemtype,
954: itemkey => itemkey );
955:
956:
957: --dbms_output.put_line('AFTER Call for StartProcess');