本文整理汇总了PHP中paloSantoGrid::fetchGridCSV方法的典型用法代码示例。如果您正苦于以下问题:PHP paloSantoGrid::fetchGridCSV方法的具体用法?PHP paloSantoGrid::fetchGridCSV怎么用?PHP paloSantoGrid::fetchGridCSV使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类paloSantoGrid
的用法示例。
在下文中一共展示了paloSantoGrid::fetchGridCSV方法的3个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: reportReportedeTroncalesusadasporHoraeneldia
//.........这里部分代码省略.........
$date_from = getParameter("date_from");
$date_to = getParameter("date_to");
// si la fecha no está seteada en el filtro
$_POST["date_from"] = isset($date_from) ? $date_from : date("d M Y");
$_POST["date_to"] = isset($date_to) ? $date_to : date("d M Y");
$date_from = isset($date_from) ? date('Y-m-d', strtotime($date_from)) : date("Y-m-d");
$date_to = isset($date_to) ? date('Y-m-d', strtotime($date_to)) : date("Y-m-d");
// para setear la trunk la primera vez
$filter_value = getParameter("filter_value");
if (!isset($filter_value)) {
$trunk = array_shift(array_keys($arrTrunk));
//Trunks
$_POST["filter_value"] = $trunk;
$filter_value = $trunk;
}
//validacion para que los filtros se queden seteados con el valor correcto, correccion de bug que se estaba dando en caso de pagineo
$_POST["filter_value"] = $filter_value;
$bElastixNuevo = method_exists('paloSantoGrid', 'setURL');
// begin grid parameters
$oGrid = new paloSantoGrid($smarty);
$oGrid->enableExport();
$bExportando = $bElastixNuevo ? $oGrid->isExportAction() : isset($_GET['exportcsv']) && $_GET['exportcsv'] == 'yes';
$limit = 50;
$offset = 0;
// se obtienen los datos que se van a mostrar
$arrData = null;
$filter_value = trim($filter_value);
$recordset = $pReportedeTroncalesusadasporHoraeneldia->listarTraficoLlamadasHora($date_from, $date_to, empty($filter_value) ? NULL : $filter_value);
if (!is_array($recordset)) {
$smarty->assign(array('mb_title' => _tr('Query Error'), 'mb_message' => $oCalls->errMsg));
$recordset = array();
}
$total = count($recordset);
$oGrid->setLimit($limit);
$oGrid->setTotal($total);
if ($bElastixNuevo) {
$offset = $oGrid->calculateOffset();
} else {
$action = getParameter("nav");
$start = getParameter("start");
$oGrid->calculatePagination($action, $start);
$end = $oGrid->getEnd();
}
$url = array("menu" => $module_name, "filter_field" => $filter_field, "filter_value" => $filter_value, "date_from" => $date_from, "date_to" => $date_to);
// se guarda la data en un arreglo que luego es enviado como parámetro para crear el reporte
if (is_array($recordset)) {
$arrData = array();
$total = array('entered' => 0, 'terminada' => 0, 'abandonada' => 0, 'en-cola' => 0, 'fin-monitoreo' => 0);
foreach ($recordset as $iHora => $tupla) {
$arrData[] = array(sprintf('%02d:00:00 - %02d:00:00', $iHora, $iHora + 1), $tupla['entered'], $tupla['terminada'], $tupla['abandonada'], $tupla['en-cola'], $tupla['fin-monitoreo']);
foreach (array_keys($total) as $k) {
$total[$k] += $tupla[$k];
}
}
$sTagInicio = !$bExportando ? '<b>' : '';
$sTagFinal = $sTagInicio != '' ? '</b>' : '';
$arrData[] = array($sTagInicio . _tr('TOTAL') . $sTagFinal, $sTagInicio . $total['entered'] . $sTagFinal, $sTagInicio . $total['terminada'] . $sTagFinal, $sTagInicio . $total['abandonada'] . $sTagFinal, $sTagInicio . $total['en-cola'] . $sTagFinal, $sTagInicio . $total['fin-monitoreo'] . $sTagFinal);
}
//begin section filter
$arrFormFilterReportedeTroncalesusadasporHoraeneldia = createFieldFilter($arrTrunk);
$smarty->assign("SHOW", _tr("Show"));
$oFilterForm = new paloForm($smarty, $arrFormFilterReportedeTroncalesusadasporHoraeneldia);
$htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $_POST, $_GET);
//end section filter
$oGrid->showFilter($htmlFilter);
if ($bElastixNuevo) {
$oGrid->setURL($url);
$oGrid->setData($arrData);
$arrColumnas = array(_tr("Time Period "), _tr("Entered"), _tr("Answered"), _tr("Abandoned"), _tr("In queue"), _tr("Without monitoring "));
$oGrid->setColumns($arrColumnas);
$oGrid->setTitle(_tr("Reporte de Troncales usadas por Hora en el dia"));
$oGrid->pagingShow(true);
$oGrid->setNameFile_Export(_tr("Reporte de Troncales usadas por Hora en el dia"));
return $oGrid->fetchGrid();
} else {
global $arrLang;
$url = construirURL($url, array('nav', 'start'));
$offset = 0;
$limit = $total + 1;
// se crea el grid
$arrGrid = array("title" => _tr("Reporte de Troncales usadas por Hora en el dia"), "url" => $url, "icon" => "images/list.png", "width" => "99%", "start" => $total == 0 ? 0 : $offset + 1, "end" => $end, "total" => $total, "columns" => array(0 => array("name" => _tr("Time Period "), "property1" => ""), 1 => array("name" => _tr("Entered"), "property1" => ""), 2 => array("name" => _tr("Answered"), "property1" => ""), 3 => array("name" => _tr("Abandoned"), "property1" => ""), 4 => array("name" => _tr("In queue"), "property1" => ""), 5 => array("name" => _tr("Without monitoring "), "property1" => "")));
if ($bExportando) {
$fechaActual = date("d M Y");
header("Cache-Control: private");
header("Pragma: cache");
header('Content-Type: application/octec-stream');
$title = "\"" . $fechaActual . ".csv\"";
header("Content-disposition: inline; filename={$title}");
header('Content-Type: application/force-download');
}
if ($bExportando) {
return $oGrid->fetchGridCSV($arrGrid, $arrData);
}
$sContenido = $oGrid->fetchGrid($arrGrid, $arrData, $arrLang);
if (strpos($sContenido, '<form') === FALSE) {
$sContenido = "<form method=\"POST\" style=\"margin-bottom:0;\" action=\"{$url}\">{$sContenido}</form>";
}
return $sContenido;
}
}
示例2: listHistogram
//.........这里部分代码省略.........
}
if (isset($_POST['fecha_ini'])) {
$sFechaInicial = date('Y-m-d', strtotime($_POST['fecha_ini']));
}
if (isset($_GET['fecha_fin'])) {
$sFechaFinal = date('Y-m-d', strtotime($_GET['fecha_fin']));
}
if (isset($_POST['fecha_fin'])) {
$sFechaFinal = date('Y-m-d', strtotime($_POST['fecha_fin']));
}
$_POST['fecha_ini'] = date('d M Y', strtotime($sFechaInicial));
$_POST['fecha_fin'] = date('d M Y', strtotime($sFechaFinal));
$smarty->assign('FECHA_INI', $sFechaInicial);
$smarty->assign('FECHA_FIN', $sFechaFinal);
// Recuperar la lista de llamadas
$oCalls = new paloSantoCallsHour($pDB);
$arrCalls = $oCalls->getCalls($sTipoLlamada, $sEstadoLlamada, $sFechaInicial, $sFechaFinal);
// TODO: manejar error al obtener llamadas
if (!is_array($arrCalls)) {
$smarty->assign("mb_title", _tr("Validation Error"));
$smarty->assign("mb_message", $oCalls->errMsg);
$arrCalls = array();
}
// Lista de colas a elegir para gráfico. Sólo se elige de las colas devueltas
// por la lista de datos.
$listaColas = array_keys($arrCalls);
$comboColas = array('' => _tr('All'));
if (count($listaColas) > 0) {
$comboColas += array_combine($listaColas, $listaColas);
}
$sColaElegida = NULL;
if (isset($_GET['queue'])) {
$sColaElegida = $_GET['queue'];
}
if (isset($_POST['queue'])) {
$sColaElegida = $_POST['queue'];
}
if (!in_array($sColaElegida, $listaColas)) {
$sColaElegida = '';
}
$_POST['queue'] = $sColaElegida;
// Para llenar el formulario
$smarty->assign('QUEUE', $_POST['queue']);
$url = construirURL(array('menu' => $module_name, 'tipo' => $sTipoLlamada, 'estado' => $sEstadoLlamada, 'queue' => $sColaElegida, 'fecha_ini' => $sFechaInicial, 'fecha_fin' => $sFechaFinal), array('nav', 'start'));
$smarty->assign('url', $url);
// Construir el arreglo como debe mostrarse en la tabla desglose
$arrData = array();
for ($i = 0; $i < 24; $i++) {
$arrData[$i] = array(sprintf('%02d:00', $i));
}
$arrData[24] = array(_tr('Total Calls'));
$arrCols = array(0 => array('name' => _tr('Hour')));
$arrTodos = array_fill(0, 24, 0);
foreach ($arrCalls as $sQueue => $hist) {
if (empty($sColaElegida) || $sColaElegida == $sQueue) {
$arrCols[] = array('name' => $sQueue);
$iTotalCola = 0;
foreach ($hist as $i => $iNumCalls) {
$arrData[$i][] = $iNumCalls;
$arrTodos[$i] += $iNumCalls;
$iTotalCola += $iNumCalls;
}
$arrData[24][] = $iTotalCola;
}
}
$arrCols[] = array('name' => _tr('All'));
$iTotalCola = 0;
foreach ($arrTodos as $i => $iNumCalls) {
$arrData[$i][] = $iNumCalls;
$iTotalCola += $iNumCalls;
}
$arrData[24][] = $iTotalCola;
$smarty->assign('MODULE_NAME', $module_name);
$smarty->assign('LABEL_FIND', _tr('Find'));
$formFilter = getFormFilter($comboTipos, $comboEstados, $comboColas);
$oForm = new paloForm($smarty, $formFilter);
//Llenamos las cabeceras
$arrGrid = array("title" => _tr("Graphic Calls per hour"), "url" => $url, "icon" => "images/list.png", "width" => "99%", "start" => 0, "end" => 0, "total" => 0, "columns" => $arrCols);
$oGrid = new paloSantoGrid($smarty);
$oGrid->showFilter($oForm->fetchForm("{$local_templates_dir}/filter-graphic-calls.tpl", NULL, $_POST));
$oGrid->enableExport();
if (isset($_GET['exportcsv']) && $_GET['exportcsv'] == 'yes') {
$fechaActual = date("Y-m-d");
header("Cache-Control: private");
header("Pragma: cache");
header('Content-Type: text/csv; charset=UTF-8; header=present');
$title = "\"calls-per-hour-" . $fechaActual . ".csv\"";
header("Content-disposition: attachment; filename={$title}");
return $oGrid->fetchGridCSV($arrGrid, $arrData);
} else {
$bExportando = isset($_GET['exportcsv']) && $_GET['exportcsv'] == 'yes' || isset($_GET['exportspreadsheet']) && $_GET['exportspreadsheet'] == 'yes' || isset($_GET['exportpdf']) && $_GET['exportpdf'] == 'yes';
$sContenido = $oGrid->fetchGrid($arrGrid, $arrData, $arrLang);
if (!$bExportando) {
if (strpos($sContenido, '<form') === FALSE) {
$sContenido = "<form method=\"POST\" style=\"margin-bottom:0;\" action=\"{$url}\">{$sContenido}</form>";
}
}
return $sContenido;
}
}
示例3: _moduleContent
//.........这里部分代码省略.........
$paramConsulta[$k] = $_GET[$k];
}
if (isset($_POST[$k])) {
$paramConsulta[$k] = $_POST[$k];
}
}
if ($oFilterForm->validateForm($paramConsulta)) {
// Exito, puedo procesar los datos ahora.
} else {
// Error
$smarty->assign("mb_title", _tr("Validation Error"));
$arrErrores = $oFilterForm->arrErroresValidacion;
$strErrorMsg = "<b>" . _tr('Required field') . ":</b><br/>";
foreach ($arrErrores as $k => $v) {
$strErrorMsg .= "{$k}, ";
}
$strErrorMsg .= "";
$smarty->assign("mb_message", $strErrorMsg);
$paramConsulta = array('date_start' => date('d M Y'), 'date_end' => date('d M Y'), 'queue' => $sColaOmision, 'agent' => $sAgenteOmision);
}
// Se genera el filtro con las variables ya validadas
$htmlFilter = $oFilterForm->fetchForm("{$local_templates_dir}/filter.tpl", "", $paramConsulta);
// Consultar los datos y generar la matriz del reporte
$sFechaInicial = translateDate($paramConsulta['date_start']);
$sFechaFinal = translateDate($paramConsulta['date_end']);
$r = $oCallsAgent->reportarBreaksAgente($paramConsulta['agent'], $paramConsulta['queue'], $sFechaInicial, $sFechaFinal);
$b = $bExportando ? array('', '') : array('<b>', '</b>');
$ub = $bExportando ? array('', '') : array('<u><b>', '</b></u>');
$arrData = array();
if (is_array($r) && count($r) > 0) {
$tempTiempos = array('monitoreadas' => 0, 'llamadas_por_hora' => 0, 'duracion_llamadas' => 0, 'promedio_duracion' => 0, 'total_llamadas' => 0);
foreach ($r['tiempos_llamadas'] as $tupla) {
$tempTiempos['llamadas_por_hora'] = $tempTiempos['total_llamadas'] += $tupla['N'];
$tempTiempos['duracion_llamadas'] += $tupla['tiempo_llamadas_entrantes'];
if ($tupla['status'] == 'terminada') {
$tempTiempos['monitoreadas'] = $tupla['N'];
$tempTiempos['promedio_duracion'] = $tupla['promedio_sobre_monitoreadas'];
}
}
if ($r['tiempo_conexion'] > 0) {
$tempTiempos['llamadas_por_hora'] /= $r['tiempo_conexion'] / 3600;
}
$sFormatoMonitoreadas = sprintf('%d %s(s) (%d %s, %d %s)', $tempTiempos['total_llamadas'], _tr('Call'), $tempTiempos['monitoreadas'], _tr('Monitored'), $tempTiempos['total_llamadas'] - $tempTiempos['monitoreadas'], _tr('Unmonitored'));
$arrData = array(array($b[0] . strtoupper(_tr('Agent name')) . $b[1], $r['name'], "", ""), array($b[0] . strtoupper(_tr('Conecction Data')) . $b[1], "", "", ""), array(_tr('First Conecction'), $r['primera_conexion'], "", ""), array(_tr('Last Conecction'), $r['ultima_conexion'], "", ""), array(_tr('Time Conecction'), formatoSegundos($r['tiempo_conexion']), "", ""), array(_tr('Count Conecction'), $r['conteo_conexion'], "", ""), array($b[0] . strtoupper(_tr('Calls Entry')) . $b[1], "", "", ""), array(_tr('Count Calls Entry'), $sFormatoMonitoreadas, "", ""), array(_tr('Calls/h'), number_format($tempTiempos['llamadas_por_hora'], 2), "", ""), array(_tr('Time Call Entry'), formatoSegundos($tempTiempos['duracion_llamadas']), "", ""), array(_tr('Average Calls Entry'), $tempTiempos['promedio_duracion'] . " (" . _tr('Monitored only') . ')', "", ""), array($b[0] . strtoupper(_tr('Reason No Ready')) . $b[1], "", "", ""), array($ub[0] . _tr('Break') . $ub[1], $ub[0] . _tr('Count') . $ub[1], $ub[0] . _tr('Hour') . $ub[1], $ub[0] . _tr('Porcent compare whit time not ready') . $ub[1]));
$tempBreaks = array();
$iTotalSeg = 0;
foreach ($r['tiempos_breaks'] as $tupla) {
$tempBreaks[] = array($tupla['name'], $tupla['N'], formatoSegundos($tupla['total_break']), $tupla['total_break']);
$iTotalSeg += $tupla['total_break'];
}
for ($i = 0; $i < count($tempBreaks); $i++) {
$tempBreaks[$i][3] = number_format(100.0 * ($tempBreaks[$i][3] / $iTotalSeg), 2) . ' %';
$arrData[] = $tempBreaks[$i];
}
} else {
if (!is_array($r)) {
$smarty->assign("mb_title", _tr("Database Error"));
$smarty->assign("mb_message", $oCallsAgent->errMsg);
}
$arrData[] = array($b[0] . _tr("There aren't records to show") . $b[1], '', '', '');
}
// Creo objeto de grid
$oGrid->enableExport();
$oGrid->showFilter($htmlFilter);
// La definición del grid
$paramConsulta['menu'] = $module_name;
if ($bElastixNuevo) {
$oGrid->setURL(construirURL($paramConsulta));
$oGrid->setData($arrData);
$arrColumnas = array("", "", "", "");
$oGrid->setColumns($arrColumnas);
$oGrid->setTitle(_tr("Agent Information"));
$oGrid->pagingShow(false);
$oGrid->setNameFile_Export(_tr("Agent Information"));
$smarty->assign("SHOW", _tr("Show"));
return $oGrid->fetchGrid();
} else {
global $arrLang;
$total = $end = count($arrData);
$offset = 0;
$url = construirUrl($paramConsulta);
$arrGrid = array("title" => _tr("Time conecction of agents"), "icon" => "images/list.png", "width" => "99%", "start" => $total == 0 ? 0 : $offset + 1, "end" => $end, "total" => $total, "url" => $url, "columns" => array(0 => array("name" => "", "property" => ""), 1 => array("name" => "", "property" => ""), 2 => array("name" => "", "property" => ""), 3 => array("name" => "", "property" => "")));
if ($bExportando) {
$fechaActual = date("d M Y");
header("Cache-Control: private");
header("Pragma: cache");
$title = $fechaActual;
header('Content-Type: text/csv; charset=utf-8; header=present');
header("Content-disposition: attachment; filename=\"" . $title . ".csv\"");
}
if ($bExportando) {
return $oGrid->fetchGridCSV($arrGrid, $arrData);
}
$sContenido = $oGrid->fetchGrid($arrGrid, $arrData, $arrLang);
if (strpos($sContenido, '<form') === FALSE) {
$sContenido = "<form method=\"POST\" style=\"margin-bottom:0;\" action=\"{$url}\">{$sContenido}</form>";
}
return $sContenido;
}
}