protected function GenerateReport_Rlib($param, $format, $query, $params = NULL) { freemed::acl_enforce('reporting', 'write'); switch ($format) { case 'html': $outformat = 'html'; $ext = 'html'; break; case 'csv': $outformat = 'csv'; $ext = 'csv'; break; case 'text': $outformat = 'text'; $ext = 'txt'; break; case 'pdf': $outformat = 'pdf'; $ext = 'pdf'; break; default: $outformat = 'pdf'; $ext = 'pdf'; break; } // end switch format @dl("rlib.so"); if (!function_exists('rlib_init')) { syslog(LOG_ERR, get_class($this) . "| rlib PHP extension not found"); } // Global scope things to be passed into m.* namespace $GLOBALS['installation'] = INSTALLATION; $GLOBALS['generated_on'] = date('r'); $rlib = rlib_init(); rlib_add_datasource_mysql($rlib, "local_mysql", DB_HOST, DB_USER, DB_PASSWORD, DB_NAME); rlib_add_query_as($rlib, "local_mysql", $query, "result"); rlib_add_report_from_buffer($rlib, $param['report_formatting']); rlib_set_output_format_from_text($rlib, $outformat); rlib_execute($rlib); switch ($outformat) { case 'pdf': Header('Content-type: application/pdf'); break; default: Header(rlib_get_content_type($rlib)); break; } Header("Content-Disposition: inline; filename=\"" . mktime() . ".{$ext}\""); rlib_spool($rlib); rlib_free($rlib); die; }
$moredata[39][0] = "39"; $moredata[40][0] = "40"; $moredata[41][0] = "41"; $moredata[42][0] = "42"; $moredata[43][0] = "43"; $moredata[44][0] = "44"; $moredata[45][0] = "45"; $moredata[46][0] = "46"; $moredata[47][0] = "47"; $moredata[48][0] = "48"; $moredata[49][0] = "49"; $moredata[50][0] = "50"; $moredata[51][0] = "51"; $moredata[52][0] = "52"; $moredata[53][0] = "53"; $moredata[54][0] = "54"; $moredata[55][0] = "55"; $moredata[56][0] = "56"; $moredata[57][0] = "57"; $moredata[58][0] = "58"; $moredata[59][0] = "59"; $rlib = rlib_init(); rlib_add_datasource_array($rlib, "local_array"); rlib_add_query_as($rlib, "local_array", "data", "data"); rlib_add_query_as($rlib, "local_array", "moredata", "moredata"); rlib_add_report($rlib, "flow_part.xml"); rlib_set_output_format_from_text($rlib, "pdf"); rlib_execute($rlib); header(rlib_get_content_type($rlib)); rlib_spool($rlib); rlib_free($rlib);
rlib_add_datasource_array($rlib, "local_array"); rlib_add_query_as($rlib, "local_array", "data", "data"); rlib_add_query_as($rlib, "local_array", "line_data", "line_data"); rlib_add_query_as($rlib, "local_array", "pie_data", "pie_data"); rlib_add_query_as($rlib, "local_array", "pie_data2", "pie_data2"); rlib_add_query_as($rlib, "local_array", "sales_data", "sales_data"); rlib_add_query_as($rlib, "local_array", "sales_data2", "sales_data2"); rlib_set_output_parameter($rlib, "html_image_directory", "/tmp"); rlib_set_output_parameter($rlib, "trim_links", "1"); rlib_add_report($rlib, "graph.xml"); $allowable_formats = array('pdf', 'xml', 'txt', 'csv', 'html'); if (isset($argv[1]) && in_array($argv[1], $allowable_formats)) { rlib_set_output_format_from_text($rlib, $argv[1]); } else { if (isset($_REQUEST['format']) && in_array($_REQUEST['format'], $allowable_formats)) { rlib_set_output_format_from_text($rlib, $_REQUEST['format']); } else { rlib_set_output_format_from_text($rlib, "xml"); } } rlib_execute($rlib); //header(rlib_get_content_type($rlib)); $ct = rlib_get_content_type($rlib); $my_header = split("\n", rlib_get_content_type($rlib)); foreach ($my_header as $x) { if ($x != '') { header($x); } } rlib_spool($rlib); rlib_free($rlib);