info
Locale locale
String date_column
String fromDate
String toDate
String Server
String Port
}
@// set sesam server DNS name for link to dashboard
@{
Server = ((info.get("name")).toString());
Port = ((info.get("restPort")).toString());
}
@*Queries:
* [
* {
* "paramName" : "xitems",
* "dateRangeSourceTable" : "r",
* "query" : [
* "SELECT",
* "r.task,",
* "r.saveset,",
* "r.fdi_type,",
* "r.start_time,",
* "r.state,",
* "r.msg",
* "FROM",
* "count_results r",
* "WHERE",
* "r.state not in ('0','1','a','6','q')",
* "AND",
* "@(dateRange:@(date_column))",
* "AND",
* "r.fdi_type in ('F','D','I','C','X')",
* "AND",
* "r.saveset not like 'S%'",
* "AND",
* "r.saveset not like 'R%'",
* "AND",
* "r.saveset not like 'X%'",
* "AND",
* "r.saveset not like 'V%'",
* "AND",
* "r.saveset not like 'B%'",
* "ORDER BY",
* "r.start_time"
* ]
* },
* {
* "paramName" : "ritems",
* "dateRangeSourceTable" : "r",
* "query" : [
* "SELECT",
* "r.task,",
* "r.migration_task,",
* "r.migration_id,",
* "r.saveset,",
* "r.start_time,",
* "r.stop_time,",
* "r.state,",
* "r.msg,",
* "CASE",
* "WHEN",
* "r.parent_task IS NULL",
* "THEN",
* "r.migration_id",
* "ELSE",
* "r.parent_task",
* "END",
* "AS",
* "sortorder",
* "FROM",
* "migration_results r",
* "WHERE",
* "r.state not in ('0','1','a','6','q')",
* "AND",
* "(",
* "@(dateRange:@(date_column))",
* "OR",
* "( r.stop_time > '@(fromDate)' AND r.stop_time < '@(toDate)' AND r.start_time < '@(fromDate)' )",
* ")",
* "AND",
* "r.replication_type='SEP Si3 Replication'",
* "ORDER BY",
* "sortorder,r.parent_task DESC"
* ]
* },
* {
* "paramName" : "bitems",
* "dateRangeSourceTable" : "r",
* "query" : [
* "SELECT",
* "r.task,",
* "r.saveset,",
* "r.fdi_type,",
* "r.start_time,",
* "r.stop_time,",
* "r.state,",
* "r.session_id,",
* "r.client_id,",
* "r.client,",
* "r.msg",
* "FROM",
* "count_results r",
* "WHERE",
* "r.state not in ('0','1','a','6','q')",
* "AND",
* "(",
* "@(dateRange:@(date_column))",
* "OR",
* "( r.stop_time > '@(fromDate)' AND r.stop_time < '@(toDate)' AND r.start_time < '@(fromDate)' )",
* ")",
* "AND",
* "(",
* "( r.saveset like 'S%' OR r.saveset like 'X%' OR r.saveset like 'B%' )",
* "OR",
* "( r.extern_flag='1' AND NOT r.backup_type='VMware vSphere' )",
* ")",
* "AND",
* "( r.saveset_count='0' OR r.saveset_count IS NULL )",
* "ORDER BY",
* "r.session_id,",
* "COALESCE (r.client_id , -1) ASC,",
* "r.start_time"
* ]
* },
* {
* "paramName" : "mitems",
* "dateRangeSourceTable" : "r",
* "query" : [
* "SELECT",
* "r.task,",
* "r.migration_task,",
* "r.migration_id,",
* "r.saveset,",
* "r.start_time,",
* "r.stop_time,",
* "r.state,",
* "r.msg,",
* "CASE",
* "WHEN",
* "r.parent_task IS NULL",
* "THEN",
* "r.migration_id",
* "ELSE",
* "r.parent_task",
* "END",
* "AS",
* "sortorder",
* "FROM",
* "migration_results r",
* "WHERE",
* "r.state not in ('0','1','a','6','q')",
* "AND",
* "(",
* "@(dateRange:@(date_column))",
* "OR",
* "( r.stop_time > '@(fromDate)' AND r.stop_time < '@(toDate)' AND r.start_time < '@(fromDate)' )",
* ")",
* "AND",
* "r.replication_type='SEP Migration'",
* "ORDER BY",
* "sortorder,r.parent_task DESC"
* ]
* }
* ]
*@
@include("../commons/tags.html")
@include("../commons/functions.html")
@sepReportHeader("Report")
@sepTitleBox("Title", sepFnGetToday(locale), (String) info.get("name"))
@if (date_column == "sesam_date") {
@sepDateRangeLabel(sepFnGetDate(sepFnStringToDate(fromDate), locale), sepFnGetDate(sepFnStringToDate(toDate), locale), date_column)
} else {
@sepDateRangeLabel(sepFnGetDateLong(sepFnStringToDate(fromDate), locale), sepFnGetDateLong(sepFnStringToDate(toDate), locale), date_column)
}
@i18n("FailedBackups")
@if (!bitems.isEmpty()) {
@i18n("Group") |
@i18n("Task") |
@i18n("BackupState") |
@i18n("Client") |
@i18n("SavesetId") |
@i18n("Message") |
@{
String previousSession = null;
boolean isFirstRow2 = true;
}
@for (Map item : bitems) {
@{
String btask = (String) item.get("task");
String session = (String) item.get("session_id");
boolean isNewTask = previousSession == null || !previousSession.equals(session) || "single".equals(session);
String bState = "other";
String bStyle = "";
String backupState = (String) item.get("state");
if ("0".equals(backupState)) {
bState = "check";
bStyle = "svg-ok";
}
if ("a".equals(backupState)) {
bState = "run";
bStyle = "svg-run";
}
if ("1".equals(backupState)) {
bState = "warning";
bStyle = "svg-warning";
}
if ("2".equals(backupState) || "e".equals(backupState) || "X".equals(backupState) || "3".equals(backupState) || "c".equals(backupState)) {
bState = "bad";
bStyle = "svg-error";
}
}
@if (isNewTask) {
@{
previousSession = session;
}
@(btask)
}
|
@(btask)
|
@if(!"other".equals(bState)) {
}
|
@(item.get("client"))
|
@(item.get("saveset"))
|
@(item.get("msg"))
|
@{
isFirstRow2 = false;
}
}
} else {
@i18n("NoBackupErrors")
}
@i18n("FailedMigrations")
@if (!mitems.isEmpty()) {
@i18n("MigTask") |
@i18n("Task") |
@i18n("BackupState") |
@i18n("SavesetId") |
@i18n("Message") |
@{
String previousTask = null;
boolean isFirstRow = true;
}
@for (Map item : mitems) {
@{
String mtask = (String) item.get("sortorder");
String task = (String) item.get("task");
String migtask = (String) item.get("migration_task");
boolean isNewTask = previousTask == null || !previousTask.equals(mtask);
String bState = "other";
String bStyle = "";
String backupState = (String) item.get("state");
if ("0".equals(backupState)) {
bState = "check";
bStyle = "svg-ok";
}
if ("a".equals(backupState)) {
bState = "run";
bStyle = "svg-run";
}
if ("1".equals(backupState)) {
bState = "warning";
bStyle = "svg-warning";
}
if ("2".equals(backupState) || "e".equals(backupState) || "X".equals(backupState) || "3".equals(backupState) || "c".equals(backupState)) {
bState = "bad";
bStyle = "svg-error";
}
}
@if (isNewTask) {
@{
previousTask = mtask;
}
@(migtask)
}
|
@(task)
|
@if(!"other".equals(bState)) {
}
|
@(item.get("saveset"))
|
@(item.get("msg"))
|
@{
isFirstRow = false;
}
}
} else {
@i18n("NoMigrationErrors")
}
@i18n("FailedReplications")
@if (!ritems.isEmpty()) {
@i18n("RepTask") |
@i18n("Task") |
@i18n("BackupState") |
@i18n("SavesetId") |
@i18n("Message") |
@{
String previousRepTask = null;
boolean isFirstRow3 = true;
}
@for (Map item : ritems) {
@{
String rtask = (String) item.get("sortorder");
String task = (String) item.get("task");
String reptask = (String) item.get("migration_task");
boolean isNewTask = previousRepTask == null || !previousRepTask.equals(rtask);
String bState = "other";
String bStyle = "";
String backupState = (String) item.get("state");
if ("0".equals(backupState)) {
bState = "check";
bStyle = "svg-ok";
}
if ("a".equals(backupState)) {
bState = "run";
bStyle = "svg-run";
}
if ("1".equals(backupState)) {
bState = "warning";
bStyle = "svg-warning";
}
if ("2".equals(backupState) || "e".equals(backupState) || "X".equals(backupState) || "3".equals(backupState) || "c".equals(backupState)) {
bState = "bad";
bStyle = "svg-error";
}
}
@if (isNewTask) {
@{
previousRepTask = rtask;
}
@(reptask)
}
|
@(task)
|
@if(!"other".equals(bState)) {
}
|
@(item.get("saveset"))
|
@(item.get("msg"))
|
@{
isFirstRow3 = false;
}
}
} else {
@i18n("NoReplicationErrors")
}
@i18n("FailedOther")
@if (!xitems.isEmpty()) {
@i18n("Task") |
@i18n("BackupState") |
@i18n("SavesetId") |
@i18n("Message") |
@for (Map item : xitems) {
@{
String task = (String) item.get("task");
String bState = "other";
String bStyle = "";
String backupState = (String) item.get("state");
if ("0".equals(backupState)) {
bState = "check";
bStyle = "svg-ok";
}
if ("a".equals(backupState)) {
bState = "run";
bStyle = "svg-run";
}
if ("1".equals(backupState)) {
bState = "warning";
bStyle = "svg-warning";
}
if ("2".equals(backupState) || "e".equals(backupState) || "X".equals(backupState) || "3".equals(backupState) || "c".equals(backupState)) {
bState = "bad";
bStyle = "svg-error";
}
}
@(task)
|
@if(!"other".equals(bState)) {
}
|
@(item.get("saveset"))
|
@(item.get("msg"))
|
}
} else {
@i18n("NoOtherErrors")
}