#=============================================================================================
# @TITLE			Configuration - Parameters - check table
#
# @NUMBER			WDBM_FKT_02051
#
# @DESCRIPTION		The tables for 'Parameters' will be checked and the links as well.
#
# @EXP_RESULT		All links work fine and the contents are as expected.
#
# @REQUIREMENTS		Test: WDBM_FKT_01000; WDBM_FKT_00100; WDBM_FKT_01010;
#=============================================================================================

public function trim (in str) {
	if (substr(str, 1, 1) == " ") {

		str = trim(substr(str, 2));
	}
	if (substr(str, length(str)) == " ") {
		str = trim(substr(str, 1, length(str)-1));
	}
	return (str);
} 

static table_param_header_ok = 1;
static table_param_header [] = {"Name",
								"Value",
								"New Value",
								"Description"};

static table_param_g_ok = 1;
static table_param_g_73 [] = {"KERNELVERSION",
							  "INSTANCE_TYPE",
							  "RESTART_SHUTDOWN",
							  "MAXARCHIVELOGS",
						   	  "MAXDATADEVSPACES",
							  "MAXBACKUPDEVS",
							  "LOG_MODE",
							  "LOG_SEGMENT_SIZE",
						      "RESERVED_REDO_SIZE",
							  "MAXCPU",
							  "MAXUSERTASKS",
							  "MAXLOCKS",
							  "MAXDATAPAGES",
						      "DATA_CACHE",
							  "RUNDIRECTORY"};
							  
static table_param_g_74 [] = {"KERNELVERSION",
							  "INSTANCE_TYPE",
							  "MCOD",
							  "RESTART_SHUTDOWN",
							  "MAXARCHIVELOGS",
						   	  "MAXDATADEVSPACES",
							  "MAXBACKUPDEVS",
							  "LOG_MIRRORED",
							  "MAXCPU",
						      "MAXUSERTASKS",
							  "MAXLOCKS",
							  "CACHE_SIZE",
							  "RUNDIRECTORY",
							  "LOG_SEGMENT_SIZE"};

static table_param_g_75 [] = {"KERNELVERSION",
							  "INSTANCE_TYPE",
							  "MCOD",
							  "RESTART_SHUTDOWN",
							  "MAXLOGVOLUMES",
						   	  "MAXDATAVOLUMES",
							  "MAXBACKUPDEVS",
							  "LOG_MIRRORED",
							  "MAXCPU",
						      "MAXUSERTASKS",
							  "MAXLOCKS",
							  "CACHE_SIZE",
							  "RUNDIRECTORY",
							  "LOG_SEGMENT_SIZE"};

static table_param_g_76 [] = {"INSTANCE_TYPE",
							  "MCOD",
							  "MAXLOGVOLUMES",
						   	  "MAXDATAVOLUMES",
							  "MAXBACKUPDEVS",
							  "LOG_MIRRORED",
							  "MAXCPU",
						      "MAXUSERTASKS",
							  "MAXLOCKS",
							  "CACHE_SIZE",
							  "RUNDIRECTORY",
							  "LOG_SEGMENT_SIZE"};
							  
static table_param_e_ok = 1;
static table_param_e_73 [] = {"_UNICODE",
							  "DEFAULT_CODE",
							  "DATE_TIME_FORMAT",
							  "LOG_BACKUP_TO_PIPE",
    						  "BACKUP_BLOCK_CNT",
							  "_MIRRORED_DATA",
							  "LOG_IO_QUEUE",
							  "ROLLBACK_CACHE",
    						  "_TREE_RGNS",
							  "_TRANS_RGNS",
							  "_TAB_RGNS",
							  "_ROW_RGNS",
							  "MAXSERVERTASKS",
    						  "DEADLOCK_DETECTION",
							  "SESSION_TIMEOUT",
							  "REQUEST_TIMEOUT",
							  "LRU_FOR_SCAN",
    						  "CAT_CACHE_SUPPLY",
							  "MP_RGN_LOOP",
							  "MAXRGN_REQUEST",
							  "_DATA_CACHE_RGNS",
    						  "SEQUENCE_CACHE",
							  "CONVERTER_CACHE",
							  "OPTIM_OR_DISTINCT",
							  "OPTIM_ORDERBY_IDX",
    						  "OPTIM_BUILD_RESLT",
							  "OPTIM_FETCH_RESLT",
							  "OPTIM_MAX_MERGE",
    						  "OPTIM_KEY_INV_RATE",
							  "JOIN_SEARCH_LEVEL",
							  "JOIN_MAXTAB_LEVEL4",
    						  "JOIN_MAXTAB_LEVEL9",
							  "_MAXEVENTS",
							  "KERNELDIAGSIZE",
							  "TRACE_PAGES_TI",
    						  "TRACE_PAGES_GC",
							  "TRACE_PAGES_AL",
							  "TRACE_PAGES_DW",
							  "TRACE_PAGES_US",
    						  "TRACE_PAGES_UT",
							  "TRACE_PAGES_SV",
							  "TRACE_PAGES_EV",
							  "TRACE_PAGES_CS",
    						  "TRACE_PAGES_BUP",
							  "UTILITY_PROTSIZE",
							  "_MAX_MESSAGE_FILES",
    						  "_EVENT_ALIVE_CYCLE",
							  "DIAG_HISTORY_NUM",
							  "DIAG_HISTORY_PATH",
							  "_COMMENT"}; 

