public function DataManager::sqlData in Forena Reports 7.5
Same name and namespace in other branches
- 8 src/DataManager.php \Drupal\forena\DataManager::sqlData()
Execute sql on a provider
Parameters
$provider String Data provider index to reference:
$sql String sql command to execute:
File
- src/
DataManager.php, line 245 - DataManager.inc Enter description here ... @author davidmetzler
Class
Namespace
Drupal\forenaCode
public function sqlData($provider, $sql, $parms = array()) {
$xml = '';
//Intstantiate the provider
$o = $this
->repository($provider);
$repos = @$this->repositories[$provider];
if (isset($repos['enabled']) && !$repos['enabled']) {
return '';
}
//Populate user callback.
if (isset($repos['user callback'])) {
$user_fn = $repos['user callback'];
if (is_callable($user_fn)) {
$current_user = $user_fn();
$parms['current_user'] = $current_user;
}
}
if ($o && $sql) {
Frx::Data()
->push($parms, 'parm');
// Parse the sql file
$data = $o
->parseSQLFile($sql);
//now get the built SQL back
$sql = $data['source'];
$xml = $o
->sqlData($sql, @$data['options']);
Frx::Data()
->pop();
}
return $xml;
}