function index() { $this->rapyd->load('dataform'); $this->load->helper('openflash'); $dolar = $this->datasis->dameval("SELECT valor FROM valores WHERE nombre='dolar'"); $filter = new DataForm("inventario/cambioprecio/consulta/"); $filter->attributes = array('onsubmit' => "this.action='index/'+this.form.mes.value+'/'+this.form.anio.value+'/';return FALSE;"); $filter->title('¿Desea cambiar el precio de sus artículos en el inventario según el precio del dólar?'); $filter->dolar = new inputField("Precio del Dólar", "dolar"); $filter->dolar->size = 12; $filter->dolar->maxlength = 10; $filter->dolar->insertValue = $dolar; $filter->desc2 = new inputField("Descuento Precio2", "desc2"); $filter->desc2->size = 12; $filter->desc2->maxlength = 10; $filter->desc2->insertValue = '3'; $filter->desc3 = new inputField("Descuento Precio3", "desc3"); $filter->desc3->size = 12; $filter->desc3->maxlength = 10; $filter->desc3->insertValue = '5'; $filter->desc4 = new inputField("Descuento Precio4", "desc4"); $filter->desc4->size = 12; $filter->desc4->maxlength = 10; $filter->desc4->insertValue = '7'; $filter->button("btnsubmit", "Aceptar", form2uri(site_url('inventario/cambioprecio/cambio'), array('dolar', 'desc2', 'desc3', 'desc4')), $position = "BL"); $filter->build_form(); $data['content'] = $filter->output; $data['head'] = $this->rapyd->get_head(); $data['title'] = "<h1>Cambio de Precio</h1>"; $this->load->view('view_ventanas', $data); }
function imprimir() { $this->rapyd->load("dataform"); $scli = array('tabla' => 'scli', 'columnas' => array('cliente' => 'Código Cliente', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('cliente' => 'Código Cliente', 'nombre' => 'Nombre'), 'retornar' => array('cliente' => 'cliente'), 'titulo' => 'Buscar Cliente'); $cboton = $this->datasis->modbus($scli); $filter = new DataForm('/tiketimp/index'); $filter->title('Filtro de Impresion de Tiket'); $filter->fechad = new dateonlyField("Desde", "fechad", 'Ymd'); $filter->fechah = new dateonlyField("Hasta", "fechah", 'Ymd'); $filter->fechad->clause = $filter->fechah->clause = "where"; $filter->fechad->db_name = $filter->fechah->db_name = "fecha"; //$filter->fechad->insertValue = $fechad; //$filter->fechah->insertValue = $fechah; $filter->fechah->size = $filter->fechad->size = 10; $filter->fechad->operator = ">="; $filter->fechah->operator = "<="; $filter->cliente = new inputField("Cliente", "cliente"); $filter->cliente->size = 10; //$filter->cliente->insertValue=$cliente; $filter->cliente->maxlength = 10; $filter->cliente->append($cboton); $filter->button("btnsubmit", "Buscar", form2uri(site_url("/formatos/ver/TIKET/"), array('cliente', 'fechad', 'fechah')), $position = "BL"); // $filter->build_form(); $data['content'] = $filter->output; $data['title'] = "<h1>Imprimir</h1>"; $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function index() { $this->rapyd->load("dataform"); $this->load->helper('openflash'); if ($this->uri->segment(4)) { $anio = $this->uri->segment(4); } elseif (isset($_POST['anio'])) { $anio = $_POST['anio']; } if (empty($anio)) { $anio = date("Y"); } $filter = new DataForm('ventas/vendedoresanuales'); $filter->title('Filtro de Ventas Anuales'); $filter->anio = new inputField("Año", "anio"); $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->rule = "max_length[4]"; $filter->button("btnsubmit", "Buscar", form2uri(site_url('ventas/vendedoresanuales /index'), array('anio')), $position = "BL"); $filter->build_form(); $grafico = open_flash_chart_object(760, 300, site_url("ventas/vendedoresanuales/grafico/{$anio}/")); $data['content'] = $grafico; $data['content'] .= $filter->output; $data["head"] = $this->rapyd->get_head(); $data['title'] = $this->rapyd->get_head() . "<h1>Ventas</h1>"; $this->load->view('view_ventanas', $data); }
function index() { $this->rapyd->load('datagrid2'); $this->rapyd->load('datafilter'); $diai = $this->uri->segment(4); $mesi = $this->uri->segment(5); $anoi = $this->uri->segment(6); if ($diai === FALSE or $mesi === FALSE or $anoi === FALSE) { $fechai = date('Y/m/d'); $qfechai = date('Ymd'); } else { $fechai = "{$anoi}/{$mesi}/{$diai}"; $qfechai = $anoi . $mesi . $diai; } $filter = new DataForm('supermercado/poscuadre/index'); $filter->title('Filtro de cajas'); $filter->fechai = new dateField("Fecha", "fechai", "d/m/Y"); $filter->fechai->insertValue = $fechai; $filter->fechai->size = 10; $filter->button("btnsubmit", "Buscar", form2uri(site_url('supermercado/poscuadre/index'), 'fechai'), $position = "BL"); $filter->build_form(); $grid = new DataGrid2(); $select = array('a.caja caja', "IFNULL(b.nombre,'N/A') nombre", 'a.cajero AS cajero', 'SUM(a.gtotal) AS monto'); $cupon = floatval($this->datasis->traevalor('FMAYCUPON')); if ($cupon > 0) { $select[] = "SUM(TRUNCATE(a.gtotal/{$cupon},0)) AS cupones"; } else { $select[] = '(0) AS cupones'; } $grid->db->select($select); $grid->db->from('posfact AS a'); $grid->db->where('SUBSTRING(numero,1,1)!=', 'X'); $grid->db->where('fecha', $qfechai); $grid->db->join('scaj b', 'a.cajero=b.cajero', 'LEFT'); $grid->db->groupby('a.caja,a.cajero'); $link = anchor("supermercado/poscuadre/concaja/<#caja#>/<#cajero#>/{$qfechai}", '<#caja#>'); $grid->column('Caja', $link); $grid->column('Nombre', 'nombre'); $grid->column('Cajero', 'cajero', 'align="center"'); $grid->column('Cupones', 'cupones', 'align="center"'); $grid->column('Monto', '<nformat><#monto#></nformat>', 'align="right"'); $grid->totalizar('monto'); $grid->build(); //echo $grid->db->last_query(); $consul = new DataForm('supermercado/buscafac/index/search/osp'); $consul->title('Buscar Factura'); $consul->fechad = new dateField("Desde", "fechad", "d/m/Y"); $consul->fechah = new dateField("Hasta", "fechah", "d/m/Y"); $consul->nombre = new inputField("Nombre", "nombre"); $consul->cedula = new inputField("Cédula/RIF", "cedula"); $consul->fechad->insertValue = $consul->fechah->insertValue = date("Y/m/d"); $consul->fechah->size = $consul->fechad->size = 10; $consul->submit("btn_submit", "Buscar"); $consul->build_form(); $data['content'] = $filter->output . $grid->output . $consul->output; $data['title'] = '<h1>Consulta de Cajas</h1>'; $data['head'] = $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function index() { $this->rapyd->load("datagrid2"); $this->rapyd->load("dataform"); $this->load->helper('openflash'); if ($this->uri->segment(4)) { $anio = $this->uri->segment(4); } elseif (isset($_POST['anio'])) { $anio = $_POST['anio']; } if (empty($anio)) { $anio = date("Y"); } $fechai = $anio . '0101'; $fechaf = $anio . '1231'; $filter = new DataForm('hospitalidad/anuales'); $filter->title('Filtro de ventas Anuales'); $filter->anio = new inputField("Año", "anio"); $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->maxlength = 4; //$filter->anio->onkeypress="return acceptNum(event)"; $filter->button("btnsubmit", "Buscar", form2uri(site_url('hospitalidad/anuales/index'), array('anio')), $position = "BL"); $filter->build_form(); $data = $this->_sincrodata($fechai, $fechaf); $grid = new DataGrid2('', $data); $grid->totalizar('impuesto', 'cobrado', 'contado', 'credito', 'subtotal', 'numfac'); $grid->column("Mes", "mes"); $grid->column("Sub-Total", "<number_format><#subtotal#>|2|,|.</number_format>", 'align=right'); $grid->column("Impuesto", "<number_format><#impuesto#>|2|,|.</number_format>", 'align=right'); $grid->column("Contado", "<number_format><#contado#>|2|,|.</number_format>", 'align=right'); $grid->column("Credito", "<number_format><#credito#>|2|,|.</number_format>", 'align=right'); $grid->column("Cobrado", "<number_format><#cobrado#>|2|,|.</number_format>", 'align=right'); $grid->column("% Ventas", "<number_format><#porcentaje#>|2|,|.</number_format>", 'align=right'); $grid->column("Cant. Fact", "numfac", 'align=right'); $grid->build(); $data['content'] = open_flash_chart_object(680, 300, site_url("hospitalidad/anuales/grafico/{$anio}")); $data['content'] .= $filter->output . $grid->output; $data['title'] = $this->rapyd->get_head() . "<h1>Ventas Anuales</h1>"; $data['script'] = '<script type="text/javascript"> $(document).ready(function() { $("#anio").keypress(function(event) { acceptNum(evt); return false; }); }); var nav4 = window.Event ? true : false; function acceptNum(evt) { var key = nav4 ? evt.which : evt.keyCode; return (key <= 13 || (key >= 48 && key <= 57)); } </script>'; $data["head"] = script("jquery-1.2.6.pack.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function index() { $this->rapyd->load("datagrid2"); $this->rapyd->load("dataform"); $this->load->helper('openflash'); if ($this->uri->segment(4)) { $mes = $this->uri->segment(4); } elseif (isset($_POST['mes'])) { $mes = $_POST['mes']; } if ($this->uri->segment(5)) { $anio = $this->uri->segment(5); } elseif (isset($_POST['anio'])) { $anio = $_POST['anio']; } if (empty($mes) or empty($anio)) { $mes = date("n"); } $anio = date("Y"); $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31'; $filter = new DataForm('ventas/mensuales'); $filter->attributes = array('onsubmit' => "this.action='index/'+this.form.mes.value+'/'+this.form.anio.value+'/';return FALSE;"); $filter->title('Filtro de ventas mensuales'); $filter->mes = new dropdownField("Mes/Año", "mes"); for ($i = 1; $i < 13; $i++) { $filter->mes->option(str_pad($i, 2, '0', STR_PAD_LEFT), str_pad($i, 2, '0', STR_PAD_LEFT)); } $filter->mes->size = 2; $filter->mes->style = ''; $filter->mes->insertValue = $mes; $filter->anio = new inputField("Año", "anio"); $filter->anio->in = 'mes'; $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->maxlength = 4; $filter->button("btnsubmit", "Buscar", form2uri(site_url('hospitalidad/mensuales/index'), array('mes', 'anio')), $position = "BL"); $filter->build_form(); $data = $this->_sincrodata($fechai, $fechaf); $grid = new DataGrid2('', $data); $grid->totalizar('impuesto', 'cobrado', 'contado', 'credito', 'subtotal', 'numfac'); $grid->column("Dia", "dia"); $grid->column("Sub-Total", "<number_format><#subtotal#>|2|,|.</number_format>", 'align=right'); $grid->column("Impuesto", "<number_format><#impuesto#>|2|,|.</number_format>", 'align=right'); $grid->column("Contado", "<number_format><#contado#>|2|,|.</number_format>", 'align=right'); $grid->column("Credito", "<number_format><#credito#>|2|,|.</number_format>", 'align=right'); $grid->column("Cobrado", "<number_format><#cobrado#>|2|,|.</number_format>", 'align=right'); $grid->column("% Ventas", "<number_format><#porcentaje#>|2|,|.</number_format>", 'align=right'); $grid->column("Cant. Fact", "numfac", 'align=right'); $grid->build(); $data['content'] = open_flash_chart_object(680, 300, site_url("hospitalidad/mensuales/grafico/{$mes}/{$anio}")); $data['content'] .= $filter->output . $grid->output; $data['title'] = $this->rapyd->get_head() . "<h1>Ventas Mensuales</h1>"; $data["head"] = $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function index() { //$this->rapyd->load("datagrid"); $this->rapyd->load("dataform"); $this->load->helper('openflash'); if ($this->uri->segment(4)) { $anio = $this->uri->segment(4); } elseif (isset($_POST['anio'])) { $anio = $_POST['anio']; } if (empty($anio)) { $anio = date("Y"); } $fechai = $anio . '0101'; $fechaf = $anio . '1231'; $filter = new DataForm('nomina/promediosueldos'); $filter->title('Filtro de Promedio de Sueldos'); $filter->anio = new inputField("Año", "anio"); $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->rule = "max_length[4]"; $filter->button("btnsubmit", "Buscar", form2uri(site_url('nomina/promediosueldos /index'), array('anio')), $position = "BL"); $filter->build_form(); /* $grid = new DataGrid(); $select=array( "fecha","MONTH(fecha)as mes", "SUM(montonet*IF(tipo_doc='D', -1, 1)) AS anterior", "SUM(credito*IF(tipo_doc='D', -1, 1)) as contado", "SUM(inicial*IF(tipo_doc='D', -1, 1)) as credito", "FORMAT(sum(montotot*IF(tipo_doc='D',-1,1)),2) AS subtotal", "FORMAT(sum(montoiva*IF(tipo_doc='D',-1,1)),2) AS impuesto", "COUNT(*) AS numfac"); $grid->db->select($select); $grid->db->from("scst"); $grid->db->where('a.tipo<>','X'); $grid->db->where('fecha >= ', $fechai); $grid->db->where('fecha <= ',$fechaf); $grid->db->groupby("mes"); $grid->column("Fecha" , "fecha" ); $grid->column("Sub-Total" , "subtotal" ,'align=right'); $grid->column("Impuesto" , "impuesto" ,'align=right'); $grid->column("Total" , "anterior",'align=right'); $grid->column("Contado" , "contado" ,'align=right'); $grid->column("Credito" , "credito" ,'align=right'); $grid->column("Número" , "numfac" ,'align=right'); $grid->build();*/ $grafico = open_flash_chart_object(760, 300, site_url("nomina/promediosueldos/grafico/{$anio}/")); $data['content'] = $grafico; $data['content'] .= $filter->output; $data["head"] = $this->rapyd->get_head(); $data['title'] = $this->rapyd->get_head() . " Nomina "; $this->load->view('view_ventanas', $data); }
function anuales() { $this->rapyd->load("datagrid2"); $this->rapyd->load("dataform"); $this->load->helper('openflash'); $script = ' $(function() { $(".inputnum").numeric("."); }); '; if ($this->uri->segment(4)) { $anio = $this->uri->segment(4); } elseif (isset($_POST['anio'])) { $anio = $_POST['anio']; } if (empty($anio)) { $anio = date("Y"); } $fechai = $anio . '0101'; $fechaf = $anio . '1231'; $filter = new DataForm('ventas/productos/anuales'); $filter->title('Filtro de Ventas Anuales'); $filter->script($script, "create"); $filter->script($script, "modify"); $filter->anio = new inputField("Año", "anio"); $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->rule = "max_length[4]"; $filter->anio->rule = "trim"; $filter->anio->css_class = 'inputnum'; $filter->button("btnsubmit", "Buscar", form2uri(site_url('ventas/productos/anuales/'), array('anio')), $position = "BL"); $filter->build_form(); $grid = new DataGrid2(); $select = array("a.codigo", "b.descrip AS nombre", "a.cantidad AS cantidad", "SUM(a.venta)AS grantotal", "COUNT(*) AS numfac"); $grid->db->select($select); $grid->db->from("costos AS a"); $grid->db->join("sinv AS b", "a.codigo=b.codigo"); $grid->db->where('fecha >= ', $fechai); $grid->db->where('fecha <= ', $fechaf); $grid->db->groupby("a.codigo"); $grid->db->orderby("grantotal DESC"); $grid->per_page = 15; $grid->column("Producto", "nombre", "align='left'"); $grid->column("Total", "<number_format><#grantotal#>|2|,|.</number_format>", 'align=right'); $grid->column("Cantidad", "<number_format><#cantidad#>|2|,|.</number_format>", 'align=right'); $grid->column("Cant. Fact", "numfac", 'align=right'); $grid->totalizar('grantotal'); $grid->build(); $grafico = open_flash_chart_object(680, 450, site_url("ventas/productos/ganuales/{$anio}/")); $data['content'] = $grafico; $data['content'] .= $filter->output . $grid->output; $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . $this->rapyd->get_head(); $data['title'] = $this->rapyd->get_head() . "<h1>Ventas Anuales</h1>"; $this->load->view('view_ventanas', $data); }
function index() { $this->rapyd->load("datagrid"); $this->rapyd->load("datafilter"); $diai = $this->uri->segment(4); $mesi = $this->uri->segment(5); $anoi = $this->uri->segment(6); if ($diai === FALSE or $mesi === FALSE or $anoi === FALSE) { $fechai = date('Y/m/d'); $qfechai = date('Ymd'); } else { $fechai = "{$anoi}/{$mesi}/{$diai}"; $qfechai = $anoi . $mesi . $diai; } $filter = new DataForm('supermercado/poscuadre/index'); $filter->title('Filtro de cajas'); $filter->fechai = new dateField("Fecha", "fechai", "d/m/Y"); $filter->fechai->insertValue = $fechai; $filter->fechai->size = 10; $filter->button("btnsubmit", "Buscar", form2uri(site_url('supermercado/poscuadre/index'), 'fechai'), $position = "BL"); $filter->build_form(); $grid = new DataGrid(); //$grid->db->select("a.caja caja,IFNULL(b.nombre,'N/A') nombre, a.cajero as cajero,FORMAT(SUM(a.gtotal),2) monto, sum(TRUNCATE(a.gtotal/50000,0)) cupones "); $select = array("a.caja caja", "IFNULL(b.nombre,'N/A') nombre", "a.cajero as cajero", "FORMAT(SUM(a.gtotal),2) monto", "sum(TRUNCATE(a.gtotal/50000,0)) cupones"); $grid->db->select($select); $grid->db->from("posfact a"); $grid->db->where("substring(numero,1,1)!=", 'X'); $grid->db->where("fecha", $qfechai); $grid->db->join("scaj b", "a.cajero=b.cajero", "LEFT"); $grid->db->groupby('a.caja,a.cajero'); $grid->column_detail("Caja", "caja", site_url("supermercado/poscuadre/concaja/<#caja#>/<#cajero#>/{$qfechai}")); $grid->column("Nombre", "nombre"); $grid->column("Cajero", "cajero", 'align="center"'); $grid->column("Cupones", "cupones", 'align="center"'); $grid->column("Monto", "monto", 'align="right"'); $grid->build(); //echo $grid->db->last_query(); $consul = new DataForm('supermercado/buscafac/index/search/osp'); $consul->title('Buscar Factura'); $consul->fechad = new dateField("Desde", "fechad", "d/m/Y"); $consul->fechah = new dateField("Hasta", "fechah", "d/m/Y"); $consul->nombre = new inputField("Nombre", "nombre"); $consul->cedula = new inputField("Cédula/RIF", "cedula"); $consul->fechad->insertValue = $consul->fechah->insertValue = date("Y/m/d"); $consul->fechah->size = $consul->fechad->size = 10; $consul->submit("btn_submit", "Buscar"); $consul->build_form(); $data['content'] = $filter->output . $grid->output . $consul->output; $data['title'] = "<h1>Consulta de Cajas</h1>"; $data["head"] = $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function index() { //$this->datasis->modulo_id(123,1); $this->rapyd->load("dataform", "datatable"); $this->load->library('table'); $modbus = array('tabla' => 'maes', 'columnas' => array('codigo' => 'Código', 'descrip' => 'Descripción', 'precio1' => 'Precio 1', 'precio2' => 'Precio 2', 'precio3' => 'Precio 3', 'precio4' => 'Precio 4', 'precio5' => 'Precio 5'), 'filtro' => array('codigo' => 'Código', 'descrip' => 'Descripción'), 'retornar' => array('codigo' => 'codigo'), 'titulo' => 'Buscar en inventario'); $boton = $this->datasis->modbus($modbus); $filter = new DataForm('supermercado/consulcajas/index/process'); $filter->title('Seleccione un producto'); $filter->codigo = new inputField("Codigo", "codigo"); $filter->codigo->append($boton); $filter->codigo->size = 10; $filter->button("btnsubmit", "Consultar", '', $position = "BL"); $filter->build_form(); $table = new DataTable(null); $table->cell_attributes = 'style="vertical-align:middle;"'; $table->db->select(array('caja', 'ubica')); $table->db->from("caja"); $table->db->where("ubica REGEXP '^([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.(([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\\.){2}([0-9]{1,2}|1[0-9]{2}|2[0-4][0-9]|25[0-5])\$' "); $table->db->orderby('caja'); $table->per_row = 2; $table->per_page = 30; $celda = array(array(image('caja_abierta.gif', "Caja <#caja#>", array('border' => 0, 'align' => 'center')) . '<br>Caja <#caja#>', '<div name="cc<#caja#>" id="<#ubica#>"></div>')); $table->cell_template = $this->table->generate($celda); $table->build(); $link = site_url('supermercado/consulcajas/preciocaj'); $script = <<<script \t\t<script type='text/javascript'> \t\t\$(document).ready(function() { \t\t\t\$("input[name='btnsubmit']").click(function () { \t\t\t \t\t\t var producto=jQuery.trim(\$('#codigo').val()); \t\t\t\tif (producto.length==0){ \t\t\t\t\talert('Debe introducir un producto'); \t\t\t\t\treturn false; \t\t\t\t} \t\t\t\t\$("div[name^='cc']").each(function (i) { \t\t\t \$(this).load("{$link}"+'/'+this.id+'/'+producto); \t\t\t }); \t\t\t \t\t\t}); \t\t}); \t\t</script> script; $data['content'] = $filter->output . $table->output; $data['title'] = "<h1>Consulta de productos en cajas</h1>"; $data["head"] = $this->rapyd->get_head() . script("jquery.js") . $script; $this->load->view('view_ventanas', $data); }
function dias() { $this->rapyd->load("datagrid2", "dataform"); $fechad = $this->uri->segment(4); if (empty($fechad)) { $fechad = date("Y-m-d"); $date = new DateTime(); $date->setDate(substr($fechad, 0, 4), substr($fechad, 5, 2), substr($fechad, 8, 2)); $date->modify("-6 month"); $fechad = $date->format("j-n-Y"); } $fechah = $this->uri->segment(5); if (empty($fechah)) { $fechah = date("d-m-Y"); } $filter = new DataForm(); $filter->title('Filtro de Analisis de Gastos'); $filter->fechad = new dateonlyField("Desde", "fechad", 'd-m-Y'); $filter->fechah = new dateonlyField("Hasta", "fechah", 'd-m-Y'); $filter->fechad->clause = $filter->fechah->clause = "where"; $filter->fechad->db_name = $filter->fechah->db_name = "fecha"; $filter->fechad->insertValue = $fechad; $filter->fechah->insertValue = $fechah; $filter->fechah->size = $filter->fechad->size = 10; $filter->fechad->operator = ">="; $filter->fechah->operator = "<="; $filter->button("btnsubmit", "Buscar", form2uri(site_url('/ventas/analisisventas/dias'), array('fechad', 'fechah')), $position = "BL"); $filter->build_form(); $link = "ventas/analisisventas/dia/<#fecha#>"; $grid = new DataGrid2("Ventas Por Días"); $grid->column("Fecha", anchor($link, "<dbdate_to_human><#fecha#></dbdate_to_human>"), "align=center"); $grid->column("Ventas", "<number_format><#ventas#>|2|,|.</number_format>", 'align=right'); $grid->column("Anulaciones", "<number_format><#anulaciones#>|2|,|.</number_format>", 'align=right'); $select = array("fecha", "sum(tota*(tipoa<>'X')) as ventas", "sum(tota*(tipoa='X')) as anulaciones"); $grid->db->select($select); $grid->db->from('sitems'); $fechad2 = substr($fechad, 6, 4) . substr($fechad, 3, 2) . substr($fechad, 0, 2); $fechah2 = substr($fechah, 6, 4) . substr($fechah, 3, 2) . substr($fechah, 0, 2); $grid->db->where('fecha >= ', $fechad2); $grid->db->where('fecha <= ', $fechah2); $grid->db->groupby("fecha"); $grid->build(); //echo $grid->db->last_query(); $data['content'] = $filter->output . '<div style="overflow: auto; width: 100%;">' . $grid->output . '</div>'; $data['title'] = "<h1>Analisis de Ventas</h1>"; $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function index() { $this->rapyd->load("datagrid", "dataform"); $this->load->helper('openflash'); $anio = $this->uri->segment(4); if (empty($anio)) { $anio = date("Y"); } $script = ' $(function() { $(".inputnum").numeric("."); }); '; $filter = new DataForm(); $filter->title('Filtro de Análisis de Ventas'); $filter->script($script, "create"); $filter->script($script, "modify"); $filter->anio = new inputField("Año", "anio"); $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->maxlength = 4; $filter->anio->rule = "trim"; $filter->anio->css_class = 'inputnum'; $filter->button("btnsubmit", "Buscar", form2uri(site_url('/supermercado/analisis/index'), array('anio')), $position = "BL"); $filter->build_form(); $link = "supermercado/analisis/departamento/<#depto#>/{$anio}"; $select = array('a.fecha', 'a.depto', 'a.familia', 'a.grupo', 'a.codigo', 'a.impuesto', 'a.monto', 'a.cantidad', 'a.transac', 'a.tipo', 'b.descrip'); $grid = new DataGrid('Ventas por Departamentos'); $grid->column("Departamento", anchor($link, '<#descrip#>'), 'nowrap=yes'); for ($i = 1; $i <= 12; $i++) { $nmes = $this->calendar->get_month_name(str_pad($i, 2, "0", STR_PAD_LEFT)); $grid->column($nmes, "<nformat><#m{$i}#></nformat>", 'align=right'); $select[] = "sum(a.monto*(month(a.fecha)={$i})) AS m{$i}"; } $grid->db->select($select); $grid->db->from('est_item AS a'); $grid->db->join('dpto AS b', 'a.depto=b.depto'); $grid->db->where('YEAR(a.fecha)', $anio); $grid->db->where("a.tipo", 'I'); $grid->db->groupby('a.depto'); $grid->build(); //echo $grid->db->last_query(); $data['content'] = $filter->output . '<div style="overflow: auto; width: 100%;">' . $grid->output . '</div>'; $data['title'] = "<h1>Análisis de Ventas</h1>"; $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function anuales() { $this->rapyd->load("datagrid2"); $this->rapyd->load("dataform"); $this->load->helper('openflash'); if ($this->uri->segment(4)) { $anio = $this->uri->segment(4); } elseif (isset($_POST['anio'])) { $anio = $_POST['anio']; } if (empty($anio)) { $anio = date("Y"); } $fechai = $anio . '0101'; $fechaf = $anio . '1231'; $filter = new DataForm('finanzas/ggastos/anuales'); $filter->title('Filtro de Gastos Anuales'); $filter->anio = new inputField("Año", "anio"); $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->maxlength = 4; $filter->button("btnsubmit", "Buscar", form2uri(site_url('finanzas/ggastos/anuales/'), array('anio')), $position = "BL"); $filter->build_form(); $grid = new DataGrid2(); $select = array("fecha", "proveed", "nombre", "SUM(totneto)AS grantotal", "COUNT(*) AS numfac"); $grid->db->select($select); $grid->db->from("gser"); $grid->db->where('fecha >= ', $fechai); $grid->db->where('fecha <= ', $fechaf); $grid->db->groupby("proveed"); $grid->db->orderby("grantotal DESC"); $grid->column("Gasto", "nombre", "align='left'"); $grid->column("Total", "<number_format><#grantotal#>|2|,|.</number_format>", 'align=right'); $grid->column("Cant. Fact", "numfac", 'align=right'); $grid->totalizar('grantotal'); $grid->build(); $grafico = open_flash_chart_object(680, 450, site_url("finanzas/ggastos/ganuales/{$anio}/")); $data['content'] = $grafico; $data['content'] .= $filter->output . $grid->output; $data["head"] = $this->rapyd->get_head(); $data['title'] = $this->rapyd->get_head() . "<h1>Gastos Anuales</h1>"; $this->load->view('view_ventanas', $data); }
function index() { $this->rapyd->load("dataform"); $this->load->helper('openflash'); $mes = $this->uri->segment(4); $anio = $this->uri->segment(5); if (empty($mes)) { $mes = date("m"); } if (empty($anio)) { $anio = date("Y"); } $fechai = $anio . $mes . '01'; $fechaf = $anio . $mes . '31'; $filter = new DataForm(); $filter->title('Filtro de ventas mensuales'); $filter->mes = new dropdownField("Mes/Año", "mes"); for ($i = 1; $i < 13; $i++) { $filter->mes->option(str_pad($i, 2, '0', STR_PAD_LEFT), str_pad($i, 2, '0', STR_PAD_LEFT)); } $filter->mes->size = 2; $filter->mes->style = ''; $filter->mes->insertValue = $mes; $filter->anio = new inputField("Año", "anio"); $filter->anio->in = 'mes'; $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->rule = "max_length[4]"; $filter->button("btnsubmit", "Buscar", form2uri(site_url('compras/analisis/index'), array('mes', 'anio')), $position = "BL"); $filter->build_form(); $data['forma'] = ''; $data['lista'] = $filter->output; $data['lista'] .= open_flash_chart_object(800, 300, site_url("compras/analisis/departa/{$mes}/{$anio}")); $data['titulo'] = $this->rapyd->get_head() . "<center><h2>VENTAS MENSUALES</h2></center>"; $this->layout->buildPage('ventas/view_ventas', $data); }
function traer() { $this->datasis->modulo_id($this->modulo, 1); //$this->datasis->modulo_id(11D,1); $this->rapyd->load("dataform", "datatable", 'datagrid'); $this->load->library('table'); $scli = array('tabla' => 'scli', 'columnas' => array('cliente' => 'Código Cliente', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('cliente' => 'Código Cliente', 'nombre' => 'Nombre'), 'retornar' => array('cliente' => 'cliente'), 'titulo' => 'Buscar Cliente'); $boton = $this->datasis->modbus($scli); $filter = new DataForm('supervisor/tiketrpc/tiket/process'); $filter->title('Filtro de fecha'); //$filter->fechad = new dateonlyField("Fecha Desde", "fechad",'Ymd'); //$filter->fechad->insertValue = date("Y-m-d"); //$filter->fechad->size=12; $filter->cliente = new inputField("Cliente", "cliente"); $filter->cliente->size = 15; $filter->cliente->append($boton); //$filter->button("btnsubmit", "Consultar", '', $position="BL"); $filter->button("btnsubmit", "Traer Tikets", form2uri(site_url("/supervisor/tiket/traertiket"), array('cliente')), $position = "BL"); // //$filter->button("btnsubmit", "Traer Tikets", form2uri(site_url("/supervisor/tiket/traertiket"), $position="BL");// $filter->build_form(); $data = array(); $mSQL = "SELECT a.id,a.cliente,a.ubicacion,a.url,a.basededato,a.puerto,a.usuario,a.clave,a.observacion, b.nombre FROM tiketconec AS a JOIN scli AS b ON a.cliente=b.cliente WHERE url REGEXP '^([[:alnum:]]+\\.{0,1})+\$' ORDER BY id"; $query = $this->db->query($mSQL); if ($query->num_rows() > 0) { foreach ($query->result_array() as $row) { $data[] = $row; } } $grid = new DataGrid("Clientes", $data); $grid->column("Cliente", '<b><#nombre#></b>'); $grid->column("URL", 'url'); $grid->build(); $data['content'] = $filter->output . $grid->output; $data['title'] = " Traer tikets de clientes "; $data["head"] = $this->rapyd->get_head() . script("jquery.js") . script("plugins/jquery.json.min.js"); $this->load->view('view_ventanas', $data); }
function diarias($anio = '', $proveed = '', $mes = '') { $this->rapyd->load('datagrid2'); $this->rapyd->load('dataform'); $this->load->helper('openflash'); $proveed = radecode($proveed); if (isset($_POST['anio']) && empty($anio)) { $anio = $_POST['anio']; } if (isset($_POST['mes']) && empty($mes)) { $mes = $_POST['mes']; } if (isset($_POST['proveed']) && empty($proveed)) { $proveed = $_POST['proveed']; } if (empty($mes)) { redirect("compras/proveedores/mensuales/{$anio}/{$proveed}"); } $fechai = $anio . str_pad($mes, 2, '0', STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, '0', STR_PAD_LEFT) . '31'; $scli = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'Codigo proveedor', 'nombre' => 'Nombre'), 'filtro' => array('proveed' => 'Còdigo proveedor', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'proveed'), 'titulo' => 'Buscar proveedor'); $cboton = $this->datasis->modbus($scli); $filter = new DataForm('compras/proveedoresdiarios'); $filter->attributes = array('onsubmit' => "this.action='index/'+this.form.mes.value+'/'+this.form.anio.value+'/';return FALSE;"); $filter->title('Filtro de Compras Diarias'); $filter->mes = new dropdownField('Mes/Año', 'mes'); for ($i = 1; $i < 13; $i++) { $filter->mes->option(str_pad($i, 2, '0', STR_PAD_LEFT), str_pad($i, 2, '0', STR_PAD_LEFT)); } $filter->mes->size = 2; $filter->mes->style = ''; $filter->mes->insertValue = $mes; $filter->anio = new inputField('Año', 'anio'); $filter->anio->in = 'mes'; $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->rule = 'max_length[4]'; $filter->proveedor = new inputField('Proveedor', 'proveed'); $filter->proveedor->size = 10; $filter->proveedor->insertValue = $proveed; $filter->proveedor->rule = 'max_length[4]'; $filter->proveedor->append($cboton); $filter->button('btnsubmit', 'Buscar', form2uri(site_url('compras/proveedores/diarias/'), array('anio', 'proveed', 'mes')), $position = 'BL'); $filter->build_form(); $grid = new DataGrid2(); $select = array('proveed', "DATE_FORMAT(fecha,'%d/%m/%Y') AS fecha", "SUM(montonet*IF(tipo_doc='NC',-1,1)) AS grantotal", "SUM(inicial*IF( tipo_doc='NC',-1,1)) AS contado", "SUM(credito*IF( tipo_doc='NC',-1,1)) AS credito", "SUM(montotot*IF(tipo_doc='NC',-1,1)) AS subtotal", "SUM(montoiva*IF(tipo_doc='NC',-1,1)) AS impuesto", 'COUNT(*) AS numfac'); $grid->db->select($select); $grid->db->from('scst'); $grid->db->where('tipo_doc <> ', 'NE'); $grid->db->where('fecha >= ', $fechai); $grid->db->where('fecha <= ', $fechaf); $grid->db->where('proveed', $proveed); $grid->db->where('actuali >= fecha'); $grid->db->groupby('fecha'); $grid->column('Fecha', "fecha", "align='center'"); $grid->column('Sub-Total', "<number_format><#subtotal#>|2|,|.</number_format>", 'align=right'); $grid->column('Impuesto', "<number_format><#impuesto#>|2|,|.</number_format>", 'align=right'); $grid->column('Total', "<number_format><#grantotal#>|2|,|.</number_format>", 'align=right'); $grid->column('Contado', "<number_format><#contado#>|2|,|.</number_format>", 'align=right'); $grid->column('Credito', "<number_format><#credito#>|2|,|.</number_format>", 'align=right'); $grid->column('Cant. Fact', "numfac", 'align=right'); $grid->totalizar('impuesto', 'grantotal', 'contado', 'credito', 'subtotal'); $grid->build(); $proveed = raencode($proveed); $grafico = open_flash_chart_object(680, 350, site_url("compras/proveedores/gdiarias/{$anio}/{$proveed}/{$mes}")); $data['content'] = $grafico; $data['content'] .= $filter->output . $grid->output; $data['head'] = $this->rapyd->get_head(); $data['title'] = '<h1>Compras Diarias</h1>'; $this->load->view('view_ventanas', $data); }
function mensuales($anio = '', $mes = '') { $this->rapyd->load("datagrid2"); $this->rapyd->load("dataform"); $this->load->helper('openflash'); if (isset($_POST['anio']) and empty($anio)) { $anio = $_POST['anio']; } if (isset($_POST['mes']) and empty($mes)) { $mes = $_POST['mes']; } if (empty($mes)) { redirect("supermercado/ventas/anuales/{$anio}"); } $script = ' $(function() { $(".inputnum").numeric("."); }); '; $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31'; $filter = new DataForm('supermercado/ventas/mensuales'); $filter->attributes = array('onsubmit' => "this.action='index/'+this.form.mes.value+'/'+this.form.anio.value+'/';return FALSE;"); $filter->title('Filtro de Ventas Mensuales'); $filter->script($script, "create"); $filter->script($script, "modify"); $filter->mes = new dropdownField("Mes/Año", "mes"); for ($i = 1; $i < 13; $i++) { $filter->mes->option(str_pad($i, 2, '0', STR_PAD_LEFT), str_pad($i, 2, '0', STR_PAD_LEFT)); } $filter->mes->size = 2; $filter->mes->style = ''; $filter->mes->insertValue = $mes; $filter->mes->rule = "trim"; $filter->anio = new inputField("Año", "anio"); $filter->anio->in = 'mes'; $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->maxlength = 4; $filter->anio->rule = "trim"; $filter->anio->css_class = 'inputnum'; $filter->button("btnsubmit", "Buscar", form2uri(site_url('supermercado/ventas/mensuales'), array('anio', 'mes')), $position = "BL"); $filter->build_form(); $grid = new DataGrid2(); $select = array("fecha", "DATE_FORMAT(fecha,'%d') AS dia", "SUM(monto)AS grantotal", "SUM(impuesto)AS iva", "SUM(transac)as transacciones"); $grid->db->select($select); $grid->db->from("est_fecha"); $grid->db->where('fecha >= ', $fechai); $grid->db->where('fecha <= ', $fechaf); $grid->db->groupby("fecha"); $grid->db->orderby("fecha ASC"); //$grid->db->limit(15,0); $grid->column("Dia", "dia", "align='left'"); $grid->column("Total", "<number_format><#grantotal#>|2|,|.</number_format>", 'align=right'); $grid->column("Impuesto", "<number_format><#iva#>|2|,|.</number_format>", 'align=right'); $grid->column("Cant.Transac", "transacciones", 'align=right'); $grid->totalizar('iva', 'grantotal'); $grid->build(); $grafico = open_flash_chart_object(680, 350, site_url("supermercado/ventas/gmensuales/{$anio}/{$mes}")); $data['content'] = $grafico; $data['content'] .= $filter->output . $grid->output; $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . $this->rapyd->get_head(); $data['title'] = $this->rapyd->get_head() . "<h1>Ventas Mensuales</h1>"; $this->load->view('view_ventanas', $data); }
function presup($numero) { $this->rapyd->load("dataform"); $this->load->helper('openflash'); $filter = new DataForm("ventas/presupuesto/presupdolar/"); $filter->attributes = array('onsubmit' => "this.action='index/'+this.form.mes.value+'/'+this.form.anio.value+'/';return FALSE;"); $filter->title('Seleccione el Precio del Dólar con que desea Trabajar'); $filter->dolar = new dropdownField("Precio del Dólar", "dolar"); $filter->dolar->option("b.dolar", "Precio1"); $filter->dolar->option("b.dolar2", "Precio2"); $filter->dolar->option("b.dolar3", "Precio3"); $filter->dolar->option("b.dolar4", "Precio4"); $filter->dolar->style = 'width:150px;'; $filter->button("btnsubmit", "Aceptar", form2uri(site_url("formatos/ver/PRESUP/{$numero}/"), array('dolar')), $position = "BL"); $filter->build_form(); $data['content'] = $filter->output; $data["head"] = $this->rapyd->get_head(); $data['title'] = "<h1>Presupuesto en Bolivares</h1>"; $this->load->view('view_ventanas', $data); }
function autotranfer2($fecha = null) { //*************************** $this->cajas = $this->config->item('cajas'); foreach ($this->cajas as $inv => $val) { $codban = $this->db->escape($val); $cana = $this->datasis->dameval("SELECT COUNT(*) AS cana FROM banc WHERE codbanc={$codban}"); if ($cana == 0) { show_error('La caja ' . $val . ' no esta registrada en el sistema, debe registrarla por el modulo de bancos o ajustar la configuracion en config/datasis.php'); } } //*************************** $this->rapyd->load('dataform'); $this->load->library('validation'); $val = $this->validation->chfecha($fecha, 'Y-m-d'); if ($val) { $montosis = $this->_montoautotranf($this->cajas['cobranzas'], $fecha); if ($montosis > 0) { $script = ' function totaliza(){ if($("#tarjeta").val().length>0) tarjeta =parseFloat($("#tarjeta").val()); else tarjeta =0; if($("#efectivo").val().length>0) efectivo=parseFloat($("#efectivo").val()); else efectivo=0; if($("#gastos").val().length>0) gastos =parseFloat($("#gastos").val()); else gastos =0; if($("#valores").val().length>0) valores =parseFloat($("#valores").val()); else valores =0; monto=tarjeta+gastos+efectivo+valores; $("#monto").val(roundNumber(monto,2)); }'; $edit = new DataForm("finanzas/bcaj/autotranfer2/{$fecha}/process"); $edit->title = 'Transferencia automatica entre cajas'; $edit->script($script); //$edit->back_url = site_url('finanzas/bcaj/index'); $campos = array('efectivo' => 'Efectivo caja: ' . $this->cajas['efectivo'], 'tarjeta' => 'Tarjeta de Débito y Crédito caja: ' . $this->cajas['tarjetas'], 'gastos' => 'Gastos por Justificar caja: ' . $this->cajas['gastos'], 'valores' => 'Valores, Cesta Tickes y Cheques caja: ' . $this->cajas['valores'], 'monto' => 'Monto total'); foreach ($campos as $obj => $titulo) { $edit->{$obj} = new inputField($titulo, $obj); $edit->{$obj}->css_class = 'inputnum'; $edit->{$obj}->rule = 'trim|numeric'; $edit->{$obj}->maxlength = 15; $edit->{$obj}->size = 20; $edit->{$obj}->group = 'Montos'; $edit->{$obj}->autocomplete = false; } $edit->{$obj}->rule = 'trim|numeric|callback_chtotal|required'; $edit->{$obj}->readonly = true; $back_url = site_url('finanzas/bcaj/index'); $edit->button('btn_undo', 'Regresar', "javascript:window.location='{$back_url}'", 'BL'); $edit->submit('btnsubmit', 'Guardar'); $edit->build_form(); $salida = 'El monto total a tranferir para la fecha <b id="ffecha">' . dbdate_to_human($fecha) . '</b> debe ser de: <b id="mmonto">' . nformat($montosis) . '</b>'; if ($edit->on_success()) { //$fecha=$edit->fecha->newValue; foreach ($campos as $obj => $titulo) { ${$obj} = $edit->{$obj}->newValue; } if (round($montosis, 2) == round($efectivo + $tarjeta + $gastos + $valores, 2)) { $rt = $this->_autotranfer($fecha, $efectivo, $tarjeta, $gastos, $valores); if ($rt) { redirect('/finanzas/bcaj/listo/n/' . $this->bcajnumero); } else { redirect('/finanzas/bcaj/listo/s'); } } else { $edit->error_string = 'El monto total a transferir debe ser de :<b>' . nformat($montosis) . '</b>, faltan ' . nformat($montosis - $efectivo - $tarjeta - $gastos - $valores); $edit->build_form(); //$salida .= $edit->output; } } $salida .= $edit->output; $url = site_url('finanzas/bcaj/ajaxmonto'); $this->rapyd->jquery[] = '$(".inputnum").numeric(".");'; $this->rapyd->jquery[] = '$(".inputnum").bind("keyup",function() { totaliza(); });'; $this->rapyd->jquery[] = '$("td").removeAttr("style");'; $this->rapyd->jquery[] = '$("input[name=\'traesaldo\']").click(function() { fecha=$("#fecha").val(); if(fecha.length > 0){ $.post("' . $url . '", { fecha: $("#fecha").val() }, function(data){ $("#mmonto").html(nformat(data)); $("#ffecha").html($("#fecha").val()); $(".alert").hide("slow"); }); }else{ alert("Debe introducir una fecha"); } });'; } else { $dbfecha = $this->db->escape($fecha); $mSQL = "SELECT COUNT(*) AS cana FROM bcaj WHERE concep2='AUTOTRANFER' AND fecha={$dbfecha}"; $cana = $this->datasis->dameval($mSQL); if ($cana > 0) { $salida = 'Ya fue hecha una tranferencias para la fecha dada, si desea puede reversarla haciendo click ' . anchor('finanzas/bcaj/reverautotranfer/' . $fecha, 'aqui') . ' '; $salida .= ' o puede ' . anchor('finanzas/bcaj/index', 'regresar') . ' al inicio.'; } else { $salida = 'No hay monto disponible para transferir ' . anchor('finanzas/bcaj/autotranfer', 'Regresar'); } } } else { show_error('Falta el parametro fecha'); } $data['content'] = $salida; $data['title'] = '<h1>Conciliación de cierre </h1>'; $data['head'] = $this->rapyd->get_head() . phpscript('nformat.js'); $this->load->view('view_ventanas', $data); }
function filtro() { $this->rapyd->load("datagrid2"); $this->rapyd->load("dataform"); $this->load->helper('openflash'); $sinv = array('tabla' => 'sinv', 'columnas' => array('codigo' => 'Código', 'descrip' => 'descrip'), 'filtro' => array('codigo' => 'Código', 'descrip' => 'descrip'), 'retornar' => array('codigo' => 'codigo'), 'titulo' => 'Buscar Articulo'); $iboton = $this->datasis->modbus($sinv); if ($this->uri->segment(4)) { $codigo = $this->uri->segment(4); } elseif (isset($_POST['codigo'])) { $codigo = $_POST['codigo']; } if (empty($codigo)) { $codigo = $this->datasis->dameval("SELECT codigo FROM sinv"); } if ($this->uri->segment(5)) { $mes = $this->uri->segment(5); } elseif (isset($_POST['mes'])) { $mes = $_POST['mes']; } else { $mes = date('m'); } if ($this->uri->segment(6)) { $anio = $this->uri->segment(6); } elseif (isset($_POST['anio'])) { $anio = $_POST['anio']; } else { $anio = date('Y'); } $script = ' $(function() { $(".inputnum").numeric("."); }); '; $fechad = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01'; $fechah = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31'; $filter = new DataForm('ventas/mensuales'); $filter->attributes = array('onsubmit' => "this.action='index/'+this.form.mes.value+'/'+this.form.anio.value+'/';return FALSE;"); $filter->title('Filtro de Ventas por Existencias'); $filter->script($script, "create"); $filter->script($script, "modify"); $filter->mes = new dropdownField("Mes/Año", "mes"); for ($i = 1; $i < 13; $i++) { $filter->mes->option(str_pad($i, 2, '0', STR_PAD_LEFT), str_pad($i, 2, '0', STR_PAD_LEFT)); } $filter->mes->size = 2; $filter->mes->style = ''; $filter->mes->insertValue = $mes; $filter->anio = new inputField("Año", "anio"); $filter->anio->in = 'mes'; $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->maxlength = 4; $filter->anio->rule = "trim"; $filter->anio->css_class = 'inputnum'; $filter->codigo = new inputField("Código", "codigo"); $filter->codigo->size = 15; $filter->codigo->append($iboton); $filter->codigo->insertValue = $codigo; $filter->button("btnsubmit", "Buscar", form2uri(site_url('inventario/gproductos/filtro/'), array('codigo', 'mes', 'anio')), $position = "BL"); $filter->build_form(); $grid = new DataGrid2(); $select = array("fecha", "codigo", "sum(cantidad) cantidad", "IF(sum(cantidad)<=salcant,sum(cantidad),salcant)*(salcant>0)as salcant"); $grid->db->select($select); $grid->db->from("costos"); $grid->db->where('codigo', $coigo); $grid->db->where('fecha >= ', $fechai); $grid->db->where('fecha <= ', $fechaf); $grid->db->where('origen', '3I'); $grid->db->groupby("fecha"); $grid->db->orderby("fecha"); $grid->db->having("cantidad>0"); $grid->column("Fecha", "<dbdate_to_human><#fecha#></dbdate_to_human>", 'align=center'); $grid->column("Ventas", "cantidad", 'align=center'); $grid->column("Existencias", "salcant", 'align=center'); //$grid->totalizar('grantotal'); $grid->build(); //echo $grid->db->last_query(); $grafico = open_flash_chart_object(680, 450, site_url("inventario/gproductos/grafico/{$codigo}/{$mes}/{$anio}/")); $data['content'] = $grafico; $data['content'] .= $filter->output . $grid->output; $data["head"] = $this->rapyd->get_head(); $data['title'] = $this->rapyd->get_head() . "<h1>Ventas por Existencias</h1>"; $this->load->view('view_ventanas', $data); }
function cargar($control) { $this->rapyd->uri->keep_persistence(); $this->rapyd->load('dataform'); $dbcontrol = $this->db->escape($control); $farmaxDB = $this->load->database('farmax', TRUE); $farmaxdb = $farmaxDB->database; $localdb = $this->db->database; $msj = ''; $block = trim($this->datasis->traevalor('SCSTACTIVABLOQUEO', 'Activa la bloque al cargar compras, P:por promedio,M:por valor maximo')); if ($block == 'P' || $block == 'M') { $mSQL = "SELECT COALESCE(c.abarras,b.codigo) AS codigo,a.descrip, a.cantidad\n\t\t\tFROM {$farmaxdb}.itscst AS a\n\t\t\tLEFT JOIN {$localdb}.sinv AS b ON a.codigo=b.codigo\n\t\t\tLEFT JOIN {$localdb}.farmaxasig AS c ON a.codigo=c.barras AND c.proveed=a.proveed\n\t\t\tWHERE a.control={$dbcontrol}"; $query = $this->db->query($mSQL); foreach ($query->result() as $row) { if (empty($row->codigo)) { continue; } $cana = intval($row->cantidad); $fdesde = date('Ymd', mktime(0, 0, 0, date('n') - 2, 1, date('Y'))); $fhasta = date('Ymd', mktime(0, 0, 0, date('n'), 0, date('Y'))); if ($block == 'P') { $sql = "SELECT SUM(cana) AS cana FROM sitems WHERE fecha BETWEEN {$fdesde} AND {$fhasta} AND codigoa=" . $this->db->escape($row->codigo); $venta = $this->datasis->dameval($sql); if (empty($venta)) { $venta = 0; } else { $venta = ceil($venta / 2); } $fdesde = date('Ymd', mktime(0, 0, 0, date('n'), 1, date('Y'))); $fhasta = date('Ymd'); $sql = "SELECT SUM(IF(b.tipo_doc IN ('FC','NE'),1,-1)*a.cantidad) AS cana FROM itscst AS a JOIN scst AS b ON a.control=b.control WHERE b.recep BETWEEN {$fdesde} AND {$fhasta} AND a.codigo=" . $this->db->escape($row->codigo); $compra = $this->datasis->dameval($sql); if (empty($compra)) { $compra = 0; } $lim = $cana + $compra; if ($lim > $venta) { $msj .= ' -' . $row->codigo . '-' . $row->descrip . ', Cantidad: <b>' . nformat($cana) . '</b>, Compra en el mes: <b>' . nformat($compra) . '</b>, Límite: <b>' . nformat($venta) . '</b>' . br(); } } else { $sql = "SELECT COUNT(*) FROM sinv WHERE existen+{$cana} > exmax AND codigo=" . $this->db->escape($row->codigo); $ch = $this->datasis->dameval($sql); if ($ch > 0) { $msj .= $row->codigo . '-' . $row->descrip . ', Se esta comprando mas del máximo establecido.' . br(); } } } } $form = new DataForm("farmacia/scst/cargar/{$control}/process"); $form->title('Carga de compra proveniente de droguería'); $form->nfiscal = new inputField('Control Físcal', 'nfiscal'); $form->nfiscal->rule = 'required|strtoupper'; $form->nfiscal->autocomplete = false; $form->nfiscal->rows = 10; $cana = $this->datasis->dameval("SELECT COUNT(*) AS val FROM caub WHERE gasto='N' and invfis='N'"); $form->almacen = new dropdownField('Almacén', 'almacen'); if ($cana > 1) { $form->almacen->option('', 'Seleccionar'); } $form->almacen->options("SELECT ubica,CONCAT_WS('-',ubica,ubides) AS val FROM caub WHERE gasto='N' and invfis='N' ORDER BY ubides"); $form->almacen->insertValue = $this->datasis->traevalor('ALMACEN'); $form->almacen->rule = 'required'; $proveed = $this->_traesprv($control); $dias = $this->datasis->dameval('SELECT b.dcredito FROM sprv AS b WHERE b.proveed=' . $this->db->escape($proveed)); $form->dias = new inputField('Días de crédito', 'dias'); $form->dias->insertValue = $dias > 0 ? $dias : 21; $form->dias->rule = 'required|integer'; $form->dias->css_class = 'inputnum'; $form->dias->size = 5; if (strlen($msj) > 0) { $form->free = new containerField('', '<p class="alert">Se ha detectado sobre existencia en los siguientes productos:' . br() . $msj . 'Es necesaria la clave de aprobación para continuar</p>'); $form->clavef = new inputField('Clave de aprobación', 'clavef'); $form->clavef->rule = 'callback_chclavef|required'; $form->clavef->size = 10; $form->clavef->autocomplete = false; $form->clavef->type = 'password'; } $action = "javascript:window.location='" . site_url('farmacia/scst/dataedit/show/' . $control) . "'"; $form->button('btn_regresa', 'Regresar', $action, 'TR'); $form->submit('btnsubmit', 'Guardar'); $form->build_form(); if ($form->on_success()) { $nfiscal = $form->nfiscal->newValue; $almacen = $form->almacen->newValue; $dias = $form->dias->newValue; $data['content'] = $this->_cargar($control, $nfiscal, $almacen, $dias) . br() . anchor('farmacia/scst/dataedit/show/' . $control, 'Regresar'); } else { $data['content'] = $form->output; } $script = '<script type="text/javascript" > $(function() { $(".inputnum").numeric("."); }); </script>'; $data['script'] = $script; $data['head'] = $this->rapyd->get_head() . script('jquery.js') . script('plugins/jquery.numeric.pack.js'); $data['title'] = '<h1>Cargar compra ' . $control . '</h1>'; $this->load->view('view_ventanas', $data); }
function mostrar($data4) { $this->rapyd->load("datagrid2", "dataform"); $form = new DataForm("/supervisor/subexls/actualiza"); $form->free = new freeField("Campos.Archivo xls", "free", "Campos de El Sistema"); //var_dump($data4); //print_r($data4); $grid = new DataGrid2("Archivo Cargado", $data4); $j = 0; $campos .= 'cols="+$("#cols").val()+"&&dir="+$("#dir").val()'; foreach ($cols as $col) { $grid->column("{$col}", "<#{$col}#>"); $campo = "campo{$j}"; $form->{$campo} = new dropdownField("{$col}", "campo{$j}"); $form->{$campo}->option("ignorar", "ignorar"); $form->{$campo}->option("codigo", "codigo"); $form->{$campo}->option("costo", "costo"); $form->{$campo}->option("descrip", "descrip"); $form->{$campo}->option("descrip2", "descrip2"); $form->{$campo}->option("clave", "clave"); $form->{$campo}->option("grupo", "grupo"); $form->{$campo}->option("iva", "iva"); for ($i = 1; $i <= 3; $i++) { $form->{$campo}->option("base{$i}", "Base{$i}"); $form->{$campo}->option("margen{$i}", "Margen{$i}"); $form->{$campo}->option("precio{$i}", "Precio{$i}"); } $form->{$campo}->style = 'width:150px;'; $j++; $campos .= "+" . "\"&&" . $campo . "=\"+\$(\"#" . $campo . "\").val()"; } //echo $campos; $form->cols = new inputField("", "cols"); $form->cols->insertValue = implode(',', $cols); $form->cols->type = 'hidden'; $form->dir = new inputField("", "dir"); $form->dir->insertValue = $dir; $form->dir->type = 'hidden'; //$form->submit("btnsubmit","Actualizar"); $link = site_url('supervisor/subexls/actualiza'); $script = ' function actu(){ a=confirm("�Esta Seguro que de desea Actualizar el Inventario ?"); if(a){ $.ajax({ type: "POST", processData:false, url: "' . $link . '", data: "' . $campos . ', success: function(msg){ if(msg=="s.i"){ alert("El Inventario fue Actualizado."); } else{ alert(msg); } } }); } } '; $form->script($script); $form->button("actualiza", "Actualizar", "javascript:actu();"); $form->build_form(); $grid->build(); $data2['content'] = $form->output . $salida . $grid->output; }
function index() { //$this->rapyd->load("datagrid"); $this->rapyd->load("dataform"); $this->load->helper('openflash'); if (isset($_POST['anio']) and empty($anio)) { $anio = $_POST['anio']; } if (isset($_POST['codigo']) and empty($codigo)) { $codigo = $_POST['codigo']; } if (empty($anio)) { $anio = date("Y"); } //if(empty($codigo)) redirect('ventas/anioventcli/'); $fechai = $anio . '0101'; $fechaf = $anio . '1231'; $scli = array('tabla' => 'pers', 'columnas' => array('codigo' => 'Código Empleado', 'nombre' => 'Nombre'), 'filtro' => array('codigo' => 'Código codigo', 'nombre' => 'Nombre'), 'retornar' => array('codigo' => 'codigo'), 'titulo' => 'Buscar Empleado'); $cboton = $this->datasis->modbus($scli); $filter = new DataForm('ventas/aumentoempleados'); $filter->title('Filtro de Aumento de Sueldo '); $filter->anio = new inputField("Año", "anio"); $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->rule = "max_length[4]"; $filter->codigo = new inputField("Código", "codigo"); $filter->codigo->size = 10; $filter->codigo->insertValue = $codigo; $filter->codigo->rule = "max_length[4]"; $filter->codigo->append($cboton); $filter->button("btnsubmit", "Buscar", form2uri(site_url('ventas/aumentoempleados/index'), array('anio', 'vd')), $position = "BL"); $filter->build_form(); /* $grid = new DataGrid(); $select=array("vd", "fecha", "SUM(totalg*IF(tipo_doc='D', -1, 1)) AS sueldoa","MONTH(fecha) as mes", "SUM(totalg*(referen IN ('E', 'M'))*IF(tipo_doc='D', -1, 1)) as contado", "SUM(totalg*(referen NOT IN ('E', 'M'))*IF(tipo_doc='D', -1, 1)) as credito", "FORMAT(sum(totals*IF(tipo_doc='D',-1,1)),2) AS subtotal", "FORMAT(sum(iva*IF(tipo_doc='D',-1,1)),2) AS impuesto", "COUNT(*) AS numfac"); $grid->db->select($select); $grid->db->from("sfac"); $grid->db->where('tipo_doc<>','X'); $grid->db->where('fecha >= ',$fechai); $grid->db->where('fecha <= ',$fechaf); $grid->db->where('vd',$codigo); $grid->db->groupby("mes"); $grid->column("Fecha" , "fecha" ); $grid->column("Sub-Total" , "subtotal" ,'align=right'); $grid->column("Impuesto" , "impuesto" ,'align=right'); $grid->column("Total" , "sueldoa",'align=right'); $grid->column("Contado" , "contado" ,'align=right'); $grid->column("Credito" , "credito" ,'align=right'); $grid->column("Número" , "numfac" ,'align=right'); $grid->build();*/ $grafico = open_flash_chart_object(800, 300, site_url("nomina/aumentoempleados/grafico/{$anio}/{$codigo}")); $data['content'] = $grafico; $data['content'] .= $filter->output; $data["head"] = $this->rapyd->get_head(); $data['title'] = $this->rapyd->get_head() . "<h1>Nomina</h1>"; $this->load->view('view_ventanas', $data); }
function meses() { $this->rapyd->load("datagrid2", "dataform"); $cod = $this->uri->segment(4); $ano = $this->uri->segment(5); $filter = new DataForm("finanzas/analisisbanc/meses/process"); $filter->title('Filtro de Caja y Bancos'); //$filter->ano = new inputField("Año","ano"); //$filter->ano->insertValue=$ano; //$filter->ano->maxlength=4; //$filter->ano->size=5; $filter->ano = new dropdownField("Año", "ano"); $filter->ano->option($ano, $ano); $filter->ano->options('SELECT ano,ano as ano2 FROM bsal GROUP BY ano ORDER BY ano'); $filter->ano->style = 'width:80px;'; $filter->cod = new inputField("Código", "cod"); $filter->cod->insertValue = $cod; $filter->cod->size = 5; $filter->cod->maxlength = 2; $filter->cod->type = 'hidden'; $filter->button("btnsubmit", "Buscar", form2uri(site_url("/finanzas/analisisbanc/meses"), array('cod', 'ano')), $position = "BL"); // $filter->build_form(); function blanco($num) { if (empty($num) || $num == 0) { return ''; } else { return number_format($num, 2, ',', '.'); } } /////////////////////////////////////////////////////////////////////////////////////////////////////// $bdata = $this->datasis->damerow("SELECT saldo01,saldo02,saldo03,saldo04,saldo05,saldo06,saldo06,saldo07,saldo08,saldo09,saldo10,saldo11,saldo12 FROM bsal WHERE codbanc='{$cod}' AND ano='{$ano}'"); $d = array(); //print_r($bdata); //if($bdata['saldo01']!=0){ if (!($bdata == NULL)) { for ($i = 0; $i < 12; ++$i) { $r = 'saldo' . str_pad($i + 1, 2, '0', STR_PAD_LEFT); $d[$i]['saldo'] = $bdata[$r]; switch ($i + 1) { case 1: $d[$i]['mes'] = 'Enero'; $d[$i]['m'] = $i + 1; break; case 2: $d[$i]['mes'] = 'Febrero'; $d[$i]['m'] = $i + 1; break; case 3: $d[$i]['mes'] = 'Marzo'; $d[$i]['m'] = $i + 1; break; case 4: $d[$i]['mes'] = 'Abril'; $d[$i]['m'] = $i + 1; break; case 5: $d[$i]['mes'] = 'Mayo'; $d[$i]['m'] = $i + 1; break; case 6: $d[$i]['mes'] = 'Junio'; $d[$i]['m'] = $i + 1; break; case 7: $d[$i]['mes'] = 'Julio'; $d[$i]['m'] = $i + 1; break; case 8: $d[$i]['mes'] = 'Agosto'; $d[$i]['m'] = $i + 1; break; case 9: $d[$i]['mes'] = 'Septiembre'; $d[$i]['m'] = $i + 1; break; case 10: $d[$i]['mes'] = 'Octubre'; $d[$i]['m'] = $i + 1; break; case 11: $d[$i]['mes'] = 'Noviembre'; $d[$i]['m'] = $i + 1; break; case 12: $d[$i]['mes'] = 'Diciembre'; $d[$i]['m'] = $i + 1; break; } } } $link = "finanzas/analisisbanc/movimientos/{$cod}/{$ano}/<#m#>"; //print_r($d); $grid = new DataGrid2("Movimientos por meses", $d); $grid->use_function('blanco'); $grid->column("Mes", anchor($link, '<#mes#>'), "align=left"); $grid->column("Saldo", "<blanco><#saldo#></blanco>", "align=right"); //$grid->column("m","<#m#>","align=left"); $grid->build(); //memowrite( $grid->db->last_query()); $salida = anchor("finanzas/analisisbanc/", "Atras"); $data['content'] = $filter->output . $salida . $grid->output; $data['title'] = "<h1>Relación de Caja y Bancos</h1>"; $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function producto($anio = '', $depto = '', $fami = '', $grupo = '') { $this->rapyd->load("datagrid2"); $this->rapyd->load("dataform"); $this->load->helper('openflash'); if ($this->uri->segment(4)) { $anio = $this->uri->segment(4); } elseif (isset($_POST['anio'])) { $anio = $_POST['anio']; } if (empty($anio)) { $anio = date("Y"); } $fechai = $anio . '0101'; $fechaf = $anio . '1231'; $ajax_onchange = ' function get_familias(){ var url = "' . site_url('supermercado/maes/maesfamilias') . '"; var pars = "dpto="+$F("depto"); var myAjax = new Ajax.Updater("td_familia", url, { method: "post", parameters: pars }); var url = "' . site_url('supermercado/maes/maesgrupos') . '"; var gmyAjax = new Ajax.Updater("td_grupo", url); } function get_grupo(){ var url = "' . site_url('supermercado/maes/maesgrupos') . '"; var pars = "dpto="+$F("depto")+"&fami="+$F("familia"); var myAjax = new Ajax.Updater("td_grupo", url, { method: "post", parameters: pars }); }'; $filter = new DataForm('supermercado/tventas/producto'); $filter->script($ajax_onchange); $filter->title('Filtro de ventas por Producto'); $filter->anio = new inputField("Año", "anio"); $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->maxlength = 4; $filter->depto = new dropdownField("Departamento", "depto"); $filter->depto->options("SELECT depto, descrip FROM dpto GROUP BY depto ORDER BY depto"); $filter->depto->insertValue = $depto; $filter->depto->style = 'width:200px;'; $filter->fami = new dropdownField("Familia", "familia"); $filter->fami->options("SELECT familia,descrip FROM fami GROUP BY familia ORDER BY familia"); $filter->fami->insertValue = $fami; $filter->fami->style = 'width:200px;'; $filter->grupo = new dropdownField("Grupo", "grupo"); $filter->grupo->options("SELECT grupo,nom_grup FROM grup GROUP BY grupo ORDER BY grupo"); $filter->grupo->insertValue = $grupo; $filter->grupo->style = 'width:200px;'; $filter->button("btnsubmit", "Buscar", form2uri(site_url('supermercado/tventas/producto'), array('anio', 'depto', 'familia', 'grupo')), $position = "BL"); $filter->build_form(); $grid = new DataGrid2(); $select = array("a.depto", "a.familia", "a.grupo", "b.descrip", "SUM(a.monto) AS grantotal", "SUM(a.costo) AS costo", "SUM(a.cantidad) AS cantidad", "SUM(a.monto)-SUM(a.costo) AS ganancia", "(SUM(a.monto)-SUM(a.costo))*100/SUM(a.monto) AS pganancia"); $grid->db->select($select); $grid->db->from("est_item AS a"); $grid->db->join("maes AS b", "a.codigo=b.codigo"); $grid->db->where('fecha >= ', $fechai); $grid->db->where('fecha <= ', $fechaf); $grid->db->where('a.depto', $depto); $grid->db->where('a.familia', $fami); $grid->db->where('a.grupo', $grupo); $grid->db->groupby("a.codigo"); //$grid->db->limit=10; $grid->column("Producto", "descrip", "align='left'"); $grid->column("Total", "<number_format><#grantotal#>|2|,|.</number_format>", 'align=right'); $grid->column("Ganancia", "<number_format><#ganancia#>|2|,|.</number_format>", 'align=right'); $grid->column("% Ganancia", "<number_format><#pganancia#>|2|,|.</number_format> %", 'align=right'); $grid->column("Cantidad", "cantidad", "align='right'"); $grid->totalizar('grantotal', 'ganancia'); $grid->build(); //echo $grid->db->last_query(); $grafico = open_flash_chart_object(720, 450, site_url("supermercado/tventas/gproducto/{$anio}/{$depto}/{$fami}/{$grupo}")); $data['content'] = $grafico; $data['content'] .= $filter->output . $grid->output; $data["head"] = $this->rapyd->get_head(); $data['title'] = "<h1>Ventas por Producto</h1>"; $this->load->view('view_ventanas', $data); }
function forcierre($numero) { $this->rapyd->load('dataform'); $dbnumero = $this->db->escape($numero); $cana = $this->datasis->dameval('SELECT COUNT(*) FROM rcaj WHERE tipo="T" AND numero=' . $dbnumero); if ($cana < 1) { $data['content'] = 'El efecto a cerrar es inválido o ya fue cerrado ' . anchor('ventas/rcaj/filteredgrid/search', 'Regresar'); $data['title'] = '<h1>Recepción de cajas</h1>'; $data['head'] = $this->rapyd->get_head() . script('jquery.pack.js') . script('plugins/jquery.numeric.pack.js') . script('plugins/jquery.floatnumber.js'); $this->load->view('view_ventanas', $data); return; } else { $caja = $this->datasis->dameval('SELECT caja FROM rcaj WHERE tipo="T" AND numero=' . $dbnumero); if (empty($caja)) { $data['content'] = 'Falta registro de la caja ' . anchor('ventas/rcaj/filteredgrid/search', 'Regresar'); $data['title'] = '<h1>Recepción de cajas</h1>'; $data['head'] = $this->rapyd->get_head() . script('jquery.pack.js') . script('plugins/jquery.numeric.pack.js') . script('plugins/jquery.floatnumber.js'); $this->load->view('view_ventanas', $data); return; } } $nomcajero = $this->datasis->dameval('SELECT CONCAT(TRIM(a.cajero),b.nombre) cajero FROM rcaj a JOIN scaj b ON a.cajero=b.cajero WHERE a.tipo="T" AND a.numero=' . $dbnumero); $form = new DataForm("ventas/rcaj/forcierre/{$numero}/process"); $attr = array('class' => 'ui-state-default ui-corner-all', 'onclick' => "javascript:window.location='" . site_url('ventas/rcaj/filteredgrid') . "'", 'value' => 'Regresar'); $totales = array(0, 0, 0, 0); $retiros = array(); $sel = array('TRIM(tipo) AS tipo', 'SUM(monto) AS monto'); $this->db->select($sel); $this->db->from('rret'); $this->db->where('cierre', $numero); $this->db->group_by('tipo'); $query = $this->db->get(); foreach ($query->result() as $row) { $retiros[$row->tipo] = $row->monto; $totales[0] += $row->monto; } $mSQL = "SELECT TRIM(c.tipo) AS tipo,0 AS retiro,c.nombre,b.recibido,b.sistema,b.diferencia,a.caja\n\t\tFROM rcaj AS a\n\t\tJOIN itrcaj AS b ON a.numero=b.numero\n\t\tJOIN tarjeta AS c ON c.tipo=b.tipo\n\t\tWHERE a.numero={$dbnumero} AND c.tipo<>'RP'"; $query = $this->db->query($mSQL); if ($query->num_rows() > 0) { $arr = array('retiro', 'recibido', 'sistema', 'diferencia'); foreach ($query->result() as $i => $row) { foreach ($arr as $o => $nobj) { $obj = $nobj . $row->tipo; $totales[$o] += $row->{$nobj}; $form->{$obj} = new inputField('(' . $row->tipo . ') ' . $row->nombre, $obj); $form->{$obj}->style = 'text-align:right'; $form->{$obj}->css_class = 'inputnum'; if ($nobj == 'retiro') { $form->{$obj}->insertValue = isset($retiros[$row->tipo]) ? $retiros[$row->tipo] : '0'; $form->{$obj}->showformat = 'decimal'; } else { $form->{$obj}->insertValue = $row->{$nobj}; $form->{$obj}->rule = 'numeric'; } $form->{$obj}->size = 10; $form->{$obj}->autocomplete = false; if ($o != 1 || in_array($row->tipo, array('RI', 'IR'))) { $form->{$obj}->readonly = true; $form->{$obj}->type = 'inputhidden'; } } } foreach ($arr as $o => $nobj) { $obj = 't' . $nobj; $form->{$obj} = new inputField('<b>Totales:</b>', $obj); $form->{$obj}->style = 'text-align:right'; $form->{$obj}->size = 10; $form->{$obj}->insertValue = $totales[$o]; $form->{$obj}->rule = 'numeric'; $form->{$obj}->autocomplete = false; if ($o == 0) { $sobj = $obj; } else { $form->{$obj}->in = $sobj; } $form->{$obj}->readonly = true; $form->{$obj}->type = 'inputhidden'; } } $b_fiscal = $this->datasis->traevalor('USAMAQFISCAL', 'Activa el modo fiscal en el cierre de caja'); if ($b_fiscal == 'S') { $form->x_venta = new inputField('Total Venta según cierre fiscal', 'xventa'); $form->x_venta->rule = 'max_length[17]|numeric|required'; $form->x_venta->css_class = 'inputnum'; $form->x_venta->size = 19; $form->x_venta->maxlength = 17; $form->x_venta->autocomplete = false; $form->x_viva = new inputField('Total IVA según cierre fiscal', 'xviva'); $form->x_viva->rule = 'max_length[17]|numeric|required'; $form->x_viva->css_class = 'inputnum'; $form->x_viva->size = 19; $form->x_viva->maxlength = 17; $form->x_viva->autocomplete = false; $form->x_devo = new inputField('Total de notas de crédito según cierre fiscal', 'xdevo'); $form->x_devo->rule = 'max_length[17]|numeric|required'; $form->x_devo->css_class = 'inputnum'; $form->x_devo->size = 19; $form->x_devo->maxlength = 17; $form->x_devo->autocomplete = false; $form->x_diva = new inputField('Total de IVA según cierre fiscal', 'xdiva'); $form->x_diva->rule = 'max_length[17]|numeric|required'; $form->x_diva->css_class = 'inputnum'; $form->x_diva->size = 19; $form->x_diva->maxlength = 17; $form->x_diva->autocomplete = false; $form->x_maqfiscal = new inputField('Serial Máquina Físcal', 'maqfiscal'); $form->x_maqfiscal->rule = 'max_length[17]|strtoupper|required'; $form->x_maqfiscal->size = 19; $form->x_maqfiscal->maxlength = 17; $form->x_maqfiscal->autocomplete = false; $form->x_ultimafc = new inputField('Número última Factura', 'ultimafc'); $form->x_ultimafc->rule = 'max_length[10]|required'; $form->x_ultimafc->size = 12; $form->x_ultimafc->maxlength = 10; $form->x_ultimafc->autocomplete = false; $form->x_ultimanc = new inputField('Número última NC', 'ultimanc'); $form->x_ultimanc->rule = 'max_length[10]|required'; $form->x_ultimanc->size = 12; $form->x_ultimanc->maxlength = 10; $form->x_ultimanc->autocomplete = false; } $form->button('btn_reg', 'Regresar', "javascript:window.location='" . site_url('ventas/rcaj/filteredgrid/search') . "'", 'BL'); $form->submit('btnsubmit', 'Cerrar cajero'); $form->build_form(); $this->rapyd->jquery[] = '$(".inputnum").numeric(".");'; $this->rapyd->jquery[] = '$(":input").click(function (){ $(this).select(); } );'; $this->rapyd->jquery[] = '$(":input").focus(function (){ $(this).select(); } );'; $this->rapyd->jquery[] = '$(\'input[name^="recibido"]\').bind("keyup",function() { gtotal(); });'; $this->rapyd->jquery[] = '$(\'input[name^="recibido"]\').bind("mouseleave",function() { gtotal(); });'; $this->rapyd->jquery[] = '$("#df1").submit(function() { return confirm("Estas seguro de realizar el Cierre?"); })'; $this->rapyd->jquery[] = 'function gtotal(){ TRECI=TSIS=TDIFE=0; $(\'input[name^="recibido"]\').each(function(i,e){ nombre=this.name; tipo=nombre.substring(nombre.length-2,nombre.length); if($(this).val().length>0){ recibido =parseFloat($(this).val()); sistema =parseFloat($("#sistema"+tipo).val()); diferencia=recibido-sistema; $("#diferencia"+tipo).val(roundNumber(diferencia,2)); $("#diferencia"+tipo+"_val").text(nformat(diferencia,2)); } if($(this).val().length>0) TRECI = TRECI+parseFloat($(this).val()); }); $(\'input[name^="diferencia"]\').each(function(i,e){ if($(this).val().length>0){ pval=parseFloat($(this).val()); TDIFE = TDIFE+pval; } }); $("#trecibido").val(roundNumber(TRECI,2)); $("#tdiferencia").val(roundNumber(TDIFE,2)); $("#trecibido_val").text(nformat(TRECI,2)); $("#tdiferencia_val").text(nformat(TDIFE,2)); $("#tretiro_val").text(nformat($("#tretiro").val(),2)); $("#tsistema_val").text(nformat($("#tsistema").val(),2)); }'; $this->rapyd->jquery[] = 'gtotal();'; //Cierre de caja if ($form->on_success()) { $usuario = $this->secu->usuario(); $estampa = date('Y-m-d'); $hora = date('H:i:s'); $mSQL = "SELECT a.fecha,c.tipo,c.nombre ,b.recibido,b.sistema,b.diferencia, a.transac\n\t\t\tFROM rcaj AS a\n\t\t\tJOIN itrcaj AS b ON a.numero=b.numero\n\t\t\tJOIN tarjeta AS c ON c.tipo=b.tipo\n\t\t\tWHERE a.numero={$dbnumero}"; $query = $this->db->query($mSQL); if ($query->num_rows() > 0) { $str = ''; $arr = array(); $rrecibido = $sistema = $depositos = 0; foreach ($query->result() as $i => $row) { $nobj = 'recibido' . $row->tipo; $recibido = isset($form->{$nobj}) ? empty($form->{$nobj}->newValue) ? 0.0 : floatval($form->{$nobj}->newValue) : 0.0; if ($row->sistema > 0 || $recibido > 0) { $str .= $row->tipo . ' ' . $recibido . ' '; $arr['recibido'] = $recibido; $arr['sistema'] = $row->sistema; $arr['diferencia'] = $recibido - $row->sistema; $arr['numero'] = $numero; $arr['cierre'] = 'S'; $arr['tipo'] = $row->tipo; if ($row->tipo == 'DE') { $depositos += $recibido; } else { $rrecibido += $recibido; } $sistema += $row->sistema; $mmSQL = $this->db->insert_string('itrcaj', $arr); $this->db->query($mmSQL); } } $rcajfecha = $this->db->escape($row->fecha); $transac = $row->transac; $arr = array('tipo' => 'F', 'recibido' => $rrecibido + $depositos, 'observa' => $str); if ($b_fiscal == 'S') { $arr['xventa'] = $form->x_venta->newValue; $arr['xviva'] = $form->x_viva->newValue; $arr['xdevo'] = $form->x_devo->newValue; $arr['xdiva'] = $form->x_diva->newValue; $arr['maqfiscal'] = $form->x_maqfiscal->newValue; $arr['ultimafc'] = $form->x_ultimafc->newValue; $arr['ultimanc'] = $form->x_ultimanc->newValue; } $where = 'numero=' . $this->db->escape($numero); $mmSQL = $this->db->update_string('rcaj', $arr, $where); $this->db->query($mmSQL); //cierra el cajero $cajero = $this->datasis->dameval('SELECT cajero FROM rcaj WHERE numero=' . $dbnumero); $dbcajero = $this->db->escape($cajero); $sifact = intval($this->datasis->dameval("SELECT COUNT(*) AS cana FROM sfac WHERE cajero ={$dbcajero} AND fecha > {$rcajfecha}")); $sifact += intval($this->datasis->dameval("SELECT COUNT(*) AS cana FROM sfpa WHERE cobrador={$dbcajero} AND fecha > {$rcajfecha}")); if ($sifact == 0) { $arr = array('status' => 'C', 'fechac' => date('Ymd'), 'horac' => date('h:i:s'), 'cierre' => $rrecibido + $depositos, 'caja' => $caja); $where = 'cajero=' . $this->db->escape($cajero); $mmSQL = $this->db->update_string('scaj', $arr, $where); $ban = $this->db->query($mmSQL); if ($ban == false) { memowrite($mmSQL, 'rcaj'); } } //Inicio de las transacciones ISLR $mmSQL = "SELECT a.monto,a.fecha,a.numero,c.nombre,a.transac\n\t\t\t\tFROM sfpa AS a\n\t\t\t\tJOIN rcaj AS b ON a.fecha=b.fecha AND a.cobrador=b.cajero\n\t\t\t\tJOIN scli AS c ON a.cod_cli=c.cliente\n\t\t\t\tWHERE b.numero={$dbnumero} AND a.tipo='IR'"; $qquery = $this->db->query($mmSQL); foreach ($qquery->result() as $rrow) { $XNUMERO = $this->datasis->fprox_numero('ndcli'); $data['tipo_doc'] = 'ND'; $data['numero'] = $XNUMERO; $data['cod_cli'] = 'RETEN'; $data['nombre'] = 'RETENCION DE ISLR'; $data['fecha'] = $rrow->fecha; $data['monto'] = $rrow->monto; $data['impuesto'] = 0; $data['vence'] = date('Ymd', mktime(0, 0, 0, substr($rrow->fecha, 5, 2) + 1, 3, substr($rrow->fecha, 0, 4))); $data['observa1'] = 'RET/ISLR DE FE ' . $rrow->numero; $data['observa2'] = 'CLIENTE ' . $rrow->nombre; $data['banco'] = ''; $data['tipo_op'] = ''; $data['num_op'] = ''; $data['reten'] = 0; $data['ppago'] = 0; $data['control'] = ''; $data['cambio'] = 0; $data['mora'] = 0; $data['abonos'] = 0; $data['transac'] = $rrow->transac; $data['usuario'] = $usuario; $data['estampa'] = $estampa; $data['hora'] = $hora; $mSQL = $this->db->insert_string('smov', $data); $ban = $this->db->query($mSQL); if ($ban == false) { memowrite($mSQL, 'rcaj'); } } //Fin de las retenciones ISLR //Crea el movimiento en bmov $mSQL = 'SELECT fecha, cajero FROM rcaj WHERE numero=' . $dbnumero; $query = $this->db->query($mSQL); $row = $query->first_row(); $fecha = $row->fecha; $sfecha = str_replace('', '-', $fecha); $cajero = $row->cajero; $nbmov = $this->_banprox($caja); $mSQL = 'SELECT moneda, numcuent,banco,saldo FROM banc WHERE codbanc= ? '; $query = $this->db->query($mSQL, array($caja)); $row = $query->first_row(); $data = array(); $data['codbanc'] = $caja; $data['moneda'] = $row->moneda; $data['numcuent'] = $row->numcuent; $data['banco'] = $row->banco; $data['saldo'] = $row->saldo; $data['tipo_op'] = 'NC'; $data['numero'] = $nbmov; $data['fecha'] = $fecha; $data['clipro'] = 'O'; $data['codcp'] = 'VENT'; $data['nombre'] = 'INGRESOS DIARIOS'; $data['monto'] = $rrecibido; $data['concepto'] = "ENTREGA FINAL CAJERO {$cajero} DIA " . dbdate_to_human($fecha); $data['transac'] = $transac; $data['usuario'] = $usuario; $data['estampa'] = $estampa; $data['hora'] = $hora; $mSQL = $this->db->insert_string('bmov', $data); $ban = $this->db->query($mSQL); if ($ban == false) { memowrite($mSQL, 'rcaj'); } //Fin del movimiento en bmov //Monto por depositos if ($depositos > 0) { $nbmov = $this->_banprox($caja); $data = array(); $data['codbanc'] = $caja; $data['moneda'] = $row->moneda; $data['numcuent'] = $row->numcuent; $data['banco'] = $row->banco; $data['saldo'] = $row->saldo; $data['tipo_op'] = 'NC'; $data['numero'] = $nbmov; $data['fecha'] = $fecha; $data['clipro'] = 'O'; $data['codcp'] = 'VENT'; $data['nombre'] = 'INGRESOS DIARIOS'; $data['monto'] = $depositos; $data['concepto'] = "DEPOSITOS RECIBIDOS CAJERO {$cajero} DIA " . dbdate_to_human($fecha); $data['transac'] = $transac; $data['usuario'] = $usuario; $data['estampa'] = $estampa; $data['hora'] = $hora; $mSQL = $this->db->insert_string('bmov', $data); $ban = $this->db->query($mSQL); if ($ban == false) { memowrite($mSQL, 'rcaj'); } } //Fin del monto por deposito //Actualiza el saldo en la caja $this->datasis->actusal($caja, $sfecha, $rrecibido + $depositos); //Crea la diferencia en caja si la hay $dif = $rrecibido + $depositos - $sistema; if ($dif != 0.0) { $mSQL = 'SELECT COUNT(*) AS n FROM banc WHERE codbanc="DF"'; $query = $this->db->query($mSQL); $row = $query->first_row(); if ($row->n == 0) { $data = array(); $data['codbanc'] = 'DF'; $data['tbanco'] = 'CAJ'; $data['moneda'] = 'Bs'; $data['banco'] = 'CAJA'; //$data['nombre'] ='DIFERENCIA EN CAJA'; $data['numcuent'] = 'DIFERENCIA EN CAJA'; $data['activo'] = 'S'; $data['tipocta'] = 'C'; $data['saldo'] = 0; $mSQL = $this->db->insert_string('banc', $data); $ban = $this->db->query($mSQL); if ($ban == false) { memowrite($mSQL, 'rcaj'); } } $nbmov = $this->_banprox('DF'); $mSQL = 'SELECT moneda, numcuent,banco,saldo FROM banc WHERE codbanc="DF"'; $query = $this->db->query($mSQL); $row = $query->first_row(); if ($dif < 0) { // crea la NC a causa del faltante de caja $data = array(); $data['codbanc'] = 'DF'; $data['moneda'] = $row->moneda; $data['numcuent'] = $row->numcuent; $data['banco'] = $row->banco; $data['saldo'] = $row->saldo; $data['tipo_op'] = 'NC'; $data['numero'] = $nbmov; $data['fecha'] = $fecha; $data['clipro'] = 'O'; $data['codcp'] = 'VENT'; $data['nombre'] = 'INGRESOS DIARIOS'; $data['monto'] = abs($dif); $data['concepto'] = "FALTANTE EN CAJA {$caja} CAJERO {$cajero} DIA " . dbdate_to_human($fecha); $data['transac'] = $transac; $data['usuario'] = $usuario; $data['estampa'] = $estampa; $data['hora'] = $hora; $mSQL = $this->db->insert_string('bmov', $data); $ban = $this->db->query($mSQL); if ($ban == false) { memowrite($mSQL, 'rcaj'); } } else { //Crea la ND a causa del sobrante de caja $data = array(); $data['codbanc'] = 'DF'; $data['moneda'] = $row->moneda; $data['numcuent'] = $row->numcuent; $data['banco'] = $row->banco; $data['saldo'] = $row->saldo; $data['tipo_op'] = 'ND'; $data['numero'] = $nbmov; $data['fecha'] = $fecha; $data['clipro'] = 'O'; $data['codcp'] = 'VENT'; $data['nombre'] = 'INGRESOS DIARIOS'; $data['monto'] = abs($dif); $data['concepto'] = "SOBRANTE EN CAJA {$caja} CAJERO {$cajero} DIA " . dbdate_to_human($fecha); $data['transac'] = $transac; $data['usuario'] = $usuario; $data['estampa'] = $estampa; $data['hora'] = $hora; $mSQL = $this->db->insert_string('bmov', $data); $ban = $this->db->query($mSQL); if ($ban == false) { memowrite($mSQL, 'rcaj'); } } $this->datasis->actusal('DF', $sfecha, $dif); } //Crea los movimientos bmov a consecuencia de los pagos con depositos //$mSQL="INSERT IGNORE INTO bmov ( codbanc, tipo_op, numero, fecha, clipro, codcp, nombre, monto, concepto, status, liable, transac, usuario, estampa, hora, anulado) //SELECT a.banco codbanc, a.tipo tipo_op, a.num_ref numero, a.fecha, 'C' clipro, a.cod_cli codcp, b.nombre, a.monto, 'INGRESO POR COBRANZA' concepto, 'P' status, 'S' liable, a.transac, a.usuario, a.estampa, a.hora, 'N' anulado //FROM sfpa a JOIN scli b ON a.cod_cli=b.cliente //WHERE a.tipo='DE' AND tipo_doc='FE' AND fecha=${dbfecha}"; //$ban=$this->db->query($mSQL); //if($ban==false) memowrite($mSQL,'rcaj'); logusu('rcaj', "Cerro cajero {$cajero} de {$fecha}"); redirect('ventas/rcaj/filteredgrid/search'); } } $attr = array('class' => 'ui-state-default ui-corner-all', 'onclick' => "javascript:window.location='" . site_url('ventas/rcaj/filteredgrid/search') . "'", 'value' => 'Regresar'); $credito = $this->datasis->dameval("SELECT SUM((a.totalg-a.inicial)*IF(a.tipo_doc='D',-1,1)) AS credito\n\t\tFROM sfac AS a\n\t\tJOIN rcaj AS b ON a.fecha=b.fecha AND b.cajero=a.cajero\n\t\tWHERE a.referen='C' AND b.numero={$dbnumero}"); $rp = 0; $mSQL = "SELECT SUM(a.monto) AS rp\n\t\tFROM sfpa AS a JOIN rcaj AS b ON a.fecha=b.fecha AND a.cobrador=b.cajero\n\t\tWHERE b.numero={$dbnumero} AND a.tipo='RP'"; $rp += $this->datasis->dameval($mSQL); //Toma en cuenta los cambios de cheque $ccheq = 0; $ccquery = $this->db->query("SELECT SUM(d.monto) AS monto\n\t\tFROM sfpa AS d JOIN rcaj AS b ON d.fecha=b.fecha AND d.cobrador=b.cajero\n\t\tWHERE b.numero={$dbnumero} AND d.tipo_doc = 'CC'"); foreach ($ccquery->result() as $ccrow) { $ccheq += $ccrow->monto; } $cont['b_fiscal'] = $b_fiscal; $cont['rp'] = $rp; $cont['cc'] = $ccheq; $cont['retiros'] = $retiros; $cont['credito'] = empty($credito) ? 0 : $credito; $cont['form'] =& $form; $data['content'] = $this->load->view('view_rcajcierre', $cont, true); //$data['content'] = $form->output; $data['title'] = heading('Recepción de Caja ' . $nomcajero); $data['head'] = $this->rapyd->get_head() . script('plugins/jquery.numeric.pack.js') . script('plugins/jquery.floatnumber.js') . phpscript('nformat.js'); $this->load->view('view_ventanas', $data); }
function diarias($anio = '', $vendedor = '', $mes = '') { $this->rapyd->load("datagrid2"); $this->rapyd->load("dataform"); $this->load->helper('openflash'); $script = ' $(function() { $(".inputnum").numeric("."); }); '; if (isset($_POST['anio']) and empty($anio)) { $anio = $_POST['anio']; } if (isset($_POST['mes']) and empty($mes)) { $mes = $_POST['mes']; } if (isset($_POST['vd']) and empty($vendedor)) { $vendedor = $_POST['vd']; } //if(empty($anio) OR ($vendedor)) redirect("ventas/vendedoresanuales/index/$anio"); if (empty($mes)) { redirect("ventas/vendedores/mensuales/{$anio}/{$vendedor}"); } $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31'; $scli = array('tabla' => 'scli', 'columnas' => array('cliente' => 'C<p align="right">ó</p>digo Vendedor', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('cliente' => 'Código Cliente', 'nombre' => 'Nombre'), 'retornar' => array('cliente' => 'cod_cli'), 'titulo' => 'Buscar Cliente'); $cboton = $this->datasis->modbus($scli); $filter = new DataForm('ventas/vendedores/diarias'); $filter->attributes = array('onsubmit' => "this.action='index/'+this.form.mes.value+'/'+this.form.anio.value+'/';return FALSE;"); $filter->title('Filtro de Ventas Diarias'); $filter->script($script, "create"); $filter->script($script, "modify"); $filter->mes = new dropdownField("Mes/Año", "mes"); for ($i = 1; $i < 13; $i++) { $filter->mes->option(str_pad($i, 2, '0', STR_PAD_LEFT), str_pad($i, 2, '0', STR_PAD_LEFT)); } $filter->mes->size = 2; $filter->mes->style = ''; $filter->mes->insertValue = $mes; $filter->anio = new inputField("Año", "anio"); $filter->anio->in = 'mes'; $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->maxlength = 4; $filter->anio->rule = "trim"; $filter->anio->css_class = 'inputnum'; $filter->vendedor = new inputField("Vendedor", "vd"); $filter->vendedor->size = 10; $filter->vendedor->insertValue = $vendedor; $filter->vendedor->rule = "max_length[4]"; $filter->vendedor->append($cboton); $filter->button("btnsubmit", "Buscar", form2uri(site_url('ventas/vendedores/diarias/'), array('anio', 'vd', 'mes')), $position = "BL"); $filter->build_form(); $grid = new DataGrid2(); $select = array("vd", "DATE_FORMAT(fecha,'%d/%m/%Y') AS fecha", "SUM(totalg*IF(tipo_doc='D', -1, 1)) AS grantotal", "SUM(totalg*IF(tipo_doc='D', -1, 1))/ COUNT(*) AS porcentaje", "SUM(totalg*(referen IN ('E', 'M'))*IF(tipo_doc='D', -1, 1)) as contado", "SUM(totalg*(referen NOT IN ('E', 'M'))*IF(tipo_doc='D', -1, 1)) as credito", "FORMAT(sum(totals*IF(tipo_doc='D',-1,1)),2) AS subtotal", "FORMAT(sum(iva*IF(tipo_doc='D',-1,1)),2) AS impuesto", "COUNT(*) AS numfac"); $grid->db->select($select); $grid->db->from("sfac"); $grid->db->where('tipo_doc <> ', 'X'); $grid->db->where('fecha >= ', $fechai); $grid->db->where('fecha <= ', $fechaf); $grid->db->where('vd ', $vendedor); $grid->db->groupby("fecha"); $grid->column("Dia", "fecha", "align='center'"); $grid->column("Sub-Total", "<number_format><#subtotal#>|2|,|.</number_format>", 'align=right'); $grid->column("Impuesto", "<number_format><#impuesto#>|2|,|.</number_format>", 'align=right'); $grid->column("Total", "<number_format><#grantotal#>|2|,|.</number_format>", 'align=right'); $grid->column("Contado", "<number_format><#contado#>|2|,|.</number_format>", 'align=right'); $grid->column("Crédito", "<number_format><#credito#>|2|,|.</number_format>", 'align=right'); $grid->column("Participación", "<number_format><#porcentaje#>|2|,|.</number_format>", 'align=right'); $grid->column("Cant. Fact", "numfac", 'align=right'); $grid->totalizar('subtotal', 'impuesto', 'grantotal', 'contado', 'credito'); $grid->build(); $grafico = open_flash_chart_object(680, 350, site_url("ventas/vendedores/gdiarias/{$anio}/{$vendedor}/{$mes}")); $data['content'] = $grafico; $data['content'] .= $filter->output . $grid->output; $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . $this->rapyd->get_head(); $data['title'] = $this->rapyd->get_head() . "<h1>Vendedores</h1>"; $this->load->view('view_ventanas', $data); }
function diarias($anio = '', $cliente = '', $mes = '') { $this->rapyd->load("datagrid2"); $this->rapyd->load("dataform"); $this->load->helper('openflash'); if (isset($_POST['anio']) and empty($anio)) { $anio = $_POST['anio']; } if (isset($_POST['mes']) and empty($mes)) { $mes = $_POST['mes']; } if (isset($_POST['cod_cli']) and empty($cliente)) { $cliente = $_POST['cod_cli']; } if (empty($mes)) { redirect("hospitalidad/clientes/mensuales/{$anio}/{$cliente}"); } $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01'; $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31'; $scli = array('tabla' => 'scli', 'columnas' => array('cliente' => 'Código Cliente', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('cliente' => 'Código Cliente', 'nombre' => 'Nombre'), 'retornar' => array('cliente' => 'cod_cli'), 'titulo' => 'Buscar Cliente'); $cboton = $this->datasis->modbus($scli); $filter = new DataForm('hospitalidad/clientesdiarias'); $filter->attributes = array('onsubmit' => "this.action='index/'+this.form.mes.value+'/'+this.form.anio.value+'/';return FALSE;"); $filter->title('Filtro de Ventas Diarias'); $filter->mes = new dropdownField("Mes/Año", "mes"); for ($i = 1; $i < 13; $i++) { $filter->mes->option(str_pad($i, 2, '0', STR_PAD_LEFT), str_pad($i, 2, '0', STR_PAD_LEFT)); } $filter->mes->size = 2; $filter->mes->style = ''; $filter->mes->insertValue = $mes; $filter->anio = new inputField("Año", "anio"); $filter->anio->in = 'mes'; $filter->anio->size = 4; $filter->anio->insertValue = $anio; $filter->anio->maxlength = 4; $filter->cliente = new inputField("Cliente", "cod_cli"); $filter->cliente->size = 10; $filter->cliente->insertValue = $cliente; $filter->cliente->rule = "max_length[4]"; $filter->cliente->append($cboton); $filter->button("btnsubmit", "Buscar", form2uri(site_url('hospitalidad/clientes/diarias/'), array('anio', 'cod_cli', 'mes')), $position = "BL"); $filter->build_form(); $grid = new DataGrid2(); $select = array("cod_cli,nombre", "DATE_FORMAT(fecha,'%d/%m/%Y') AS fecha", "SUM(gtotal*IF(tipo='D', -1, 1)) AS grantotal", "SUM(gtotal*IF(tipo='D', -1, 1))/ COUNT(*) AS porcentaje", "SUM(gtotal*IF(tipo='D', -1, 1)) AS contado", "SUM(gtotal*IF(tipo='D', -1, 1)) AS credito", "SUM(stotal*IF(tipo='D',-1,1))AS subtotal", "SUM(impuesto*IF(tipo='D',-1,1))AS impuesto", "COUNT(*) AS numfac"); $grid->db->select($select); $grid->db->from("fmay"); $grid->db->where('tipo<>', 'X'); $grid->db->where('fecha >= ', $fechai); $grid->db->where('fecha <= ', $fechaf); $grid->db->where('cod_cli', $cliente); $grid->db->groupby("fecha"); $grid->column("Dia", "fecha", "align='center'"); $grid->column("Sub-Total", "<number_format><#subtotal#>|2|,|.</number_format>", 'align=right'); $grid->column("Impuesto", "<number_format><#impuesto#>|2|,|.</number_format>", 'align=right'); $grid->column("Total", "<number_format><#grantotal#>|2|,|.</number_format>", 'align=right'); $grid->column("Contado", "<number_format><#contado#>|2|,|.</number_format>", 'align=right'); $grid->column("Credito", "<number_format><#credito#>|2|,|.</number_format>", 'align=right'); $grid->column("Participación", "<number_format><#porcentaje#>|2|,|.</number_format>", 'align=right'); $grid->column("Cant. Fact", "numfac", 'align=right'); $grid->totalizar('impuesto', 'grantotal', 'contado', 'credito', 'subtotal'); $grid->build(); $grafico = open_flash_chart_object(720, 350, site_url("hospitalidad/clientes/gdiarias/{$anio}/{$cliente}/{$mes}")); $data['content'] = $grafico; $data['content'] .= $filter->output . $grid->output; $data["head"] = $this->rapyd->get_head(); $data['title'] = $this->rapyd->get_head() . "<h1>Clientes</h1>"; $this->load->view('view_ventanas', $data); }
function read() { $this->load->library("Spreadsheet_Excel_Reader"); $this->rapyd->load("datagrid2", "dataform"); $salida = anchor('inventario/sinvactu', 'Atras'); $type = ''; if (isset($_FILES['archivoUserFile']['type'])) { $type = $_FILES['archivoUserFile']['type']; } if ($type == 'application/x-msexcel') { $name = $_FILES['archivoUserFile']['name']; $dir = ".././" . $name; if (copy($_FILES['archivoUserFile']['tmp_name'], $dir)) { $tmp = $dir; //$_FILES['archivoUserFile']['tmp_name']; $data = new Spreadsheet_Excel_Reader(); $data->setOutputEncoding('CP1251'); $data->read($tmp); error_reporting(E_ALL ^ E_NOTICE); $cols = array(); for ($i = 0; $i <= $data->sheets[0]['numRows']; $i++) { $ref = 0; for ($j = 1; $j <= $data->sheets[0]['numCols']; $j++) { $cols[$j - 1] = $data->sheets[0]['cells'][$i][$j]; if (!empty($data->sheets[0]['cells'][$i][$j])) { $ref++; } } if ($ref > 2) { break; } } $c = 0; for ($i = 0; $i <= $data->sheets[0]['numRows']; $i++) { $ref = 0; $j = 1; foreach ($cols as $col) { $data3[$i][$col] = $data->sheets[0]['cells'][$i][$j]; if (!empty($data->sheets[0]['cells'][$i][$j])) { $ref++; } $j++; } if ($ref > 2 && implode(' ', $data3[$i]) != implode(' ', $cols)) { $data4[$c] = $data3[$i]; $c++; } } $form = new DataForm("/inventario/sinvactu/actualiza"); $form->free = new freeField("Campos.Archivo xls", "free", "Campos de El Sistema"); $grid = new DataGrid2("Archivo Cargado", $data4); $j = 0; $campos .= 'cols="+$("#cols").val()+"&&dir="+$("#dir").val()'; foreach ($cols as $col) { $grid->column("{$col}", "<#{$col}#>"); $campo = "campo{$j}"; $form->{$campo} = new dropdownField("{$col}", "campo{$j}"); $form->{$campo}->option("ignorar", "ignorar"); $form->{$campo}->option("codigo", "codigo"); $form->{$campo}->option("costo", "costo"); $form->{$campo}->option("descrip", "descrip"); $form->{$campo}->option("descrip2", "descrip2"); $form->{$campo}->option("clave", "clave"); $form->{$campo}->option("grupo", "grupo"); $form->{$campo}->option("iva", "iva"); for ($i = 1; $i <= 3; $i++) { $form->{$campo}->option("base{$i}", "Base{$i}"); $form->{$campo}->option("margen{$i}", "Margen{$i}"); $form->{$campo}->option("precio{$i}", "Precio{$i}"); } $form->{$campo}->style = 'width:150px;'; $j++; $campos .= "+" . "\"&&" . $campo . "=\"+\$(\"#" . $campo . "\").val()"; } //echo $campos; $form->cols = new inputField("", "cols"); $form->cols->insertValue = implode(',', $cols); $form->cols->type = 'hidden'; $form->dir = new inputField("", "dir"); $form->dir->insertValue = $dir; $form->dir->type = 'hidden'; //$form->submit("btnsubmit","Actualizar"); $link = site_url('inventario/sinvactu/actualiza'); $script = ' function actu(){ a=confirm("¿Esta Seguro que de desea Actualizar el Inventario ?"); if(a){ $.ajax({ type: "POST", processData:false, url: "' . $link . '", data: "' . $campos . ', success: function(msg){ if(msg=="s.i"){ alert("El Inventario fue Actualizado."); } else{ alert(msg); } } }); } } '; $form->script($script); $form->button("actualiza", "Actualizar", "javascript:actu();"); $form->build_form(); $grid->build(); $data2['content'] = $form->output . $salida . $grid->output; } } else { $data2['content'] = $salida; } $data2['title'] = "<h1>Actualización de Inventario</h1>"; $data2["head"] = script("jquery.pack.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data2); }
function gserchipros($codbanc = null) { if (empty($codbanc)) { show_error('Faltan parámetros'); } $dbcodbanc = $this->db->escape($codbanc); $mSQL = 'SELECT COUNT(*) AS cana, SUM(exento+montasa+monadic+monredu+tasa+sobretasa+reducida) AS monto FROM gserchi WHERE ngasto IS NULL AND aceptado="S" AND codbanc=' . $dbcodbanc; $r = $this->datasis->damerow($mSQL); if ($r['cana'] == 0) { show_error('Caja sin gastos'); } $mSQL = "SELECT a.codprv, b.nombre FROM banc AS a JOIN sprv AS b ON a.codprv=b.proveed WHERE a.codbanc={$dbcodbanc}"; $query = $this->db->query($mSQL); if ($query->num_rows() > 0) { $row = $query->row(); $nombre = $row->nombre; $codprv = $row->codprv; } else { $nombre = $codprv = ''; } $sql = 'SELECT TRIM(a.codbanc) AS codbanc,tbanco FROM banc AS a'; $query = $this->db->query($sql); $comis = array(); if ($query->num_rows() > 0) { foreach ($query->result() as $row) { $ind = '_' . $row->codbanc; $comis[$ind]['tbanco'] = $row->tbanco; } } $json_comis = json_encode($comis); $this->rapyd->load('dataform', 'datagrid'); $modbus = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'Código Proveedor', 'nombre' => 'Nombre', 'rif' => 'RIF'), 'filtro' => array('proveed' => 'Código Proveedor', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'codprv', 'nombre' => 'nombre'), 'titulo' => 'Buscar Proveedor'); $bsprv = $this->datasis->modbus($modbus); $script = 'var comis = ' . $json_comis . '; $(document).ready(function() { desactivacampo(""); }); function desactivacampo(codb1){ if(codb1.length>0 && codb1!="' . $this->mcred . '"){ eval("tbanco=comis._"+codb1+".tbanco;" ); if(tbanco=="CAJ"){ $("#cheque").attr("disabled","disabled"); $("#benefi").attr("disabled","disabled"); }else{ $("#cheque").removeAttr("disabled"); $("#benefi").removeAttr("disabled"); } }else{ $("#cheque").attr("disabled","disabled"); $("#benefi").attr("disabled","disabled"); } }'; $form = new DataForm('finanzas/gser/gserchipros/' . $codbanc . '/process'); $form->title("Número de facturas aceptadas {$r['cana']}, monto total <b>" . nformat($r['monto']) . '</b>'); $form->script($script); $form->codprv = new inputField('Proveedor', 'codprv'); $form->codprv->rule = 'required'; $form->codprv->insertValue = $codprv; $form->codprv->size = 5; $form->codprv->append($bsprv); $form->nombre = new inputField('Nombre', 'nombre'); $form->nombre->rule = 'required'; $form->nombre->insertValue = $nombre; $form->nombre->in = 'codprv'; $form->cargo = new dropdownField('Con cargo a', 'cargo'); $form->cargo->option($this->mcred, 'Crédito'); $form->cargo->options("SELECT codbanc, CONCAT_WS('-',codbanc,banco) AS label FROM banc WHERE activo='S' ORDER BY codbanc"); $form->cargo->onchange = 'desactivacampo(this.value)'; $form->cargo->rule = 'max_length[5]|required'; $form->cheque = new inputField('Número de cheque', 'cheque'); $form->cheque->rule = 'condi_required|callback_chobligaban'; $form->cheque->append('Aplica solo si el cargo es a un banco'); $form->benefi = new inputField('Beneficiario', 'benefi'); $form->benefi->insertValue = $nombre; $form->benefi->rule = 'condi_required|callback_chobligaban'; $form->benefi->append('Aplica solo si el cargo es a un banco'); $action = "javascript:window.location='" . site_url('finanzas/gser/cierregserchi/' . $codbanc) . "'"; $form->button('btn_regresa', 'Regresar', $action, 'BR'); $form->submit('btnsubmit', 'Procesar'); $form->build_form(); $grid = new DataGrid('Lista de Gastos', 'gserchi'); $select = array('exento + montasa + monadic + monredu + tasa + sobretasa + reducida AS totneto', 'tasa + sobretasa + reducida AS totiva', 'proveedor', 'fechafac', 'numfac', 'codbanc'); $grid->db->select($select); $grid->db->where('aceptado', 'S'); $grid->db->where('ngasto IS NULL'); $grid->db->where('codbanc', $codbanc); $grid->order_by('numfac', 'desc'); $grid->per_page = 15; $grid->column('Caja', 'codbanc'); $grid->column('Número', 'numfac'); $grid->column('Fecha', '<dbdate_to_human><#fechafac#></dbdate_to_human>', 'align=\'center\''); $grid->column('Proveedor', 'proveedor'); $grid->column('IVA', 'totiva', 'align=\'right\''); $grid->column('Monto', 'totneto', 'align=\'right\''); //$grid->add('finanzas/gser/datagserchi/create','Agregar nueva factura'); $grid->build(); if ($form->on_success()) { $codprv = $form->codprv->newValue; $cargo = $form->cargo->newValue; $nombre = $form->nombre->newValue; $benefi = $form->benefi->newValue; $cheque = $form->cheque->newValue; $rt = $this->_gserchipros($codbanc, $cargo, $codprv, $benefi, $cheque); //var_dump($rt); if ($rt) { redirect('finanzas/gser/listo/n'); } else { redirect('finanzas/gser/listo/s'); } } $data['content'] = $form->output . $grid->output; $data['title'] = heading('Reposición de caja chica ' . $codbanc); $data['head'] = $this->rapyd->get_head() . script('jquery.js'); $data['head'] .= phpscript('nformat.js'); $this->load->view('view_ventanas', $data); }