static table_param_e_74 [] = {"_UNICODE",
							  "DEFAULT_CODE",
							  "DATE_TIME_FORMAT",
							  "LOG_BACKUP_TO_PIPE",
    						  "BACKUP_BLOCK_CNT",
							  "LOG_IO_QUEUE",
							  "_TREE_RGNS",
							  "_TRANS_RGNS",
							  "_TAB_RGNS",
							  "_ROW_RGNS",
							  "MAXSERVERTASKS",
    						  "DEADLOCK_DETECTION",
							  "SESSION_TIMEOUT",
							  "REQUEST_TIMEOUT",
							  "LRU_FOR_SCAN",
    						  "CAT_CACHE_SUPPLY",
							  "MP_RGN_LOOP",
							  "MAXRGN_REQUEST",
							  "XP_DATA_CACHE_RGNS",
							  "_DATA_CACHE_RGNS",
    						  "CONVERTER_REGIONS",
							  "SEQUENCE_CACHE",
							  "DEVNO_BIT_COUNT",
							  "OPTIM_MAX_MERGE",
    						  "OPTIM_INV_ONLY",
							  "JOIN_SEARCH_LEVEL",
							  "JOIN_MAXTAB_LEVEL4",
    						  "JOIN_MAXTAB_LEVEL9",
							  "KERNELDIAGSIZE",
							  "_MAXEVENTS",
							  "TRACE_PAGES_TI",
    						  "TRACE_PAGES_GC",
							  "TRACE_PAGES_AL",
							  "TRACE_PAGES_DW",
							  "TRACE_PAGES_US",
    						  "TRACE_PAGES_UT",
							  "TRACE_PAGES_SV",
							  "TRACE_PAGES_EV",
    						  "TRACE_PAGES_BUP",
							  "UTILITY_PROTSIZE",
							  "_MAX_MESSAGE_FILES",
    						  "_EVENT_ALIVE_CYCLE",
							  "USE_MEM_ENHANCE",
							  "MEM_ENHANCE_LIMIT",
							  "DIAG_HISTORY_NUM",
							  "DIAG_HISTORY_PATH",
							  "_COMMENT",
							  "FORMATTING_MODE",
							  "FORMAT_DATAVOLUME",
							  "OFFICIAL_NODE"};

static table_param_e_75 [] = {"_UNICODE",
							  "DEFAULT_CODE",
							  "DATE_TIME_FORMAT",
							  "LOG_BACKUP_TO_PIPE",
    						  "BACKUP_BLOCK_CNT",
							  "LOG_IO_QUEUE",
							  "_TRANS_RGNS",
							  "_TAB_RGNS",
							  "_ROW_RGNS",
							  "MAXSERVERTASKS",
    						  "DEADLOCK_DETECTION",
							  "SESSION_TIMEOUT",
							  "REQUEST_TIMEOUT",
							  "LRU_FOR_SCAN",
    						  "CAT_CACHE_SUPPLY",
							  "MP_RGN_LOOP",
							  "MAXRGN_REQUEST",
							  "XP_DATA_CACHE_RGNS",
							  "_DATA_CACHE_RGNS",
    						  "CONVERTER_REGIONS",
							  "SEQUENCE_CACHE",
							  "VOLUMENO_BIT_COUNT",
							  "OPTIM_MAX_MERGE",
    						  "OPTIM_INV_ONLY",
							  "JOIN_SEARCH_LEVEL",
							  "JOIN_MAXTAB_LEVEL4",
    						  "JOIN_MAXTAB_LEVEL9",
							  "KERNELDIAGSIZE",
							  "_MAXEVENTS",
							  "TRACE_PAGES_TI",
    						  "TRACE_PAGES_GC",
							  "TRACE_PAGES_LW",
							  "TRACE_PAGES_PG",
							  "TRACE_PAGES_US",
    						  "TRACE_PAGES_UT",
							  "TRACE_PAGES_SV",
							  "TRACE_PAGES_EV",
    						  "TRACE_PAGES_BUP",
							  "UTILITY_PROTSIZE",
							  "_MAX_MESSAGE_FILES",
    						  "_EVENT_ALIVE_CYCLE",
							  "USE_MEM_ENHANCE",
							  "MEM_ENHANCE_LIMIT",
							  "DIAG_HISTORY_NUM",
							  "DIAG_HISTORY_PATH",
							  "_COMMENT",
							  "FORMATTING_MODE",
							  "FORMAT_DATAVOLUME",
							  "OFFICIAL_NODE",
							  "HIRES_TIMER_TYPE",
							  "LOAD_BALANCING_CHK"};
							  
