Ejemplo n.º 1
0
 function selecciona($cod_prov, $codbanc)
 {
     $this->rapyd->load("datagrid", "dataobject", "fields");
     $cod_prov = radecode($cod_prov);
     $codbanc = radecode($codbanc);
     $codbance = $this->db->escape($codbanc);
     function asigna($id, $value = "D")
     {
         $campo = new dropdownField("Title", "gt[{$id}]");
         $campo->status = "modify";
         $campo->option("D", "Pendiente");
         $campo->option("E", "Cancelar");
         $campo->value = $value;
         $campo->style = "width:100px";
         $campo->build();
         return $campo->output;
     }
     $tabla = form_open($this->url . "carga/");
     $ddata = array('cod_prov' => $cod_prov, 'codbanc' => $codbanc);
     $grid = new DataGrid("Lista de Deducciones de Nómina por Pagar");
     $grid->db->select(array("a.id", "a.numero nomina", "b.numero opago", "d.numero desembolso", "a.monto", "a.status", "b.observa"));
     $grid->db->from('retenomi a');
     $grid->db->join('odirect b', 'a.numero=b.nomina');
     $grid->db->join('pades c', 'b.numero=c.pago');
     $grid->db->join('desem d', 'c.desem=d.numero');
     $grid->db->where("a.cod_prov ", $cod_prov);
     $grid->db->where("a.status ", "D");
     $grid->db->where("d.status ", "D2");
     $grid->db->where("(SELECT COUNT(*) FROM mbanc WHERE d.numero=mbanc.desem AND  codbanc={$codbance})>", "0");
     $grid->use_function('asigna');
     $grid->column("Nomina", "nomina", 'align=left');
     $grid->column("O.Pago", "opago", 'align=left');
     $grid->column("Desembolso", "desembolso", 'align=left');
     $grid->column("Monto", "<number_format><#monto#>|2|,|.</number_format>", "align='right'");
     $grid->column("Accio&oacute;n", "<asigna><#id#>|<#status#></asigna>", "align='right'");
     $grid->build();
     //$grid->db->last_query();
     $tabla .= $salida = anchor($this->url . 'busca', 'Regresar');
     $tabla .= $grid->output . form_submit('mysubmit', 'Guardar') . form_hidden($ddata);
     $tabla .= form_close();
     if ($grid->recordCount == 0) {
         $tabla .= $salida = anchor($this->url . 'busca', 'Regresar');
         $tabla = "<p>No hay deducciones pendientes por pagar al proveedor ({$cod_prov})</p>";
         $tabla .= $salida = anchor($this->url . 'busca', 'Regresar');
     }
     $data['content'] = $tabla;
     $data['title'] = " Pago de  Deducciones de N&oacute;mina ";
     $data["head"] = $this->rapyd->get_head();
     $this->load->view('view_ventanas', $data);
 }
Ejemplo n.º 2
0
 /**
  * rebuild the PK array in the same format of the one used in DO->load() function ie: array(pk1=>value1, pk2=>value2)
  * from the string formated as we attent at the end (pk part)of the URI (as explain in conventions)=>/pk1_name/pk1_value/pk2_name/pk2_value/...
  * @access   private
  * @param    string
  * @return   array
  */
 function URI_to_pk($id_str, $do)
 {
     $result = array();
     //check and remove for '/' in first and last position for that explode work fine.
     $tmp_ar = explode("/", $id_str);
     $keys = array_keys($do->pk);
     for ($i = 0; $i <= count($tmp_ar) - 1; $i++) {
         $result[$keys[$i]] = radecode($tmp_ar[$i]);
     }
     return $result;
 }
