function grafico($anio = '') { $this->load->library('Graph'); if (empty($anio)) { return; } $fechai = $anio . '0101'; $fechaf = $anio . '1231'; $mSQL = "SELECT a.vd, LEFT(b.nombre, 8)as nombre2, \n\t\t sum(a.totalg*IF(a.tipo_doc='D', -1, 1)) AS grantotal, \n\t\t sum(a.totalg*(a.referen IN ('E', 'M'))*IF(a.tipo_doc='D', -1, 1)) AS contado, \n\t\t sum(a.totalg*(a.referen NOT IN ('E', 'M'))*IF(a.tipo_doc='D', -1, 1)) AS credito \n\t\t FROM sfac AS a \n\t\t JOIN vend AS b ON a.vd=b.vendedor \n\t\t WHERE a.tipo_doc<>'X' AND a.fecha>='{$fechai}' AND a.fecha<='{$fechaf}' \n\t\t GROUP BY a.vd ORDER BY a.vd,grantotal DESC LIMIT 10"; $maxval = 0; $query = $this->db->query($mSQL); $data_1 = $data_2 = $data_3 = $vendedor = array(); foreach ($query->result() as $row) { if ($row->grantotal > $maxval) { $maxval = $row->grantotal; } $nombre[] = $row->nombre2; $vendedor[] = $row->vd; $data_1[] = $row->contado; $data_2[] = $row->credito; $data_3[] = $row->grantotal; } $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#0053A4'); $bar_2 = new bar(75, '#9933CC'); $bar_3 = new bar(75, '#639F45'); $bar_1->key('Contado', 10); $bar_2->key('Credito', 10); $bar_3->key('Total', 10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.'))); $bar_3->add_data_tip($data_3[$i] / $om, graph::esc(number_format($data_3[$i], 2, ',', '.'))); $bar_1->links[] = site_url("/ventas/vendedoresmensuales/index/{$anio}/" . $vendedor[$i]); $bar_2->links[] = site_url("/ventas/vendedoresmensuales/index/{$anio}/" . $vendedor[$i]); $bar_3->links[] = site_url("/ventas/vendedoresmensuales/index/{$anio}/" . $vendedor[$i]); } $g = new graph(); $g->title('Los 10 vendedores con los indice de ventas más altos en el año' . $anio, '{font-size: 22px; color:##00264A}'); $g->set_is_decimal_separator_comma(1); $g->data_sets[] = $bar_1; $g->data_sets[] = $bar_2; $g->data_sets[] = $bar_3; $g->set_x_labels($nombre); $g->set_x_label_style(10, '#000000', 3, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Vendedores', 14, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Vendedor: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->set_y_legend('Ventas x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); echo utf8_encode($g->render()); }
function grafico($anio = '') { $this->load->library('Graph'); $this->lang->load('calendar'); if (empty($anio)) { return; } $fechai = $anio . '0101'; $fechaf = $anio . '1231'; $mSQL = "SELECT MONTHNAME(fecha)AS mes,\n\t\tAVG(sueldoa) AS anterior,\n\t\tAVG(sueldo) AS actual\n\t\tFROM ausu\n\t\tWHERE fecha>='{$fechai}' AND fecha<='{$fechaf}'\n\t\tGROUP BY mes ORDER BY fecha"; //echo $mSQL; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->anterior > $maxval) { $maxval = $row->anterior; } $nmes[] = $this->lang->line('cal_' . strtolower($row->mes)); $data_1[] = $row->anterior; $data_2[] = $row->actual; //$data_3[]=$row->actual; } $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#0053A4'); $bar_2 = new bar(75, '#9933CC'); $bar_3 = new bar(75, '#639F45'); $bar_1->key('Sueldo Anterior', 10); $bar_2->key('Sueldo con Aumento', 10); //$bar_3->key('Total' ,10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.'))); $bar_3->add_data_tip($data_3[$i] / $om, graph::esc(number_format($data_3[$i], 2, ',', '.'))); } $g = new graph(); $g->title('Promedio de Aumento de Sueldos en el año ' . $anio, '{font-size: 22px; color:##00264A}'); $g->set_is_decimal_separator_comma(1); $g->data_sets[] = $bar_1; $g->data_sets[] = $bar_2; $g->data_sets[] = $bar_3; $g->set_x_labels($nmes); $g->set_x_label_style(9, '#000000', 3, 1); $g->set_x_axis_steps(8); $g->set_x_legend('Meses ', 16, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Mes: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->set_y_legend('Sueldo x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); echo utf8_encode($g->render()); }
function gdiarias($anio = '', $cliente = '', $mes = '') { $this->load->library('Graph'); if (empty($mes) or empty($anio) or empty($cliente)) { return; } $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31'; $mSQL = "SELECT cod_cli,nombre,fecha,DAYOFMONTH(fecha) as dia, \n\t\tsum(gtotal*IF(tipo='D', -1, 1)) AS grantotal, \n\t\tsum(gtotal*IF(tipo='D', -1, 1)) AS contado, \n\t\tsum(gtotal*IF(tipo='D', -1, 1)) AS credito \n\t\tFROM fmay \n\t\tWHERE tipo<>'X' AND fecha>='{$fechai}' AND fecha<='{$fechaf}' AND cod_cli='{$cliente}' \n\t\tGROUP BY fecha ORDER BY fecha,grantotal DESC LIMIT 31"; //echo $mSQL; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->grantotal > $maxval) { $maxval = $row->grantotal; } $fecha[] = $row->dia; $data_1[] = $row->contado; $data_2[] = $row->credito; $data_3[] = $row->grantotal; } $nombre = $row->nombre; $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#0053A4'); $bar_2 = new bar(75, '#9933CC'); $bar_3 = new bar(75, '#639F45'); $bar_1->key('Contado', 10); $bar_2->key('Credito', 10); $bar_3->key('Total', 10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.'))); $bar_3->add_data_tip($data_3[$i] / $om, graph::esc(number_format($data_3[$i], 2, ',', '.'))); } $g = new graph(); $g->set_is_decimal_separator_comma(1); if ($maxval > 0) { $g->title('Compras de el cliente ' . $nombre . ' en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:#0F3054}'); $g->data_sets[] = $bar_1; $g->data_sets[] = $bar_2; $g->data_sets[] = $bar_3; $g->set_x_labels($fecha); $g->set_x_label_style(10, '#000000', 3, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Dias', 14, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->set_y_legend('hospitalidad x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); } else { $g->title('No existen ventas con los datos seleccionados', '{font-size:18px; color: #d01f3c}'); } $g->bg_colour = '#FFFFFF'; echo utf8_encode($g->render()); }
function gdiarias($anio = '', $proveed = '', $mes = '') { $this->load->library('Graph'); if (empty($mes) or empty($anio) or empty($proveed)) { return; } $proveed = radecode($proveed); $fechai = $anio . str_pad($mes, 2, '0', STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, '0', STR_PAD_LEFT) . '31'; $dbfechai = $this->db->escape($fechai); $dbfechaf = $this->db->escape($fechaf); $dbproveed = $this->db->escape($proveed); $mSQL = "SELECT LEFT(nombre,10)as nombre,proveed,DAYOFMONTH(fecha) AS dia ,\n\t\tSUM(montonet*IF(tipo_doc='NC', -1, 1)) AS grantotal,\n\t\tSUM(credito*IF( tipo_doc='NC', -1, 1)) AS credito,\n\t\tSUM(inicial*IF( tipo_doc='NC', -1, 1)) AS contado\n\t\tFROM scst\n\t\tWHERE tipo_doc<>'NE' AND fecha>={$dbfechai} AND fecha<={$dbfechaf} AND proveed={$dbproveed}\n\t\t\tAND actuali >= fecha\n\t\tGROUP BY fecha ORDER BY fecha,grantotal DESC LIMIT 31"; //echo $mSQL; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->grantotal > $maxval) { $maxval = $row->grantotal; } $fecha[] = $row->dia; $nombre = str_replace('&', '', $row->nombre); //$data_1[]=$row->contado; //$data_2[]=$row->credito; $data_3[] = $row->grantotal; } $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } //$bar_1 = new bar(75, '#0053A4'); //$bar_2 = new bar(75, '#9933CC'); $bar_3 = new bar(75, '#639F45'); //$bar_1->key('Contado',10); //$bar_2->key('Credito',10); $bar_3->key('Total Bs.', 10); for ($i = 0; $i < count($data_3); $i++) { //$bar_1->add_data_tip($data_1[$i]/$om, graph::esc( number_format($data_1[$i],2,',','.'))); //$bar_2->add_data_tip($data_2[$i]/$om, graph::esc( number_format($data_2[$i],2,',','.'))); $bar_3->add_data_tip($data_3[$i] / $om, graph::esc(number_format($data_3[$i], 2, ',', '.'))); } $g = new graph(); $g->set_is_decimal_separator_comma(1); if ($maxval > 0) { $g->title('Compras a ' . $nombre . ' en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:##00264A}'); //$g->data_sets[] = $bar_1; //$g->data_sets[] = $bar_2; $g->data_sets[] = $bar_3; $g->set_x_labels($fecha); $g->set_x_label_style(10, '#000000', 3, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Dias', 14, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->set_y_legend('Compras x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); } else { $g->title('No existen compras con los datos seleccionados', '{font-size:18px; color: #d01f3c}'); } $g->bg_colour = '#FFFFFF'; echo utf8_encode($g->render()); }
function grafico($anio = '', $codigo = '') { $this->load->library('Graph'); if (empty($anio) or empty($codigo)) { return; } $fechai = $anio . '0101'; $fechaf = $anio . '1231'; $mSQL = "SELECT MONTHNAME(fecha)AS mes,codigo,nombre,sueldoa,sueldo FROM ausu\n WHERE fecha>='{$fechai}' AND fecha<='{$fechaf}'AND codigo='{$codigo}'\n ORDER BY fecha"; //echo $mSQL; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->sueldoa > $maxval) { $maxval = $row->sueldoa; } $nombre = $row->nombre; $meses[] = $row->mes; $data_1[] = $row->sueldoa; $data_2[] = $row->sueldo; //$data_3[]=$row->sueldoa; } $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#0053A4'); $bar_2 = new bar(75, '#9933CC'); //$bar_3 = new bar(75, '#639F45'); $bar_1->key('Sueldo Anterior', 10); $bar_2->key('Sueldo con Aumento', 10); //$bar_3->key('Total' ,10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.'))); //$bar_3->add_data_tip($data_3[$i]/$om, graph::esc( number_format($data_3[$i],2,',','.'))); } $g = new graph(); $g->title('Aumento de ' . $nombre . ' en el año ' . $anio, '{font-size: 20px; color:##00264A}'); $g->set_is_decimal_separator_comma(1); $g->data_sets[] = $bar_1; $g->data_sets[] = $bar_2; //$g->data_sets[] = $bar_3; $g->set_x_labels($meses); $g->set_x_label_style(10, '#000000', 3, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Meses', 16, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Mes: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->set_y_legend('Ventas x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); echo utf8_encode($g->render()); }
function gmensuales($anio = '', $mes = '') { $this->load->library('Graph'); if (empty($mes) or empty($anio)) { return; } $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31'; $mSQL = "SELECT DAYOFMONTH(fecha)as dia, fecha,\n\t\tSUM(monto)AS grantotal,SUM(impuesto)AS IVA,SUM(transac)as transacciones \n\t\tfrom est_fecha where fecha>='{$fechai}' AND fecha<='{$fechaf}'\n\t\tGROUP BY fecha \n\t\tORDER BY fecha ASC"; //echo $mSQL; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->grantotal > $maxval) { $maxval = $row->grantotal; } $fecha[] = $row->dia; $data_1[] = $row->grantotal; } $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#44AC37'); $bar_1->key('Monto', 10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); } $g = new graph(); $g->set_is_decimal_separator_comma(1); if ($maxval > 0) { $g->title('Ventas de en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:##00264A}'); $g->data_sets[] = $bar_1; $g->x_axis_colour('#A6A6A6', '#ADB5C7'); $g->set_x_labels($fecha); $g->set_x_label_style(10, '#000000', 3, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Dias', 14, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->y_axis_colour('#A6A6A6', '#ADB5C7'); $g->set_y_legend('Ventas x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); } else { $g->title('No existen ventas con los datos seleccionados', '{font-size:18px; color: #d01f3c}'); } $g->bg_colour = '#FFFFFF'; echo utf8_encode($g->render()); }
function gdiarias($anio = '', $producto = '', $mes = '') { $this->load->library('Graph'); if (empty($mes) or empty($anio) or empty($producto)) { return; } $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31'; $mSQL = "SELECT a.codigo AS codigo,b.descrip AS nombre,DAYOFMONTH(a.fecha) as dia,a.cantidad AS cantidad,\n SUM(a.venta)AS grantotal \n FROM costos AS a \n JOIN maes AS b ON a.codigo=b.codigo\n WHERE a.fecha >='{$fechai}' AND a.fecha <='{$fechaf}' AND a.codigo='{$producto}'\n GROUP BY fecha ORDER BY grantotal DESC"; echo $mSQL; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->grantotal > $maxval) { $maxval = $row->grantotal; } $fecha[] = $row->dia; $data_1[] = $row->grantotal; } $nombre = $row->nombre; $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#0F235F'); $bar_1->key('supermercado', 10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); } $g = new graph(); $g->set_is_decimal_separator_comma(1); if ($maxval > 0) { $g->title('Ventas de ' . $nombre . ' en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:#0F3054}'); $g->data_sets[] = $bar_1; $g->set_x_labels($fecha); $g->set_x_label_style(10, '#000000', 3, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Dias', 14, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->set_y_legend('supermercado x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); } else { $g->title('No existen ventas con los datos seleccionados', '{font-size:18px; color: #d01f3c}'); } $g->bg_colour = '#FFFFFF'; echo utf8_encode($g->render()); }
function gproducto($anio = '', $departamento = '', $linea = '', $grupo = '') { $this->load->library('Graph'); $this->load->library('calendar'); //$this->calendar->generate(); if (empty($anio) or empty($departamento) or empty($linea) or empty($grupo)) { return; } $fechai = $anio . '0101'; $fechaf = $anio . '1231'; $mSQL = "SELECT a.fecha,b.codigo,b.descrip AS nnombre,LEFT(b.descrip,20)AS nombre,e.depto,e.descrip,d.linea,d.descrip,b.grupo,b.descrip,c.nom_grup as ngrupo,\n SUM(a.promedio*a.cantidad) AS costo,\n SUM(a.venta) AS ventas,\n SUM(a.venta)-SUM(a.promedio*a.cantidad) AS ganancias\n FROM {$this->from} "; foreach ($this->join as $valor) { $mSQL .= "{$valor['2']} JOIN {$valor['0']} ON {$valor['1']}"; } $mSQL .= " WHERE a.origen IN ('3I','3M') AND a.fecha>='{$fechai}' AND a.fecha<='{$fechaf}' AND e.depto='{$departamento}' AND d.linea='{$linea}' AND b.grupo='{$grupo}'\n GROUP BY a.codigo ORDER BY ganancias DESC LIMIT 15"; //echo $mSQL; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->ganancias > $maxval) { $maxval = $row->ganancias; } $nombre[] = $row->nombre; $data_1[] = $row->ganancias; } $ngrupo = $row->ngrupo; $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#639F45'); $bar_1->key('Ganancias', 10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); //$bar_1->links[]= site_url("ventas/gananciasproducto/index/$anio/$departamento/".$linea[$i]); } $g = new graph(); $g->set_is_decimal_separator_comma(1); if ($maxval > 0) { $g->title('Ganancias por producto de el grupo ' . $ngrupo . ' en el año ' . $anio, '{font-size: 16px; color:#0F3054}'); $g->data_sets[] = $bar_1; $g->set_x_axis_3d(5); $g->x_axis_colour('#909090', '#ADB5C7'); $g->set_x_labels($nombre); $g->set_x_label_style(10, '#000000', 2, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Productos', 14, '#004381'); $g->y_axis_colour('#909090', '#ADB5C7'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Producto: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->set_y_legend('Ganancia x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); } else { $g->title('No existen ganancias con los datos seleccionados', '{font-size:18px; color: #d01f3c}'); } $g->bg_colour = '#FFFFFF'; echo utf8_encode($g->render()); }
function grafico4($codigoadm, $partida) { $this->load->library('Graph'); $mSQL = "SELECT codigopres,a.ordinal, \r\n\t\t\t\t\tSUM(asignacion+aumento-disminucion+traslados) as presupuesto, \r\n\t\t SUM(comprometido) comprometido, \r\n\t\t SUM(causado) causado, \r\n\t\t SUM(pagado) pagado\r\n\t\tFROM ordinal a JOIN ppla b ON a.codigopres=b.codigo\r\n\t\tWHERE b.movimiento='S' AND a.codigoadm='{$codigoadm}' AND codigopres LIKE '{$partida}%'\r\n\t\tGROUP BY codigopres,a.ordinal\r\n\t\tHAVING presupuesto<>0"; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->presupuesto > $maxval) { $maxval = $row->presupuesto; } $codigopres[] = $row->ordinal; $data_1[] = $row->presupuesto; $data_2[] = $row->comprometido; $data_3[] = $row->causado; $data_4[] = $row->pagado; } $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#0053A4'); $bar_2 = new bar(75, '#9933CC'); $bar_3 = new bar(75, '#639F45'); $bar_4 = new bar(75, '#C34F33'); $bar_1->key('Presupuesto', 10); $bar_2->key('Comprometido', 10); $bar_3->key('Causado', 10); $bar_4->key('Pagado', 10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); $bar_2->add_data_tip($data_2[$i] / $om, graph::esc(number_format($data_2[$i], 2, ',', '.'))); $bar_3->add_data_tip($data_3[$i] / $om, graph::esc(number_format($data_3[$i], 2, ',', '.'))); $bar_4->add_data_tip($data_4[$i] / $om, graph::esc(number_format($data_4[$i], 2, ',', '.'))); } $g = new graph(); $g->set_is_decimal_separator_comma(1); if ($maxval > 0) { $g->data_sets[] = $bar_1; $g->data_sets[] = $bar_2; $g->data_sets[] = $bar_3; $g->data_sets[] = $bar_4; $g->set_x_labels($codigopres); $g->set_x_label_style(10, '#000000', 2, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Presupuestos', 14, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Codigo: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->set_y_legend('Presupuesto x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); } else { $g->title('No existen Presupuestos', '{font-size:18px; color: #d01f3c}'); } $g->bg_colour = '#FFFFFF'; echo utf8_encode($g->render()); }
function gdiarias($anio = '', $producto = '', $mes = '') { $this->load->library('Graph'); $this->lang->load('calendar'); if (empty($anio)) { return; } $producto = radecode($producto); $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31'; //echo "fechai=".$fechai; //echo "fechaf=".$fechaf; $mSQL = "SELECT codigo, LEFT(descrip,20)AS nombre,DAYOFMONTH(a.fecha) as dia,\n SUM(cantidad)AS cantidad,\n SUM(importe)AS grantotal\n FROM itscst AS a\n WHERE fecha>='{$fechai}' AND fecha<='{$fechaf}' AND codigo='{$producto}'\n GROUP BY dia ORDER BY fecha"; //echo $mSQL; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->grantotal > $maxval) { $maxval = $row->grantotal; } $fecha[] = $row->dia; $nombre = $row->nombre; $data_1[] = $row->grantotal; } $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#ADD8E6'); $bar_1->key('Compras', 10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); } $g = new graph(); $g->set_is_decimal_separator_comma(1); if ($maxval > 0) { $g->title('Compra de ' . $nombre . ' en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:##00264A}'); $g->data_sets[] = $bar_1; $g->set_x_labels($fecha); $g->set_x_label_style(9, '#000000', 3, 1); $g->set_x_axis_steps(10); $g->x_axis_colour('#A6A6A6', '#ADB5C7'); $g->set_x_legend('Dias', 16, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->y_axis_colour('#A6A6A6', '#ADB5C7'); $g->set_y_legend('Compras x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); } else { $g->title('No existen compras con los datos seleccionados', '{font-size:18px; color: #d01f3c}'); } $g->bg_colour = '#FFFFFF'; echo utf8_encode($g->render()); }
function gmensuales($mes = '', $anio = '') { $this->load->library('Graph'); $this->lang->load('calendar'); if (empty($anio) or empty($mes)) { return; } $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31'; $mSQL = "SELECT DAYOFMONTH(fecha)AS dia,\r\n SUM(monto)AS grantotal\r\n FROM pres \r\n WHERE fecha>='{$fechai}' AND fecha<='{$fechaf}'\r\n GROUP BY fecha"; //echo $mSQL; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->grantotal > $maxval) { $maxval = $row->grantotal; } $fecha[] = $row->dia; $data_1[] = $row->grantotal; } $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#329B98'); $bar_1->key('Total', 10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); } $g = new graph(); $g->set_is_decimal_separator_comma(1); if ($maxval > 0) { $g->title('Prestamos de el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:#0F3054}'); $g->data_sets[] = $bar_1; $g->set_x_labels($fecha); $g->set_x_label_style(10, '#000000', 3, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Dias', 16, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->set_y_legend('Prestamos x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); } else { $g->title('No existen prestamos con los datos seleccionados', '{font-size:18px; color: #d01f3c}'); } $g->bg_colour = '#FFFFFF'; echo utf8_encode($g->render()); }
function gmensuales($anio = '', $cliente = '') { $this->load->library('Graph'); if (empty($anio) or empty($cliente)) { return; } $fechai = $anio . '0101'; $fechaf = $anio . '1231'; $mSQL = "SELECT cliente,nombres,DATE_FORMAT(fecha,'%m')AS mes, SUM(gtotal)AS grantotal, SUM(impuesto)AS impuesto \n\t\tFROM viefac \n\t\tWHERE tipo<>'X' AND fecha>='{$fechai}' AND fecha<='{$fechaf}' AND cliente='{$cliente}' \n\t\tGROUP BY MONTH(fecha) ORDER BY fecha"; //echo $mSQL; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->grantotal > $maxval) { $maxval = $row->grantotal; } $nombre = $row->nombres; $mes[] = $row->mes; $data_1[] = $row->grantotal; } $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#8E4B97'); $bar_1->key('Total', 10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); //$bar_1->links[]= site_url("supermercado/clientes/diarias/$anio/$cliente/$mes[$i]"); } $g = new graph(); $g->set_is_decimal_separator_comma(1); if ($maxval > 0) { $g->title('Compras de el cliente ' . $nombre . ' en el año ' . $anio, '{font-size: 16px; color:#0F3054}'); $g->data_sets[] = $bar_1; $g->set_x_labels($mes); $g->set_x_label_style(10, '#000000', 3, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Meses', 14, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Mes: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->set_y_legend('supermercado x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); } else { $g->title('No existen ventas con los datos seleccionados', '{font-size:18px; color: #d01f3c}'); } $g->bg_colour = '#FFFFFF'; echo utf8_encode($g->render()); }
function gdiarias($anio = '', $concep = '', $mes = '') { $this->load->library('Graph'); $this->lang->load('calendar'); if (empty($anio) or empty($concep)) { return; } $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31'; $mSQL = "SELECT a.fecha,a.concep,SUM(a.monto)AS grantotal,b.nombre,DATE_FORMAT(fecha,'%d') AS dia\n\t\tFROM est_pago as a JOIN banc as b ON a.concep=b.codbanc\n\t\tWHERE fecha>='{$fechai}' AND fecha<='{$fechaf}' AND a.concep='{$concep}'\n\t\tGROUP BY fecha ORDER BY fecha ASC"; //echo $mSQL; $maxval = 0; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if ($row->grantotal > $maxval) { $maxval = $row->grantotal; } $dia[] = $row->dia; $data_1[] = $row->grantotal; } $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(55, '#07A8E7'); $bar_1->key('Monto', 10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); } $g = new graph(); $g->set_is_decimal_separator_comma(1); if ($maxval > 0) { $g->title('Ventas de el' . $mes . '/' . $anio, 'concep de pago' . $concep, '{font-size: 16px; color:##00264A}'); $g->data_sets[] = $bar_1; $g->x_axis_colour('#A6A6A6', '#ADB5C7'); $g->set_x_labels($dia); $g->set_x_label_style(10, '#000000', 3, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Dias', 14, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->y_axis_colour('#A6A6A6', '#ADB5C7'); $g->set_y_legend('Ventas x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381'); } else { $g->title('No existen ventas con los datos seleccionados', '{font-size:18px; color: #d01f3c}'); } $g->bg_colour = '#FFFFFF'; echo utf8_encode($g->render()); }
function compras($id = '') { if (empty($id)) { return; } $this->load->library('Graph'); $codigo = $this->datasis->dameval("SELECT codigo FROM sinv WHERE id={$id}"); $mSQL = "SELECT\tMID(a.fecha,1,7) mes,\n\t\t\tSUM(a.cantidad*(b.tipo_doc='FC')) cventa,\n\t\t\tSUM(a.cantidad*(b.tipo_doc='NC')) cdevol,\n\t\t\tSUM(a.cantidad*if(b.tipo_doc='NC',-1,1)) cana,\n\t\t\tSUM(a.importe*(b.tipo_doc='FC')) mventa,\n\t\t\tSUM(a.importe*(b.tipo_doc='NC')) mdevol,\n\t\t\tSUM(a.importe*if(b.tipo_doc='NC',-1,1)) tota\n\t\tFROM itscst a JOIN scst b ON a.control=b.control\n\t\tWHERE a.codigo='{$codigo}' AND b.tipo_doc IN ('FC','NC') AND b.fecha >= CONCAT(MID(SUBDATE(curdate(),365),1,8),'01')\n\t\t\t\tAND a.fecha <= b.actuali\n\t\tGROUP BY MID( b.fecha, 1,7 ) LIMIT 7 "; $maxval = 0; $query = $this->db->query($mSQL); $data_1 = $data_2 = $meses = array(); foreach ($query->result() as $row) { if ($row->cana > $maxval) { $maxval = $row->cana; } $meses[] = $row->mes; $data_1[] = $row->cana; } $om = 1; while ($maxval / $om > 100) { $om = $om * 10; } $bar_1 = new bar(75, '#9053A4'); $bar_1->key('Compra', 10); for ($i = 0; $i < count($data_1); $i++) { $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.'))); $bar_1->links[] = site_url("/ventas/clientes/mensuales/{$codigo}/" . $meses[$i]); } $g = new graph(); $g->set_is_decimal_separator_comma(1); if ($maxval > 0) { $g->title('Compras por Mes ', '{font-size: 16px; color:#0F3054}'); $g->data_sets[] = $bar_1; $g->set_x_labels($meses); $g->set_x_label_style(10, '#000000', 2, 1); $g->set_x_axis_steps(10); $g->set_x_legend('Meses ', 14, '#004381'); $g->bg_colour = '#FFFFFF'; $g->set_tool_tip('#key#<br>Mes: #x_label# <br>Cantidad: #tip#'); $g->set_y_max(ceil($maxval / $om)); $g->y_label_steps(5); $g->set_y_legend('Compras x ' . number_format($om, 0, '', '.'), 16, '#004381'); } else { $g->title('No existen ventas en el año seleccionado', '{font-size:18px; color: #d01f3c}'); } $g->bg_colour = '#FFFFFF'; echo utf8_encode($g->render()); }