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; }
<?php $data[0] = array('company', 'region', 'district', 'store', 'sales'); $data[1] = array('Foo, Inc.', 'Region A', 'District X', 'Store #1', 1500.0); $data[2] = array('Foo, Inc.', 'Region A', 'District X', 'Store #2', 1300.0); $data[3] = array('Foo, Inc.', 'Region A', 'District Y', 'Store #3', 2000.0); $data[4] = array('Foo, Inc.', 'Region A', 'District Y', 'Store #4', 1800.0); $data[5] = array('Foo, Inc.', 'Region B', 'District M', 'Store #11', 2500.0); $data[6] = array('Foo, Inc.', 'Region B', 'District M', 'Store #12', 2300.0); $data[7] = array('Foo, Inc.', 'Region B', 'District N', 'Store #13', 3000.0); $data[8] = array('Foo, Inc.', 'Region B', 'District N', 'Store #14', 2800.0); $rlib = rlib_init(); rlib_version(); rlib_add_datasource_array($rlib, "local_array"); rlib_add_query_as($rlib, "local_array", "data", "data"); $output_format = 'xml'; if (isset($argv[1])) { $output_format = $argv[1]; } rlib_add_report($rlib, "breaks.xml"); rlib_set_output_format_from_text($rlib, $output_format); rlib_set_output_parameter($rlib, "debugging", "yes"); rlib_set_output_parameter($rlib, "only_quote_strings", "yes"); rlib_set_locale($rlib, "en_US"); rlib_execute($rlib); // header(rlib_get_content_type($rlib)); rlib_spool($rlib); rlib_free($rlib);
<?php dl("rlib.so"); $hostname = "localhost"; $username = "******"; $password = "******"; $database = "rlib"; $rlib = rlib_init(); rlib_add_datasource_odbc($rlib, "local_mysql", "test", "user", "password"); rlib_add_query_as($rlib, "local_mysql", "select * FROM plu", "products"); rlib_add_report($rlib, "products.xml"); rlib_set_output_format_from_text($rlib, "txt"); rlib_execute($rlib); header(rlib_get_content_type($rlib)); rlib_spool($rlib); rlib_free($rlib);
$inventory[1][8] = "0"; $inventory[1][9] = "0"; $inventory[1][10] = "0"; $inventory[2][0] = "2"; $inventory[2][1] = "BUN, KAISER"; $inventory[2][2] = ".70"; $inventory[2][3] = "DOZEN"; $inventory[2][4] = "176"; $inventory[2][5] = "0"; $inventory[2][6] = "0"; $inventory[2][7] = "0"; $inventory[2][8] = "0"; $inventory[2][9] = "0"; $inventory[2][10] = "0"; $sillypants = 5; $rlib = rlib_init(); rlib_add_datasource_array($rlib, "local_array"); rlib_add_query_as($rlib, "local_array", "yields", "yields"); rlib_add_query_as($rlib, "local_array", "coupons", "coupons"); rlib_add_query_as($rlib, "local_array", "deposits", "deposits"); rlib_add_query_as($rlib, "local_array", "petty_cash", "petty_cash"); rlib_add_query_as($rlib, "local_array", "misc_income", "misc_income"); rlib_add_query_as($rlib, "local_array", "inv_transfer", "inv_transfer"); rlib_add_query_as($rlib, "local_array", "inventory", "inventory"); rlib_add_report($rlib, "fixed_part.xml"); rlib_set_output_format_from_text($rlib, "xml"); rlib_signal_connect($rlib, "part_iteration", "callback"); rlib_execute($rlib); header(rlib_get_content_type($rlib)); rlib_spool($rlib); rlib_free($rlib);
$sales_data2[1] = array('Foo, Inc.', 'Region A', 'District X', 'Store #1', 1500.0); $sales_data2[2] = array('Foo, Inc.', 'Region A', 'District X', 'Store #2', 1300.0); $sales_data2[3] = array('Foo, Inc.', 'Region A', 'District Y', 'Store #3', 2000.0); $sales_data2[4] = array('Foo, Inc.', 'Region A', 'District Y', 'Store #4', 1800.0); $sales_data2[5] = array('Foo, Inc.', 'Region B', 'District M', 'Store #11', 2500.0); $sales_data2[6] = array('Foo, Inc.', 'Region B', 'District M', 'Store #12', 2300.0); $sales_data2[7] = array('Foo, Inc.', 'Region B', 'District N', 'Store #13', 3000.0); $sales_data2[8] = array('Foo, Inc.', 'Region B', 'District N', 'Store #14', 2800.0); $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", "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));
<?php dl("rlib.so"); $rlib = rlib_init(); rlib_version(); rlib_add_datasource_xml($rlib, "local_xml"); rlib_add_query_as($rlib, "local_xml", "data.xml", "data"); rlib_add_report($rlib, "array.xml"); rlib_set_output_format_from_text($rlib, "pdf"); rlib_execute($rlib); header(rlib_get_content_type($rlib)); rlib_spool($rlib); rlib_free($rlib);
<?php $rlib = rlib_init(); rlib_add_datasource_csv($rlib, "local_csv"); rlib_add_query_as($rlib, "local_csv", "data.csv", "data"); rlib_add_report($rlib, "csv.xml"); rlib_set_output_format_from_text($rlib, "json"); rlib_set_output_parameter($rlib, "debugging", "yes"); rlib_execute($rlib); header(rlib_get_content_type($rlib)); rlib_spool($rlib); rlib_free($rlib);