static table_param_e_76 [] = {"_UNICODE",
							  "DEFAULT_CODE",
							  "DATE_TIME_FORMAT",
							  "LOG_BACKUP_TO_PIPE",
    						  "BACKUP_BLOCK_CNT",
							  "LOG_IO_QUEUE",
							  "LOG_QUEUE_COUNT",
							  "TRANS_RGNS",
							  "_TAB_RGNS",
							  "_ROW_RGNS",
							  "MAXSERVERTASKS",
    						  "DEADLOCK_DETECTION",
							  "SESSION_TIMEOUT",
							  "REQUEST_TIMEOUT",
							  "LRU_FOR_SCAN",
    						  "CAT_CACHE_SUPPLY",
							  "MP_RGN_LOOP",
							  "MAXRGN_REQUEST",
							  "XP_DATA_CACHE_RGNS",
							  "_DATA_CACHE_RGNS",
    						  "XP_CONVERTER_REGIONS",
							  "CONVERTER_REGIONS",
							  "SEQUENCE_CACHE",
							  "VOLUMENO_BIT_COUNT",
							  "OPTIM_MAX_MERGE",
    						  "OPTIM_INV_ONLY",
							  "JOIN_SEARCH_LEVEL",
							  "JOIN_MAXTAB_LEVEL4",
    						  "JOIN_MAXTAB_LEVEL9",
							  "KERNELDIAGSIZE",
							  "_MAXEVENTS",
							  "TRACE_PAGES_TI",
    						  "TRACE_PAGES_GC",
							  "TRACE_PAGES_LW",
							  "TRACE_PAGES_PG",
							  "TRACE_PAGES_US",
    						  "TRACE_PAGES_UT",
							  "TRACE_PAGES_SV",
							  "TRACE_PAGES_EV",
    						  "TRACE_PAGES_BUP",
							  "UTILITY_PROTSIZE",
							  "_MAX_MESSAGE_FILES",
							  "USE_MEM_ENHANCE",
							  "MEM_ENHANCE_LIMIT",
							  "DIAG_HISTORY_NUM",
							  "DIAG_HISTORY_PATH",
							  "_COMMENT",
							  "FORMATTING_MODE",
							  "FORMAT_DATAVOLUME"};							  
#=============================================================================================
# @STEP 1			Clicking the link for Backup Media - Configuration.
#=============================================================================================
set_window(menu_window, 1);
web_link_click("Parameters");
wait(60);
set_window (work_window, 1);

if (new_interface == "1") {
	web_obj_get_text ("Information - CACHES - DB73", "#1", "#1", cell_value_1, "", "", 1);
} else {
	tbl_get_cell_data ("Database/Servername", "#1", "#1", cell_value_1);
}


