diff --git a/pandora_console/godmode/reporting/reporting_builder.item_editor.php b/pandora_console/godmode/reporting/reporting_builder.item_editor.php index 38ac32b635..7ec49b4d08 100755 --- a/pandora_console/godmode/reporting/reporting_builder.item_editor.php +++ b/pandora_console/godmode/reporting/reporting_builder.item_editor.php @@ -6776,6 +6776,8 @@ function chooseType() { $("#row_dyn_height").show(); $("#row_servers").show(); $("#row_historical_db_check").show(); + $("#sql_example").hide(); + $("#sql_entry").show(); break; case 'url': diff --git a/pandora_console/godmode/reporting/reporting_builder.php b/pandora_console/godmode/reporting/reporting_builder.php index f6a67cce8e..1c3a88e73d 100755 --- a/pandora_console/godmode/reporting/reporting_builder.php +++ b/pandora_console/godmode/reporting/reporting_builder.php @@ -2198,10 +2198,6 @@ switch ($action) { ); if ($values['treport_custom_sql_id'] == 0) { $sql = get_parameter('sql', ''); - if ($sql !== '') { - $good_format = db_validate_sql($sql); - } - $values['external_source'] = $sql; } @@ -2218,6 +2214,28 @@ switch ($action) { } else { $values['server_name'] = get_parameter('combo_server'); } + + if ($sql !== '') { + if ($values['server_name'] === 'all') { + $servers_connection = metaconsole_get_connections(); + foreach ($servers_connection as $key => $s) { + $good_format = db_validate_sql($sql, $s['server_name']); + } + + // Reconnected in nodo if exist. + if ($server_id !== 0) { + $connection = metaconsole_get_connection_by_id( + $server_id + ); + metaconsole_connect($connection); + } + } else if ($server_id === 0) { + // Connect with node if not exist conexion. + $good_format = db_validate_sql($sql, (is_metaconsole() === true) ? $values['server_name'] : false); + } else { + $good_format = db_validate_sql($sql); + } + } } else if ($values['type'] == 'url') { $values['external_source'] = get_parameter('url'); } else if ($values['type'] == 'event_report_group') { @@ -2965,7 +2983,25 @@ switch ($action) { } if ($sql !== '') { - $good_format = db_validate_sql($sql, (is_metaconsole() === true) ? $values['server_name'] : false); + if ($values['server_name'] === 'all') { + $servers_connection = metaconsole_get_connections(); + foreach ($servers_connection as $key => $s) { + $good_format = db_validate_sql($sql, $s['server_name']); + } + + // Reconnected in nodo if exist. + if ($server_id !== 0) { + $connection = metaconsole_get_connection_by_id( + $server_id + ); + metaconsole_connect($connection); + } + } else if ($server_id === 0) { + // Connect with node if not exist conexion. + $good_format = db_validate_sql($sql, (is_metaconsole() === true) ? $values['server_name'] : false); + } else { + $good_format = db_validate_sql($sql); + } } } else if ($values['type'] == 'url') { $values['external_source'] = get_parameter('url');