function filteredgrid() { $this->datasis->modulo_id(103, 1); $this->rapyd->load("datafilter2", "datagrid"); $link = site_url('presupuesto/programas/get_programa'); $script = ' $(document).ready(function(){ $("#sect_pres").change(function(){ $.post("' . $link . '",{ sect_pres:$(this).val() },function(data){$("#prog_pres").html(data);}) }); }); '; $filter = new DataFilter2("Filtro por Proyectos", "proyectos"); $filter->script($script, "create"); $filter->script($script, "modify"); $filter->sect_pres = new dropdownField("Sector", "sect_pres"); $filter->sect_pres->option("", ""); $filter->sect_pres->options("SELECT sect_pres, CONCAT_WS(' ',sect_pres,nomb_sect) AS nomb_sect FROM sectores ORDER BY sect_pres"); $filter->sect_pres->style = 'width:300px;'; $filter->prog_pres = new dropdownField("Programa", "prog_pres"); $filter->prog_pres->option("", ""); $filter->prog_pres->style = 'width:300px;'; $sect_pres = $filter->getval('sect_pres'); if ($sect_pres !== FALSE) { $filter->prog_pres->options("SELECT prog_pres, CONCAT_WS(' ',prog_pres,nomb_prog) AS nomb_prog FROM programas WHERE sect_pres ='{$sect_pres}' ORDER BY prog_pres"); } else { $filter->prog_pres->option("", "Seleccione un Sector primero"); } $filter->id_proy = new inputField("Identificador Proyecto", "id_proy"); $filter->id_proy->size = 5; $filter->id_proy->maxlength = 2; $filter->proy_pres = new inputField("Código Proyecto", "proy_pres"); $filter->proy_pres->size = 5; $filter->proy_pres->maxlength = 2; $filter->nomb_proy = new inputField("Nombre Proyecto", "nomb_proy"); $filter->nomb_proy->size = 40; $filter->nomb_proy->maxlength = 80; $filter->buttons("reset", "search"); $filter->build(); $uri = anchor('presupuesto/proyectos/dataedit/show/<#id_proy#>', '<#id_proy#>'); $grid = new DataGrid("Lista de Proyectos"); $grid->order_by("proy_pres", "asc"); $grid->column("Identificador", $uri, "align='center'"); $grid->column("Sector", "sect_pres", "align='left'"); $grid->column("Programa", "prog_pres", "align='left'"); $grid->column("Proyecto", "proy_pres", "align='left'"); $grid->column("Nombre", "nomb_proy", "align='left'"); $grid->add("presupuesto/proyectos/dataedit/create"); $grid->build(); $data['content'] = $filter->output . $grid->output; $data['title'] = " Proyectos "; $data["head"] = script("jquery.pack.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function filteredgrid() { $this->rapyd->load('datafilter2', 'datagrid'); $link2 = site_url('inventario/common/get_linea'); $link3 = site_url('inventario/common/get_grupo'); $mSINV = array('tabla' => 'sinv', 'columnas' => array('codigo' => 'Cóodigo', 'descrip' => 'Descripción', 'descrip2' => 'Descripción 2'), 'filtro' => array('codigo' => 'Código', 'descrip' => 'Descripción'), 'retornar' => array('codigo' => 'codigo'), 'titulo' => 'Buscar Codigo'); $bSINV = $this->datasis->modbus($mSINV); $mSPRV = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'Código', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('proveed' => 'Código', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'proveed'), 'titulo' => 'Buscar Proveedor'); $bSPRV = $this->datasis->modbus($mSPRV); $attr = array('width' => '800', 'height' => '600', 'scrollbars' => 'yes', 'status' => 'yes', 'resizable' => 'yes', 'screenx' => '0', 'screeny' => '0'); $op = array(); $mSQL = 'SELECT margen,CONCAT(margen,"%") AS val FROM sinvpromo GROUP BY margen'; $query = $this->db->query($mSQL); if ($query->num_rows() > 0) { foreach ($query->result() as $row) { $op[$row->margen] = $row->val; } } $sop = serialize($op); function dropdown($cod, $margen, $sop) { $op = unserialize($sop); return form_dropdown($cod, $op, $margen); } $js = 'function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); }else{ $("#nom_depto").attr("disabled",""); } } function linea(){ if($("#linea").val()!=""){ $("#nom_linea").attr("disabled","disabled"); }else{ $("#nom_linea").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); }else{ $("#nom_grupo").attr("disabled",""); } }'; $select = array('a.id', 'a.codigo', 'b.ultimo', 'b.descrip', 'b.marca', 'b.precio1', 'a.margen', 'a.cantidad', 'b.precio1*(1-(a.margen/100)) AS pfinal', 'b.id AS sinvid'); $filter = new DataFilter2('Filtro de promociones'); $filter->script($js); $filter->db->select($select); $filter->db->from('sinvpromo AS a'); $filter->db->join('sinv AS b', 'a.codigo=b.codigo'); $filter->codigo = new inputField('Código de producto', 'codigo'); $filter->codigo->db_name = 'a.codigo'; $filter->codigo->size = 15; $filter->codigo->maxlength = 15; $filter->codigo->append($bSINV); $filter->descrip = new inputField('Descripción', 'descrip'); $filter->descrip->db_name = 'b.descrip'; $filter->proveed = new inputField('Proveedor', 'proveed'); $filter->proveed->append($bSPRV); $filter->proveed->db_name = 'b.prov1'; $filter->proveed->size = 25; $filter->depto = new dropdownField('Departamento', 'depto'); $filter->depto->db_name = 'b.depto'; $filter->depto->option("", "Seleccione un Departamento"); $filter->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->linea2 = new dropdownField("Línea", "linea"); $filter->linea2->db_name = "b.linea"; $filter->linea2->option("", "Seleccione un Departamento primero"); $depto = $filter->getval('depto'); if ($depto !== FALSE) { $filter->linea2->options("SELECT linea, descrip FROM line WHERE depto='{$depto}' ORDER BY descrip"); } else { $filter->linea2->option("", "Seleccione un Departamento primero"); } $filter->grupo = new dropdownField("Grupo", "grupo"); $filter->grupo->db_name = 'c.grupo'; $filter->grupo->option("", "Seleccione una Línea primero"); $linea = $filter->getval('linea2'); if ($linea !== FALSE) { $filter->grupo->options("SELECT grupo, nom_grup FROM grup WHERE linea='{$linea}' ORDER BY nom_grup"); } else { $filter->grupo->option('', 'Seleccione un Departamento primero'); } $filter->margen = new dropdownField('Promoción', 'margen'); $filter->margen->db_name = 'a.margen'; $filter->margen->option('', 'Todas'); $filter->margen->options($op); $filter->margen->style = 'width:120px;'; $filter->marca = new dropdownField('Marca', 'marca'); $filter->marca->db_name = 'b.marca'; $filter->marca->option('', 'Todas'); $filter->marca->options('SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca'); $filter->marca->style = 'width:220px;'; $filter->buttons('reset', 'search'); $filter->build(); $link = anchor('/inventario/sinvpromo/dataedit/modify/<#id#>', '<#codigo#>'); $llink = anchor_popup('inventario/consultas/preciosgeneral/<#codigo#>', 'Consultar precio', $attr); $attr['width'] = '420'; $attr['height'] = '400'; $llin2 = anchor_popup('inventario/precios_sinv/dataedit/modify/<#sinvid#>', '<nformat><#precio1#></nformat>', $attr); function pinta($u, $d, $char) { if ($u > $d) { return "<b style='color:red'>{$char}</b>"; } return "<b style='color:green'>{$char}</b>"; } $grid = new DataGrid('Lista de Artículos'); $grid->use_function('dropdown', 'pinta'); $grid->order_by('codigo', 'asc'); $grid->per_page = 15; $grid->column_orderby('Código', $link, 'codigo'); $grid->column_orderby('Descripción', '<pinta><#ultimo#>|<#pfinal#>|<#descrip#></pinta>', 'descrip'); $grid->column_orderby('Costo', '<nformat><#ultimo#></nformat>', 'ultimo', 'align=\'right\''); $grid->column_orderby('P.Final', '<nformat><#pfinal#></nformat>', 'pfinal', 'align=\'right\''); $grid->column_orderby('PVP', $llin2, 'precio1', 'align=\'right\''); $grid->column_orderby('Marca', 'marca', 'marca'); $grid->column_orderby('Promoción', "<dropdown><#id#>|<#margen#>|{$sop}</dropdown>", 'margen', 'align="right"'); $grid->column('Consulta', $llink); //$grid->column_orderby('F.Desde' ,'<dbdate_to_human>fechad</dbdate_to_human>','fechad'); //$grid->column_orderby('F.Hasta' ,'<dbdate_to_human>fechah</dbdate_to_human>','fechah'); $grid->add('inventario/sinvpromo/dataedit/create'); $grid->build(); //echo $grid->db->last_query(); $this->rapyd->jquery[] = ' $("select:not(#margen)").change( function() { $.ajax({ type: "POST", url: "' . site_url('inventario/sinvpromo/cmargen') . '", data: "cod="+$(this).attr("name")+"&margen="+$(this).val(), success: function(msg){ if (msg=="0"){ alert("Error al actualizar"); } } }); });'; $this->rapyd->jquery[] = ' $("#depto").change(function(){ depto(); $.post("' . $link2 . '",{ depto:$(this).val() },function(data){$("#linea").html(data);}) $.post("' . $link3 . '",{ linea:"" },function(data){$("#grupo").html(data);}) }); $("#linea").change(function(){ linea(); $.post("' . $link3 . '",{ linea:$(this).val() },function(data){$("#grupo").html(data);}) }); $("#grupo").change(function(){ grupo(); }); depto();linea();grupo();'; $data['content'] = $filter->output . form_open('', array('id' => 'selec_promo')) . $grid->output . form_close(); $data['title'] = '<h1>Descuentos promocionales</h1>'; $data['head'] = $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function filteredgrid($para = '') { $this->rapyd->load("datafilter2", "datagrid", "dataobject", "fields"); $user = $this->session->userdata('usuario'); $link2 = site_url('inventario/common/get_linea'); $link3 = site_url('inventario/common/get_grupo'); $link4 = site_url('inventario/gfotos/tabla'); $link5 = site_url(); $script = ' function atras(){ window.location="' . $link5 . '/"; } $(document).ready(function(){ $("#depto").change(function(){ $("#objnumero").val(""); depto(); $.post("' . $link2 . '",{ depto:$(this).val() },function(data){$("#linea").html(data);}) $.post("' . $link3 . '",{ linea:"" },function(data){$("#grupo").html(data);}) }); $("#linea").change(function(){ linea(); $.post("' . $link3 . '",{ linea:$(this).val() },function(data){$("#grupo").html(data);}) }); $("#grupo").change(function(){ grupo(); }); depto(); linea(); grupo(); }); function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); } else{ $("#nom_depto").attr("disabled",""); } } function linea(){ if($("#linea").val()!=""){ $("#nom_linea").attr("disabled","disabled"); } else{ $("#nom_linea").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); } else{ $("#nom_grupo").attr("disabled",""); } } '; $filter = new DataFilter2("Filtro por Producto"); $filter->db->_escape_char = ''; $filter->db->_protect_identifiers = false; $filter->script($script); $filter->descrip = new inputField("Descripción", "descrip"); $filter->descrip->db_name = 'CONCAT_WS(" ",a.descrip,a.descrip2)'; $filter->descrip->size = 25; $filter->depto = new dropdownField("Departamento", "depto"); $filter->depto->db_name = "d.depto"; $filter->depto->option("", "Seleccione un Departamento"); $filter->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->linea2 = new dropdownField("Línea", "linea"); $filter->linea2->db_name = "c.linea"; $filter->linea2->option("", "Seleccione un Departamento primero"); $depto = $filter->getval('depto'); if ($depto !== FALSE) { $filter->linea2->options("SELECT linea, descrip FROM line WHERE depto='{$depto}' ORDER BY descrip"); } else { $filter->linea2->option("", "Seleccione un Departamento primero"); } $filter->grupo = new dropdownField("Grupo", "grupo"); $filter->grupo->db_name = "b.grupo"; $filter->grupo->option("", "Seleccione una Línea primero"); $linea = $filter->getval('linea2'); if ($linea !== FALSE) { $filter->grupo->options("SELECT grupo, nom_grup FROM grup WHERE linea='{$linea}' ORDER BY nom_grup"); } else { $filter->grupo->option("", "Seleccione un Departamento primero"); } $filter->marca = new dropdownField("Marca", "marca"); $filter->marca->option("", ""); $filter->marca->options("SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca"); $filter->marca->style = 'width:220px;'; $filter->buttons("reset", "search"); $filter->build(); $tabla = ""; if ($this->rapyd->uri->is_set("search") and $filter->is_valid()) { $tabla = form_open("forma/ver/catalogo2"); $grid = new DataGrid("Lista de Artículos Para el Catalogo"); $grid->db->select("COUNT(*) AS num,GROUP_CONCAT(a.codigo) as articulos,\n\t\t\te.sinv_id as sinv_id,e.nombre AS nombre,e.ruta AS ruta,\n\t\t\te.comentario AS comentario,e.principal AS principal,\n\t\t\ta.tipo AS tipo,a.id as id,a.codigo as codigo,a.descrip,\n\t\t\tb.nom_grup AS nom_grup, b.grupo AS grupoid,\n\t\t\tc.descrip AS nom_linea, c.linea AS linea,\n\t\t\td.descrip AS nom_depto, d.depto AS depto"); $grid->db->from("sinv AS a"); $grid->db->join("grup AS b", "a.grupo=b.grupo"); $grid->db->join("line AS c", "b.linea=c.linea"); $grid->db->join("dpto AS d", "c.depto=d.depto"); $grid->db->join("sinvfot AS e", "e.sinv_id=a.id"); $grid->db->group_by("e.nombre"); $grid->db->_escape_char = ''; $grid->db->_protect_identifiers = false; $grid->order_by("codigo", "asc"); $grid->use_function('asigna'); $grid->column_orderby("código", "codigo", "codigo"); $grid->column_orderby("Departamento", "<#nom_depto#>", "nom_depto", 'align=left'); $grid->column_orderby("Línea", "<#nom_linea#>", "nom_linea", 'align=left'); $grid->column_orderby("Grupo", "<#nom_grup#>", "nom_grup", 'align=left'); $grid->column_orderby("Descripción", "descrip", "descrip"); // $grid->column("Nombre","nombre"); $grid->build(); $consul = $this->db->last_query(); // $options = array( // 'D' => 'DESCARGAR', // 'I' => 'VER', // ); $tabla .= form_hidden('consul', $consul); //$tabla.=$grid->output.form_dropdown('opcion', $options, 'D').form_submit('mysubmit', 'Generar'); $tabla .= $grid->output . form_submit('mysubmit', 'Generar'); $tabla .= form_close(); } $back = "<table width='100%'border='0'><tr><td width='80%'></td><td width='20%'><a href='javascript:atras()'><spam id='regresar'align='right'>REGRESAR</spam></a></td></tr></table>"; //$data['filtro']=$filter->output; $data['content'] = $filter->output . $tabla; //$data['smenu'] = $back;//.$grid->output; $data['title'] = "Genera Catalogo"; $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . script("sinvmaes2.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function filteredgrid() { $this->rapyd->load("datafilter2", "datagrid"); $mSPRV = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'Cóodigo', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('proveed' => 'Código', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'proveed'), 'titulo' => 'Buscar Beneficiario'); $bSPRV = $this->datasis->modbus($mSPRV); $link2 = site_url('inventario/common/get_linea'); $link3 = site_url('inventario/common/get_grupo'); $script = ' $(document).ready(function(){ $("#depto").change(function(){ depto(); $.post("' . $link2 . '",{ depto:$(this).val() },function(data){$("#linea").html(data);}) $.post("' . $link3 . '",{ linea:"" },function(data){$("#grupo").html(data);}) }); $("#linea").change(function(){ linea(); $.post("' . $link3 . '",{ linea:$(this).val() },function(data){$("#grupo").html(data);}) }); $("#grupo").change(function(){ grupo(); }); depto(); linea(); grupo(); }); function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); } else{ $("#nom_depto").attr("disabled",""); } } function linea(){ if($("#linea").val()!=""){ $("#nom_linea").attr("disabled","disabled"); } else{ $("#nom_linea").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); } else{ $("#nom_grupo").attr("disabled",""); } } '; //filter $filter = new DataFilter2(""); $filter->db->select("a.id,a.tipo AS tipo,codigo,a.descrip,b.nom_grup AS nom_grup,b.grupo AS grupoid,c.descrip AS nom_linea,c.linea AS linea,d.descrip AS nom_depto,d.depto AS depto"); $filter->db->from("sumi AS a"); $filter->db->join("grup AS b", "a.grupo=b.grupo", "LEFT"); $filter->db->join("line AS c", "b.linea=c.linea", "LEFT"); $filter->db->join("dpto AS d", "c.depto=d.depto", "LEFT"); $filter->script($script); $filter->codigo = new inputField("Código", "codigo"); $filter->codigo->size = 25; $filter->descrip = new inputField("Descripción", "descrip"); $filter->descrip->db_name = 'a.descrip'; $filter->descrip->size = 25; //$filter->tipo = new dropdownField("Tipo", "tipo"); //$filter->tipo->db_name=("a.tipo"); //$filter->tipo->option("","Todos"); //$filter->tipo->option("Articulo","Artículo"); //$filter->tipo->option("Servicio","Servicio"); //$filter->tipo->option("Descartar","Descartar"); //$filter->tipo->option("Consumo","Consumo"); //$filter->tipo->option("Fraccion","Fracción"); //$filter->tipo ->style='width:220px;'; // //$filter->clave = new inputField("Clave", "clave"); //$filter->clave -> size=25; // //$filter->activo = new dropdownField("Activo", "activo"); //$filter->activo->option("",""); //$filter->activo->option("S","Si"); //$filter->activo->option("N","No"); //$filter->activo ->style='width:220px;'; //$filter->proveed = new inputField("Beneficiario", "proveed"); //$filter->proveed->append($bSPRV); //$filter->proveed->clause ="in"; //$filter->proveed->db_name='( a.prov1, a.prov2, a.prov3 )'; //$filter->proveed -> size=25; $filter->depto2 = new inputField("Departamento", "nom_depto"); $filter->depto2->db_name = "d.descrip"; $filter->depto2->size = 10; $filter->depto = new dropdownField("Departamento", "depto"); $filter->depto->db_name = "d.depto"; $filter->depto->option("", "Seleccione un Departamento"); $filter->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->depto->in = "depto2"; // $filter->linea = new inputField("Linea", "nom_linea"); $filter->linea->db_name = "c.descrip"; $filter->linea->size = 10; $filter->linea2 = new dropdownField("Línea", "linea"); $filter->linea2->db_name = "c.linea"; $filter->linea2->option("", "Seleccione un Departamento primero"); $filter->linea2->in = "linea"; $depto = $filter->getval('depto'); if ($depto !== FALSE) { $filter->linea2->options("SELECT linea, descrip FROM line WHERE depto='{$depto}' ORDER BY descrip"); } else { $filter->linea2->option("", "Seleccione un Departamento primero"); } $filter->grupo2 = new inputField("Grupo", "nom_grupo"); $filter->grupo2->db_name = "b.nom_grup"; $filter->grupo2->size = 10; $filter->grupo = new dropdownField("Grupo", "grupo"); $filter->grupo->db_name = "b.grupo"; $filter->grupo->option("", ""); $filter->grupo->in = "grupo2"; $filter->grupo->options("SELECT grupo, nom_grup FROM grup ORDER BY nom_grup"); //WHERE linea='$linea' //$linea=$filter->getval('linea2'); //if($linea!==FALSE){ // $filter->grupo->options("SELECT grupo, nom_grup FROM grup WHERE linea='$linea' ORDER BY nom_grup"); //}else{ // $filter->grupo->option("","Seleccione un Departamento primero"); //} //$filter->marca = new dropdownField("Marca", "marca"); //$filter->marca->option("",""); //$filter->marca->options("SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca"); //$filter->marca -> style='width:220px;'; $filter->buttons("reset", "search"); $filter->build(); $uri = "suministros/sumi/dataedit/show/<raencode><#codigo#></raencode>"; $grid = new DataGrid(""); $grid->order_by("codigo", "asc"); $grid->per_page = 20; $link = anchor('/suministros/sumi/dataedit/show/<#id#>', '<#codigo#>'); $uri_2 = anchor('suministros/sumi/dataedit/create/<raencode><#codigo#></raencode>', 'Duplicar'); $grid->column_orderby("código", $link, "codigo"); $grid->column("Departamento", "<#nom_depto#>", 'align=left'); $grid->column("Línea", "<#nom_linea#>", 'align=left'); $grid->column_orderby("Grupo", "<#nom_grup#>", "nom_grup", "align='left'NOWRAP"); $grid->column_orderby("Descripción", "descrip", "descrip", "align='left'NOWRAP"); //$grid->column("Precio 1","<number_format><#precio1#>|2|,|.</number_format>",'align=right'); //$grid->column("Precio 2","<number_format><#precio2#>|2|,|.</number_format>",'align=right'); //$grid->column("Precio 3","<number_format><#precio3#>|2|,|.</number_format>",'align=right'); //$grid->column("Precio 4","<number_format><#precio4#>|2|,|.</number_format>",'align=right'); $grid->column("Duplicar", $uri_2, "align='center'"); $grid->add("suministros/sumi/dataedit/create"); $grid->build(); //$data['content'] = $filter->output.$grid->output; $data['filtro'] = $filter->output; $data['content'] = $grid->output; $data['script'] = script("jquery.js") . "\n"; $data['title'] = "Maestro de Inventario"; $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . script("sinvmaes2.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function index() { $this->rapyd->load('datafilter2', 'datagrid'); $this->_db2prop(); if (!empty($this->dbgroup)) { $this->rapyd->set_connection($this->dbgroup); $this->rapyd->load_db(); } $join = false; //extrae las varibles provenientes de las uris if ($this->p_uri) { $uris = array(); foreach ($this->p_uri as $segment => $nombre) { $valor = $this->uri->segment($segment); $uris[$nombre] = $valor; } } $tablas = $this->db->query('show tables'); $tablas = $tablas->result_array(); $tables = array(); foreach ($tablas as $row) { foreach ($row as $k => $v) { $tables[] = $v; } } //Filtro $filtros = array(); foreach ($this->filtro as $k => $v) { if (count(explode('.', $k)) == 2) { if (in_array(substr($k, 0, strpos($k, '.')), $tables)) { $filtros[substr($k, 0, strpos($k, '.'))][substr($k, strpos($k, '.') + 1)] = $v; } else { $filtros[$this->tabla][$k] = $v; } } else { $filtros[$this->tabla][$k] = $v; } } $campos = array(); foreach ($filtros as $k => $v) { $mSQL = "SHOW FIELDS FROM {$k} WHERE Field IN ('" . implode('\',\'', array_keys($v)) . '\')'; $query = $this->db->query($mSQL); $temp = $query->result_array(); foreach ($temp as $z => $y) { $temp[$z]['titulo'] = $v[$temp[$z]['Field']]; $temp[$z]['db_name'] = $k . '.' . $temp[$z]['Field']; } $campos = array_merge($campos, $temp); } $r = array(); $rk = array(); if (!isset($this->retornar[0])) { foreach ($this->retornar as $k => $v) { $r[] = array($k => $v); $rk[] = $k; } } else { $r = $this->retornar; foreach ($this->retornar as $k => $v) { foreach ($v as $kk => $vv) { $rk[] = $kk; } } } $prev = array_keys($this->columnas); foreach ($r as $k => $v) { $prev = array_merge($prev, array_keys($v)); } $prev2 = array_unique($prev); foreach ($prev2 as $ddata) { $ddata = $ddata; $select[] = $ddata; } $filter = new DataFilter2('Parámetros de Búsqueda'); $filter->db->select($select); $filter->db->from($this->tabla); if (!empty($this->groupby)) { $filter->db->groupby($this->groupby); } foreach ($this->join as $row) { if (count($row) == 3) { $join = true; $filter->db->join($row[0], $row[1], $row[2]); } } if (count($this->join) == 3) { $join = true; $filter->db->join($this->join[0], $this->join[1], $this->join[2]); } foreach ($campos as $fila) { $campo = $fila['Field']; $campodb = $fila['db_name']; $titulo = $fila['titulo']; $type = $fila['Type']; if (strncasecmp($type, 'date', 4) == 0) { if (is_array($titulo)) { $filter->{$campo} = new dateField($titulo[0], $campo, 'Y/m/d'); $filter->{$campo}->clause = 'where'; $filter->{$campo}->operator = '>='; $campo2 = $campo . '2'; $filter->{$campo2} = new dateField($titulo[1], $campo2, 'Y/m/d'); $filter->{$campo2}->db_name = $campodb; $filter->{$campo2}->clause = 'where'; $filter->{$campo2}->operator = '<='; } else { $filter->{$campo} = new dateField($titulo, $campo, 'Y/m/d'); $filter->{$campo}->clause = 'where'; $filter->{$campo}->operator = '='; } } else { if (is_array($titulo)) { $filter->{$campo} = new inputField($titulo[0], $campo); $filter->{$campo}->clause = 'where'; $filter->{$campo}->operator = '>='; $campo2 = $campo . '2'; $filter->{$campo2} = new inputField($titulo[1], $campo2); $filter->{$campo2}->db_name = $campodb; $filter->{$campo2}->db_name = $campodb; $filter->{$campo2}->clause = 'where'; $filter->{$campo2}->operator = '<='; } else { $nobj = $campo . '_CDROPDOWN'; $filter->{$nobj} = new dropdownField($titulo, $nobj); $filter->{$nobj}->clause = ''; $filter->{$nobj}->style = 'width:120px'; $filter->{$nobj}->option('both', 'Contiene'); $filter->{$nobj}->option('after', 'Comienza con'); $filter->{$nobj}->option('before', 'Termina con'); $side = $filter->getval($nobj); $filter->{$campo} = new inputField($titulo, $campo); $filter->{$campo}->in = $nobj; if ($side !== FALSE) { $filter->{$campo}->like_side = $side; } } } $filter->{$campo}->db_name = $campodb; } if (!empty($this->where)) { if (isset($uris)) { $valores = array_values($uris); for ($i = 0; $i < count($valores); $i++) { $valores[$i] = $this->db->escape($valores[$i]); } $where = str_replace(array_keys($uris), $valores, $this->where); } else { $where = $this->where; } $filter->db->where($where); } $filter->buttons('reset', 'search'); $filter->build(); //Tabla function j_escape($parr) { $search[] = '\''; $replace[] = '\'+String.fromCharCode(39)+\''; $search[] = '"'; $replace[] = '\'+String.fromCharCode(34)+\''; $search[] = "\n"; $replace[] = '\\n'; $search[] = "\r"; $replace[] = '\\r'; $pattern = str_replace($search, $replace, $parr); return '\'' . $pattern . '\''; } $rk2 = array(); foreach ($rk as $k => $v) { $a = explode('.', $v); if (count($a) == 2) { if (array_key_exists($a[0], $filtros)) { $rk[$k] = substr($v, strpos($v, '.') + 1); } else { $rk[$k] = $v; } } else { $rk[$k] = $v; } } $link = '<j_escape><#' . implode("#></j_escape>,<j_escape><#", $rk) . '#></j_escape>'; //$link='\'<#'.implode("#>','<#",array_keys($this->retornar)).'#>\''; $link = "javascript:pasar({$link});"; $grid = new DataGrid("Resultados"); $grid->use_function('j_escape'); $grid->per_page = 10; if (!empty($this->order_by)) { $grid->order_by($this->order_by, $this->direction); } $i = 0; foreach ($this->columnas as $campo => $titulo) { if ($i == 0) { $cp1 = strrchr($campo, '.'); if ($cp1) { $campo = str_replace('.', '', $cp1); } //if(empty($this->order_by)) $grid->column_orderby($titulo, "<a href=\"{$link}\"><#" . substr($campo, strpos($campo, '.')) . "#></a>", $campo); } else { if (count(explode('.', $campo)) == 2) { if (in_array(substr($campo, 0, strpos($campo, '.')), $tables)) { $grid->column_orderby($titulo, substr($campo, strpos($campo, '.') + 1), $campo); } else { $grid->column_orderby($titulo, $campo, $campo); } } else { $grid->column_orderby($titulo, $campo, $campo); } } $i++; } $grid->build(); //echo $grid->db->last_query(); $i = 0; $pjs1 = ''; $pjs2 = ''; foreach ($r as $k => $v) { //print_r($v); foreach ($v as $campo => $id) { if ($this->p_uri) { $id = str_replace(array_keys($uris), array_values($uris), $id); } if ($i == 0) { $pjs1 .= "p{$i}"; } else { $pjs1 .= ",p{$i}"; } $pjs2 .= "\n\t\t\t\tif(window.opener.document.getElementById('{$id}').nodeName=='SPAN')\n\t\t\t\twindow.opener.document.getElementById('{$id}').innerHTML = p{$i};\n\t\t\t\telse\n\t\t\t\twindow.opener.document.getElementById('{$id}').value = p{$i};\n\t\t\t\t\n"; $i++; } } $jscript = "<SCRIPT LANGUAGE=\"JavaScript\">\n"; $jscript .= "function pasar({$pjs1}){\n"; $jscript .= " if (window.opener && !window.opener.closed){\n"; $jscript .= $pjs2; $jscript .= " window.close();\n"; foreach ($this->script as $funcion) { $funcion = isset($uris) ? str_replace(array_keys($uris), array_values($uris), $funcion) : $funcion; $jscript .= " window.opener.{$funcion};\n"; } $jscript .= "}\n}\n</SCRIPT>"; //echo $grid->db->last_query(); $data['crud'] = $filter->output . $grid->output; $data['titulo'] = ''; $data['encab'] = $this->titulo; $content['content'] = $this->load->view('rapyd/crud', $data, true); $content['rapyd_head'] = $jscript . $this->rapyd->get_head(); $content['code'] = ''; //$content['titulo'] = $this->titulo; $content['lista'] = ''; //$content['charset'] = (stripos($this->db->char_set,'latin')!==false)? 'ISO-8859-1': null; $content['charset'] = null; $this->load->view('rapyd/modbus', $content); //echo $filter->db->last_query(); }
function filteredgrid() { $this->rapyd->load("datafilter2", "datagrid"); $link2 = site_url('inventario/common/get_linea'); $link3 = site_url('inventario/common/get_grupo'); $script = ' <script language="javascript" type="text/javascript"> $(function(){ $(".inputnum").numeric("."); }); </script> '; $mSPRV = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'Código', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('proveed' => 'Código', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'proveed'), 'titulo' => 'Buscar Proveedor'); $bSPRV = $this->datasis->modbus($mSPRV); $mSINV = array('tabla' => 'sinv', 'columnas' => array('codigo' => 'Cóodigo', 'descrip' => 'Descripción', 'descrip2' => 'Descripción 2'), 'filtro' => array('codigo' => 'Código', 'descrip' => 'Descripción'), 'retornar' => array('codigo' => 'codigo'), 'titulo' => 'Buscar Codigo'); $bSINV = $this->datasis->modbus($mSINV); $js = 'function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); }else{ $("#nom_depto").attr("disabled",""); } } function linea(){ if($("#linea").val()!=""){ $("#nom_linea").attr("disabled","disabled"); }else{ $("#nom_linea").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); }else{ $("#nom_grupo").attr("disabled",""); } }'; $select = array('a.codigo as codigo', 'a.suplemen', 'b.descrip', 'b.marca', 'b.precio1', 'b.depto', 'b.grupo', 'b.linea'); $filter = new DataFilter2('Filtro de Codigo de Barras'); $filter->script($js); $filter->db->select($select); $filter->db->from('barraspos AS a'); $filter->db->join('sinv AS b', 'a.codigo=b.codigo'); $filter->codigo = new inputField('Código de producto', 'codigo'); $filter->codigo->db_name = 'a.codigo'; $filter->codigo->size = 15; $filter->codigo->maxlength = 15; $filter->codigo->append($bSINV); $filter->suplemen = new inputField('Barras adicionales', 'suplemen'); $filter->suplemen->db_name = 'a.suplemen'; $filter->suplemen->size = 15; $filter->suplemen->maxlength = 20; $filter->proveed = new inputField('Proveedor', 'proveed'); $filter->proveed->append($bSPRV); $filter->proveed->db_name = 'b.prov1'; $filter->proveed->size = 25; $filter->depto = new dropdownField('Departamento', 'depto'); $filter->depto->db_name = 'b.depto'; $filter->depto->option("", "Seleccione un Departamento"); $filter->depto->options("SELECT depto, CONCAT(depto,' ',descrip) descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->linea2 = new dropdownField("Línea", "linea"); $filter->linea2->db_name = "b.linea"; $filter->linea2->option("", "Seleccione un Departamento primero"); $depto = $filter->getval('depto'); if ($depto !== FALSE) { $filter->linea2->options("SELECT linea, CONCAT(linea,' ',descrip) descrip FROM line WHERE depto='{$depto}' ORDER BY descrip"); } else { $filter->linea2->option("", "Seleccione un Departamento primero"); } $filter->grupo = new dropdownField("Grupo", "grupo"); $filter->grupo->db_name = 'c.grupo'; $filter->grupo->option("", "Seleccione una Línea primero"); $linea = $filter->getval('linea2'); if ($linea !== FALSE) { $filter->grupo->options("SELECT grupo, nom_grup FROM grup WHERE linea='{$linea}' ORDER BY nom_grup"); } else { $filter->grupo->option('', 'Seleccione un Departamento primero'); } $filter->marca = new dropdownField('Marca', 'marca'); $filter->marca->db_name = 'b.marca'; $filter->marca->option('', 'Todas'); $filter->marca->options('SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca'); $filter->marca->style = 'width:220px;'; $filter->buttons('reset', 'search'); $filter->build('dataformfiltro'); $link = anchor('/inventario/barraspos/dataedit/show/<#codigo#>/<#suplemen#>', '<#codigo#>'); $grid = new DataGrid('Lista de Productoss'); $grid->order_by('codigo', 'asc'); $grid->per_page = 15; $grid->column_orderby('Código', $link, 'codigo'); $grid->column_orderby('Descripción', 'descrip', 'descrip'); $grid->column_orderby('Marca', 'marca', 'marca'); $grid->column_orderby('Barras', 'suplemen', 'suplemen', 'align="right"'); $grid->add('inventario/barraspos/dataedit/create'); $grid->build(); $this->rapyd->jquery[] = ' $("select:not(#margen)").change( function() { $.ajax({ type: "POST", url: "' . site_url('inventario/sinvpromo/cmargen') . '", data: "cod="+$(this).attr("name")+"&margen="+$(this).val(), success: function(msg){ if (msg=="0"){ alert("Error al actualizar"); } } }); });'; $this->rapyd->jquery[] = ' $("#depto").change(function(){ depto(); $.post("' . $link2 . '",{ depto:$(this).val() },function(data){$("#linea").html(data);}) $.post("' . $link3 . '",{ linea:"" },function(data){$("#grupo").html(data);}) }); $("#linea").change(function(){ linea(); $.post("' . $link3 . '",{ linea:$(this).val() },function(data){$("#grupo").html(data);}) }); $("#grupo").change(function(){ grupo(); }); depto();linea();grupo();'; $data['content'] = $grid->output; $data['filtro'] = $filter->output; $data['title'] = heading('Códigos de Baras Adicionales'); $data['head'] = $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function filteredgrid() { $this->rapyd->load("datafilter2", "datagrid"); $link2 = site_url('inventario/common/get_linea'); $link3 = site_url('inventario/common/get_grupo'); $js = 'function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); }else{ $("#nom_depto").attr("disabled",""); } } function linea(){ if($("#linea").val()!=""){ $("#nom_linea").attr("disabled","disabled"); }else{ $("#nom_linea").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); }else{ $("#nom_grupo").attr("disabled",""); } }'; $mSINV = array('tabla' => 'sinv', 'columnas' => array('codigo' => 'Cóodigo', 'descrip' => 'Descripción', 'descrip2' => 'Descripción 2'), 'filtro' => array('codigo' => 'Código', 'descrip' => 'Descripción'), 'retornar' => array('codigo' => 'codigo'), 'titulo' => 'Buscar Codigo'); $bSINV = $this->datasis->modbus($mSINV); $mSPRV = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'Cóodigo', 'nombre' => 'Nombre', 'rif' => 'Rif'), 'filtro' => array('proveed' => 'Código', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'proveed'), 'titulo' => 'Buscar Codigo'); $bSPRV = $this->datasis->modbus($mSPRV); $select = array('a.proveed', 'a.codigo', 'a.codigop', 'c.nombre', 'b.descrip', 'b.marca'); $filter = new DataFilter2('Filtro de promociones'); $filter->script($js); $filter->db->select($select); $filter->db->from('sinvprov AS a'); // $filter->db->from('sinv AS b'); // $filter->db->from('sprv AS c'); $filter->db->join('sinv AS b', 'a.codigo=b.codigo'); $filter->db->join('sprv AS c', 'a.proveed=c.proveed'); $filter->proveed = new inputField("Código de proveedor", "proveed"); $filter->proveed->append($bSPRV); $filter->proveed->db_name = 'a.proveed'; $filter->proveed->size = 15; $filter->proveed->maxlength = 15; $filter->codigo = new inputField('Código de producto', 'codigo'); $filter->codigo->db_name = 'a.codigo'; $filter->codigo->size = 15; $filter->codigo->maxlength = 15; $filter->codigo->append($bSINV); $filter->codigop = new inputField("Código", "codigop"); $filter->codigop->db_name = 'a.codigop'; $filter->codigop->size = 15; $filter->codigop->maxlength = 15; // $filter->proveed = new inputField('Proveedor', 'proveed'); // $filter->proveed->append($bSPRV); // $filter->proveed->db_name='b.prov1'; // $filter->proveed->size=25; $filter->depto = new dropdownField('Departamento', 'depto'); $filter->depto->db_name = 'b.depto'; $filter->depto->option("", "Seleccione un Departamento"); $filter->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->linea2 = new dropdownField("Línea", "linea"); $filter->linea2->db_name = "b.linea"; $filter->linea2->option("", "Seleccione un Departamento primero"); $depto = $filter->getval('depto'); if ($depto !== FALSE) { $filter->linea2->options("SELECT linea, descrip FROM line WHERE depto='{$depto}' ORDER BY descrip"); } else { $filter->linea2->option("", "Seleccione un Departamento primero"); } $filter->grupo = new dropdownField("Grupo", "grupo"); $filter->grupo->db_name = 'c.grupo'; $filter->grupo->option("", "Seleccione una Línea primero"); $linea = $filter->getval('linea2'); if ($linea !== FALSE) { $filter->grupo->options("SELECT grupo, nom_grup FROM grup WHERE linea='{$linea}' ORDER BY nom_grup"); } else { $filter->grupo->option('', 'Seleccione un Departamento primero'); } $filter->marca = new dropdownField('Marca', 'marca'); $filter->marca->db_name = 'b.marca'; $filter->marca->option('', 'Todas'); $filter->marca->options('SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca'); $filter->marca->style = 'width:220px;'; $filter->buttons("reset", "search"); $filter->build(); $link = anchor('/inventario/sinvprov/dataedit/modify/<#proveed#>/<#codigop#>/<#codigo#>', '<#proveed#>'); $grid = new DataGrid("Lista de proveedores"); $grid->order_by("proveed", "asc"); $grid->per_page = 15; $grid->use_function('str_replace'); $grid->column_orderby("Código de proveedor", $link, "proveed"); $grid->column_orderby("Proveedor", 'nombre', "nombre"); $grid->column_orderby("Código de producto", 'codigo', "codigo"); $grid->column_orderby("Descripción", 'descrip', "proveed"); $grid->column_orderby("Código", "codigop", "codigop"); $grid->add("inventario/sinvprov/dataedit/create"); $grid->build(); $data['content'] = $filter->output . $grid->output; $data['title'] = "<h1>Lista de Proveedores</h1>"; $data["head"] = $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function index() { $this->rapyd->load("datafilter2", "datagrid"); $this->_db2prop(); $join = false; //extrae las varibles provenientes de las uris if ($this->p_uri) { $uris = array(); foreach ($this->p_uri as $segment => $nombre) { $valor = $this->uri->segment($segment); //if($valor==false){ // echo 'entre'; // $this->p_uri=false; // break; //} $uris[$nombre] = $valor; } } //Filtro $codigo = $this->filtro; $mSQL = "SHOW FIELDS FROM {$this->tabla} WHERE Field IN ('" . implode('\',\'', array_keys($this->filtro)) . '\')'; //echo $mSQL; $query = $this->db->query($mSQL); $prev = array_merge(array_keys($this->columnas), array_keys($this->retornar)); $prev = array_unique($prev); foreach ($prev as $ddata) { //$ddata=$this->tabla.'.'.$ddata; $ddata = $ddata; $select[] = $ddata; } $filter = new DataFilter2("Parametros de Búsqueda"); $filter->db->select($select); $filter->db->from($this->tabla); if (!empty($this->groupby)) { $filter->db->groupby($this->tabla . '.' . $this->groupby); } if (count($this->join) > 0) { if (is_array($this->join)) { foreach ($this->join as $row) { if (count($row) == 3) { $join = true; $filter->db->join($row[0], $row[1], $row[2]); } } } } elseif (count($this->join) == 3) { $join = true; $filter->db->join($this->join[0], $this->join[1], $this->join[2]); } foreach ($query->result() as $fila) { $campo = $fila->Field; $titulo = $this->filtro[$campo]; if (strncasecmp($fila->Type, 'date', 4) == 0) { if (is_array($titulo)) { $filter->{$campo} = new dateField($titulo[0], $campo, "Y/m/d"); $filter->{$campo}->clause = "where"; $filter->{$campo}->operator = ">="; $campo2 = $campo . '2'; $filter->{$campo2} = new dateField($titulo[1], $campo2, "Y/m/d"); $filter->{$campo2}->db_name = $this->tabla . '.' . $campo; $filter->{$campo2}->clause = "where"; $filter->{$campo2}->operator = "<="; } else { $filter->{$campo} = new dateField($titulo, $campo, "Y/m/d"); $filter->{$campo}->clause = "where"; $filter->{$campo}->operator = "="; } } else { if (is_array($titulo)) { $filter->{$campo} = new inputField($titulo[0], $campo); $filter->{$campo}->clause = "where"; $filter->{$campo}->operator = ">="; $campo2 = $campo . '2'; $filter->{$campo2} = new inputField($titulo[1], $campo2); $filter->{$campo2}->db_name = $this->tabla . '.' . $campo; $filter->{$campo2}->db_name = $campo; $filter->{$campo2}->clause = "where"; $filter->{$campo2}->operator = "<="; } else { // $nobj = $campo . '_CDROPDOWN'; $filter->{$nobj} = new dropdownField($titulo, "{$nobj}"); $filter->{$nobj}->clause = ''; $filter->{$nobj}->style = 'width:120px'; $filter->{$nobj}->option('both', 'Contiene'); $filter->{$nobj}->option('after', 'Comienza con'); $filter->{$nobj}->option('before', 'Termina con'); $side = $filter->getval($nobj); $filter->{$campo} = new inputField($titulo, $campo); $filter->{$campo}->in = $nobj; if ($side !== FALSE) { $filter->{$campo}->like_side = $side; } } } $filter->{$campo}->db_name = $this->tabla . '.' . $campo; } if (!empty($this->where)) { if (isset($uris)) { $valores = array_values($uris); for ($i = 0; $i < count($valores); $i++) { $valores[$i] = $this->db->escape($valores[$i]); } $where = str_replace(array_keys($uris), $valores, $this->where); } else { $where = $this->where; } $filter->db->where($where); } $filter->buttons("reset", "search"); $filter->build(); //Tabla function j_escape($parr) { $search[] = '\''; $replace[] = '\'+String.fromCharCode(39)+\''; $search[] = '"'; $replace[] = '\'+String.fromCharCode(34)+\''; $search[] = "\n"; $replace[] = '\\n'; $search[] = "\r"; $replace[] = '\\r'; $search[] = "%BA"; $replace[] = '\\% BA'; $pattern = str_replace($search, $replace, $parr); return '\'' . $pattern . '\''; } $link = '<j_escape><#' . implode("#></j_escape>,<j_escape><#", array_keys($this->retornar)) . '#></j_escape>'; $link = "javascript:pasar({$link});"; $grid = new DataGrid("Resultados"); $grid->use_function('j_escape'); $grid->per_page = 20; if ($this->order_by) { $this->order_by; $grid->order_by($this->order_by, ' '); } $i = 0; foreach ($this->columnas as $campo => $titulo) { $cp1 = strrchr($campo, '.'); if ($cp1) { $campo = str_replace('.', '', $cp1); } if ($i == 0) { if (!$this->order_by) { $grid->order_by($this->tabla . '.' . $campo); } $grid->column_orderby($titulo, "<a href=\"{$link}\"><#{$campo}#></a>", $this->tabla . '.' . $campo); } elseif ($i == 1) { $grid->column($titulo, $campo); } else { $grid->column($titulo, $campo); } $i++; } $grid->build(); $i = 0; $pjs1 = ''; $pjs2 = ''; foreach ($this->retornar as $campo => $id) { if ($this->p_uri) { $id = str_replace(array_keys($uris), array_values($uris), $id); } if ($i == 0) { $pjs1 .= "p{$i}"; } else { $pjs1 .= ",p{$i}"; } $pjs2 .= "window.opener.document.getElementById('{$id}').value = p{$i};\n"; $i++; } $jscript = "<SCRIPT LANGUAGE=\"JavaScript\">\n"; $jscript .= "function pasar({$pjs1}) {\n"; $jscript .= " if (window.opener && !window.opener.closed){\n"; $jscript .= $pjs2; $jscript .= " window.close();\n"; foreach ($this->script as $funcion) { $funcion = isset($uris) ? str_replace(array_keys($uris), array_values($uris), $funcion) : $funcion; $jscript .= " window.opener.{$funcion};\n"; } $jscript .= "}\n}\n</SCRIPT>"; memowrite($grid->db->last_query(), 'modbus2'); $data["crud"] = $filter->output . $grid->output; $data["titulo"] = ''; $data['encab'] = $this->titulo; $content["content"] = $this->load->view('rapyd/crud', $data, true); $content["rapyd_head"] = $jscript . $this->rapyd->get_head(); $content["code"] = ''; //$content["titulo"]=$this->titulo; $content["lista"] = ""; $this->load->view('rapyd/modbus', $content); //echo $filter->db->last_query(); }
function agregar($para = "") { // echo $para; $this->rapyd->load("datafilter2", "datagrid", "dataobject", "fields"); $mod = array('tabla' => 'sinvlist', 'columnas' => array('numero' => 'Cóodigo', 'concepto' => 'Concepto', 'usuario' => 'Usuario'), 'filtro' => array('numero' => 'Número'), 'retornar' => array('numero' => 'nume'), 'titulo' => 'Buscar Proveedor'); $modnume = $this->datasis->modbus($mod); $mSPRV = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'Cóodigo', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('proveed' => 'Código', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'proveed'), 'script' => array('limpia2()'), 'titulo' => 'Buscar Proveedor'); $bSPRV = $this->datasis->modbus($mSPRV); $mSPRV1 = array('tabla' => 'snot', 'columnas' => array('numero' => 'Número'), 'filtro' => array('numero' => 'Número'), 'retornar' => array('numero' => 'objnumero'), 'script' => array('limpia()'), 'titulo' => 'Buscar Número'); $bSPRV1 = $this->datasis->modbus($mSPRV1); $mSPRV2 = array('tabla' => 'spre', 'columnas' => array('numero' => 'Número'), 'filtro' => array('numero' => 'Número'), 'retornar' => array('numero' => 'objnumero'), 'script' => array('limpia()'), 'titulo' => 'Buscar Número'); $bSPRV2 = $this->datasis->modbus($mSPRV2); $mSPRV3 = array('tabla' => 'scst', 'columnas' => array('numero' => 'Número'), 'filtro' => array('numero' => 'Número'), 'retornar' => array('numero' => 'objnumero'), 'script' => array('limpia()'), 'titulo' => 'Buscar Número'); $bSPRV3 = $this->datasis->modbus($mSPRV3); $mSPRV4 = array('tabla' => 'snte', 'columnas' => array('numero' => 'Número'), 'filtro' => array('numero' => 'Número'), 'retornar' => array('numero' => 'objnumero'), 'script' => array('limpia()'), 'titulo' => 'Buscar Número'); $bSPRV4 = $this->datasis->modbus($mSPRV4); $mSPRV5 = array('tabla' => 'sfac', 'columnas' => array('numero' => 'Número', 'tipo_doc' => 'Tipo De Documento'), 'filtro' => array('numero' => 'Número'), 'retornar' => array('numero' => 'objnumero'), 'script' => array('limpia()'), 'titulo' => 'Buscar Número'); $bSPRV5 = $this->datasis->modbus($mSPRV5); $user = $this->session->userdata('usuario'); $link2 = site_url('inventario/common/get_linea'); $link3 = site_url('inventario/common/get_grupo'); $link4 = site_url('inventario/sinvlist/tabla'); $link5 = site_url('inventario/sinvlist/'); $script = ' function limpia(){ $("#codigo").val(""); $("#descrip").val(""); $("#marca").val(""); $("#proveed").val(""); $("#tipo").val(""); $("#clave").val(""); $("#depto").val(""); $("#linea").val(""); $("#grupo").val(""); } function limpia2(){ $("#objnumero").val(""); } function envia(){ nume = $("#nume").val(); tlist = $("#tlist").val(); objnumero = $("#objnumero").val(); msj="Nueva lista"; if(nume != ""){ msj="lista numero "+nume; } if(objnumero != ""){ alert("Se creare lista de productos de la tabla "+tlist+" con codigo "+objnumero+" en "+msj); window.location="' . $link4 . '/"+tlist+"/"+objnumero+"/"+nume; }else{ alert("El campo Numero no contine valor"); } } function atras(){ window.location="' . $link5 . '/"; } $(document).ready(function(){ $("#marca").change(function(){$("#objnumero").val("");}); $("#clave").focus(function(){$("#objnumero").val("");}); $("#codigo").focus(function(){$("#objnumero").val("");}); $("#descrip").focus(function(){$("#objnumero").val("");}); $("#tipo").change(function(){$("#objnumero").val("");}); //$("#proveed").change(function(){$("#objnumero").val("");}); if(!$("#proveed").val()){ $("#objnumero").val(""); } $("#tlist").change(function(){ vallist=$("#tlist").val(); //alert(vallist); switch(vallist){ case "sitems": $("#modo1").hide();$("#modo2").hide(); $("#modo3").hide();$("#modo4").hide(); $("#modo5").show(); break case "itsnot": $("#modo5").hide();$("#modo2").hide(); $("#modo3").hide();$("#modo4").hide(); $("#modo1").show(); break case "itsnte": $("#modo1").hide();$("#modo2").hide(); $("#modo3").hide();$("#modo5").hide(); $("#modo4").show(); break case "itspre": $("#modo1").hide();$("#modo5").hide(); $("#modo3").hide();$("#modo4").hide(); $("#modo2").show(); break case "itscst": $("#modo1").hide();$("#modo2").hide(); $("#modo5").hide();$("#modo4").hide(); $("#modo3").show(); break default: } //$("#modo1").css("display", "none"); }); $("#depto").change(function(){ $("#objnumero").val(""); depto(); $.post("' . $link2 . '",{ depto:$(this).val() },function(data){$("#linea").html(data);}) $.post("' . $link3 . '",{ linea:"" },function(data){$("#grupo").html(data);}) }); $("#linea").change(function(){ linea(); $.post("' . $link3 . '",{ linea:$(this).val() },function(data){$("#grupo").html(data);}) }); $("#grupo").change(function(){ grupo(); }); depto(); linea(); grupo(); }); function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); } else{ $("#nom_depto").attr("disabled",""); } } function linea(){ if($("#linea").val()!=""){ $("#nom_linea").attr("disabled","disabled"); } else{ $("#nom_linea").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); } else{ $("#nom_grupo").attr("disabled",""); } } '; $filter = new DataFilter2("Filtro por Producto"); $filter->db->_escape_char = ''; $filter->db->_protect_identifiers = false; $filter->script($script); $filter->nume = new inputField("Nro. Lista", "nume"); $filter->nume->size = 25; $filter->nume->db_name = ""; $filter->nume->clause = ""; if ($para != "") { if ($para != "search" || $para != "reset") { $filter->nume->mode = "readonly"; $filter->nume->insertValue = $para; } else { $filter->nume->append($modnume); } } else { $filter->nume->append($modnume); } $filter->codigo = new inputField("Código", "codigo"); $filter->codigo->size = 25; //$filter->codigo->rule='callback_repetido|required'; $filter->descrip = new inputField("Descripción", "descrip"); $filter->descrip->db_name = 'CONCAT_WS(" ",a.descrip,a.descrip2)'; $filter->descrip->size = 25; $filter->tipo = new dropdownField("Tipo", "tipo"); $filter->tipo->db_name = "a.tipo"; $filter->tipo->option("", "Todos"); $filter->tipo->option("Articulo", "Artículo"); $filter->tipo->option("Servicio", "Servicio"); $filter->tipo->option("Descartar", "Descartar"); $filter->tipo->option("Consumo", "Consumo"); $filter->tipo->option("Fraccion", "Fracción"); $filter->tipo->style = 'width:220px;'; $filter->clave = new inputField("Clave", "clave"); $filter->clave->size = 25; $filter->proveed = new inputField("Proveedor", "proveed"); $filter->proveed->append($bSPRV); $filter->proveed->db_name = 'a.prov1'; $filter->proveed->size = 25; $filter->depto = new dropdownField("Departamento", "depto"); $filter->depto->db_name = "d.depto"; $filter->depto->option("", "Seleccione un Departamento"); $filter->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->linea2 = new dropdownField("Línea", "linea"); $filter->linea2->db_name = "c.linea"; $filter->linea2->option("", "Seleccione un Departamento primero"); $depto = $filter->getval('depto'); if ($depto !== FALSE) { $filter->linea2->options("SELECT linea, descrip FROM line WHERE depto='{$depto}' ORDER BY descrip"); } else { $filter->linea2->option("", "Seleccione un Departamento primero"); } $filter->grupo = new dropdownField("Grupo", "grupo"); $filter->grupo->db_name = "b.grupo"; $filter->grupo->option("", "Seleccione una Línea primero"); $linea = $filter->getval('linea2'); if ($linea !== FALSE) { $filter->grupo->options("SELECT grupo, nom_grup FROM grup WHERE linea='{$linea}' ORDER BY nom_grup"); } else { $filter->grupo->option("", "Seleccione un Departamento primero"); } $filter->marca = new dropdownField("Marca", "marca"); $filter->marca->option("", ""); $filter->marca->options("SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca"); $filter->marca->style = 'width:220px;'; $filter->tlist = new dropdownField("Extraer de:", "tlist"); $filter->tlist->option("sitems", "Facturas"); $filter->tlist->option("itspre", "Presupuesto"); $filter->tlist->option("itsnot", "N.Despacho"); $filter->tlist->option("itsnte", "N.Entrega"); $filter->tlist->option("itscst", "N.Compra"); $filter->tlist->style = 'width:220px;'; $filter->tlist->db_name = ""; $filter->tlist->clause = ""; $filter->tlist->in = "objnumero"; $salida = "<a href='javascript:envia()'>Crear Lista en Base a Tabla</a>"; $filter->objnumero = new inputField("Numero", "objnumero"); $filter->objnumero->size = 10; $filter->objnumero->db_name = ""; $filter->objnumero->clause = ""; $filter->objnumero->append("<spam id='modo1'style='display:none;'>{$bSPRV1}</espam><spam id='modo2'style='display:none;>{$bSPRV2}</spam><spam id='modo3'style='display:none;>{$bSPRV3}</spam><spam id='modo4'style='display:none;>{$bSPRV4}</spam><spam id='modo5'>{$bSPRV5}</spam>"); $filter->buttons("reset", "search"); $filter->build(); $tabla = ""; if ($this->rapyd->uri->is_set("search") and $filter->is_valid()) { //echo "=>".$this->input->post("objnumero")."epale"; function asigna($numero) { $data = array('name' => "sepago[]", 'id' => $numero, 'value' => $numero, 'checked' => TRUE); return form_checkbox($data); } if ($para == "" || $para == "search") { $para = $this->input->post("nume"); } $tabla = form_open("inventario/sinvlist/inserta/{$para}"); $ddata = array('nume' => $this->input->post("nume")); if (!$this->input->post("objnumero") !== false) { //echo "aqui tambien"; $grid = new DataGrid("Lista de Artículos"); $grid->db->select("a.tipo AS tipo,id,codigo,a.descrip,precio1,\n\t\t\t\t\t\t\t\t\tprecio2,precio3,precio4,a.prov1,\n\t\t\t\t\t\t\t\t\tb.nom_grup AS nom_grup,b.grupo AS grupoid,\n\t\t\t\t\t\t\t\t\tc.descrip AS nom_linea,c.linea AS linea,\n\t\t\t\t\t\t\t\t\td.descrip AS nom_depto,d.depto AS depto,a.prov1,a.prov2,a.prov3"); $grid->db->from("sinv AS a"); $grid->db->join("grup AS b", "a.grupo=b.grupo"); $grid->db->join("line AS c", "b.linea=c.linea"); $grid->db->join("dpto AS d", "c.depto=d.depto"); $grid->db->_escape_char = ''; $grid->db->_protect_identifiers = false; $grid->order_by("codigo", "asc"); $grid->per_page = 50; //$link=anchor('/inventario/sinvlist/dataedit/show/<#id#>','<#codigo#>'); $uri_2 = anchor('inventario/sinv/dataedit/create/<#id#>', 'Duplicar'); $grid->use_function('asigna'); $grid->column("código", "codigo"); $grid->column("Departamento", "<#nom_depto#>", 'align=left'); $grid->column("Línea", "<#nom_linea#>", 'align=left'); $grid->column("Grupo", "<#nom_grup#>", 'align=left'); $grid->column("Descripción", "descrip"); $grid->column("Accioón", "<asigna><#codigo#></asigna>", "align='right'"); $grid->build(); //echo $grid->db->last_query(); $tabla .= $grid->output . form_submit('mysubmit', 'Guardar'); $tabla .= form_close(); } else { //echo "aqui"; //$_POST['depto']=''; $tabla1 = $this->input->post("tlist"); $cod = $this->input->post("objnumero"); $num = $this->input->post("nume"); $campo = ""; $campo1 = "codigo"; $campo2 = "descrip"; $cod2 = $this->db->escape($cod); $cod3 = str_pad($cod, 8, '0', STR_PAD_LEFT); switch ($tabla1) { case "sitems": $campo = "numa"; $campo1 = "codigoa"; $campo2 = 'desca'; break; case "itsnot": $campo = "numero"; break; case "itsnte": $campo = "numero"; $campo2 = "desca"; break; case "itspre": $campo = "numero"; $campo2 = "desca"; break; case "itscst": $campo = "numero"; break; default: echo "Tabla no valida........."; break; } $grid2 = new DataGrid("Lista de Artículos Por Tabla"); $grid2->db->from("{$tabla1}"); $grid2->db->select(array("{$campo1}", "{$campo2}")); $grid2->db->where("{$campo}", "{$cod3}"); $grid2->per_page = 50; //$link=anchor('/inventario/sinvlist/dataedit/show/<#id#>','<#codigo#>'); $grid2->use_function('asigna'); $grid2->column("código", "{$campo1}"); $grid2->column("Descripción", "{$campo2}"); $grid2->column("Accioón", "<asigna><#{$campo1}#></asigna>", "align='right'"); $grid2->build(); $grid2->db->last_query(); $tabla .= $grid2->output . form_submit('mysubmit', 'Guardar'); $tabla .= form_close(); } } $back = "<table width='100%'border='0'><tr><td width='80%'></td><td width='20%'><a href='javascript:atras()'><spam id='regresar'align='right'>REGRESAR</spam></a></td></tr></table>"; $data['filtro'] = $filter->output; $data['tabla'] = $tabla; $data['smenu'] = $back; //.$grid->output; $data['title'] = "Agregar Listado Por Patron"; $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . script("sinvmaes2.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas_pru', $data); }
function filteredgrid($para = '') { $this->rapyd->load("datafilter2", "datagrid", "dataobject", "fields"); $user = $this->session->userdata('usuario'); $link2 = site_url('inventario/common/get_fami'); $link3 = site_url('inventario/common/get_grupo_m'); $link1 = site_url('supermercado/etiqueta_maes/menu'); $script = ' $(document).ready(function(){ $("#depto").change(function(){ $("#objnumero").val(""); depto(); $.post("' . $link2 . '",{ depto:$(this).val() },function(data){$("#fami").html(data);}) $.post("' . $link3 . '",{ fami:"" },function(data){$("#grupo").html(data);}) }); $("#fami").change(function(){ fami(); $.post("' . $link3 . '",{ lfami:$(this).val() },function(data){$("#grupo").html(data);}) }); $("#grupo").change(function(){ grupo(); }); depto(); fami(); grupo(); }); function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); } else{ $("#nom_depto").attr("disabled",""); } } function fami(){ if($("#fami").val()!=""){ $("#nom_fami").attr("disabled","disabled"); } else{ $("#nom_fami").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); } else{ $("#nom_grupo").attr("disabled",""); } } '; $filter = new DataFilter2("Filtro por Producto"); $filter->db->_escape_char = ''; $filter->db->_protect_identifiers = false; $filter->script($script); $filter->descrip = new inputField("Descripción", "descrip"); $filter->descrip->db_name = 'CONCAT_WS(" ",a.descrip,a.descrip2)'; $filter->descrip->size = 25; $filter->depto = new dropdownField("Departamento", "depto"); $filter->depto->db_name = "d.depto"; $filter->depto->option("", "Seleccione un Departamento"); $filter->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->fami = new dropdownField("Familia", "fami"); $filter->fami->db_name = "c.familia"; $filter->fami->option("", "Seleccione un Departamento primero"); $depto = $filter->getval('depto'); if ($depto !== FALSE) { $filter->fami->options("SELECT familia, descrip FROM fami WHERE depto='{$depto}' ORDER BY descrip"); } else { $filter->fami->option("", "Seleccione un Departamento primero"); } $filter->grupo = new dropdownField("Grupo", "grupo"); $filter->grupo->db_name = "b.grupo"; $filter->grupo->option("", "Seleccione una familia primero"); $fami = $filter->getval('fami'); if ($fami !== FALSE) { $filter->grupo->options("SELECT grupo, nom_grup FROM grup WHERE familia='{$fami}' ORDER BY nom_grup"); } else { $filter->grupo->option("", "Seleccione un Departamento primero"); } $filter->marca = new dropdownField("Marca", "marca"); $filter->marca->option("", ""); $filter->marca->options("SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca"); $filter->marca->style = 'width:220px;'; $filter->buttons("reset", "search"); $filter->build(); $tabla = ""; if ($this->rapyd->uri->is_set("search") and $filter->is_valid()) { $tabla = form_open("forma/ver/etiqueta_m"); $grid = new DataGrid("Lista de Artículos Para Etiquetas"); $grid->db->select("COUNT(*) AS num,a.tipo AS tipo,a.codigo as codigo,a.descrip,a.precio1 as precio,a.barras,\n\t\t\tb.nom_grup AS nom_grup, b.grupo AS grupoid,\n\t\t\tc.descrip AS nom_familia, c.familia AS familia,\n\t\t\td.descrip AS nom_depto, d.depto AS depto"); $grid->db->from("maes AS a"); $grid->db->join("grup AS b", "a.grupo=b.grupo"); $grid->db->join("fami AS c", "b.familia=c.familia"); $grid->db->join("dpto AS d", "c.depto=d.depto"); $grid->db->group_by("a.codigo"); $grid->db->_escape_char = ''; $grid->db->_protect_identifiers = false; $grid->order_by("codigo", "asc"); $grid->use_function('asigna'); $grid->column_orderby("código", "codigo", "codigo"); $grid->column_orderby("Departamento", "<#nom_depto#>", "nom_depto", 'align=left'); $grid->column_orderby("Familia", "<#nom_familia#>", "nom_familia", 'align=left'); $grid->column_orderby("Grupo", "<#nom_grup#>", "nom_grup", 'align=left'); $grid->column_orderby("Descripción", "descrip", "descrip"); $grid->build(); $consul = $this->db->last_query(); $tabla .= form_hidden('consul', $consul); $data = array('name' => 'cant', 'id' => 'cant', 'value' => '1', 'maxlength' => '5', 'size' => '5'); $tabla .= $grid->output . form_label("Numero de etiquetas por producto:") . "   " . form_input($data) . form_submit('mysubmit', 'Generar'); $tabla .= form_close(); } $data['smenu'] = "<a href='" . $link1 . "' >Atras</a>"; $back = "<table width='100%'border='0'><tr><td width='80%'></td><td width='20%'><a href='javascript:atras()'><spam id='regresar'align='right'>REGRESAR</spam></a></td></tr></table>"; $data['filtro'] = $filter->output; $data['tabla'] = $tabla; $data['title'] = "Genera Etiquetas"; $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . script("sinvmaes2.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas_pru', $data); }
function inven($tabla) { if (!$this->db->table_exists($tabla)) { show_error('Inventario físico no exite'); } $tifecha = dbdate_to_human(substr($tabla, -8)); $tialmacen = substr($tabla, 3, -8); $this->rapyd->load('datagrid', 'dataobject', 'fields', 'datafilter2'); $mSPRV = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'Cóodigo', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('proveed' => 'Código', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'proveed'), 'titulo' => 'Buscar Proveedor'); $bSPRV = $this->datasis->modbus($mSPRV); $link2 = site_url('inventario/common/get_linea'); $link3 = site_url('inventario/common/get_grupo'); $script = ' $(document).ready(function(){ $("#depto").change(function(){ depto(); $.post("' . $link2 . '",{ depto:$(this).val() },function(data){$("#linea").html(data);}) $.post("' . $link3 . '",{ linea:"" },function(data){$("#grupo").html(data);}) }); $("#linea").change(function(){ linea(); $.post("' . $link3 . '",{ linea:$(this).val() },function(data){$("#grupo").html(data);}) }); $("#grupo").change(function(){ grupo(); }); depto(); linea(); grupo(); }); function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); } else{ $("#nom_depto").attr("disabled",""); } } function linea(){ if($("#linea").val()!=""){ $("#nom_linea").attr("disabled","disabled"); } else{ $("#nom_linea").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); } else{ $("#nom_grupo").attr("disabled",""); } }'; $filter = new DataFilter2(''); $this->db->_escape_char = ''; $this->db->_protect_identifiers = false; $filter->db->select("e.existen,e.modificado,e.contado,e.agregar,e.quitar,e.sustituir,a.tipo AS tipo,a.id,e.codigo,a.descrip,precio1,precio2,precio3,precio4,b.nom_grup AS nom_grup,a.barras,b.grupo AS grupoid,c.descrip AS nom_linea,c.linea AS linea,d.descrip AS nom_depto,d.depto AS depto,e.id AS idfis,e.despacha, a.ubica, if( a.activo = 'S', ' ' , '*' ) activo"); $filter->db->from("{$tabla} AS e"); $filter->db->join('sinv AS a', 'a.codigo=e.codigo'); $filter->db->join('grup AS b', 'a.grupo=b.grupo'); $filter->db->join('line AS c', 'b.linea=c.linea'); $filter->db->join('dpto AS d', 'c.depto=d.depto'); //$filter->db->where('activo','S'); $filter->db->where('actualizado IS NULL', '', false); //$filter->db->order_by("d.depto,c.linea,b.grupo,a.descrip"); $filter->script($script); $filter->codigo = new inputField('Código', 'codigo'); $filter->codigo->db_name = 'e.codigo'; $filter->codigo->size = 25; $filter->descrip = new inputField('Descripción', 'descrip'); $filter->descrip->db_name = 'CONCAT_WS(" ",a.descrip,a.descrip2)'; $filter->descrip->size = 25; $filter->tipo = new dropdownField('Tipo', 'tipo'); $filter->tipo->db_name = 'a.tipo'; $filter->tipo->option('', 'Todos'); $filter->tipo->option('Articulo', 'Artículo'); $filter->tipo->option('Servicio', 'Servicio'); $filter->tipo->option('Descartar', 'Descartar'); $filter->tipo->option('Consumo', 'Consumo'); $filter->tipo->option('Fraccion', 'Fracción'); $filter->tipo->style = 'width:220px;'; $filter->clave = new inputField('Clave', 'clave'); $filter->clave->size = 25; $filter->activo = new dropdownField('Activo', 'activo'); $filter->activo->option('', 'Todos'); $filter->activo->option('S', 'Si'); $filter->activo->option('N', 'No'); $filter->activo->style = 'width:220px;'; $filter->activo->db_name = 'a.activo'; $filter->proveed = new inputField('Proveedor', 'proveed'); $filter->proveed->append($bSPRV); $filter->proveed->db_name = 'CONCAT_WS("_", a.prov1, a.prov2, a.prov3)'; $filter->proveed->size = 25; $filter->depto2 = new inputField('Departamento', 'nom_depto'); $filter->depto2->db_name = 'd.descrip'; $filter->depto2->size = 10; $filter->depto = new dropdownField("Departamento", "depto"); $filter->depto->db_name = "d.depto"; $filter->depto->option('', "Seleccione un Departamento"); $filter->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->depto->in = "depto2"; $filter->linea = new inputField("Linea", "nom_linea"); $filter->linea->db_name = "c.descrip"; $filter->linea->size = 10; $filter->linea2 = new dropdownField("Línea", "linea"); $filter->linea2->db_name = 'c.linea'; $filter->linea2->option('', 'Seleccione un Departamento primero'); $filter->linea2->in = 'linea'; $depto = $filter->getval('depto'); if ($depto !== false) { $filter->linea2->options("SELECT linea, descrip FROM line WHERE depto='{$depto}' ORDER BY descrip"); } else { $filter->linea2->option('', 'Seleccione un Departamento primero'); } $filter->grupo2 = new inputField('Grupo', 'nom_grupo'); $filter->grupo2->db_name = 'b.nom_grup'; $filter->grupo2->size = 10; $filter->grupo = new dropdownField('Grupo', 'grupo'); $filter->grupo->db_name = 'b.grupo'; $filter->grupo->option('', 'Seleccione una Línea primero'); $filter->grupo->in = 'grupo2'; $linea = $filter->getval('linea2'); if ($linea !== false) { $filter->grupo->options("SELECT grupo, nom_grup FROM grup WHERE linea='{$linea}' ORDER BY nom_grup"); } else { $filter->grupo->option('', 'Seleccione un Departamento primero'); } $filter->marca = new dropdownField('Marca', 'marca'); $filter->marca->option('', 'Todas'); $filter->marca->options("SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca"); $filter->marca->style = 'width:220px;'; $filter->ubica = new inputField('Ubicacion', 'ubica'); $filter->ubica->db_name = 'a.ubica'; $filter->ubica->size = 15; $filter->buttons('reset', 'search'); $filter->build(); function caja($campo2, $valor, $codigo, $readonly = false, $fila, $desp, $ccana) { $campo = new inputField2('Title', $campo2); $campo->status = 'create'; $campo->css_class = 'inputnum'; $campo->size = 5; $campo->insertValue = $valor; $campo->readonly = $readonly; if ($campo2 == 'c') { $campo->type = 'inputhidden'; } $campo->name = $codigo; //$campo->name = 'I'.$campo2.'_'.$codigo; $campo->id = 'I' . $campo2 . '_' . $codigo; $campo->tabindex = $desp * $ccana + $fila; $campo->build(); return $campo->output; } function pinta($modifi, $cont, $idfis, $pos) { $iidfis = "{$idfis}class"; if (empty($modifi)) { $rt = '<span class="' . $iidfis . '">' . $cont . '</span>'; } else { $rt = '<span class="' . $iidfis . '" style="color : red;">' . $cont . '</span>'; } return $rt; } $atts = array('width' => '800', 'height' => '600', 'scrollbars' => 'yes', 'status' => 'yes', 'resizable' => 'yes', 'screenx' => '0', 'screeny' => '0'); $titulo1 = anchor_popup("reportes/ver/INVFIS/{$tabla}", 'Conteo', $atts); $titulo2 = anchor_popup('reportes/ver/SINVFIS', 'Hoja de trabajo', $atts); $cana = 100; $grid = new DataGrid('Reportes -->' . $titulo1 . ' ' . $titulo2); $grid->table_id = 'conteotabla'; $grid->per_page = $cana; $grid->use_function('caja', 'pinta'); $action = "javascript:window.location='" . site_url($this->url) . "'"; $grid->button('btn_regresa', 'Regresar', $action, 'TR'); $grid->column('X', 'activo', 'activo', 'align=center'); $grid->column_orderby('Dpto', 'depto', 'd.depto', 'align=center'); $grid->column_orderby('Linea', 'linea', 'c.linea', 'align=center'); $grid->column_orderby('Grupo', 'grupoid', 'b.grupo', 'align=center'); $grid->column_orderby('Barras', 'barras', 'b.grupo', 'align=center'); $grid->column_orderby('Ubica', 'ubica', 'a.ubica', 'align=center'); $grid->column_orderby('Codigo', '<pinta><#modificado#>|<#codigo#>|<#idfis#>|a</pinta>', 'codigo', 'align=center'); $grid->column_orderby('Descripción', '<pinta><#modificado#>|<#descrip#>|<#idfis#>|b</pinta>', 'descrip'); $grid->column_orderby('P.Desp.', '<pinta><#modificado#>|<#despacha#>|<#idfis#>|d</pinta>', 'despacha', 'align=right'); $grid->column_orderby('Anterior', '<pinta><#modificado#>|<#existen#>|<#idfis#>|d</pinta>', 'existen', 'align=right'); $grid->column_orderby('Contado', '<caja>c|<#contado#>|<#idfis#>|true|<#dg_row_id#>|0|' . $cana . '</caja>', 'contado', 'align=right'); $grid->column('Agregar', '<caja>a|<#agregar#>|<#idfis#>|false|<#dg_row_id#>|1|' . $cana . '</caja>'); $grid->column('Quitar', '<caja>q|<#quitar#>|<#idfis#>|false|<#dg_row_id#>|2|' . $cana . '</caja>'); $grid->column('Sustituir', '<caja>s||<#idfis#>|false|<#dg_row_id#>|3|' . $cana . '</caja>'); $grid->build(); //echo $grid->db->last_query(); $data['script'] = '<script language="javascript" type="text/javascript"> function traer(cod){ $.post("' . site_url($this->url . 'traer') . '",{ codigo:cod,tabla:"' . $tabla . '" },function(data){ $("#Ic_"+cod).val(data); $("#Ic_"+cod+"_val").text(data); }) } $(function(){ $(".inputnum").numeric("."); $("input[id^=\'I\']").focus(function(){ var cod =$(this).attr("name"); traer(cod); $(this).select(); }); $("input[id^=\'I\']").click(function(){ $(this).select(); }); $("input[id^=\'Ia_\']").change(function(){ var cod =$(this).attr("name"); var val = $("#Ia_"+cod).val(); var con = $("#Ic_"+cod).val(); $.post("' . site_url($this->url . 'agregar') . '",{ codigo:cod,valor:val,tabla:"' . $tabla . '",contado:con },function(data){ $("#Ia_"+cod).val(0); if(data.length>0){ alert(data); }else{ $("."+cod+"class").attr("style","color:orange;"); } traer(cod); }); }); $("input[id^=\'Iq_\']").change(function(){ var cod =$(this).attr("name"); var val = $("#Iq_"+cod).val(); var con = $("#Ic_"+cod).val(); $.post("' . site_url($this->url . 'quitar') . '",{ codigo:cod,valor:val,tabla:"' . $tabla . '",contado:con },function(data){ $("#Iq_"+cod).val(0); if(data.length>0){ alert(data); }else{ $("."+cod+"class").attr("style","color:orange;"); } traer(cod); }); }); $("input[id^=\'Is_\']").change(function(){ var cod =$(this).attr("name"); var val = $("#Is_"+cod).val(); var con = $("#Ic_"+cod).val(); $.post("' . site_url($this->url . 'sustituir') . '",{ codigo:cod,valor:val,tabla:"' . $tabla . '",contado:con },function(data){ $("#Is_"+cod).val(""); if(data.length>0){ alert(data); }else{ $("."+cod+"class").attr("style","color:orange;"); } traer(cod); }); }); }); </script> <style type="text/css">#conteotabla tr:hover { background-color: #ffff99; }</style>'; $leyenda = '<span style="color:orange">Recién contado</span> '; $leyenda .= '<span style="color:red">Ya contado</span> '; $leyenda .= '<span style="color:black">No se ha contado</span> '; $salida = anchor($this->url, 'Regresar'); $data['content'] = $grid->output . $leyenda; $data['filtro'] = $filter->output; $data['title'] = heading("Conteo de inventario, fecha {$tifecha}, almacén {$tialmacen}"); $data['head'] = script('jquery.js'); $data['head'] .= script('plugins/jquery.numeric.pack.js') . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function inven($tabla) { $this->rapyd->load("datagrid", "dataobject", "fields", "datafilter2"); $mSPRV = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'Cóodigo', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('proveed' => 'Código', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'proveed'), 'titulo' => 'Buscar Proveedor'); $bSPRV = $this->datasis->modbus($mSPRV); $link2 = site_url('inventario/common/get_linea'); $link3 = site_url('inventario/common/get_grupo'); $script = ' $(document).ready(function(){ $("#depto").change(function(){ depto(); $.post("' . $link2 . '",{ depto:$(this).val() },function(data){$("#linea").html(data);}) $.post("' . $link3 . '",{ linea:"" },function(data){$("#grupo").html(data);}) }); $("#linea").change(function(){ linea(); $.post("' . $link3 . '",{ linea:$(this).val() },function(data){$("#grupo").html(data);}) }); $("#grupo").change(function(){ grupo(); }); depto(); linea(); grupo(); }); function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); } else{ $("#nom_depto").attr("disabled",""); } } function linea(){ if($("#linea").val()!=""){ $("#nom_linea").attr("disabled","disabled"); } else{ $("#nom_linea").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); } else{ $("#nom_grupo").attr("disabled",""); } }'; $filter = new DataFilter2("Filtro por Producto"); $filter->db->select("e.existen,e.modificado,e.contado,e.agregar,e.quitar,e.sustituir,a.tipo AS tipo,id,e.codigo,a.descrip,precio1,precio2,precio3,precio4,b.nom_grup AS nom_grup,b.grupo AS grupoid,c.descrip AS nom_linea,c.linea AS linea,d.descrip AS nom_depto,d.depto AS depto"); $filter->db->from("{$tabla} AS e"); $filter->db->join('sinv AS a', 'a.codigo=e.codigo'); $filter->db->join('grup AS b', 'a.grupo=b.grupo'); $filter->db->join('line AS c', 'b.linea=c.linea'); $filter->db->join('dpto AS d', 'c.depto=d.depto'); $filter->db->where('activo', 'S'); $filter->db->where('actualizado IS NULL', '', false); $filter->script($script); $filter->codigo = new inputField('Código', 'codigo'); $filter->codigo->db_name = 'e.codigo'; $filter->codigo->size = 25; $filter->descrip = new inputField("Descripción", "descrip"); $filter->descrip->db_name = 'CONCAT_WS(" ",a.descrip,a.descrip2)'; $filter->descrip->size = 25; $filter->tipo = new dropdownField("Tipo", "tipo"); $filter->tipo->db_name = "a.tipo"; $filter->tipo->option("", "Todos"); $filter->tipo->option("Articulo", "Artículo"); $filter->tipo->option("Servicio", "Servicio"); $filter->tipo->option("Descartar", "Descartar"); $filter->tipo->option("Consumo", "Consumo"); $filter->tipo->option("Fraccion", "Fracción"); $filter->tipo->style = 'width:220px;'; $filter->clave = new inputField("Clave", "clave"); $filter->clave->size = 25; $filter->activo = new dropdownField("Activo", "activo"); $filter->activo->option("", "Todos"); $filter->activo->option("S", "Si"); $filter->activo->option("N", "No"); $filter->activo->style = 'width:220px;'; $filter->proveed = new inputField("Proveedor", "proveed"); $filter->proveed->append($bSPRV); $filter->proveed->clause = "in"; $filter->proveed->db_name = '( a.prov1, a.prov2, a.prov3 )'; $filter->proveed->size = 25; $filter->depto2 = new inputField("Departamento", "nom_depto"); $filter->depto2->db_name = "d.descrip"; $filter->depto2->size = 10; $filter->depto = new dropdownField("Departamento", "depto"); $filter->depto->db_name = "d.depto"; $filter->depto->option("", "Seleccione un Departamento"); $filter->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->depto->in = "depto2"; $filter->linea = new inputField("Linea", "nom_linea"); $filter->linea->db_name = "c.descrip"; $filter->linea->size = 10; $filter->linea2 = new dropdownField("Línea", "linea"); $filter->linea2->db_name = "c.linea"; $filter->linea2->option("", "Seleccione un Departamento primero"); $filter->linea2->in = "linea"; $depto = $filter->getval('depto'); if ($depto !== FALSE) { $filter->linea2->options("SELECT linea, descrip FROM line WHERE depto='{$depto}' ORDER BY descrip"); } else { $filter->linea2->option("", "Seleccione un Departamento primero"); } $filter->grupo2 = new inputField("Grupo", "nom_grupo"); $filter->grupo2->db_name = "b.nom_grup"; $filter->grupo2->size = 10; $filter->grupo = new dropdownField("Grupo", "grupo"); $filter->grupo->db_name = "b.grupo"; $filter->grupo->option("", "Seleccione una Línea primero"); $filter->grupo->in = "grupo2"; $linea = $filter->getval('linea2'); if ($linea !== FALSE) { $filter->grupo->options("SELECT grupo, nom_grup FROM grup WHERE linea='{$linea}' ORDER BY nom_grup"); } else { $filter->grupo->option("", "Seleccione un Departamento primero"); } $filter->marca = new dropdownField("Marca", "marca"); $filter->marca->option('', 'Todas'); $filter->marca->options("SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca"); $filter->marca->style = 'width:220px;'; $filter->buttons("reset", "search"); $filter->build(); function caja($campo2, $valor, $codigo, $readonly = false) { $campo = new inputField2("Title", $campo2); $campo->status = "create"; $campo->css_class = 'inputnum'; $campo->size = 10; $campo->insertValue = $valor; $campo->readonly = $readonly; $campo->name = $codigo; $campo->id = 'I' . $campo2 . '_' . $codigo; $campo->build(); return $campo->output; } function pinta($modifi, $cont) { if ($modifi == null) { return $cont; } else { return "<span style='color:FF0000;'>{$cont}</span>"; } } $atts = array('width' => '800', 'height' => '600', 'scrollbars' => 'yes', 'status' => 'yes', 'resizable' => 'yes', 'screenx' => '0', 'screeny' => '0'); $titulo = anchor_popup("reportes/ver/INVFIS/{$tabla}", 'Imprimir', $atts); $grid = new DataGrid("Inventario Fisico -->" . $titulo); $grid->per_page = 10; $grid->db->limit = 10; $grid->use_function('caja', 'pinta'); $grid->column_orderby("Codigo", "<pinta><#modificado#>|<#codigo#></pinta>", "codigo", 'align=center'); $grid->column_orderby("Descripción", "<pinta><#modificado#>|<#descrip#></pinta>", "descrip"); $grid->column_orderby("Anterior", "<pinta><#modificado#>|<#existen#></pinta>", "existen", 'align=right'); $grid->column_orderby("Contado", "<caja>c|<#contado#>|<#codigo#>|true</caja>"); $grid->column("Agregar", "<caja>a|<#agregar#>|<#codigo#></caja>"); $grid->column("Quitar", "<caja>q|<#quitar#>|<#codigo#></caja>"); $grid->column("Sustituir", "<caja>s|<#sustituir#>|<#codigo#></caja>"); $grid->build(); //echo $grid->db->last_query(); $data['script'] = '<script language="javascript" type="text/javascript"> $(function() { $(".inputnum").numeric("."); function traer(cod){ $.post("' . site_url($this->url . 'traer') . '",{ codigo:cod,tabla:"' . $tabla . '" },function(data){ $("#Ic_"+cod).val(data); }) } $("input[id^=\'I\']").focus(function(){ cod =$(this).attr("name"); traer(cod); }); $("input[id^=\'Ia_\']").change(function(){ cod =$(this).attr("name"); val = $("#Ia_"+cod).val(); con = $("#Ic_"+cod).val(); $.post("' . site_url($this->url . 'agregar') . '",{ codigo:cod,valor:val,tabla:"' . $tabla . '",contado:con },function(data){ $("#Ia_"+cod).val(0); if(data){ alert(data); } }) traer(cod); }); $("input[id^=\'Iq_\']").change(function(){ cod =$(this).attr("name"); val = $("#Iq_"+cod).val(); con = $("#Ic_"+cod).val(); $.post("' . site_url($this->url . 'quitar') . '",{ codigo:cod,valor:val,tabla:"' . $tabla . '",contado:con },function(data){ $("#Iq_"+cod).val(0); if(data){ alert(data); } }) traer(cod); }); $("input[id^=\'Is_\']").change(function(){ cod =$(this).attr("name"); val = $("#Is_"+cod).val(); con = $("#Ic_"+cod).val(); $.post("' . site_url($this->url . 'sustituir') . '",{ codigo:cod,valor:val,tabla:"' . $tabla . '",contado:con },function(data){ $("#Is_"+cod).val(0); if(data){ alert(data); } }) traer(cod); }); }); </script>'; $salida = anchor($this->url, "Regresar"); $data['content'] = $filter->output . $salida . $grid->output; //$data['title'] = "($codigoadm) $codigoadmdes $tipo"; $data["head"] = script("jquery.js") . script("plugins/jquery.numeric.pack.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }
function cprecios() { $this->rapyd->uri->keep_persistence(); $cpre = $this->input->post('pros'); if ($cpre !== false) { $msj = $this->_cprecios(); } else { $msj = ''; } $this->rapyd->load('datafilter2', 'datagrid'); $mSPRV = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'Código', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('proveed' => 'Código', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'proveed'), 'titulo' => 'Buscar Proveedor'); $bSPRV = $this->datasis->modbus($mSPRV); $link2 = site_url('inventario/common/get_linea'); $link3 = site_url('inventario/common/get_grupo'); $script = ' $(document).ready(function(){ $(".inputnum").numeric("."); $("#depto").change(function(){ depto(); $.post("' . $link2 . '",{ depto:$(this).val() },function(data){$("#linea").html(data);}) $.post("' . $link3 . '",{ linea:"" },function(data){$("#grupo").html(data);}) }); $("#linea").change(function(){ linea(); $.post("' . $link3 . '",{ linea:$(this).val() },function(data){$("#grupo").html(data);}) }); $("#grupo").change(function(){ grupo(); }); $("#sinvprecioc").submit(function() { return confirm("Se van a actualizar todos los precios en pantalla \\nEstas seguro de que quieres seguir??"); }); depto(); linea(); grupo(); }); function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); } else{ $("#nom_depto").attr("disabled",""); } } function linea(){ if($("#linea").val()!=""){ $("#nom_linea").attr("disabled","disabled"); } else{ $("#nom_linea").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); } else{ $("#nom_grupo").attr("disabled",""); } }'; $filter = new DataFilter2('Filtro por Producto'); $select = array('IF(formcal=\'U\',ultimo,IF(formcal=\'P\',pond,IF(formcal=\'S\',standard,GREATEST(ultimo,pond)))) AS costo', 'a.existen', 'a.marca', 'a.tipo', 'a.id', 'TRIM(codigo) AS codigo', 'a.descrip', 'precio1', 'precio2', 'precio3', 'precio4', 'b.nom_grup', 'b.grupo', 'c.descrip AS nom_linea', 'c.linea', 'd.descrip AS nom_depto', 'd.depto AS depto', 'a.base1', 'a.base2', 'a.base3', 'a.base4'); $filter->db->select($select); $filter->db->from('sinv AS a'); $filter->db->join('grup AS b', 'a.grupo=b.grupo'); $filter->db->join('line AS c', 'b.linea=c.linea'); $filter->db->join('dpto AS d', 'c.depto=d.depto'); $filter->db->where('a.activo', 'S'); $filter->script($script); $filter->codigo = new inputField("Código", "codigo"); $filter->codigo->size = 15; $filter->codigo->group = "Uno"; $filter->descrip = new inputField("Descripción", "descrip"); $filter->descrip->db_name = 'CONCAT_WS(" ",a.descrip,a.descrip2)'; $filter->descrip->size = 30; $filter->descrip->group = "Uno"; $filter->tipo = new dropdownField("Tipo", "tipo"); $filter->tipo->db_name = "a.tipo"; $filter->tipo->option('', "Todos"); $filter->tipo->option("Articulo", "Artículo"); $filter->tipo->option("Servicio", "Servicio"); $filter->tipo->option("Descartar", "Descartar"); $filter->tipo->option("Consumo", "Consumo"); $filter->tipo->option("Fraccion", "Fracción"); $filter->tipo->style = 'width:120px;'; $filter->tipo->group = "Uno"; $filter->clave = new inputField("Clave", "clave"); $filter->clave->size = 15; $filter->clave->group = "Uno"; $filter->proveed = new inputField("Proveedor", "proveed"); $filter->proveed->append($bSPRV); $filter->proveed->db_name = 'CONCAT_WS("-",`a`.`prov1`, `a`.`prov2`, `a`.`prov3`)'; $filter->proveed->size = 10; $filter->proveed->group = "Dos"; $filter->depto2 = new inputField("Departamento", "nom_depto"); $filter->depto2->db_name = "d.descrip"; $filter->depto2->size = 5; $filter->depto2->group = "Dos"; $filter->depto = new dropdownField("Departamento", "depto"); $filter->depto->db_name = "d.depto"; $filter->depto->option("", "Seleccione un Departamento"); $filter->depto->options("SELECT depto, CONCAT(depto,'-',descrip) descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->depto->in = "depto2"; $filter->depto->group = "Dos"; $filter->depto->style = 'width:190px;'; $filter->linea = new inputField('Linea', 'nom_linea'); $filter->linea->db_name = 'c.descrip'; $filter->linea->size = 5; $filter->linea->group = 'Dos'; $filter->linea2 = new dropdownField('Línea', 'linea'); $filter->linea2->db_name = 'c.linea'; $filter->linea2->option('', "Seleccione un Departamento primero"); $filter->linea2->in = 'linea'; $filter->linea2->group = 'Dos'; $filter->linea2->style = 'width:190px;'; $depto = $filter->getval('depto'); if ($depto !== false) { $filter->linea2->options("SELECT linea, CONCAT(linea,'-',descrip) descrip FROM line WHERE depto='{$depto}' ORDER BY descrip"); } else { $filter->linea2->option("", "Seleccione un Departamento primero"); } $filter->grupo2 = new inputField('Grupo', 'nom_grupo'); $filter->grupo2->db_name = 'b.nom_grup'; $filter->grupo2->size = 5; $filter->grupo2->group = 'Dos'; $filter->grupo = new dropdownField('Grupo', 'grupo'); $filter->grupo->db_name = 'b.grupo'; $filter->grupo->option('', 'Seleccione una Línea primero'); $filter->grupo->in = 'grupo2'; $filter->grupo->group = 'Dos'; $filter->grupo->style = 'width:190px;'; $linea = $filter->getval('linea2'); if ($linea !== false) { $filter->grupo->options("SELECT grupo, CONCAT(grupo,'-',nom_grup) nom_grup FROM grup WHERE linea='{$linea}' ORDER BY nom_grup"); } else { $filter->grupo->option("", "Seleccione un Departamento primero"); } $filter->marca = new dropdownField("Marca", "marca"); $filter->marca->option('', 'Todas'); $filter->marca->options("SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca"); $filter->marca->style = 'width:220px;'; $filter->marca->group = "Dos"; $filter->buttons('reset', 'search'); $filter->build('dataformfiltro'); $ggrid = ''; if ($filter->is_valid()) { $attr = array('id' => 'sinvprecioc'); $ggrid = form_open(uri_string(), $attr); foreach ($filter->_fields as $field_name => $field_copy) { $ggrid .= form_hidden($field_copy->id, $field_copy->value); } $grid = new DataGrid('Artículos de Inventario'); $grid->order_by('codigo', 'asc'); $grid->per_page = 15; $link = anchor('inventario/sinv/dataedit/show/<#id#>', '<#codigo#>'); $uri_2 = anchor('inventario/sinv/dataedit/create/<#id#>', 'Duplicar'); $grid->column_orderby('Código', 'codigo', 'codigo'); $grid->column_orderby('Descripción', 'descrip', 'descrip'); $grid->column_orderby('Marca', 'marca', 'marca'); for ($i = 1; $i < 5; $i++) { $obj = 'precio' . $i; ${$obj} = new inputField($obj, $obj); ${$obj}->grid_name = $obj . '[<#id#>]'; ${$obj}->status = 'modify'; ${$obj}->size = 8; ${$obj}->css_class = 'inputnum'; ${$obj}->autocomplete = false; $grid->column("Precio {$i}", ${$obj}, 'align=right'); } $grid->column('Costo', '<nformat><#costo#></nformat>', 'align=right'); $grid->column('Existencia', '<nformat><#existen#></nformat>', 'align=right'); $grid->submit('pros', 'Cambiar', 'BR'); $grid->build(); $ggrid .= $grid->output; $ggrid .= form_close(); //echo $this->db->last_query(); } $data['content'] = '<div class="alert">' . $msj . '</div>'; $data['content'] .= $ggrid; $data['filtro'] = $filter->output; $data['title'] = heading('Cambio de precios'); $data['head'] = $this->rapyd->get_head() . script('jquery.pack.js'); $data['head'] .= script('plugins/jquery.numeric.pack.js') . script('plugins/jquery.floatnumber.js'); $this->load->view('view_ventanas', $data); }
function filteredgrid() { $this->rapyd->load('datafilter2', 'datagrid'); $link1 = site_url('inventario/etiqueta_sinv/menu'); $link2 = site_url('inventario/common/get_linea'); $link3 = site_url('inventario/common/get_grupo'); $script = ' $(document).ready(function(){ $("#depto").change(function(){ $("#objnumero").val(""); depto(); $.post("' . $link2 . '",{ depto:$(this).val() },function(data){$("#linea").html(data);}) $.post("' . $link3 . '",{ linea:"" },function(data){$("#grupo").html(data);}) }); $("#linea").change(function(){ linea(); $.post("' . $link3 . '",{ linea:$(this).val() },function(data){$("#grupo").html(data);}) }); $("#grupo").change(function(){ grupo(); }); depto(); linea(); grupo(); }); function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); }else{ $("#nom_depto").attr("disabled",""); } } function linea(){ if($("#linea").val()!=""){ $("#nom_linea").attr("disabled","disabled"); }else{ $("#nom_linea").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); }else{ $("#nom_grupo").attr("disabled",""); } }'; $filter = new DataFilter2('Filtro por Producto'); $filter->script($script); $filter->codigo = new inputField('Código', 'codigo'); $filter->codigo->db_name = 'a.codigo'; $filter->codigo->size = 20; $filter->codigo->clause = 'where'; $filter->codigo->operator = '='; $filter->descrip = new inputField('Descripción', 'descrip'); $filter->descrip->db_name = 'CONCAT_WS(\' \',a.descrip,a.descrip2)'; $filter->descrip->size = 25; $filter->depto = new dropdownField('Departamento', 'depto'); $filter->depto->db_name = 'd.depto'; $filter->depto->option('', 'Seleccione un Departamento'); $filter->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->linea2 = new dropdownField('Línea', 'linea'); $filter->linea2->db_name = 'c.linea'; $filter->linea2->option('', 'Seleccione un Departamento primero'); $depto = $filter->getval('depto'); if ($depto !== false) { $dbdepto = $this->db->escape($depto); $filter->linea2->options("SELECT linea, descrip FROM line WHERE depto={$dbdepto} ORDER BY descrip"); } else { $filter->linea2->option('', 'Seleccione un Departamento primero'); } $filter->grupo = new dropdownField('Grupo', 'grupo'); $filter->grupo->db_name = 'b.grupo'; $filter->grupo->option('', 'Seleccione una Línea primero'); $linea = $filter->getval('linea2'); if ($linea !== false) { $dblinea = $this->db->escape($linea); $filter->grupo->options("SELECT grupo, nom_grup FROM grup WHERE linea={$dblinea} ORDER BY nom_grup"); } else { $filter->grupo->option('', 'Seleccione un Departamento primero'); } $filter->marca = new dropdownField('Marca', 'marca'); $filter->marca->option('', 'Seleccionar'); $filter->marca->options('SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca'); $filter->marca->style = 'width:220px;'; $filter->cant = new inputField('Cantidad de etiquetas por productos', 'cant'); $filter->cant->css_class = 'inputnum'; $filter->cant->insertValue = '1'; $filter->cant->clause = ''; $filter->cant->size = 8; $filter->cant->rule = 'required|numeric'; $filter->cant->group = 'Configuración'; $filter->salformat = new radiogroupField('Formato de salida', 'salformat'); $filter->salformat->options(array('pdf' => 'pdf', 'txt' => 'txt')); $filter->salformat->insertValue = 'pdf'; $filter->salformat->clause = ''; $filter->salformat->group = 'Opciones'; $filter->button('btn_undo', 'Regresar', 'javascript:window.location=\'' . site_url('inventario/etiqueta_sinv') . '\'', 'BL'); $filter->buttons('reset', 'search'); $filter->build(); if ($this->rapyd->uri->is_set('search') && $filter->is_valid()) { $formato = $filter->salformat->newValue; if ($formato == 'txt') { $tabla = form_open('formatos/descargartxt/' . $this->formato); } else { $tabla = form_open('forma/ver/' . $this->formato); } $select = array('a.tipo', 'a.id', 'a.codigo', 'a.descrip', 'a.precio1 AS precio', 'a.precio2 AS precio2', 'a.precio3 AS precio3', 'a.barras', 'b.nom_grup', 'b.grupo AS grupoid', 'c.descrip AS nom_linea', 'c.linea', 'd.descrip AS nom_depto', 'd.depto AS depto', 'a.pfecha1 AS cfecha', 'a.iva'); $grid = new DataGrid('Lista de Artículos para imprimir'); $grid->per_page = 15; $grid->db->select($select); $grid->db->from('sinv AS a'); $grid->db->join('grup AS b', 'a.grupo=b.grupo'); $grid->db->join('line AS c', 'b.linea=c.linea'); $grid->db->join('dpto AS d', 'c.depto=d.depto'); $grid->db->group_by('a.codigo'); $grid->order_by('codigo', 'asc'); $grid->column_orderby('Código', 'codigo', 'codigo'); $grid->column_orderby('Departamento', 'nom_depto', 'nom_depto', 'align=\'left\''); $grid->column_orderby('Línea', 'nom_linea', 'nom_linea', 'align=\'left\''); $grid->column_orderby('Grupo', 'nom_grup', 'nom_grup', 'align=\'left\''); $grid->column_orderby('Descripción', 'descrip', 'descrip'); $grid->column_orderby('Precio', 'precio', 'precio', 'align=\'right\''); $grid->build(); $limite = 300; if ($grid->recordCount > 0 && $grid->recordCount <= $limite) { $consul = $this->db->last_query(); $mSQL = substr($consul, 0, strpos($consul, 'LIMIT')); $data = array('cant' => $this->input->post('cant'), 'consul' => $mSQL); $tabla .= form_hidden($data); $tabla .= $grid->output . form_submit('mysubmit', 'Generar'); $tabla .= form_close(); } elseif ($grid->recordCount > $limite) { $tabla = 'No se puede generar habladores con más de ' . $limite . ' árticulos'; } else { $tabla = 'No se encontrarón productos'; } } else { $tabla = $filter->error_string; } $data['content'] = $filter->output . $tabla; $data['title'] = heading('Habladores por filtro de productos'); $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 filteredgrid() { $this->datasis->modulo_id($this->id, 1); if ($this->input->post('btn_cambio_2') !== false) { unset($_POST['btn_cambio_2']); $_POST['btn_submit'] = 'a'; $_cambiomin = true; } else { $_cambiomin = false; } $this->rapyd->load("datafilter2", "datagrid"); $mSPRV = array('tabla' => 'sprv', 'columnas' => array('proveed' => 'Cóodigo', 'nombre' => 'Nombre', 'contacto' => 'Contacto'), 'filtro' => array('proveed' => 'Código', 'nombre' => 'Nombre'), 'retornar' => array('proveed' => 'proveed'), 'titulo' => 'Buscar Proveedor'); $bSPRV = $this->datasis->modbus($mSPRV); $link2 = site_url('inventario/common/get_linea'); $link3 = site_url('inventario/common/get_grupo'); $script = ' $(document).ready(function(){ $("#depto").change(function(){ depto(); $.post("' . $link2 . '",{ depto:$(this).val() },function(data){$("#linea").html(data);}) $.post("' . $link3 . '",{ linea:"" },function(data){$("#grupo").html(data);}) }); $("#linea").change(function(){ linea(); $.post("' . $link3 . '",{ linea:$(this).val() },function(data){$("#grupo").html(data);}) }); $("#grupo").change(function(){ grupo(); }); depto(); linea(); grupo(); }); function depto(){ if($("#depto").val()!=""){ $("#nom_depto").attr("disabled","disabled"); } else{ $("#nom_depto").attr("disabled",""); } } function linea(){ if($("#linea").val()!=""){ $("#nom_linea").attr("disabled","disabled"); } else{ $("#nom_linea").attr("disabled",""); } } function grupo(){ if($("#grupo").val()!=""){ $("#nom_grupo").attr("disabled","disabled"); } else{ $("#nom_grupo").attr("disabled",""); } }'; $filter = new DataFilter2("Filtro por Producto"); $filter->script($script); $filter->db->select('a.codigo'); $filter->db->select('a.descrip'); $filter->db->select('s.exmin'); $filter->db->select('s.id'); $filter->db->from('eventas as a'); $filter->db->join('grup AS b', 'a.grupo=b.grupo'); //$filter->db->join('line AS c' ,'c.linea=b.linea'); //$filter->db->join('dpto AS d' ,'c.depto=d.depto'); $filter->db->join('sinv AS s', 'a.codigo=s.codigo'); //$filter->db->where('s.activo','S'); $filter->db->where('s.tipo', 'Articulo'); $filter->db->groupby('a.descrip'); //Agregar proveedor y filtro de activo, columna de activo maximo=doble minu +1 predeterminado, guardar historial de cambios //Diferencias porcentual enete el minimo calculado y el minimo actual- $filter->fechad = new dateonlyField("Desde", "fechad", 'm/Y'); $filter->fechah = new dateonlyField("Hasta", "fechah", 'm/Y'); $filter->fechad->dbformat = 'Y-m-'; $filter->fechah->dbformat = 'Y-m-'; $filter->fechah->rule = "required"; $filter->fechad->rule = "required"; $filter->fechad->clause = $filter->fechah->clause = ''; $filter->fechad->insertValue = date("Y-m-d", mktime(0, 0, 0, date('m') - 12, date('j'), date('Y'))); $filter->fechah->insertValue = date("Y-m-d"); $filter->fechah->size = $filter->fechad->size = 9; $filter->depto = new dropdownField("Departamento", "depto"); $filter->depto->db_name = "a.depto"; $filter->depto->option("", "Seleccione un Departamento"); $filter->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto"); $filter->linea2 = new dropdownField("Línea", "linea"); $filter->linea2->db_name = "a.linea"; $filter->linea2->option("", "Seleccione un Departamento primero"); $depto = $filter->getval('depto'); if ($depto !== FALSE) { $filter->linea2->options("SELECT linea, descrip FROM line WHERE depto='{$depto}' ORDER BY descrip"); } else { $filter->linea2->option("", "Seleccione un Departamento primero"); } $filter->grupo = new dropdownField("Grupo", "grupo"); $filter->grupo->db_name = 'a.grupo'; $filter->grupo->option("", "Seleccione una Línea primero"); $linea = $filter->getval('linea2'); if ($linea !== FALSE) { $filter->grupo->options("SELECT grupo, nom_grup FROM grup WHERE linea='{$linea}' ORDER BY nom_grup"); } else { $filter->grupo->option("", "Seleccione un Departamento primero"); } $filter->marca = new dropdownField("Marca", "marca"); $filter->marca->option('', 'Todas'); $filter->marca->options("SELECT TRIM(marca) AS clave, TRIM(marca) AS valor FROM marc ORDER BY marca"); $filter->marca->style = 'width:220px;'; $filter->estadistica = new dropdownField('Estadística a usar', 'estadistica'); $filter->estadistica->clause = ''; $filter->estadistica->rule = 'required'; $filter->estadistica->option('promediot', 'Promedio truncado'); $filter->estadistica->option('promedio', 'Promedio'); $filter->estadistica->option('mediana', 'Mediana'); $filter->estadistica->option('maximo', 'Valor Máximo'); $filter->estadistica->option('minimo', 'Valor Mínimo'); //$filter->estadistica->option('moda' ,'Moda'); $filter->estadistica->group = 'Configuración'; $filter->maximos = new dropdownField('Cálculo de máximos', 'maximos'); $filter->maximos->clause = ''; $filter->maximos->option('', 'No alterar'); $filter->maximos->option('max_dupli', 'Doble del mínimo'); $filter->maximos->group = 'Configuración'; $filter->frecuencia = new dropdownField('Frecuencia', 'frecuencia'); $filter->frecuencia->clause = ''; $filter->frecuencia->rule = 'required'; $filter->frecuencia->option('1', 'Mensual'); $filter->frecuencia->option('2', 'BiMenusal'); $filter->frecuencia->option('4', 'Semanal'); $filter->frecuencia->option('8', 'BiSemanal'); $filter->frecuencia->group = 'Configuración'; $filter->buttons('reset', 'search'); if ($this->rapyd->uri->is_set('search')) { $filter->submit('btn_cambio_2', 'Actualizar todos', "BR"); } $filter->build(); $uri = 'inventario/sinv/dataedit/show/<#codigo#>'; $tabla = ''; if ($filter->is_valid()) { $estadistica = $filter->estadistica->newValue; $maximos = $filter->maximos->newValue; $frecuencia = $filter->frecuencia->newValue; $udia = days_in_month(substr($filter->fechah->newValue, 4), substr($filter->fechah->newValue, 0, 4)); $fechad = $filter->fechad->newValue . '01'; $fechah = $filter->fechah->newValue . $udia; $filter->db->where('a.fecha >=', $fechad); $filter->db->where('a.fecha <=', $fechah); $datetime1 = new DateTime($fechad); $datetime2 = new DateTime($fechah); $interval = $datetime1->diff($datetime2); $ffechad = explode('-', $fechad); $grid = new DataGrid('Lista de Artículos'); $grid->order_by('codigo', 'asc'); $grid->use_function('divisor', $estadistica); $grid->per_page = 15; $grid->column('Código', 'codigo'); $grid->column('Descripción', 'descrip'); $columncal = $ccolumncal = array(); for ($i = 0; $i <= $interval->m + 1; $i++) { $mk = mktime(0, 0, 0, $ffechad[1] + $i, 1, $ffechad[0]); $udia = days_in_month(date('m', $mk), date('Y', $mk)); $sqdesde = date("Y-m-d", $mk); $sqhasta = date("Y-m-", $mk) . $udia; $etiq = date("m/Y", $mk); $select = "SUM(cana*(fecha BETWEEN '{$sqdesde}' AND '{$sqhasta}')) AS '{$etiq}'"; $filter->db->select($select); $grid->column($etiq, "<nformat><#{$etiq}#></nformat>", 'align=right'); $columncal[] = "<#{$etiq}#>"; $ccolumncal[] = $etiq; } $grid->column('Promedio', '<b style="color:red"><nformat><divisor><' . $estadistica . '>' . implode('|', $columncal) . '</' . $estadistica . '>|' . $frecuencia . '</divisor></nformat></b>', 'align=right'); $grid->column('Mínimo', '<nformat><#exmin#></nformat>', 'align=right'); $grid->column(' ', '<a href="javascript:actumin(\'<#id#>\',\'<divisor><' . $estadistica . '>' . implode('|', $columncal) . '</' . $estadistica . '>|' . $frecuencia . '</divisor>\')" >Actualizar</a>', 'align=right'); if ($_cambiomin) { //echo 'Cambios de todos'; unset($_POST['btn_cambio_2']); $_POST['btn_submit'] = 'a'; $sql = $filter->db->_compile_select(); $query = $this->db->query($sql); if ($query->num_rows() > 0) { foreach ($query->result() as $row) { $param = array(); foreach ($ccolumncal as $obj) { $param[] = $row->{$obj}; } $min = ceil($estadistica($param) / $frecuencia); $where = 'codigo =' . $this->db->escape($row->codigo); $data = array('exmin' => $min); if (!empty($maximos)) { $data['exmax'] = $maximos($min); } $sSQL = $this->db->update_string('sinv', $data, $where); $this->db->simple_query($sSQL); } } } $grid->build(); $tabla = $grid->output; } $url = site_url('inventario/comparativo/actumin/') . '/'; $data['script'] = '<script language="javascript" type="text/javascript"> function actumin(id,val){ vval = prompt("Actualizar minimo a:",val); if(vval) $.get("' . $url . '"+id+"/"+vval, function(data) { alert(data); }); } </script>'; $data['content'] = $filter->output . $tabla; $data['title'] = header('Comparativo de Mínimos de Inventario'); $data['head'] = script('jquery.pack.js') . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . script("sinvmaes2.js") . $this->rapyd->get_head(); $this->load->view('view_ventanas', $data); }