if ((cell_value_1 == "Parameters - " & database && version == "7.3.00") ||
	(cell_value_1 == "Configuration - Parameters" && (version == "7.4.03" || version == "7.5.00" || version == "7.5.01" || version == "7.6.00"))) {
	
	tl_step ("Title of window - " & cell_value_1, "0", "is correct");
} else {
	tl_step ("Title of window - " & cell_value_1, "1", "is incorrect");
}
#=============================================================================================
# @STEP 2			Checking table headline - General.
#=============================================================================================
set_window(work_window, 1);
for (i=1;i<5;i++) {

	if (new_interface == "1") {
		web_obj_get_text ("1x1_2", "#2", "#"&i, cell_value_2, "", "", 1);
	} else {
		tbl_get_cell_data ("Owner", "#2", "#"&i, cell_value_2);
	}
	
	if (trim(cell_value_2) != table_param_header [i-1]) {
		table_param_header_ok = 0;
		break;
	}
}
if(table_param_header_ok == 0) {
	tl_step("Header","1","General parameters");
} else {
	tl_step("Header","0","General parameters");
}
#=============================================================================================
# @STEP 3			Checking parameterlist - General.
#=============================================================================================
set_window(work_window, 1);
for (i=3;i<16;i++) {
	
	if (new_interface == "1") {
		web_obj_get_text ("1x1_2", "#"&i, "#1", cell_value_3, "", "", 1);
	} else {
		tbl_get_cell_data ("Owner", "#"&i, "#1", cell_value_3);
	}
	
	if (version == "7.3.00") {
	
    	if (trim(cell_value_3) != table_param_g_73 [i-3]) {
    		table_param_g_ok = 0;
    		break;
    	}
	}
	if (version == "7.4.03") {
		
    	if (trim(cell_value_3) != table_param_g_74 [i-3])
    	{
    		table_param_g_ok = 0;
    		break;
    	}
	}
	
	if (version == "7.5.00" ||
		version == "7.5.01") {
		
    	if (trim(cell_value_3) != table_param_g_75 [i-3])
    	{
    		table_param_g_ok = 0;
    		break;
    	}
	}

	if (version == "7.6.00") {
		
    	if (trim(cell_value_3) != table_param_g_76 [i-3])
    	{
    		table_param_g_ok = 0;
    		break;
    	}
	}

}
if(table_param_g_ok == 0) {
	tl_step("Parameterlist","1","General parameters");
} else {
	tl_step("Parameterlist","0","General parameters");
}
#=============================================================================================
# @STEP 4			Change to extended parameters.
#=============================================================================================
set_window(work_window,154);
web_link_click("Extended");

wait(5);
#=============================================================================================
# @STEP 5			Checking table headline - Extended.
#=============================================================================================
set_window(work_window, 1);
for (i=1;i<5;i++) {
	
	if (new_interface == "1") {
		web_obj_get_text ("1x1_2", "#2", "#"&i, cell_value_4, "", "", 1);
	} else {
		tbl_get_cell_data("Owner", "#2", "#"&i, cell_value_4);
	}
	
	if (trim(cell_value_4) != table_param_header [i-1]) {
		table_param_header_ok = 0;
		break;
	}
}
if(table_param_header_ok == 0) {
	tl_step("Header","1","Extended parameter");
} else {
	tl_step("Header","0","Extended parameter");
}
#=============================================================================================
# @STEP 6			Checking parameterlist - Extended.
#=============================================================================================
set_window(work_window, 1);
for (i=3;i<53;i++) {
	
	if (new_interface == "1") {
		web_obj_get_text ("1x1_2", "#"&i, "#1", cell_value_5, "", "", 1);
	} else {
		tbl_get_cell_data ("Owner", "#"&i, "#1", cell_value_5);
	}
	
	if (version == "7.3.00") {
	 
    	if (trim(cell_value_5) != table_param_e_73 [i-3]) {
    		table_param_e_ok = 0;
    		break;
    	}
	}
	if (version == "7.4.03") {
		
    	if (trim(cell_value_5) != table_param_e_74 [i-3]) {
    		table_param_e_ok = 0;
    		break;
    	}
	}
	if (version == "7.5.00" ||
		version == "7.5.01" ||
		version == "7.6.00") {
		
    	if (trim(cell_value_5) != table_param_e_75 [i-3]) {
    		table_param_e_ok = 0;
    		break;
    	}
	}
	if (version == "7.6.00") {
		
    	if (trim(cell_value_5) != table_param_e_76 [i-3]) {
    		table_param_e_ok = 0;
    		break;
    	}
	}

}

if (table_param_e_ok == 0) {
	tl_step("Parameterlist","1","Extended parameters");
} else {
	tl_step("Parameterlist","0","Extended parameters");
}
#=============================================================================================
# @STEP 7			Change to support parameters.
#=============================================================================================
set_window(work_window,15);
web_link_click("Support");

wait(5);
#=============================================================================================
# @STEP 8			Checking table headline - Support.
#=============================================================================================
set_window(work_window, 1);
for (i=1;i<5;i++) {
	
	if (new_interface == "1") {
		web_obj_get_text ("1x1_2", "#2", "#"&i, cell_value_6, "", "", 1);
	} else {
		tbl_get_cell_data ("Owner", "#2", "#"&i, cell_value_6);
	}
	
	if (trim(cell_value_6) != table_param_header [i-1]) {
	
		table_param_header_ok = 0;
		break;
	}
}
if(table_param_header_ok == 0) {
	tl_step("Header","1","Support parameters");
} else {
	tl_step("Header","0","Support parameters");
}