Ejemplo n.º 3
0
 function gdiarias($anio = '', $proveed = '', $mes = '')
 {
     $this->load->library('Graph');
     if (empty($mes) or empty($anio) or empty($proveed)) {
         return;
     }
     $proveed = radecode($proveed);
     $fechai = $anio . str_pad($mes, 2, '0', STR_PAD_LEFT) . '01';
     $fechaf = $anio . str_pad($mes, 2, '0', STR_PAD_LEFT) . '31';
     $dbfechai = $this->db->escape($fechai);
     $dbfechaf = $this->db->escape($fechaf);
     $dbproveed = $this->db->escape($proveed);
     $mSQL = "SELECT  LEFT(nombre,10)as nombre,proveed,DAYOFMONTH(fecha) AS dia ,\n\t\tSUM(montonet*IF(tipo_doc='NC', -1, 1)) AS grantotal,\n\t\tSUM(credito*IF( tipo_doc='NC', -1, 1)) AS credito,\n\t\tSUM(inicial*IF( tipo_doc='NC', -1, 1)) AS contado\n\t\tFROM scst\n\t\tWHERE tipo_doc<>'NE' AND fecha>={$dbfechai} AND fecha<={$dbfechaf} AND proveed={$dbproveed}\n\t\t\tAND actuali >= fecha\n\t\tGROUP BY fecha ORDER BY fecha,grantotal DESC LIMIT 31";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $fecha[] = $row->dia;
         $nombre = str_replace('&', '', $row->nombre);
         //$data_1[]=$row->contado;
         //$data_2[]=$row->credito;
         $data_3[] = $row->grantotal;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     //$bar_1 = new bar(75, '#0053A4');
     //$bar_2 = new bar(75, '#9933CC');
     $bar_3 = new bar(75, '#639F45');
     //$bar_1->key('Contado',10);
     //$bar_2->key('Credito',10);
     $bar_3->key('Total Bs.', 10);
     for ($i = 0; $i < count($data_3); $i++) {
         //$bar_1->add_data_tip($data_1[$i]/$om, graph::esc( number_format($data_1[$i],2,',','.')));
         //$bar_2->add_data_tip($data_2[$i]/$om, graph::esc( number_format($data_2[$i],2,',','.')));
         $bar_3->add_data_tip($data_3[$i] / $om, graph::esc(number_format($data_3[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Compras a ' . $nombre . '  en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:##00264A}');
         //$g->data_sets[] = $bar_1;
         //$g->data_sets[] = $bar_2;
         $g->data_sets[] = $bar_3;
         $g->set_x_labels($fecha);
         $g->set_x_label_style(10, '#000000', 3, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Dias', 14, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->set_y_legend('Compras x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen compras con los datos seleccionados', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 4
0
    function dataedit($status = '', $id = '', $id2 = '')
    {
        $this->rapyd->load("dataobject", "dataedit");
        $id = radecode($id);
        $id2 = radecode($id2);
        $link = site_url('inventario/seriales/ultimo');
        $link2 = site_url('inventario/seriales/sugerir');
        $script = '
		$(function() {
			$(".inputnum").numeric(".");
		});
		
		function ultimo(){
			$.ajax({
				url: "' . $link . '",
				success: function(msg){
				  alert( "El ultimo codigo ingresado fue: " + msg );
				}
			});
		}
		
		function sugerir(){
			$.ajax({
					url: "' . $link2 . '",
					success: function(msg){
						if(msg){
							$("#depto").val(msg);
						}
						else{
							alert("No es posible generar otra sugerencia. Coloque el c&oacute;digo manualmente");
						}
					}
				});
		}';
        $modbus = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'C&oacute;digo Proveedor', 'nombre' => 'Nombre', 'rif' => 'RIF'), 'filtro' => array('proveed' => 'C&oacute;digo Proveedor', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'proveed'), 'titulo' => 'Buscar Proveedor');
        $mSCLId = array('tabla' => 'scli', 'columnas' => array('cliente' => 'C&oacute;digo Cliente', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('cliente' => 'C&oacute;digo Cliente', 'nombre' => 'Nombre'), 'retornar' => array('cliente' => 'clienten'), 'titulo' => 'Buscar Cliente');
        $mSINV = array('tabla' => 'sinv', 'columnas' => array('codigo' => 'C&oacute;digo', 'grupo' => 'Grupo', 'descrip' => 'Descripci&oacute;n'), 'filtro' => array('codigo' => 'C&oacute;digo', 'grupo' => 'Grupo', 'descrip' => 'Descripci&oacute;n'), 'retornar' => array('cliente' => 'clienten'), 'titulo' => 'Buscar Cliente');
        $bsclid = $this->datasis->modbus($mSCLId);
        $boton = $this->datasis->modbus($modbus);
        $do = new DataObject("seri");
        if ($status == "create" && !empty($id) && !empty($id2)) {
            $do->load($id);
            $do->load_where("serial", $id2);
        }
        $edit = new DataEdit("Seriales", $do);
        $edit->back_url = site_url("inventario/seriales/filteredgrid");
        $edit->script($script, "create");
        $edit->script($script, "modify");
        $edit->post_process('insert', '_post_insert');
        $edit->post_process('update', '_post_update');
        $edit->post_process('delete', '_post_delete');
        $edit->codigo = new inputField("C&oacute;digo", "codigo");
        $edit->codigo->mode = "autohide";
        $edit->codigo->size = 20;
        $edit->codigo->maxlength = 15;
        $edit->codigo->rule = "trim|required|callback_chexiste";
        $edit->serial = new inputField("Serial", "serial");
        $edit->serial->size = 40;
        $edit->serial->maxlength = 35;
        $edit->serial->rule = "required";
        $edit->descrip = new inputField("Descripci&oacute;n", "descrip");
        $edit->descrip->size = 50;
        $edit->descrip->maxlength = 40;
        $edit->descrip->rule = "trim|strtoupper";
        $edit->descrip->when = array("show");
        $edit->modelo = new inputField("Modelo", "modelo");
        $edit->modelo->size = 25;
        $edit->modelo->maxlength = 20;
        $edit->modelo->rule = "trim|strtoupper";
        $edit->modelo->when = array("show");
        $edit->marca = new inputField("Marca", "marca");
        $edit->marca->size = 23;
        $edit->marca->maxlength = 20;
        $edit->marca->rule = "trim|strtoupper";
        $edit->marca->when = array("show");
        $edit->clave = new inputField("Clave", "clave");
        $edit->clave->size = 12;
        $edit->clave->maxlength = 8;
        $edit->clave->rule = "trim|strtoupper";
        $edit->clave->when = array("show");
        $edit->unidad = new inputField("Unidad", "unidad");
        $edit->unidad->size = 12;
        $edit->unidad->maxlength = 8;
        $edit->unidad->rule = "trim|strtoupper";
        $edit->unidad->when = array("show");
        $edit->fechac = new DateField("Fecha de Compra", "fechac");
        $edit->fechac->size = 12;
        $edit->compra = new inputField("Compra", "compra");
        $edit->compra->size = 10;
        $edit->compra->maxlength = 8;
        $edit->compra->rule = "trim|strtoupper";
        $edit->proveed = new inputField("Proveedor", "proveed");
        $edit->proveed->size = 8;
        $edit->proveed->maxlength = 5;
        $edit->proveed->rule = "trim|strtoupper";
        $edit->proveed->append($boton);
        $edit->fechav = new DateField("Fecha de Venta", "fechav");
        $edit->fechav->size = 12;
        $edit->venta = new inputField("Venta", "venta");
        $edit->venta->size = 10;
        $edit->venta->maxlength = 8;
        $edit->venta->rule = "trim|strtoupper";
        $edit->cliente = new inputField("Cliente", "cliente");
        $edit->cliente->size = 8;
        $edit->cliente->maxlength = 5;
        $edit->cliente->rule = "trim|strtoupper";
        $edit->cliente->append($bsclid);
        $edit->buttons("modify", "save", "undo", "delete", "back");
        $edit->build();
        $data['content'] = $edit->output;
        $data['title'] = "<h1>Seriales</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);
    }
Ejemplo n.º 5
0
 function gdiarias($anio = '', $producto = '', $mes = '')
 {
     $this->load->library('Graph');
     $this->lang->load('calendar');
     if (empty($anio)) {
         return;
     }
     $producto = radecode($producto);
     $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01';
     $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31';
     //echo "fechai=".$fechai;
     //echo "fechaf=".$fechaf;
     $mSQL = "SELECT codigo, LEFT(descrip,20)AS nombre,DAYOFMONTH(a.fecha) as dia,\n    SUM(cantidad)AS cantidad,\n    SUM(importe)AS grantotal\n    FROM itscst  AS a\n    WHERE fecha>='{$fechai}' AND fecha<='{$fechaf}' AND codigo='{$producto}'\n    GROUP BY dia ORDER BY fecha";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $fecha[] = $row->dia;
         $nombre = $row->nombre;
         $data_1[] = $row->grantotal;
     }
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#ADD8E6');
     $bar_1->key('Compras', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Compra de ' . $nombre . ' en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:##00264A}');
         $g->data_sets[] = $bar_1;
         $g->set_x_labels($fecha);
         $g->set_x_label_style(9, '#000000', 3, 1);
         $g->set_x_axis_steps(10);
         $g->x_axis_colour('#A6A6A6', '#ADB5C7');
         $g->set_x_legend('Dias', 16, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->y_axis_colour('#A6A6A6', '#ADB5C7');
         $g->set_y_legend('Compras x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen compras con los datos seleccionados', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 6
0
 function grid()
 {
     $tipo = $this->uri->segment(4);
     $fecha = $this->uri->segment(5);
     $codigo = radecode($this->uri->segment(6));
     $almacen = radecode($this->uri->segment(7));
     if ($fecha === FALSE or $codigo === FALSE or $tipo === FALSE or $almacen === FALSE) {
         redirect('inventario/kardex');
     }
     $this->rapyd->load('datagrid', 'fields');
     $gridout = '';
     $attsp = array('width' => '200', 'height' => '200', 'scrollbars' => 'yes', 'status' => 'yes', 'resizable' => 'yes');
     function bfacts($factura, $codigo)
     {
         //return '';
         $factura = trim($factura);
         if (empty($factura)) {
             return 'No encontrado';
         }
         $CI =& get_instance();
         $dbcodigo = $CI->db->escape($codigo);
         $dbfactura = $CI->db->escape($factura);
         $mSQL = "SELECT GROUP_CONCAT( DISTINCT CONCAT(a.id,':',numero)) AS fact\n\t\t\t\tFROM sfac AS a\n\t\t\t\tJOIN sitems AS b ON a.numero=b.numa AND a.tipo_doc=b.tipoa\n\t\t\t\tWHERE b.codigoa={$dbcodigo} AND {$dbfactura} IN (a.numero,a.maestra) AND a.tipo_doc='F'";
         $facts = $CI->datasis->dameval($mSQL);
         $rt = '';
         $lls = array();
         $arr = explode(',', $facts);
         foreach ($arr as $fact) {
             $parr = explode(':', $fact);
             $lls[] = anchor('formatos/verhtml/FACTURA/' . $parr[0], $parr[1], array('target' => 'showefect'));
         }
         return implode(', ', $lls);
     }
     $grid = new DataGrid();
     $grid->order_by('numero', 'desc');
     $grid->per_page = 50;
     //img(array('src' =>'images/pdf_logo.gif','height' => 18, 'alt' => 'Imprimir', 'title' => 'Imprimir', 'border'=>'0'))
     if ($tipo == '3I' || $tipo == '3M') {
         //ventas de caja
         $fields = $this->db->field_data('sfac');
         $ppk = array();
         $select = array('a.numa', 'a.tipoa', 'a.numa', 'CONCAT("(",b.cod_cli,") ",b.nombre) cliente', 'a.cana*IF(a.tipoa="D",-1,1) AS cana', 'a.fecha', 'a.vendedor', 'a.preca', 'a.tota', 'b.tipo_doc', 'a.hora');
         foreach ($fields as $field) {
             if ($field->primary_key == 1) {
                 $ppk[] = '<#' . $field->name . '#>';
                 $pknombre = 'b.' . $field->name;
                 if (array_search($pknombre, $select) === false) {
                     $select[] = $pknombre;
                 }
             }
         }
         $gridout = '';
         $ll = anchor_popup('formatos/descargar/FACTURA/' . implode('/', $ppk), '(pdf)', $attsp);
         $link = anchor('formatos/verhtml/FACTURA/' . implode('/', $ppk), '<#tipoa#><#numa#> ' . $ll, array('target' => 'showefect'));
         $grid->title('Facturas');
         $grid->column('N&uacute;mero', $link);
         $grid->column('Cliente', 'cliente');
         $grid->column('Cantidad', '<nformat><#cana#></nformat>', 'align=right');
         $grid->column('Fecha', '<dbdate_to_human><#fecha#></dbdate_to_human>', 'align=center');
         $grid->column('Vendedor', 'vendedor', 'align=center');
         $grid->column('Hora', 'hora', 'align=center');
         $grid->column('Precio', '<nformat><#preca#></nformat>', 'align=\'right\'');
         $grid->column('Total', '<nformat><#tota#></nformat>', 'align=\'right\'');
         $grid->db->select($select);
         $grid->db->from('sitems AS a');
         $grid->db->join('sfac   AS b', 'b.numero=a.numa AND b.tipo_doc=a.tipoa');
         $grid->db->where('a.fecha', $fecha);
         $grid->db->where('a.codigoa', $codigo);
         $grid->db->where('a.tipoa !=', 'X');
         $grid->db->not_like('a.numa', '_', 'after');
         $grid->db->where('b.almacen', $almacen);
         $grid->build();
         if ($grid->recordCount > 0) {
             $gridout .= $grid->output;
         }
         $fields = $this->db->field_data('snte');
         $ppk = array();
         $select = array('a.numero', 'a.fecha', 'a.nombre', 'b.cana', 'b.precio', 'b.importe', 'a.factura');
         foreach ($fields as $field) {
             if ($field->primary_key == 1) {
                 $ppk[] = '<#' . $field->name . '#>';
                 $pknombre = 'a.' . $field->name;
                 if (array_search($pknombre, $select) === false) {
                     $select[] = $pknombre;
                 }
             }
         }
         $grid2 = new DataGrid();
         $grid2->use_function('bfacts');
         $ll = anchor_popup('formatos/descargar/SNTE/' . implode('/', $ppk), '(pdf)', $attsp);
         $link = anchor('formatos/verhtml/SNTE/' . implode('/', $ppk), '<#numero#> ' . $ll, array('target' => 'showefect'));
         $grid2->title('Notas de Entrega Facturadas');
         $grid2->column('N&uacute;mero', $link);
         $grid2->column('Fecha', '<dbdate_to_human><#fecha#></dbdate_to_human>', 'align=center');
         $grid2->column('Cliente', 'nombre');
         $grid2->column('Cantidad', '<nformat><#cana#></nformat>', 'align=\'right\'');
         $grid2->column('Costo', '<nformat><#precio#></nformat>', 'align=\'right\'');
         $grid2->column('Importe', '<nformat><#importe#></nformat>', 'align=\'right\'');
         //$grid2->column('Factura'  ,'<#factura#>');
         $grid2->column('Fact.(s)', "<bfacts><#factura#>|{$codigo}</bfacts>");
         $grid2->db->select($select);
         $grid2->db->from('snte   AS a');
         $grid2->db->join('itsnte AS b', 'a.numero=b.numero');
         $grid2->db->join('sfac   AS c', 'a.factura=c.numero AND c.tipo_doc=\'F\'');
         $grid2->db->where('b.codigo', $codigo);
         $grid2->db->where('a.fecha', $fecha);
         $grid2->build();
         if ($grid2->recordCount > 0) {
             $gridout .= $grid2->output;
         }
     } elseif ($tipo == '3R') {
         //ventas de Restaurante
         $grid->title('Facturas');
         //$link=anchor('inventario/kardex/rfac/'.$this->_unionuri().'/show/'.implode('/',$ppk),'<#tipoa#><#numa#>');
         $grid->column('N&uacute;mero', 'numero');
         $grid->column('Cliente', 'cliente');
         $grid->column('Cantidad', '<nformat><#cantidad#></nformat>', 'align=right');
         $grid->column('Fecha', '<dbdate_to_human><#fecha#></dbdate_to_human>', 'align=center');
         $grid->column('Mesonero', 'mesonero', 'align=center');
         $grid->column('Precio', '<nformat><#precio#></nformat>', 'align=right');
         $grid->column('Total', '<nformat><#importe#></nformat>', 'align=right');
         $grid->db->select(array('a.numero', 'CONCAT("(",b.cod_cli,") ",b.nombre) cliente', 'c.cantidad', 'a.fecha', 'a.mesonero', 'a.precio', 'a.importe'));
         $grid->db->from('ritems a');
         $grid->db->join('rfac b', 'b.numero=a.numero');
         $grid->db->join('itrece c', 'c.menu=a.codigo');
         $grid->db->where('a.fecha', $fecha);
         $grid->db->where('c.codigo', $codigo);
         $grid->build();
         $gridout = $grid->output;
     } elseif ($tipo == '1T' || $tipo == '0F' || $tipo == '9F') {
         //Transferencias
         $fields = $this->db->field_data('stra');
         $ppk = array();
         $select = array('b.numero', 'b.envia', 'b.recibe', 'a.cantidad', 'b.fecha', 'b.observ1', 'a.costo');
         foreach ($fields as $field) {
             if ($field->primary_key == 1) {
                 $ppk[] = '<#' . $field->name . '#>';
                 $pknombre = 'b.' . $field->name;
                 if (array_search($pknombre, $select) === false) {
                     $select[] = $pknombre;
                 }
             }
         }
         $ll = anchor_popup('formatos/descargar/STRA/' . implode('/', $ppk), '(pdf)', $attsp);
         $link = anchor('formatos/verhtml/STRA/' . implode('/', $ppk), '<#numero#> ' . $ll, array('target' => 'showefect'));
         $grid->title('Tranferencias');
         $grid->column('N&uacute;mero', $link);
         $grid->column('Env&iacute;a', 'envia');
         $grid->column('Recibe', 'recibe');
         $grid->column('Cantidad', '<nformat><#cantidad#></nformat>', 'align=\'right\'');
         $grid->column('Fecha', '<dbdate_to_human><#fecha#></dbdate_to_human>', 'align=\'center\'');
         $grid->column('Observaci&oacute;n', 'observ1');
         $grid->db->select($select);
         $grid->db->from('itstra a');
         $grid->db->join('stra b', 'a.numero=b.numero');
         $grid->db->where('b.fecha', $fecha);
         $grid->db->where('a.codigo', $codigo);
         $grid->build();
         if ($grid->recordCount > 0) {
             $gridout = $grid->output;
         }
         $grid2 = new DataGrid();
         //$grid2->order_by('numero','desc');
         $grid2->per_page = 50;
         $grid2->title('Tranferencias por consumo detallado');
         $grid2->column('C&oacute;digo', 'codigo');
         $grid2->column('Consumido', 'cantidad', 'align=\'right\'');
         $grid2->column('Enlace', 'enlace');
         $grid2->column('Entrada', 'fraccion', 'align=\'right\'');
         $grid2->db->select(array('a.codigo', 'b.descrip', 'a.cantidad', 'a.fraccion', 'a.enlace', 'c.descrip'));
         $grid2->db->from('trafrac AS a');
         $grid2->db->join('sinv AS b', 'a.codigo=b.codigo');
         $grid2->db->join('sinv AS c', 'a.enlace=c.codigo');
         $grid2->db->where('a.fecha', $fecha);
         $grid2->db->where($this->db->escape($codigo) . ' IN (`a`.`codigo`,`a`.`enlace`)', null, false);
         $grid2->build();
         if ($grid2->recordCount > 0) {
             $gridout .= $grid2->output;
         }
     } elseif ($tipo == '2C') {
         //compras
         $fields = $this->db->field_data('scst');
         $ppk = array();
         foreach ($fields as $field) {
             if ($field->primary_key == 1) {
                 $ppk[] = '<#' . $field->name . '#>';
                 $pknombre = 'b.' . $field->name;
                 $select = array('a.numero', 'a.fecha', 'a.proveed', 'a.depo', 'a.cantidad', 'a.costo', 'a.importe', 'a.control');
                 if (array_search($pknombre, $select) === false) {
                     $select[] = $pknombre;
                 }
             }
         }
         $ll = anchor_popup('formatos/descargar/COMPRA/' . implode('/', $ppk), '(pdf)', $attsp);
         $link = anchor('formatos/verhtml/COMPRA/' . implode('/', $ppk), '<#numero#> ' . $ll, array('target' => 'showefect'));
         $grid->title('Compras');
         $grid->column('N&uacute;mero', $link);
         $grid->column('Fecha', '<dbdate_to_human><#fecha#></dbdate_to_human>', 'align=\'center\'');
         $grid->column('Proveedor', 'proveed');
         $grid->column('Deposito', 'depo');
         $grid->column('Cantidad', '<nformat><#cantidad#></nformat>', 'align=\'right\'');
         $grid->column('Costo', '<nformat><#costo#></nformat>', 'align=\'right\'');
         $grid->column('Importe', '<nformat><#importe#></nformat>', 'align=\'right\'');
         $grid->db->select($select);
         $grid->db->from('itscst a');
         $grid->db->join('scst b', 'a.control=b.control');
         $grid->db->where('a.codigo', $codigo);
         $grid->db->where('b.recep', $fecha);
         $grid->db->where('b.actuali >= b.fecha');
         $grid->build();
         $gridout = $grid->output;
     } elseif ($tipo == '4N') {
         //Nota de entrega
         $fields = $this->db->field_data('snte');
         $ppk = array();
         $select = array('a.numero', 'a.fecha', 'a.nombre', 'b.cana', 'b.precio', 'b.importe', 'a.factura');
         foreach ($fields as $field) {
             if ($field->primary_key == 1) {
                 $ppk[] = '<#' . $field->name . '#>';
                 $pknombre = 'a.' . $field->name;
                 if (array_search($pknombre, $select) === false) {
                     $select[] = $pknombre;
                 }
             }
         }
         $ll = anchor_popup('formatos/descargar/SNTE/' . implode('/', $ppk), '(pdf)', $attsp);
         $link = anchor('formatos/verhtml/SNTE/' . implode('/', $ppk), '<#numero#> ' . $ll, array('target' => 'showefect'));
         $grid->use_function('bfacts');
         $grid->title('Notas de Entrega');
         $grid->column('N&uacute;mero', $link);
         $grid->column('Fecha', '<dbdate_to_human><#fecha#></dbdate_to_human>', 'align=center');
         $grid->column('Cliente', 'nombre');
         $grid->column('Cantidad', '<nformat><#cana#></nformat>', 'align=\'right\'');
         $grid->column('Costo', '<nformat><#precio#></nformat>', 'align=\'right\'');
         $grid->column('Importe', '<nformat><#importe#></nformat>', 'align=\'right\'');
         $grid->column('Fact.(s)', "<bfacts><#factura#>|{$codigo}</bfacts>");
         $grid->db->select($select);
         $grid->db->from('snte a');
         $grid->db->join('itsnte b', 'a.numero=b.numero');
         $grid->db->where('b.codigo', $codigo);
         $grid->db->where('a.fecha', $fecha);
         $grid->build();
         $gridout = $grid->output;
     } elseif ($tipo == '6C') {
         //Conversiones
         $fields = $this->db->field_data('conv');
         $ppk = array();
         $select = array('a.numero', 'a.estampa', 'b.entrada', 'b.salida', 'b.codigo');
         foreach ($fields as $field) {
             if ($field->primary_key == 1) {
                 $ppk[] = '<#' . $field->name . '#>';
                 $pknombre = 'a.' . $field->name;
                 if (array_search($pknombre, $select) === false) {
                     $select[] = $pknombre;
                 }
             }
         }
         $ll = anchor_popup('formatos/descargar/CONV/' . implode('/', $ppk), '(pdf)', $attsp);
         $link = anchor('formatos/verhtml/CONV/' . implode('/', $ppk), '<#numero#> ' . $ll, array('target' => 'showefect'));
         $grid->title('Conversiones');
         $grid->column('N&uacute;mero', $link);
         $grid->column('Fecha', '<dbdate_to_human><#estampa#></dbdate_to_human>', 'align=center');
         $grid->column('Entrada', '<nformat><#entrada#></nformat>', 'align=right');
         $grid->column('Salida', '<nformat><#salida#></nformat>', 'align=right');
         $grid->db->select($select);
         $grid->db->from('conv AS a');
         $grid->db->join('itconv AS b', 'a.numero=b.numero');
         $grid->db->where('b.codigo', $codigo);
         $grid->db->where('a.estampa', $fecha);
         $grid->build();
         $gridout = $grid->output;
     } elseif ($tipo == '5C') {
         //Ajustes de inventario
         $fields = $this->db->field_data('ssal');
         $ppk = array();
         $select = array('a.numero', 'a.fecha', 'a.almacen', 'a.motivo', 'b.descrip', 'b.cantidad', 'b.costo');
         foreach ($fields as $field) {
             if ($field->primary_key == 1) {
                 $ppk[] = '<#' . $field->name . '#>';
                 $pknombre = 'a.' . $field->name;
                 if (array_search($pknombre, $select) === false) {
                     $select[] = $pknombre;
                 }
             }
         }
         $ll = anchor_popup('formatos/descargar/SSAL/' . implode('/', $ppk), '(pdf)', $attsp);
         $link = anchor('formatos/verhtml/SSAL/' . implode('/', $ppk), '<#numero#> ' . $ll, array('target' => 'showefect'));
         $grid->title('Ajustes de inventario');
         $grid->column('N&uacute;mero', $link);
         $grid->column('Descripci&oacute;n', 'descrip');
         $grid->column('Fecha', '<dbdate_to_human><#fecha#></dbdate_to_human>', 'align=\'center\'');
         $grid->column('Cantidad', '<nformat><#cantidad#></nformat>', 'align=\'right\'');
         $grid->column('Costo', '<nformat><#costo#></nformat>', 'align=\'right\'');
         $grid->db->select($select);
         $grid->db->from('ssal AS a');
         $grid->db->join('itssal AS b', 'a.numero=b.numero');
         $grid->db->where('b.codigo', $codigo);
         $grid->db->where('a.fecha', $fecha);
         $grid->build();
         $gridout = $grid->output;
     } elseif ($tipo == '5D') {
         //Consignacion
         $fields = $this->db->field_data('scon');
         $ppk = array();
         $select = array('a.numero', 'a.fecha', 'b.desca', 'b.cana', 'b.precio');
         foreach ($fields as $field) {
             if ($field->primary_key == 1) {
                 $ppk[] = '<#' . $field->name . '#>';
                 $pknombre = 'a.' . $field->name;
                 if (array_search($pknombre, $select) === false) {
                     $select[] = $pknombre;
                 }
             }
         }
         $ll = anchor_popup('formatos/descargar/SCON/' . implode('/', $ppk), '(pdf)', $attsp);
         $link = anchor('formatos/verhtml/SCON/' . implode('/', $ppk), '<#numero#> ' . $ll, array('target' => 'showefect'));
         $grid->title('Consignaci&oacute;n de inventario');
         $grid->column('N&uacute;mero', $link);
         $grid->column('Descripci&oacute;n', 'desca');
         $grid->column('Fecha', '<dbdate_to_human><#fecha#></dbdate_to_human>', 'align=\'center\'');
         $grid->column('Cantidad', '<nformat><#cana#></nformat>', 'align=\'right\'');
         $grid->column('Precio', '<nformat><#precio#></nformat>', 'align=\'right\'');
         $grid->db->select($select);
         $grid->db->from('scon AS a');
         $grid->db->join('itscon AS b', 'a.numero=b.numero');
         $grid->db->where('b.codigo', $codigo);
         $grid->db->where('a.fecha', $fecha);
         $grid->build();
         $gridout = $grid->output;
     }
     //echo $grid->db->last_query();
     $iframe = new iframeField('showefect', 'inventario/kardex/showefect', "400");
     $iframe->status = 'show';
     $iframe->build();
     $data['content'] = $gridout . $iframe->output;
     $data['title'] = heading('Transacciones del producto ' . $codigo);
     $data['head'] = $this->rapyd->get_head();
     $this->load->view('view_ventanas', $data);
 }
Ejemplo n.º 7
0
 function gdiarias($anio = '', $producto = '', $mes = '')
 {
     $this->load->library('Graph');
     $producto = radecode($producto);
     if (empty($mes) or empty($anio) or empty($producto)) {
         return;
     }
     $fechai = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '01';
     $fechaf = $anio . str_pad($mes, 2, "0", STR_PAD_LEFT) . '31';
     $mSQL = "SELECT a.codigo AS codigo,b.descrip AS nombre,DAYOFMONTH(a.fecha) as dia,a.cantidad AS cantidad,\n    SUM(a.venta)AS grantotal \n    FROM  costos AS a \n    JOIN  sinv AS b ON a.codigo=b.codigo\n    WHERE a.fecha >='{$fechai}' AND a.fecha <='{$fechaf}' AND a.codigo='{$producto}'\n    GROUP BY fecha ORDER BY grantotal DESC";
     //echo $mSQL;
     $maxval = 0;
     $query = $this->db->query($mSQL);
     foreach ($query->result() as $row) {
         if ($row->grantotal > $maxval) {
             $maxval = $row->grantotal;
         }
         $fecha[] = $row->dia;
         $data_1[] = $row->grantotal;
     }
     $nombre = $row->nombre;
     $om = 1;
     while ($maxval / $om > 100) {
         $om = $om * 10;
     }
     $bar_1 = new bar(75, '#0F235F');
     $bar_1->key('Ventas', 10);
     for ($i = 0; $i < count($data_1); $i++) {
         $bar_1->add_data_tip($data_1[$i] / $om, graph::esc(number_format($data_1[$i], 2, ',', '.')));
     }
     $g = new graph();
     $g->set_is_decimal_separator_comma(1);
     if ($maxval > 0) {
         $g->title('Ventas de ' . $nombre . '  en el mes ' . $mes . '/' . $anio, '{font-size: 16px; color:#0F3054}');
         $g->data_sets[] = $bar_1;
         $g->set_x_labels($fecha);
         $g->set_x_label_style(10, '#000000', 3, 1);
         $g->set_x_axis_steps(10);
         $g->set_x_legend('Dias', 14, '#004381');
         $g->bg_colour = '#FFFFFF';
         $g->set_tool_tip('#key#<br>Dia: #x_label# <br>Monto: #tip#');
         $g->set_y_max(ceil($maxval / $om));
         $g->y_label_steps(5);
         $g->set_y_legend('Ventas x ' . number_format($om, 0, '', '.') . ' (Bs)', 16, '#004381');
     } else {
         $g->title('No existen ventas con los datos seleccionados', '{font-size:18px; color: #d01f3c}');
     }
     $g->bg_colour = '#FFFFFF';
     echo utf8_encode($g->render());
 }
Ejemplo n.º 8
0
 function cconci()
 {
     $error = '';
     $data = $this->input->post('data');
     $accion = $this->input->post('accion');
     $fconci = human_to_dbdate($this->input->post('fconci'));
     if ($data !== false) {
         $pk = unserialize($data);
         $pk[2] = radecode($pk[2]);
         if ($accion == 'true') {
             $ddata = array('fconcilia' => $fconci, 'concilia' => 'S');
         } else {
             $ddata = array('fconcilia' => null, 'concilia' => 'N');
         }
         $where = ' codbanc             = ' . $this->db->escape($pk[0]);
         $where .= ' AND tipo_doc        = ' . $this->db->escape($pk[1]);
         $where .= ' AND cheque          = ' . $this->db->escape($pk[2]);
         $where .= ' AND id              = ' . $this->db->escape($pk[4]);
         //$where .= ' AND MID(status,2,1) = "2"';
         $fechas = $this->datasis->damerow("SELECT replace(fecha,'-','') fecha,fecha f FROM mbanc WHERE {$where}");
         $error .= $this->chbanse($pk[0], $fconci);
         //			$error  .=$this->chbanse($pk[0],$fechas['f']);
         if ($fechas['fecha'] > $pk[3] && $accion == 'true') {
             $error .= 'La fecha de Conciliacion no puede ser menor a la fecha del documento';
         }
         $mSQL = $this->db->update_string('mbanc', $ddata, $where);
         if (empty($error)) {
             logusu("conci", $mSQL);
             if ($this->db->query($mSQL)) {
                 echo '1';
             } else {
                 echo 'Hubo un error, comuniquese con soporte tecnico';
             }
         } else {
             echo $error;
         }
     }
 }
Ejemplo n.º 9
0
 function redi($codigo = '')
 {
     $codigoe = $this->db->escape(radecode($codigo));
     $id = $this->datasis->dameval("SELECT id FROM COSTOS WHERE codigo={$codigoe} ORDER BY id desc LIMIT 1");
     redirect($this->url . 'dataedit/show/' . $id);
 }