[Home] [Help]
9: --
10: -- CALLBACK procedure related global information.
11: --
12:
13: g_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
14: g_budgetgroup_name psb_budget_groups.name%TYPE ;
15: g_requestor_name VARCHAR2(100);
16: g_itemtype VARCHAR2(2000) ;
17: g_itemkey VARCHAR2(2000) ;
80: --
81: l_ItemType VARCHAR2(100) := 'PSBBR';
82: l_ItemKey VARCHAR2(240) := p_item_key;
83: --
84: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
85: l_comments VARCHAR2(2000) ;
86: l_requestor_name VARCHAR2(100);
87: l_justification VARCHAR2(240);
88:
87: l_justification VARCHAR2(240);
88:
89: Cursor C_Requestor is
90: Select requestor,user_name
91: from psb_budget_revisions pbr,
92: fnd_user fu
93: where budget_revision_id = l_budget_revision_id
94: and requestor = user_id;
95: --
94: and requestor = user_id;
95: --
96: Cursor C_Justification is
97: Select justification
98: from psb_budget_revisions
99: where budget_revision_id = l_budget_revision_id;
100: --
101: BEGIN
102: --
267: result OUT NOCOPY VARCHAR2
268: )
269: IS
270: --
271: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
272: l_budget_group_name psb_budget_groups.name%TYPE ;
273: l_submitter_name VARCHAR2(80);
274: --
275: l_orig_system VARCHAR2(8) ;
291: --
292: SELECT budget_group_name
293: INTO
294: l_budget_group_name
295: FROM psb_budget_revisions_v
296: WHERE budget_revision_id = l_budget_revision_id;
297:
298: --
299: wf_engine.SetItemAttrText ( itemtype => itemtype,
347: l_return_status VARCHAR2(1) ;
348: l_msg_count NUMBER ;
349: l_msg_data VARCHAR2(2000) ;
350: --
351: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
352: l_operation_type VARCHAR2(20) ;
353: --
354: BEGIN
355:
438: l_return_status VARCHAR2(1) ;
439: l_msg_count NUMBER ;
440: l_msg_data VARCHAR2(2000) ;
441: --
442: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
443: l_validation_status VARCHAR2(1) ;
444: l_operation_type VARCHAR2(20) ;
445: l_constraint_set_id NUMBER ;
446: --
469:
470: --
471: -- Call the API to validate the Revision.
472: --
473: PSB_Budget_Revisions_Pvt.Apply_Constraints
474: (
475: p_api_version => 1.0 ,
476: p_validation_level => FND_API.G_VALID_LEVEL_FULL ,
477: p_return_status => l_return_status ,
536: result OUT NOCOPY VARCHAR2
537: )
538: IS
539: --
540: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
541: l_operation_type VARCHAR2(20) ;
542: --
543: BEGIN
544: --
622: l_return_status VARCHAR2(1) ;
623: l_msg_count NUMBER ;
624: l_msg_data VARCHAR2(2000) ;
625: --
626: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
627: l_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
628: l_current_freeze_flag psb_budget_revisions.freeze_flag%TYPE ;
629: l_budget_revisions_tab PSB_Create_BR_Pvt.Budget_Revision_Tbl_Type ;
630:
623: l_msg_count NUMBER ;
624: l_msg_data VARCHAR2(2000) ;
625: --
626: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
627: l_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
628: l_current_freeze_flag psb_budget_revisions.freeze_flag%TYPE ;
629: l_budget_revisions_tab PSB_Create_BR_Pvt.Budget_Revision_Tbl_Type ;
630:
631: --
624: l_msg_data VARCHAR2(2000) ;
625: --
626: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
627: l_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
628: l_current_freeze_flag psb_budget_revisions.freeze_flag%TYPE ;
629: l_budget_revisions_tab PSB_Create_BR_Pvt.Budget_Revision_Tbl_Type ;
630:
631: --
632: l_notification_id NUMBER ;
657: --
658: -- Setting context for the CALLBACK procedure.
659: --
660: SELECT budget_group_name INTO g_budgetgroup_name
661: FROM psb_budget_revisions_v
662: WHERE budget_revision_id = l_budget_revision_id ;
663:
664: g_budget_revision_id := l_budget_revision_id ;
665: g_itemtype := itemtype ;
735: -- Check whether the current Revision is already frozen or not.
736: -- If already frozen, do not have to do anything.
737: --
738: SELECT NVL(freeze_flag, 'N') INTO l_current_freeze_flag
739: FROM psb_budget_revisions
740: WHERE budget_revision_id = l_budget_revisions_tab(i) ;
741:
742: IF l_current_freeze_flag = 'N' THEN
743: --
768: budget_group_name
769: INTO
770: l_budget_group_id ,
771: g_budgetgroup_name
772: FROM psb_budget_revisions_v
773: WHERE budget_revision_id = l_budget_revisions_tab(i) ;
774:
775: g_budget_revision_id := l_budget_revisions_tab(i) ;
776:
851: l_return_status VARCHAR2(1) ;
852: l_msg_count NUMBER ;
853: l_msg_data VARCHAR2(2000) ;
854: --
855: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
856: l_error_code VARCHAR2(50); -- bug# 4341619
857: l_subject VARCHAR2(2000); -- bug# 4341619
858: l_body VARCHAR2(2000); -- bug# 4341619
859:
859:
860: -- commented for bug 4341619
861: /* Cursor C_global_revision is
862: Select global_budget_revision
863: from psb_budget_revisions
864: where budget_revision_id = l_budget_revision_id;*/
865:
866: BEGIN
867:
1004: l_return_status VARCHAR2(1) ;
1005: l_msg_count NUMBER ;
1006: l_msg_data VARCHAR2(2000) ;
1007: --
1008: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
1009: l_budget_revisions_tab PSB_Create_BR_Pvt.Budget_Revision_Tbl_Type ;
1010: l_operation_id NUMBER ;
1011: --
1012:
1112: result OUT NOCOPY VARCHAR2
1113: )
1114: IS
1115: --
1116: l_override_approver psb_budget_revisions.approval_override_by%TYPE;
1117: -- For Bug 4475288: Changed l_approver_name length.
1118: l_approver_name psb_budget_group_resp.wf_role_name%TYPE;
1119: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
1120: l_notification_group_id NUMBER ;
1115: --
1116: l_override_approver psb_budget_revisions.approval_override_by%TYPE;
1117: -- For Bug 4475288: Changed l_approver_name length.
1118: l_approver_name psb_budget_group_resp.wf_role_name%TYPE;
1119: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
1120: l_notification_group_id NUMBER ;
1121: -- Added the following variable for bug 3394080
1122: -- For Bug 4475288: Changed l_approver_display_name length.
1123: l_approver_display_name wf_roles.display_name%TYPE;
1135: -- Bug#3259142: Use display_name instead of name from wf dir.
1136: SELECT br.approval_override_by, wr.name,wr.display_name
1137: INTO
1138: l_override_approver , l_approver_name,l_approver_display_name
1139: FROM psb_budget_revisions br,
1140: wf_roles wr
1141: WHERE br.budget_revision_id = l_budget_revision_id
1142: AND br.approval_orig_system = orig_system(+)
1143: AND br.approval_override_by = orig_system_id(+) ;
1279: l_return_status VARCHAR2(1) ;
1280: l_msg_count NUMBER ;
1281: l_msg_data VARCHAR2(2000) ;
1282: --
1283: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
1284: l_submitter_id NUMBER ;
1285: l_submission_status VARCHAR2(1);
1286: l_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1287: l_budget_revisions_tab PSB_Create_BR_Pvt.Budget_Revision_Tbl_Type ;
1282: --
1283: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
1284: l_submitter_id NUMBER ;
1285: l_submission_status VARCHAR2(1);
1286: l_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1287: l_budget_revisions_tab PSB_Create_BR_Pvt.Budget_Revision_Tbl_Type ;
1288: --
1289: BEGIN
1290: --
1305: aname => 'SUBMISSION_STATUS');
1306: --
1307: -- Call API to find all lower level worksheets.
1308: --
1309: PSB_Budget_Revisions_Pvt.Create_Budget_Revision
1310: (
1311: p_api_version => 1.0 ,
1312: p_init_msg_list => FND_API.G_FALSE,
1313: p_commit => FND_API.G_FALSE,
1353: --
1354: FOR i IN 0..l_budget_revisions_tab.COUNT
1355: LOOP
1356: --
1357: -- Update Distribution related information in psb_budget_revisions.
1358: --
1359: PSB_Budget_Revisions_Pvt.Create_Budget_Revision
1360: (
1361: p_api_version => 1.0 ,
1355: LOOP
1356: --
1357: -- Update Distribution related information in psb_budget_revisions.
1358: --
1359: PSB_Budget_Revisions_Pvt.Create_Budget_Revision
1360: (
1361: p_api_version => 1.0 ,
1362: p_init_msg_list => FND_API.G_FALSE,
1363: p_commit => FND_API.G_FALSE,
1430: l_return_status VARCHAR2(1) ;
1431: l_msg_count NUMBER ;
1432: l_msg_data VARCHAR2(2000) ;
1433: --
1434: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
1435: l_currency_code VARCHAR2(15);
1436: --
1437:
1438: -- added cursor for bug 4341619
1438: -- added cursor for bug 4341619
1439: Cursor C_global_revision is
1440: Select global_budget_revision,
1441: currency_code -- Bug 3029168
1442: from psb_budget_revisions
1443: where budget_revision_id = l_budget_revision_id;
1444:
1445: BEGIN
1446: --
1469: End loop;
1470: /* end bug 4341619 */
1471:
1472: IF l_currency_code <> 'STAT' THEN -- Bug 3029168
1473: PSB_Budget_Revisions_Pvt.Update_Baseline_Values
1474: (
1475: p_api_version => 1.0 ,
1476: p_init_msg_list => FND_API.G_FALSE,
1477: p_commit => FND_API.G_FALSE,
1536: l_return_status VARCHAR2(1) ;
1537: l_msg_count NUMBER ;
1538: l_msg_data VARCHAR2(2000) ;
1539: --
1540: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
1541: l_fund_check_failures NUMBER; -- bug#4341619
1542:
1543: l_operation_type VARCHAR2(20);
1544: l_called_from VARCHAR2(8) := 'PSBBGRVS';
1554: itemkey => itemkey,
1555: aname => 'BUDGET_REVISION_ID');
1556:
1557: SELECT currency_code INTO l_currency_code
1558: FROM psb_budget_revisions
1559: WHERE budget_revision_id = l_budget_revision_id; -- Bug 3029168
1560:
1561:
1562: --
1586: -- Bug 3029168 added the following IF condition
1587: -- funds check should not be called for STAT
1588: IF l_currency_code <> 'STAT' THEN -- Bug 3029168
1589:
1590: PSB_Budget_Revisions_Pvt.Budget_Revision_Funds_Check
1591: (
1592: p_api_version => 1.0 ,
1593: p_init_msg_list => FND_API.G_FALSE,
1594: p_commit => FND_API.G_FALSE,
1663: result OUT NOCOPY VARCHAR2
1664: )
1665: IS
1666: --
1667: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
1668: l_approver_name VARCHAR2(80) ;
1669: l_parent_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1670: l_notification_group_id NUMBER ;
1671: --
1665: IS
1666: --
1667: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
1668: l_approver_name VARCHAR2(80) ;
1669: l_parent_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1670: l_notification_group_id NUMBER ;
1671: --
1672:
1673: BEGIN
1699: -- Modified the query for bug 3394080
1700: SELECT nvl(bg.parent_budget_group_id,bg.budget_group_id)
1701: INTO
1702: l_parent_budget_group_id
1703: FROM psb_budget_revisions br,
1704: psb_budget_groups bg
1705: WHERE br.budget_revision_id = l_budget_revision_id
1706: AND br.budget_group_id = bg.budget_group_id ;
1707:
1775: result OUT NOCOPY VARCHAR2
1776: )
1777: IS
1778: --
1779: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
1780: --
1781: l_return_status VARCHAR2(1) ;
1782: l_msg_count NUMBER ;
1783: l_msg_data VARCHAR2(2000) ;
1862: IS
1863: --
1864: l_return_status VARCHAR2(1);
1865: --
1866: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE;
1867: l_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1868: l_parent_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1869: l_count NUMBER;
1870: l_init_index NUMBER;
1863: --
1864: l_return_status VARCHAR2(1);
1865: --
1866: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE;
1867: l_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1868: l_parent_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1869: l_count NUMBER;
1870: l_init_index NUMBER;
1871: --
1864: l_return_status VARCHAR2(1);
1865: --
1866: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE;
1867: l_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1868: l_parent_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1869: l_count NUMBER;
1870: l_init_index NUMBER;
1871: --
1872: BEGIN
1888: -- Modified the query for bug 3394080
1889: SELECT nvl(bg.parent_budget_group_id,bg.budget_group_id)
1890: INTO
1891: l_parent_budget_group_id
1892: FROM psb_budget_revisions br,
1893: psb_budget_groups bg
1894: WHERE br.budget_revision_id = l_budget_revision_id
1895: AND br.budget_group_id = bg.budget_group_id ;
1896:
1954: result OUT NOCOPY VARCHAR2)
1955: IS
1956: l_return_status VARCHAR2(1) ;
1957: --
1958: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE;
1959: l_parent_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1960: l_count NUMBER;
1961: l_loop_visited_counter NUMBER := 0;
1962: -- For Bug 4475288: Changed l_approver_name length.
1955: IS
1956: l_return_status VARCHAR2(1) ;
1957: --
1958: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE;
1959: l_parent_budget_group_id psb_budget_revisions.budget_group_id%TYPE ;
1960: l_count NUMBER;
1961: l_loop_visited_counter NUMBER := 0;
1962: -- For Bug 4475288: Changed l_approver_name length.
1963: l_approver_name VARCHAR2(320);
2002:
2003: -- Modified the query for bug 3394080
2004: SELECT nvl(bg.parent_budget_group_id,bg.budget_group_id)
2005: INTO l_parent_budget_group_id
2006: FROM psb_budget_revisions br,
2007: psb_budget_groups bg
2008: WHERE br.budget_revision_id = l_budget_revision_id
2009: AND br.budget_group_id = bg.budget_group_id;
2010:
2171: date_value IN OUT NOCOPY DATE
2172: )
2173: IS
2174: --
2175: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
2176: --
2177: l_notification_id NUMBER ;
2178: /*For Bug No : 2127425 Start*/
2179: Cursor C_Justification IS
2177: l_notification_id NUMBER ;
2178: /*For Bug No : 2127425 Start*/
2179: Cursor C_Justification IS
2180: SELECT justification
2181: FROM psb_budget_revisions
2182: WHERE budget_revision_id = g_budget_revision_id;
2183: /*For Bug No : 2127425 End*/
2184:
2185: BEGIN
2272: --
2273: l_ItemType VARCHAR2(100) := 'PSBBR' ;
2274: l_ItemKey VARCHAR2(100) := p_item_key ;
2275: --
2276: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
2277:
2278: BEGIN
2279: --
2280: SAVEPOINT Start_Distribution_Process_Pvt ;
2484: result OUT NOCOPY VARCHAR2
2485: )
2486: IS
2487: --
2488: l_budget_revision_id psb_budget_revisions.budget_revision_id%TYPE ;
2489: l_budget_group_name psb_budget_groups.name%TYPE ;
2490: l_recipient_name VARCHAR2(2000);
2491: l_user_name VARCHAR2(100);
2492: --
2511: -- Finding Revision information.
2512: --
2513: SELECT budget_group_name
2514: INTO l_budget_group_name
2515: FROM psb_budget_revisions_v
2516: WHERE budget_revision_id = l_budget_revision_id;
2517:
2518: --
2519: WF_Engine.SetItemAttrText
2686: aname => 'OPERATION_TYPE'
2687: );
2688:
2689:
2690: PSB_Budget_Revisions_PVT.Apply_Revision_Rules
2691: (
2692: p_api_version => 1.0,
2693: p_validation_level => FND_API.G_VALID_LEVEL_FULL,
2694: p_return_status => l_return_status,