r5020 - branches/bmas-staging/lib/org/freemedsoftware/module

0 views
Skip to first unread message

subve...@svn.freemedsoftware.org

unread,
Feb 4, 2010, 1:22:15 PM2/4/10
to freemed-d...@googlegroups.com
Author: jeff
Date: 2010-02-04 13:22:15 -0500 (Thu, 04 Feb 2010)
New Revision: 5020

Modified:
branches/bmas-staging/lib/org/freemedsoftware/module/Reporting.class.php
Log:
* Unfsck kludge to reporting system so every other report doesn't break.
* Fix Jasper parameter passing, as far as I know


Modified: branches/bmas-staging/lib/org/freemedsoftware/module/Reporting.class.php
===================================================================
--- branches/bmas-staging/lib/org/freemedsoftware/module/Reporting.class.php 2010-02-04 16:46:07 UTC (rev 5019)
+++ branches/bmas-staging/lib/org/freemedsoftware/module/Reporting.class.php 2010-02-04 18:22:15 UTC (rev 5020)
@@ -139,8 +139,7 @@
// Sanity checking
if (!$report['report_name']) { return false; }

- $s = CreateObject('org.freemedsoftware.api.Scheduler');
- $i=0;
+ $s = CreateObject('org.freemedsoftware.api.Scheduler');
foreach ($report['params'] AS $k => $v) {
if ( !$v['optional'] and !$param[$k] ) {
syslog(LOG_INFO, get_class($this)."| parameter $k failed for report $uuid");
@@ -150,60 +149,19 @@

switch ($v['type']) {
case 'Date':
- $pass['param'.$i] = $GLOBALS['sql']->quote( $s->ImportDate( $param[$k] ) );
+ $pass[] = $GLOBALS['sql']->quote( $s->ImportDate( $param[$k] ) );
break;

case 'Facility':
- $pass['param'.$i] = $GLOBALS['sql']->quote( ((int) HTTP_Session2::get('facility_id')));
+ $pass[] = $GLOBALS['sql']->quote( ((int) HTTP_Session2::get('facility_id')));
break;
-
- case 'User':
- $pass['param'.$i] = freemed::user_cache()->user_number+0;
- break;
-
- default:
- $pass['param'.$i] = $GLOBALS['sql']->quote( $param[$k] );
- break;
- }
- $i=$i+1;
- }
-
- // Form query
- $query = "CALL ".$report['report_sp']." ( ". @join( ', ', $pass )." ); ";
-
- //print_r($result); die();

- // Handle graphing, or at least non-standard, reports
- if ( $report['report_type'] != 'standard' ) {
- return call_user_func_array( array( &$this, 'GenerateReport_'.ucfirst($report['report_type']) ), array( $report, $format, $query, $pass ) );
- }
- $this->GenerateReport_Jasper( $report, $format, $query,$pass);
- } // end method GenerateReport
-/*
- public function GenerateReport ( $uuid, $format, $param ) {
- freemed::acl_enforce( 'reporting', 'generate' );
- $report = $this->GetReportParameters( $uuid, false );

- // Sanity checking
- if (!$report['report_name']) { return false; }
-
- $s = CreateObject('org.freemedsoftware.api.Scheduler');
- foreach ($report['params'] AS $k => $v) {
- if ( !$v['optional'] and !$param[$k] ) {
- syslog(LOG_INFO, get_class($this)."| parameter $k failed for report $uuid");
- return false;
- }
-
-
- switch ($v['type']) {
- case 'Date':
- $pass[] = $GLOBALS['sql']->quote( $s->ImportDate( $param[$k] ) );
+ case 'User':
+ $pass[] = (int) freemed::user_cache()->user_number;
break;
+

- case 'Facility':
- $pass[] = $GLOBALS['sql']->quote( ((int) HTTP_Session2::get('facility_id')));
- break;
-
default:
$pass[] = $GLOBALS['sql']->quote( $param[$k] );
break;
@@ -279,7 +237,7 @@
return $result;
break;
}
- }*/ // end method GenerateReport
+ } // end method GenerateReport


//----- Pluggable methods go below -----
@@ -449,7 +407,7 @@
$parameters = "";
if ($params != NULL && count($params) > 0) {
foreach ($params AS $p) {
- $parameters .= " " . escapeshellarg( $p );
+ $parameters .= " --param=" . escapeshellarg( $p );
}
}

Reply all
Reply to author
Forward
0 new messages