57:
58: l_user_id := Fnd_Global.User_Id;
59: l_login_id := Fnd_Global.Login_Id;
60:
61: fem_engines_pkg.tech_message (p_severity => g_log_level_2
62: ,p_module => g_block||'.synchronize'
63: ,p_msg_text => 'BEGIN');
64:
65: l_api_version := NVL(p_api_version, c_api_version);
93: WHEN OTHERS THEN
94: RAISE l_owner_error;
95: END;
96:
97: fem_engines_pkg.tech_message (p_severity => g_log_level_1
98: ,p_module => g_block||'.synchronize'
99: ,p_msg_text => 'After fetching the owner, owner = ' || l_owner);
100: BEGIN
101: SELECT 1
166: WHEN OTHERS THEN
167: RAISE l_delete_error;
168: END;
169:
170: fem_engines_pkg.tech_message (p_severity => g_log_level_1
171: ,p_module => g_block||'.synchronize'
172: ,p_msg_text => 'After deleting columns in fem_tab_columns but not in dba_tab_columns');
173:
174: BEGIN
219: p_synchronize_flag := 'Y';
220: END IF;
221: END IF;
222:
223: fem_engines_pkg.tech_message (p_severity => g_log_level_1
224: ,p_module => g_block||'.synchronize'
225: ,p_msg_text => 'Populating columns with data in tab columns');
226:
227: INSERT INTO fem_tab_columns_vl
276: p_synchronize_flag := 'Y';
277: END IF;
278: END IF;
279:
280: fem_engines_pkg.tech_message (p_severity => g_log_level_1
281: ,p_module => g_block||'.synchronize'
282: ,p_msg_text => 'Populating columns with data in dba tab columns');
283:
284: INSERT INTO fem_tab_columns_vl
324: IF SQL%ROWCOUNT > 0 THEN
325: p_synchronize_flag := 'Y';
326: END IF;
327: END IF;
328: fem_engines_pkg.tech_message (p_severity => g_log_level_1
329: ,p_module => g_block||'.synchronize'
330: ,p_msg_text => 'After populating the VL');
331:
332: EXCEPTION
333: WHEN OTHERS THEN
334: RAISE l_insert_error;
335: END;
336:
337: fem_engines_pkg.tech_message (p_severity => g_log_level_2
338: ,p_module => g_block||'.synchronize'
339: ,p_msg_text => 'END');
340:
341:
343:
344: WHEN l_owner_error THEN
345: x_return_status := c_error;
346:
347: fem_engines_pkg.tech_message (p_severity => g_log_level_5
348: ,p_module => g_block||'.synchronize'
349: ,p_msg_text => 'synchronize: Trying to get owner info. for' || p_table_name);
350:
351: fem_engines_pkg.tech_message (p_severity => g_log_level_5
347: fem_engines_pkg.tech_message (p_severity => g_log_level_5
348: ,p_module => g_block||'.synchronize'
349: ,p_msg_text => 'synchronize: Trying to get owner info. for' || p_table_name);
350:
351: fem_engines_pkg.tech_message (p_severity => g_log_level_5
352: ,p_module => g_block||'.synchronize'
353: ,p_msg_text => 'synchronize: error = ' || SQLERRM);
354:
355: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
358:
359: WHEN l_delete_error THEN
360: x_return_status := c_error;
361:
362: fem_engines_pkg.tech_message (p_severity => g_log_level_5
363: ,p_module => g_block||'.synchronize'
364: ,p_msg_text => 'synchronize: Trying to delete from fem_tab_columns - ' || p_table_name);
365:
366: fem_engines_pkg.tech_message (p_severity => g_log_level_5
362: fem_engines_pkg.tech_message (p_severity => g_log_level_5
363: ,p_module => g_block||'.synchronize'
364: ,p_msg_text => 'synchronize: Trying to delete from fem_tab_columns - ' || p_table_name);
365:
366: fem_engines_pkg.tech_message (p_severity => g_log_level_5
367: ,p_module => g_block||'.synchronize'
368: ,p_msg_text => 'synchronize: error = ' || SQLERRM);
369:
370: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
373:
374: WHEN l_insert_error THEN
375: x_return_status := c_error;
376:
377: fem_engines_pkg.tech_message (p_severity => g_log_level_5
378: ,p_module => g_block||'.synchronize'
379: ,p_msg_text => 'synchronize: Trying to insert for' || p_table_name);
380:
381: fem_engines_pkg.tech_message (p_severity => g_log_level_5
377: fem_engines_pkg.tech_message (p_severity => g_log_level_5
378: ,p_module => g_block||'.synchronize'
379: ,p_msg_text => 'synchronize: Trying to insert for' || p_table_name);
380:
381: fem_engines_pkg.tech_message (p_severity => g_log_level_5
382: ,p_module => g_block||'.synchronize'
383: ,p_msg_text => 'synchronize: error = ' || SQLERRM);
384:
385: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
389:
390: WHEN OTHERS THEN
391: x_return_status := c_error;
392:
393: fem_engines_pkg.tech_message (p_severity => g_log_level_5
394: ,p_module => g_block||'.init'
395: ,p_msg_text => 'synchronize: General_Exception');
396:
397: fem_engines_pkg.tech_message (p_severity => g_log_level_5
393: fem_engines_pkg.tech_message (p_severity => g_log_level_5
394: ,p_module => g_block||'.init'
395: ,p_msg_text => 'synchronize: General_Exception');
396:
397: fem_engines_pkg.tech_message (p_severity => g_log_level_5
398: ,p_module => g_block||'.synchronize'
399: ,p_msg_text => 'synchronize: error = ' || SQLERRM);
400:
401: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
425: BEGIN
426:
427: x_return_status := c_success;
428:
429: fem_engines_pkg.tech_message (p_severity => g_log_level_2
430: ,p_module => g_block||'.unregister'
431: ,p_msg_text => 'BEGIN');
432:
433: l_api_version := NVL(p_api_version, c_api_version);
480: END;
481:
482: END IF;
483:
484: fem_engines_pkg.tech_message (p_severity => g_log_level_2
485: ,p_module => g_block||'.unregister'
486: ,p_msg_text => 'END');
487:
488: EXCEPTION
488: EXCEPTION
489: WHEN OTHERS THEN
490: x_return_status := c_error;
491:
492: fem_engines_pkg.tech_message (p_severity => g_log_level_5
493: ,p_module => g_block||'.init'
494: ,p_msg_text => 'unregister: General_Exception');
495:
496: fem_engines_pkg.tech_message (p_severity => g_log_level_5
492: fem_engines_pkg.tech_message (p_severity => g_log_level_5
493: ,p_module => g_block||'.init'
494: ,p_msg_text => 'unregister: General_Exception');
495:
496: fem_engines_pkg.tech_message (p_severity => g_log_level_5
497: ,p_module => g_block||'.synchronize'
498: ,p_msg_text => 'unregsiter: error = ' || SQLERRM);
499:
500: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
526: BEGIN
527:
528: x_return_status := c_success;
529:
530: fem_engines_pkg.tech_message (p_severity => g_log_level_2
531: ,p_module => g_block||'.init'
532: ,p_msg_text => 'BEGIN');
533:
534: l_api_version := NVL(p_api_version, c_api_version);
542: l_rows_processed := dbms_sql.execute(l_cursor);
543: dbms_sql.close_cursor(l_cursor);
544: */
545:
546: fem_engines_pkg.tech_message (p_severity => g_log_level_2
547: ,p_module => g_block||'.init'
548: ,p_msg_text => 'END');
549:
550:
551: EXCEPTION
552: WHEN OTHERS THEN
553: x_return_status := c_error;
554:
555: fem_engines_pkg.tech_message (p_severity => g_log_level_5
556: ,p_module => g_block||'.init'
557: ,p_msg_text => 'init: General_Exception');
558:
559: fem_engines_pkg.tech_message (p_severity => g_log_level_5
555: fem_engines_pkg.tech_message (p_severity => g_log_level_5
556: ,p_module => g_block||'.init'
557: ,p_msg_text => 'init: General_Exception');
558:
559: fem_engines_pkg.tech_message (p_severity => g_log_level_5
560: ,p_module => g_block||'.synchronize'
561: ,p_msg_text => 'init: error = ' || SQLERRM);
562:
563: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
582:
583:
584: BEGIN
585: x_return_status := c_success;
586: fem_engines_pkg.tech_message (p_severity => g_log_level_2
587: ,p_module => g_block||'.validate'
588: ,p_msg_text => 'BEGIN');
589:
590: l_api_version := NVL(p_api_version, c_api_version);
599: AND table_name = p_table_name
600: AND ROWNUM = 1 )
601: AND table_name = p_table_name;
602:
603: fem_engines_pkg.tech_message (p_severity => g_log_level_2
604: ,p_module => g_block||'.validate'
605: ,p_msg_text => 'END');
606: EXCEPTION
607: WHEN OTHERS THEN
606: EXCEPTION
607: WHEN OTHERS THEN
608: x_return_status := c_error;
609:
610: fem_engines_pkg.tech_message (p_severity => g_log_level_5
611: ,p_module => g_block||'.init'
612: ,p_msg_text => 'validate: General_Exception');
613:
614: fem_engines_pkg.tech_message (p_severity => g_log_level_5
610: fem_engines_pkg.tech_message (p_severity => g_log_level_5
611: ,p_module => g_block||'.init'
612: ,p_msg_text => 'validate: General_Exception');
613:
614: fem_engines_pkg.tech_message (p_severity => g_log_level_5
615: ,p_module => g_block||'.synchronize'
616: ,p_msg_text => 'validate: error = ' || SQLERRM);
617:
618: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
649: BEGIN
650:
651: x_return_status := c_success;
652:
653: fem_engines_pkg.tech_message (p_severity => g_log_level_2
654: ,p_module => g_block||'.populate_tab_col_gt'
655: ,p_msg_text => 'BEGIN');
656:
657: l_api_version := NVL(p_api_version, c_api_version);
658: l_init_msg_list := NVL(p_init_msg_list, c_false);
659: l_commit := NVL(p_commit, c_false);
660: l_encoded := NVL(p_encoded, c_true);
661:
662: fem_engines_pkg.tech_message (p_severity => g_log_level_1
663: ,p_module => g_block||'.populate_tab_col_gt'
664: ,p_msg_text => 'Populating columns with data in requiremnt');
665:
666: IF p_mode = 'CREATE' THEN
738: WHERE dtc.table_name = p_table_name
739: AND dtc.owner = p_owner
740: AND dtc.column_name = fcr.column_name;
741:
742: fem_engines_pkg.tech_message (p_severity => g_log_level_1
743: ,p_module => g_block||'.populate_tab_col_gt'
744: ,p_msg_text => 'Populating columns with data in tab columns');
745:
746: INSERT INTO fem_tab_columns_gt
816: WHERE fcr.column_name = dtc.column_name )) dump
817: WHERE ftc.column_name = dump.column_name
818: AND ftc.table_name = dump.tname;
819:
820: fem_engines_pkg.tech_message (p_severity => g_log_level_1
821: ,p_module => g_block||'.populate_tab_col_gt'
822: ,p_msg_text => 'Populating columns with data in dba tab columns');
823:
824: INSERT INTO fem_tab_columns_gt
895: WHEN OTHERS THEN
896: RAISE l_owner_error;
897: END;
898:
899: fem_engines_pkg.tech_message (p_severity => g_log_level_1
900: ,p_module => g_block||'.synchronize'
901: ,p_msg_text => 'After fetching the owner, owner = ' || l_owner);
902:
903: fem_engines_pkg.tech_message (p_severity => g_log_level_1
899: fem_engines_pkg.tech_message (p_severity => g_log_level_1
900: ,p_module => g_block||'.synchronize'
901: ,p_msg_text => 'After fetching the owner, owner = ' || l_owner);
902:
903: fem_engines_pkg.tech_message (p_severity => g_log_level_1
904: ,p_module => g_block||'.populate_tab_col_gt'
905: ,p_msg_text => 'Update mode: Populating columns');
906:
907: INSERT INTO fem_tab_columns_gt
1052: WHERE column_name = dtc.column_name );
1053:
1054: END IF;
1055:
1056: fem_engines_pkg.tech_message (p_severity => g_log_level_2
1057: ,p_module => g_block||'.populate_tab_col_gt'
1058: ,p_msg_text => 'END');
1059: EXCEPTION
1060: WHEN l_owner_error THEN
1059: EXCEPTION
1060: WHEN l_owner_error THEN
1061: x_return_status := c_error;
1062:
1063: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1064: ,p_module => g_block||'.synchronize'
1065: ,p_msg_text => 'populate_tab_col_gt: Trying to get owner info. for' || p_table_name);
1066:
1067: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1063: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1064: ,p_module => g_block||'.synchronize'
1065: ,p_msg_text => 'populate_tab_col_gt: Trying to get owner info. for' || p_table_name);
1066:
1067: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1068: ,p_module => g_block||'.synchronize'
1069: ,p_msg_text => 'populate_tab_col_gt: error = ' || SQLERRM);
1070:
1071: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
1074:
1075: WHEN OTHERS THEN
1076: x_return_status := c_error;
1077:
1078: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1079: ,p_module => g_block||'.populate_tab_col_gt'
1080: ,p_msg_text => 'populate_tab_col_gt: General_Exception');
1081:
1082: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1078: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1079: ,p_module => g_block||'.populate_tab_col_gt'
1080: ,p_msg_text => 'populate_tab_col_gt: General_Exception');
1081:
1082: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1083: ,p_module => g_block||'.synchronize'
1084: ,p_msg_text => 'populate_tab_col_gt: error = ' || SQLERRM);
1085:
1086: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
1133: l_src_lang := USERENV('LANG');
1134: l_user_id := Fnd_Global.User_Id;
1135: l_login_id := Fnd_Global.Login_Id;
1136:
1137: fem_engines_pkg.tech_message (p_severity => g_log_level_2
1138: ,p_module => g_block||'.populate_tab_col_vl'
1139: ,p_msg_text => 'BEGIN');
1140:
1141: l_api_version := NVL(p_api_version, c_api_version);
1163:
1164: RAISE l_ovm_error;
1165: END IF;
1166:
1167: fem_engines_pkg.tech_message (p_severity => g_log_level_1
1168: ,p_module => g_block||'.populate_tab_col_vl'
1169: ,p_msg_text => 'Starting validations');
1170:
1171: l_init := TRUE;
1232:
1233: l_no_dupes := TRUE;
1234: l_init := FALSE;
1235:
1236: fem_engines_pkg.tech_message (p_severity => g_log_level_1
1237: ,p_module => g_block||'.populate_tab_col_vl'
1238: ,p_msg_text => 'Completed NULL display names and descriptions check');
1239:
1240: -- Get all the duplicate display name
1279:
1280: RAISE l_disp_ui_error;
1281: END IF;
1282:
1283: fem_engines_pkg.tech_message (p_severity => g_log_level_1
1284: ,p_module => g_block||'.populate_tab_col_vl'
1285: ,p_msg_text => 'Completed duplicate display names check');
1286:
1287: l_init := TRUE;
1531:
1532: END IF;
1533: END IF;
1534:
1535: fem_engines_pkg.tech_message (p_severity => g_log_level_1
1536: ,p_module => g_block||'.populate_tab_col_vl'
1537: ,p_msg_text => 'Completed dimension_id and uom_column_name checks');
1538:
1539: fem_engines_pkg.tech_message (p_severity => g_log_level_1
1535: fem_engines_pkg.tech_message (p_severity => g_log_level_1
1536: ,p_module => g_block||'.populate_tab_col_vl'
1537: ,p_msg_text => 'Completed dimension_id and uom_column_name checks');
1538:
1539: fem_engines_pkg.tech_message (p_severity => g_log_level_1
1540: ,p_module => g_block||'.populate_tab_col_vl'
1541: ,p_msg_text => 'Completed validations');
1542: END IF;
1543:
1540: ,p_module => g_block||'.populate_tab_col_vl'
1541: ,p_msg_text => 'Completed validations');
1542: END IF;
1543:
1544: fem_engines_pkg.tech_message (p_severity => g_log_level_1
1545: ,p_module => g_block||'.populate_tab_col_vl'
1546: ,p_msg_text => 'Before insert into _B');
1547:
1548: SELECT COUNT(*)
1607: l_login_id,
1608: 1
1609: );
1610:
1611: fem_engines_pkg.tech_message (p_severity => g_log_level_1
1612: ,p_module => g_block||'.populate_tab_col_vl'
1613: ,p_msg_text => 'Before insert into _TL');
1614:
1615: MERGE INTO fem_tab_columns_tl ftc
1665: l_user_id,
1666: l_login_id
1667: );
1668:
1669: fem_engines_pkg.tech_message (p_severity => g_log_level_2
1670: ,p_module => g_block||'.populate_tab_col_vl'
1671: ,p_msg_text => 'END');
1672:
1673: EXCEPTION
1674:
1675: WHEN l_disp_ui_error THEN
1676: x_return_status := c_error;
1677:
1678: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1679: ,p_module => g_block||'.populate_tab_col_vl'
1680: ,p_msg_text => 'populate_tab_col_vl: UI validation failed for ' || p_table_name);
1681:
1682: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1678: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1679: ,p_module => g_block||'.populate_tab_col_vl'
1680: ,p_msg_text => 'populate_tab_col_vl: UI validation failed for ' || p_table_name);
1681:
1682: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1683: ,p_module => g_block||'.synchronize'
1684: ,p_msg_text => 'populate_tab_col_vl: error = ' || SQLERRM);
1685:
1686: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
1689:
1690: WHEN l_pk_error THEN
1691: x_return_status := c_error;
1692:
1693: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1694: ,p_module => g_block||'.populate_tab_col_vl'
1695: ,p_msg_text => 'populate_tab_col_vl: Columns disabled form part of Processing Key' || p_table_name);
1696:
1697: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1693: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1694: ,p_module => g_block||'.populate_tab_col_vl'
1695: ,p_msg_text => 'populate_tab_col_vl: Columns disabled form part of Processing Key' || p_table_name);
1696:
1697: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1698: ,p_module => g_block||'.synchronize'
1699: ,p_msg_text => 'populate_tab_col_vl: error = ' || SQLERRM);
1700:
1701: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
1705:
1706: WHEN l_ovm_error THEN
1707: x_return_status := c_error;
1708:
1709: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1710: ,p_module => g_block||'.populate_tab_col_vl'
1711: ,p_msg_text => 'populate_tab_col_vl: Stale data error for ' || p_table_name);
1712:
1713: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1709: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1710: ,p_module => g_block||'.populate_tab_col_vl'
1711: ,p_msg_text => 'populate_tab_col_vl: Stale data error for ' || p_table_name);
1712:
1713: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1714: ,p_module => g_block||'.synchronize'
1715: ,p_msg_text => 'populate_tab_col_vl: error = ' || SQLERRM);
1716:
1717: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
1720:
1721: WHEN OTHERS THEN
1722: x_return_status := c_error;
1723:
1724: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1725: ,p_module => g_block||'.populate_tab_col_vl'
1726: ,p_msg_text => 'populate_tab_col_vl: General_Exception');
1727:
1728: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1724: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1725: ,p_module => g_block||'.populate_tab_col_vl'
1726: ,p_msg_text => 'populate_tab_col_vl: General_Exception');
1727:
1728: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1729: ,p_module => g_block||'.synchronize'
1730: ,p_msg_text => 'populate_tab_col_vl: error = ' || SQLERRM);
1731:
1732: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
1747: BEGIN
1748:
1749: x_return_status := c_success;
1750:
1751: fem_engines_pkg.tech_message (p_severity => g_log_level_2
1752: ,p_module => g_block||'.dump_gt'
1753: ,p_msg_text => 'BEGIN');
1754:
1755: DELETE FROM fem_tab_columns_gt;
1753: ,p_msg_text => 'BEGIN');
1754:
1755: DELETE FROM fem_tab_columns_gt;
1756:
1757: fem_engines_pkg.tech_message (p_severity => g_log_level_2
1758: ,p_module => g_block||'.dump_gt'
1759: ,p_msg_text => 'END');
1760:
1761:
1762: EXCEPTION
1763: WHEN OTHERS THEN
1764: x_return_status := c_error;
1765:
1766: fem_engines_pkg.tech_message (p_severity => g_log_level_5
1767: ,p_module => g_block||'.dump_gt'
1768: ,p_msg_text => 'dump_gt: General_Exception');
1769:
1770: fnd_msg_pub.count_and_get(p_encoded => p_encoded,
1786: RETURN l_valid_flag;
1787:
1788: EXCEPTION
1789: WHEN NO_DATA_FOUND THEN
1790: fem_engines_pkg.user_message(p_app_name =>'FEM',
1791: p_msg_name =>'FEM_TAB_NOT_REG_ERR',
1792: p_token1=>'TABLE_NAME',
1793: p_value1=>p_table_name);
1794: RETURN l_valid_flag;
1810: RETURN l_valid_flag;
1811:
1812: EXCEPTION
1813: WHEN NO_DATA_FOUND THEN
1814: fem_engines_pkg.user_message(p_app_name =>'FEM',
1815: p_msg_name =>'FEM_TAB_COL_NOT_REG_ERR',
1816: p_token1=>'TABLE_NAME',
1817: p_value1=>p_table_name,
1818: p_token2=>'COLUMN_NAME',
1838: RETURN l_valid_flag;
1839:
1840: EXCEPTION
1841: WHEN NO_DATA_FOUND THEN
1842: fem_engines_pkg.user_message(p_app_name =>'FEM',
1843: p_msg_name =>'FEM_TAB_NOT_CLASS_ERR',
1844: p_token1=>'TABLE_NAME',
1845: p_value1=>p_table_name,
1846: p_token2=>'CLASSIFICATIONS',
1888: RETURN l_valid_flag;
1889:
1890: EXCEPTION
1891: WHEN NO_DATA_FOUND THEN
1892: fem_engines_pkg.user_message(p_app_name =>'FEM',
1893: p_msg_name =>'FEM_TAB_NOT_CLASS_ERR',
1894: p_token1=>'TABLE_NAME',
1895: p_value1=>p_table_name,
1896: p_token2=>'CLASSIFICATIONS',
1962: l_api_version CONSTANT NUMBER := 1.0;
1963:
1964: BEGIN
1965:
1966: FEM_ENGINES_PKG.Tech_Message (
1967: p_severity => fnd_log.level_procedure
1968: ,p_module => g_block||'.'||l_api_name
1969: ,p_msg_text => 'Begining Function');
1970:
1989:
1990: WHEN OTHERS THEN
1991: x_return_status := c_error;
1992:
1993: fem_engines_pkg.tech_message (
1994: p_severity => fnd_log.level_unexpected
1995: ,p_module => g_block||'.'||l_api_name
1996: ,p_msg_text => SQLERRM
1997: );
2492:
2493: COMMIT; --Set di view name to null in begining
2494:
2495:
2496: FEM_ENGINES_PKG.TECH_Message (
2497: p_severity => g_log_level_1
2498: ,p_module => G_BLOCK||'.'||l_api_name
2499: ,p_msg_text => 'BEGIN'
2500: );
2514: l_view_name:=SUBSTR(p_tab_name,1,26)||'_TRV';
2515:
2516: END IF;
2517:
2518: FEM_ENGINES_PKG.USER_Message (
2519: p_msg_text => 'Table Name::'||p_tab_name||'::::'||'View Name ::'||l_view_name
2520: );
2521:
2522: SELECT ftcv.column_name,
2641:
2642: IF select_list is NOT NULL THEN
2643: select_list := ' SELECT ' || RTRIM(LTRIM(select_list,','),',');
2644:
2645: FEM_ENGINES_PKG.USER_Message (
2646: p_msg_text => 'Preparing Select Clause::'||select_list
2647: );
2648:
2649: END IF;
2650:
2651: IF from_clause is NOT NULL THEN
2652: from_clause := ' FROM ' || LTRIM(from_clause,',');
2653:
2654: FEM_ENGINES_PKG.USER_Message (
2655: p_msg_text => 'Preparing From Clause::'||from_clause
2656: );
2657:
2658: END IF;
2659:
2660: IF where_clause is NOT NULL THEN
2661: where_clause := ' WHERE ' || LTRIM(where_clause,' AND ');
2662:
2663: FEM_ENGINES_PKG.user_Message (
2664: p_msg_text => 'Preparing Where Clause::'||where_clause
2665: );
2666: END IF;
2667:
2664: p_msg_text => 'Preparing Where Clause::'||where_clause
2665: );
2666: END IF;
2667:
2668: FEM_ENGINES_PKG.Tech_Message (
2669: p_severity => g_log_level_2
2670: ,p_module => G_BLOCK||'.'||l_api_name
2671: ,p_msg_text => 'Select, From and Where clauses are prepared'
2672: );
2675: IF select_list is NOT NULL THEN
2676: EXECUTE IMMEDIATE 'CREATE OR REPLACE VIEW ' || l_view_name||' AS '|| select_list || from_clause || where_clause;
2677:
2678:
2679: FEM_ENGINES_PKG.Tech_Message (
2680: p_severity => G_LOG_LEVEL_2
2681: ,p_module => G_BLOCK||'.'||l_api_name
2682: ,p_msg_text => 'View has been created successfully'||l_view_name
2683: );
2681: ,p_module => G_BLOCK||'.'||l_api_name
2682: ,p_msg_text => 'View has been created successfully'||l_view_name
2683: );
2684:
2685: FEM_ENGINES_PKG.User_Message (
2686: p_app_name => G_FEM
2687: ,p_msg_name => 'FEM_SYS_VIEW_SUCCESS'
2688: ,p_token1 => 'VIEW_NAME'
2689: ,p_value1 => l_view_name
2689: ,p_value1 => l_view_name
2690: ,p_token2 => 'TABLE_NAME'
2691: ,p_value2 => p_tab_name );
2692:
2693: FEM_ENGINES_PKG.Tech_Message (
2694: p_severity => G_LOG_LEVEL_1
2695: ,p_module => G_BLOCK||'.'||l_api_name
2696: ,p_msg_text => 'END'
2697: );
2702: COMMIT;
2703:
2704: ELSE
2705:
2706: FEM_ENGINES_PKG.User_Message (
2707: p_app_name => G_FEM
2708: ,p_msg_name => 'FEM_SYS_VIEW_CREATION_FAIL'
2709: ,p_token1 => 'TABLE_NAME'
2710: ,p_value1 => p_tab_name);
2719:
2720: WHEN others THEN
2721: l_prg_msg:=SQLERRM;
2722:
2723: FEM_ENGINES_PKG.User_Message (
2724: p_app_name => G_FEM
2725: ,p_msg_name => 'FEM_SYS_VIEW_ERROR'
2726: ,p_token1 => 'TABLE_NAME'
2727: ,p_value1 => p_tab_name
2727: ,p_value1 => p_tab_name
2728: ,p_token2 => 'ERR_MSG'
2729: ,p_value2 => l_prg_msg );
2730:
2731: FEM_ENGINES_PKG.Tech_Message (
2732: p_severity => G_LOG_LEVEL_1
2733: ,p_module => G_BLOCK||'.'||l_api_name
2734: ,p_msg_text => 'View Creation failed with unexpected exception'||l_prg_msg
2735: );