Ejemplo n.º 1
0
}
$star = '';
if (!empty($args['reporter']->saved_report->id)) {
    $star = SugarFavorites::generateStar(SugarFavorites::isUserFavorite('Reports', $args['reporter']->saved_report->id), 'Reports', $args['reporter']->saved_report->id);
}
if (!empty($args['reporter']->name)) {
    $params[] = "{$args['reporter']->name} {$star}";
}
//Override the create url
$createURL = 'index.php?module=Reports&report_module=&action=index&page=report&Create+Custom+Report=Create+Custom+Report';
echo getClassicModuleTitle("Reports", $params, true, '', $createURL);
// show report interface
if (isset($_REQUEST['page']) && $_REQUEST['page'] == 'report') {
    checkSavedReportACL($args['reporter'], $args);
    if (isset($_REQUEST['run_query']) && $_REQUEST['run_query'] == 1) {
        reportResults($args['reporter'], $args);
    } else {
        reportCriteriaWithResult($args['reporter'], $args);
    }
    if (!empty($_REQUEST['expanded_combo_summary_divs'])) {
        $expandDivs = explode(" ", $_REQUEST['expanded_combo_summary_divs']);
        foreach ($expandDivs as $divId) {
            str_replace(" ", "", $divId);
            if ($divId != "") {
                echo "<script>expandCollapseComboSummaryDiv('" . $divId . "')</script>";
            }
            // if
        }
        // foreach
    }
    // if
Ejemplo n.º 2
0
        continue;
    }
    if (empty($testedChars[$char])) {
        $total++;
        if (testInvariant($normalizer, $char, $desc)) {
            $success++;
        } else {
            $failure++;
        }
        if ($total % 100 == 0) {
            print "{$total} ";
        }
    }
}
fclose($in);
$ok = reportResults($total, $success, $failure) && $ok;
if ($ok) {
    print "TEST SUCCEEDED!\n";
    exit(0);
} else {
    print "TEST FAILED!\n";
    exit(-1);
}
## ------
function reportResults(&$total, &$success, &$failure)
{
    $percSucc = intval($success * 100 / $total);
    $percFail = intval($failure * 100 / $total);
    print "\n";
    print "{$success} tests successful ({$percSucc}%)\n";
    print "{$failure} tests failed ({$percFail}%)\n\n";
Ejemplo n.º 3
0
function template_reports_report(&$reporter, &$args)
{
    global $current_user;
    global $current_language;
    global $mod_strings, $app_strings;
    global $sugar_config, $sugar_version;
    $sort_by = '';
    $sort_dir = '';
    $summary_sort_by = '';
    $summary_sort_dir = '';
    $report_type = '';
    $smarty = new Sugar_Smarty();
    if (isset($reporter->report_def['order_by'][0]['name']) && isset($reporter->report_def['order_by'][0]['table_key'])) {
        $sort_by = $reporter->report_def['order_by'][0]['table_key'] . ":" . $reporter->report_def['order_by'][0]['name'];
    }
    // if
    if (isset($reporter->report_def['order_by'][0]['sort_dir'])) {
        $sort_dir = $reporter->report_def['order_by'][0]['sort_dir'];
    }
    // if
    if (!empty($reporter->report_def['summary_order_by'][0]['group_function']) && $reporter->report_def['summary_order_by'][0]['group_function'] == 'count') {
        $summary_sort_by = $reporter->report_def['summary_order_by'][0]['table_key'] . ":" . 'count';
    } else {
        if (isset($reporter->report_def['summary_order_by'][0]['name'])) {
            $summary_sort_by = $reporter->report_def['summary_order_by'][0]['table_key'] . ":" . $reporter->report_def['summary_order_by'][0]['name'];
            if (!empty($reporter->report_def['summary_order_by'][0]['group_function'])) {
                $summary_sort_by .= ":" . $reporter->report_def['summary_order_by'][0]['group_function'];
            } else {
                if (!empty($reporter->report_def['summary_order_by'][0]['column__function'])) {
                    $summary_sort_by .= ":" . $reporter->report_def['summary_order_by'][0]['column_function'];
                }
            }
            // else if
        }
    }
    // else if
    if (isset($reporter->report_def['summary_order_by'][0]['sort_dir'])) {
        $summary_sort_dir = $reporter->report_def['summary_order_by'][0]['sort_dir'];
    }
    // if
    if (isset($reporter->report_def['report_type'])) {
        $report_type = $reporter->report_def['report_type'];
    }
    // if
    $issetSaveResults = false;
    $isSaveResults = false;
    if (isset($args['save_result'])) {
        $issetSaveResults = true;
        $smarty->assign('save_report_as_str', $_REQUEST['save_report_as']);
        if ($args['save_result']) {
            $isSaveResults = true;
        }
        // if
    }
    // if
    $smarty->assign('mod_strings', $mod_strings);
    $smarty->assign('app_strings', $app_strings);
    $smarty->assign('current_language', $current_language);
    $smarty->assign('sugar_config', $sugar_config);
    $smarty->assign('sugar_version', $sugar_version);
    $smarty->assign('issetSaveResults', $issetSaveResults);
    $smarty->assign('isSaveResults', $isSaveResults);
    $smarty->assign('report_type', $report_type);
    $form_header = get_form_header($mod_strings['LBL_TITLE'] . ": " . $args['reporter']->saved_report->name, "", false);
    $smarty->assign('form_header', $form_header);
    $smarty->assign('report_offset', $reporter->report_offset);
    $smarty->assign('sort_by', $sort_by);
    $smarty->assign('sort_dir', $sort_dir);
    $smarty->assign('summary_sort_by', $summary_sort_by);
    $smarty->assign('summary_sort_dir', $summary_sort_dir);
    if (isset($_REQUEST['save_as']) && $_REQUEST['save_as'] == 'true') {
        $report_id = '';
    } else {
        if (isset($reporter->saved_report->id)) {
            $report_id = $reporter->saved_report->id;
        } elseif (!empty($_REQUEST['record'])) {
            $report_id = $_REQUEST['record'];
        } else {
            $report_id = '';
        }
    }
    // else
    $smarty->assign('report_id', $report_id);
    $smarty->assign('to_pdf', isset($_REQUEST['to_pdf']) ? $_REQUEST['to_pdf'] : "");
    $smarty->assign('to_csv', isset($_REQUEST['to_csv']) ? $_REQUEST['to_csv'] : "");
    if (!empty($args['reporter']->saved_report)) {
        $context = array("bean" => $args['reporter']->saved_report);
    } else {
        $context = array();
    }
    $report_edit_access = SugarACL::checkAccess('Reports', 'edit', $context);
    $smarty->assign('report_edit_access', $report_edit_access);
    $report_delete_access = SugarACL::checkAccess('Reports', 'delete', $context);
    $smarty->assign('report_delete_access', $report_delete_access);
    $report_export_access = SugarACL::checkAccess('Reports', 'export', $context);
    $smarty->assign('report_export_access', $report_export_access);
    $smarty->assign('form_submit', empty($_REQUEST['form_submit']) ? false : $_REQUEST['form_submit']);
    $global_json = getJSONobj();
    global $ACLAllowedModules;
    $ACLAllowedModules = getACLAllowedModules();
    $smarty->assign('ACLAllowedModules', $global_json->encode(array_keys($ACLAllowedModules)));
    require_once 'include/tabs.php';
    $tabs = array();
    array_push($tabs, array('title' => $mod_strings['LBL_1_REPORT_ON'], 'link' => 'module_join_tab', 'key' => 'module_join_tab'));
    array_push($tabs, array('title' => $mod_strings['LBL_2_FILTER'], 'link' => 'filters_tab', 'key' => 'filters_tab'));
    //array_push($tabs,array('title'=>$mod_strings['LBL_3_GROUP'],'link'=>'group_by_tab','key'=>'group_by_tab'));
    //array_push($tabs,array('title'=>$mod_strings['LBL_3_CHOOSE'],'link'=>'columns_tab','key'=>'columns_tab'));
    if ($args['reporter']->report_type == 'tabular') {
        array_push($tabs, array('title' => $mod_strings['LBL_3_GROUP'], 'hidden' => true, 'link' => 'group_by_tab', 'key' => 'group_by_tab'));
        array_push($tabs, array('title' => $mod_strings['LBL_3_CHOOSE'], 'link' => 'columns_tab', 'key' => 'columns_tab'));
        array_push($tabs, array('title' => $mod_strings['LBL_5_CHART_OPTIONS'], 'hidden' => true, 'link' => 'chart_options_tab', 'key' => 'chart_options_tab'));
    } else {
        array_push($tabs, array('title' => $mod_strings['LBL_3_GROUP'], 'link' => 'group_by_tab', 'key' => 'group_by_tab'));
        array_push($tabs, array('title' => $mod_strings['LBL_4_CHOOSE'], 'link' => 'columns_tab', 'key' => 'columns_tab'));
        array_push($tabs, array('title' => $mod_strings['LBL_5_CHART_OPTIONS'], 'link' => 'chart_options_tab', 'key' => 'chart_options_tab'));
    }
    $current_key = 'module_join_tab';
    $tab_panel = new SugarWidgetTabs($tabs, $current_key, 'showReportTab');
    $smarty->assign('tab_panel_display', $tab_panel->display());
    template_reports_tables($smarty, $args);
    if ($reporter->report_type == 'summary') {
        $summary_display = '';
        if ($reporter->show_columns) {
            $column_display = '';
        } else {
            $column_display = 'none';
        }
        // else
    } else {
        $summary_display = 'none';
        $column_display = '';
    }
    // else
    $summary_join_selector = '&nbsp;<div style="padding-bottom:2px">' . $mod_strings['LBL_MODULE'] . ': <select onChange="viewJoinChanged(this);" id="view_join_summary" name="view_join_summary"></select></div>';
    $chooser_args_summary = array('id' => 'summary_table', 'title' => $mod_strings['LBL_CHOOSE_SUMMARIES'] . ':', 'left_name' => 'display_summary', 'right_name' => 'hidden_summary', 'left_label' => $mod_strings['LBL_DISPLAY_SUMMARIES'], 'right_label' => $summary_join_selector, 'display' => $summary_display, 'onmoveleft' => 'reload_columns(\'join\')', 'onmoveright' => 'reload_columns(\'join\')');
    $join_selector = '&nbsp;<div style="padding-bottom:2px">' . $mod_strings['LBL_MODULE'] . ': <select onChange="viewJoinChanged(this);" id="view_join" name="view_join"></select></div>';
    $chooser_args = array('id' => 'columns_table', 'title' => $mod_strings['LBL_CHOOSE_COLUMNS'] . ':', 'left_name' => 'display_columns', 'right_name' => 'hidden_columns', 'left_label' => $mod_strings['LBL_DISPLAY_COLUMNS'], 'right_label' => $join_selector, 'display' => $column_display, 'topleftcontent' => $join_selector, 'onmoveleft' => 'reload_columns(\'join\')', 'onmoveright' => 'reload_columns(\'join\')');
    $smarty->assign('template_grups_choosers1', template_groups_chooser($chooser_args_summary));
    if ($summary_display == 'none') {
        $smarty->assign('summary_display_style', "display:none");
    }
    // if
    if ($reporter->show_columns) {
        $smarty->assign('show_columns_reports', true);
    }
    // if
    $smarty->assign('column_display', $column_display);
    $smarty->assign('template_grups_choosers2', template_groups_chooser($chooser_args));
    template_reports_filters($smarty, $args);
    $smarty->assign('reporter_report_type', $args['reporter']->report_type);
    template_reports_group_by($smarty, $args);
    template_reports_chart_options($smarty, $args);
    $smarty->assign('md5_current_user_id', md5($current_user->id));
    $smarty->assign('args_image_path', $args['IMAGE_PATH']);
    template_reports_request_vars_js($smarty, $reporter, $args);
    $smarty->assign('cache_path', sugar_cached(''));
    // Set fiscal start date
    $admin = BeanFactory::getBean('Administration');
    $config = $admin->getConfigForModule('Forecasts', 'base');
    if (!empty($config['is_setup']) && !empty($config['timeperiod_start_date'])) {
        $smarty->assign("fiscalStartDate", $config['timeperiod_start_date']);
    }
    $smarty->assign('ENTROPY', mt_rand());
    echo $smarty->fetch("modules/Reports/templates/_template_reports_report.tpl");
    ob_start();
    ?>
<script language="javascript">
if(typeof YAHOO != 'undefined') YAHOO.util.Event.addListener(window, 'load', load_page);
</script>
<?php 
    reportResults($reporter, $args);
    /*
    $do_chart = false;
    
    $dbStart = microtime();
    
    if ($reporter->report_type == 'summary' && ! empty($reporter->report_def['summary_columns'])) {
    if ($reporter->show_columns &&
    	!empty($reporter->report_def['display_columns']) &&
            !empty($reporter->report_def['group_defs'])) {
    
    	template_summary_combo_view($reporter,$args);
    	$do_chart = true;
    
        } else if($reporter->show_columns &&
              !empty($reporter->report_def['display_columns']) &&
              	   empty($reporter->report_def['group_defs'])) {
    	template_detail_and_total_list_view($reporter,$args);
    } else if (!empty($reporter->report_def['group_defs'])) {
    	template_summary_list_view($reporter,$args);
    	$do_chart = true;
    } else {
    	template_total_view($reporter,$args);
    } // else
    } else if (!empty($reporter->report_def['display_columns'])) {
    template_list_view($reporter,$args);
    } // else if
    
    if ($reporter->report_def['chart_type']== 'none') {
    $do_chart = false;
    }
    echo "time = " . microtime_diff($dbStart, microtime())."s ";
    ?>
    </div>
    <?php
    $contents = ob_get_contents();
    ob_end_clean();
    
    if ($do_chart) {
       		template_chart($reporter);
    } // if
    
    print $contents;
    */
}