function build_report_object()
{
    $GLOBALS['time'] = array();
    $ses = $_GET['ses'];
    $form_ses = $_GET['form_ses'];
    $report = $_GET['r'];
    $dir = $_GET['dir'];
    $get_array = array();
    $emailer = $_GET['emailer'];
    while (list($key, $value) = each($_GET)) {
        $get_array["#{$key}#"] = $value;
    }
    include_once "../{$dir}/database.php";
    include_once 'common.php';
    //--------security check-------------------------------
    if ($emailer != '1') {
        if (activityPasswordNeeded($report)) {
            $session = nuSession($ses, false);
            if ($session->foundOK == '') {
                print 'you have been logged out..';
                return;
            }
        }
    }
    //---------------------------------------------------
    $id = uniqid('1');
    $thedate = date('Y-m-d H:i:s');
    $dq = '"';
    $setup = nuSetup();
    $T = nuRunQuery("SELECT * FROM zzsys_activity WHERE sat_all_code = '{$report}'");
    $activity = db_fetch_object($T);
    //----------allow for custom code----------------------------------------------
    //--already done now..	eval($activity->sat_report_display_code);   //---(Reporting Class)
    $displayClass = new Reporting();
    $REPORT = new REPORT($displayClass, $dir, $ses);
    if ($activity->zzsys_activity_id == '') {
        print 'No Such Report...';
        return;
    }
    $viewer = $session->sss_zzsys_user_id;
    $s = "INSERT INTO zzsys_report_log (zzsys_report_log_id, ";
    $s .= "srl_zzsys_activity_id, srl_date ,srl_viewer) ";
    $s .= "VALUES ('{$id}', '{$report}', '{$thedate}', '{$viewer}')";
    nuRunQuery($s);
    $s = "SELECT count(*), MAX(sva_expiry_date) FROM zzsys_variable ";
    $s .= "WHERE sva_id = '{$form_ses}' ";
    $s .= "GROUP BY sva_expiry_date";
    $t1 = nuRunQuery($s);
    $r1 = db_fetch_row($t1);
    $numberOfVariables = $r1[0];
    $expiryDate = $r1[1];
    if ($numberOfVariables == 0) {
        //---must have at least 1 variable
        print 'Report has Expired...';
        return;
    }
    $s = "DELETE FROM zzsys_variable ";
    $s .= "WHERE sva_id = '{$form_ses}' ";
    $s .= "AND sva_name = 'ReportTitle'";
    nuRunQuery($s);
    setnuVariable($form_ses, $expiryDate, 'ReportTitle', $activity->sat_all_description);
    $TT = TT();
    //--Temp table name
    //----------create an array of hash variables that can be used in any "hashString"
    $sesVariables = recordToHashArray('zzsys_session', 'zzsys_session_id', $ses);
    //--session values (access level and user etc. )
    $sesVariables['#dataTable#'] = $TT;
    $sesVariables['#TT#'] = $TT;
    $GLOBALS['TT'] = $TT;
    $dataTable = $TT;
    $sysVariables = sysVariablesToHashArray($form_ses);
    //--values in sysVariables from the calling lookup page
    $arrayOfHashVariables = joinHashArrays($sysVariables, $sesVariables);
    //--join the arrays together
    $formValue = array();
    while (list($key, $value) = each($sesVariables)) {
        $formValue[substr($key, 1, -1)] = $value;
    }
    //-------------------------------build $TT with PHP----------------------------------------
    $v = getSelectionFormVariables($form_ses);
    $hashV = arrayToHashArray($v);
    $arrayOfHashVariables = joinHashArrays($arrayOfHashVariables, $hashV);
    //--join the arrays together
    $REPORT->tablesUsed = getSelectionFormTempTableNames($form_ses, $v);
    //--temp tables to delete when finished
    $formValue = $v;
    $nuHashVariables = $arrayOfHashVariables;
    //--added by sc 23-07-2009
    eval(replaceHashVariablesWithValues($arrayOfHashVariables, $activity->sat_report_data_code));
    $REPORT->no_data = addVariablesToTT($TT, $v);
    nuRunQuery("ALTER TABLE `{$TT}` ADD `nu__id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY FIRST");
    $REPORT->nuloopThroughRecords($TT);
}