echo '<p><a href="run_rep.php?rep=' . $rep_info['id_report'] . '" class="run_lnk">' . _T('rep_button_run') . '</a> '; echo '<a href="run_rep.php?export=csv&rep=' . $rep_info['id_report'] . '" class="exp_lnk">' . _T('rep_button_exportcsv') . '</a>'; echo "</p></fieldset>"; // // Matrix line // echo '<a name="line"></a>' . "\n"; echo "<fieldset class='info_box'>"; show_page_subtitle(_T('rep_subtitle_line'), 'reports_edit', 'line'); show_report_field_edit('line', $rep_info); echo "</fieldset>\n"; // // Matrix column (Experimental) // echo '<a name="col"></a>' . "\n"; echo "<fieldset class='info_box'>"; show_page_subtitle(_T('rep_subtitle_column'), 'reports_edit', 'columns'); show_report_field_edit('col', $rep_info); echo "</fieldset>\n"; // // Report filters // echo '<a name="filter"></a>' . "\n"; echo "<fieldset class='info_box'>"; show_page_subtitle(_T('rep_subtitle_filters'), 'reports_edit', 'filters'); include_lcm('inc_conditions'); show_report_filters($rep, false); echo "</fieldset>\n"; lcm_page_end(); // Clear errors $_SESSION['errors'] = array();
function get_filters_sql($report, $obj_type = '', $obj_name = '') { $ret = ""; $is_missing_filters = false; $my_filters = get_filters($report->getId(), $obj_type, $obj_name); $clauses = array(); // Apply the filter values and check for missing values foreach ($my_filters as $f) { if ($f['value'] || isset($_REQUEST['filter_val' . $f['id_filter']]) || isset_datetime_from_array($_REQUEST, 'filter_val' . $f['id_filter'], 'year_only') || isset_datetime_from_array($_REQUEST, 'filter_val' . $f['id_filter'] . "_start", 'year_only') && isset_datetime_from_array($_REQUEST, 'filter_val' . $f['id_filter'] . "_end", 'year_only')) { $filter_sql = apply_filter($f); if ($filter_sql) { array_push($clauses, $filter_sql); } } else { // For now, we ignore filters without type (eq/lt/gt/..) // because it's a bit messy to allow input at runtime // (because of fields for filter value) if ($f['type']) { $is_missing_filters = true; } } } if ($is_missing_filters) { if (!($report->getOption('headers_sent') == 'yes')) { lcm_page_start(_T('title_rep_run') . " " . remove_number_prefix($rep_info['title']), '', '', 'report_intro'); } show_page_subtitle(_T('rep_subtitle_filters'), 'reports_edit', 'filters'); echo '<p class="normal_text">'; include_lcm('inc_conditions'); show_report_filters($report->getId(), true); echo "</p>\n"; lcm_page_end(); exit; } $ret1 = implode(" AND ", $clauses); return $ret1; }