function dataeditvehiculo($sta, $id) { $this->rapyd->load('dataobject', 'datadetails'); //Chequea que tenga vehiculos $dbid = $this->db->escape($id); $cana = $this->datasis->dameval("SELECT COUNT(*) AS cana FROM sinvehiculo WHERE id_scst={$dbid}"); if (empty($cana)) { $mSQL = "SELECT c.codigo,c.descrip,c.peso,b.cantidad AS cana\n\t\t\t\tFROM scst AS a\n\t\t\t\tJOIN itscst AS b ON a.control=b.control\n\t\t\t\tJOIN sinv AS c ON b.codigo=c.codigo\n\t\t\t\tWHERE c.serial='V' AND a.id={$dbid}"; $query = $this->db->query($mSQL); if ($query->num_rows() > 0) { foreach ($query->result() as $row) { for ($i = 0; $i < $row->cana; $i++) { $data = array('codigo_sinv' => $row->codigo, 'modelo' => $row->descrip, 'peso' => $row->peso, 'anio' => date('Y'), 'color' => '', 'motor' => '', 'carroceria' => '', 'id_scst' => $id); $sql = $this->db->insert_string('sinvehiculo', $data); $this->db->simple_query($sql); } } } else { echo 'Compra no tiene Vehículos.'; exit; } } $do = new DataObject('scst'); $do->rel_one_to_many('sinvehiculo', 'sinvehiculo', array('id' => 'id_scst')); $do->pointer('sprv', 'sprv.proveed=scst.proveed', 'sprv.nombre AS sprvnombre', 'left'); $do->order_rel_one_to_many('sinvehiculo', 'codigo_sinv'); //$do->rel_pointer('itscst','sinv','itscst.codigo=sinv.codigo','sinv.descrip AS sinvdescrip, sinv.base1 AS sinvprecio1, sinv.base2 AS sinvprecio2, sinv.base3 AS sinvprecio3, sinv.base4 AS sinvprecio4, sinv.iva AS sinviva, sinv.peso AS sinvpeso,sinv.tipo AS sinvtipo'); $edit = new DataDetails('Compras', $do); $edit->set_rel_title('itscst', 'Producto <#o#>'); $edit->on_save_redirect = false; $edit->pre_process('insert', '_pre_vehi_insert'); $edit->pre_process('update', '_pre_vehi_update'); $edit->pre_process('delete', '_pre_vehi_delete'); $edit->post_process('update', '_post_vehi_update'); $edit->proveed = new inputField('Proveedor', 'proveed'); $edit->proveed->size = 7; $edit->proveed->maxlength = 5; $edit->proveed->autocomplete = false; $edit->proveed->mode = 'autohide'; $edit->proveed->rule = 'required'; $edit->nombre = new hiddenField('Nombre', 'nombre'); $edit->nombre->mode = 'autohide'; $edit->nombre->size = 50; $edit->nombre->maxlength = 40; $edit->fecha = new DateonlyField('Fecha', 'fecha', 'd/m/Y'); $edit->fecha->insertValue = date('Y-m-d'); $edit->fecha->size = 12; $edit->fecha->rule = 'required'; $edit->fecha->calendar = false; $edit->fecha->mode = 'autohide'; $transac = $edit->get_from_dataobjetct('transac'); $edit->vence = new DateonlyField('Vence', 'vence', 'd/m/Y'); $edit->vence->insertValue = date('Y-m-d'); $edit->vence->size = 12; $edit->vence->rule = 'required'; $edit->vence->mode = 'autohide'; $edit->vence->calendar = false; $edit->serie = new inputField('Número', 'serie'); $edit->serie->size = 15; $edit->serie->autocomplete = false; $edit->serie->rule = 'required'; $edit->serie->mode = 'autohide'; $edit->serie->maxlength = 12; $edit->cfis = new inputField('Número fiscal', 'nfiscal'); $edit->cfis->size = 15; $edit->cfis->autocomplete = false; $edit->cfis->mode = 'autohide'; $edit->cfis->rule = 'required'; $edit->cfis->maxlength = 12; $edit->almacen = new dropdownField('Almacen', 'depo'); $edit->almacen->options('SELECT ubica, CONCAT(ubica,\' \',ubides) nombre FROM caub ORDER BY ubica'); $edit->almacen->rule = 'required'; $edit->almacen->mode = 'autohide'; $edit->almacen->style = 'width:145px;'; $alma = $this->datasis->traevalor('ALMACEN'); if (!empty($alma)) { $edit->almacen->insertValue = $alma; } $edit->tipo = new dropdownField('Tipo', 'tipo_doc'); $edit->tipo->option('FC', 'Factura a Crédito'); $edit->tipo->option('NC', 'Nota de Crédito'); //Falta implementar los metodos post para este caso //$edit->tipo->option('NE','Nota de Entrega'); //Falta implementar los metodos post para este caso $edit->tipo->rule = 'required'; $edit->tipo->style = 'width:140px;'; $edit->observa1 = new textareaField('Observación', 'observa1'); $edit->observa1->cols = 40; $edit->observa1->rows = 3; $edit->montotot = new inputField('Subtotal', 'montotot'); $edit->montotot->onkeyup = 'cmontotot()'; $edit->montotot->size = 12; $edit->montotot->autocomplete = false; $edit->montotot->css_class = 'inputnum'; $edit->montoiva = new inputField('IVA', 'montoiva'); $edit->montoiva->onkeyup = 'cmontoiva()'; $edit->montoiva->size = 12; $edit->montoiva->autocomplete = false; $edit->montoiva->css_class = 'inputnum'; $edit->montonet = new hiddenField('Total', 'montonet'); //$edit->montonet->size = 20; //$edit->montonet->css_class='inputnum'; $edit->idrel = new hiddenField('', 'id_<#i#>'); $edit->idrel->rel_id = 'sinvehiculo'; $edit->idrel->size = 10; $edit->idrel->db_name = 'id'; $edit->codigo = new hiddenField('Código', 'codigo_<#i#>'); $edit->codigo->rel_id = 'sinvehiculo'; $edit->codigo->size = 10; $edit->codigo->db_name = 'codigo_sinv'; $edit->codigo->autocomplete = false; $edit->codigo->rule = 'required|callback_chcodigoa'; $edit->modelo = new hiddenField('Modelo', 'modelo_<#i#>'); $edit->modelo->rel_id = 'sinvehiculo'; $edit->modelo->size = 30; $edit->modelo->db_name = 'modelo'; $edit->modelo->group = 'Datos del vehículo'; $edit->anio = new inputField('Año', 'anio_<#i#>'); $edit->anio->rel_id = 'sinvehiculo'; $edit->anio->rule = 'exact_length[4]|numeric|required'; $edit->anio->db_name = 'anio'; $edit->anio->size = 5; $edit->anio->maxlength = 4; $edit->anio->insertValue = date('Y'); $edit->anio->autocomplete = false; $edit->color = new inputField('Color', 'color_<#i#>'); $edit->color->rel_id = 'sinvehiculo'; $edit->color->db_name = 'color'; $edit->color->rule = 'max_length[50]|strtoupper|required'; $edit->color->size = 10; $edit->color->maxlength = 50; $edit->color->autocomplete = false; $edit->motor = new inputField('Serial de Motor', 'motor_<#i#>'); $edit->motor->rel_id = 'sinvehiculo'; $edit->motor->rule = 'max_length[50]|strtoupper|callback_chrepetidos[motor]|required'; $edit->motor->db_name = 'motor'; $edit->motor->size = 25; $edit->motor->maxlength = 50; $edit->motor->autocomplete = false; $edit->carroceria = new inputField('Serial de Carrocería', 'carroceria_<#i#>'); $edit->carroceria->rel_id = 'sinvehiculo'; $edit->carroceria->rule = 'max_length[50]|strtoupper|callback_chrepetidos[carroceria]|required'; $edit->carroceria->db_name = 'carroceria'; $edit->carroceria->size = 25; $edit->carroceria->maxlength = 50; $edit->carroceria->autocomplete = false; $edit->uso = new dropdownField('Tipo de uso', 'uso_<#i#>'); $edit->uso->rel_id = 'sinvehiculo'; $edit->uso->db_name = 'uso'; $edit->uso->option('P', 'Particular'); $edit->uso->option('T', 'Trabajo'); $edit->uso->option('C', 'Carga'); $edit->uso->style = 'width:150px;'; $edit->uso->size = 6; $edit->uso->rule = 'required'; $edit->tipo = new dropdownField('Tipo', 'tipo_<#i#>'); $edit->tipo->rel_id = 'sinvehiculo'; $edit->tipo->db_name = 'tipo'; $edit->tipo->option('UTILITARIO', 'Utilitario'); $edit->tipo->option('ENDURO', 'Enduro'); $edit->tipo->option('SCOOTER', 'Scooter'); $edit->tipo->option('MOTOCICLETA', 'Motocicleta'); $edit->tipo->option('RACING', 'Racing'); $edit->tipo->option('CHASIS', 'Chasis'); $edit->tipo->option('CAVA REFRIGERADA', 'Cava Refrigerada'); $edit->tipo->option('CAVA TERMINA', 'Cava Termina'); $edit->tipo->option('CAVA SECA', 'Cava Seca'); $edit->tipo->option('PLATAFORMA', 'Plataforma'); $edit->tipo->option('PLATAFORMA GRUA', 'Plataforma Grua'); $edit->tipo->option('PLATAFORMA BARANDA', 'Plataforma Barandas'); $edit->tipo->option('AUTOBUS', 'Autobus'); $edit->tipo->option('VOLTEO', 'Volteo'); $edit->tipo->option('CUADRILLERO', 'Cuadrillero'); $edit->tipo->option('CHUTO', 'Chuto'); $edit->tipo->option('TANQUE', 'Tanque'); $edit->tipo->option('JAULA GANADERA', 'Jaula Ganadera'); $edit->tipo->option('FERRETERO', 'Ferretero'); $edit->tipo->option('AMBULACIA', 'Ambulacia'); $edit->tipo->style = 'width:150px;'; $edit->tipo->size = 6; $edit->tipo->rule = 'required'; $edit->clase = new dropdownField('Clase', 'clase_<#i#>'); $edit->clase->rel_id = 'sinvehiculo'; $edit->clase->db_name = 'clase'; $edit->clase->option('', 'Seleccionar'); $edit->clase->option('AUTOMOVIL', 'Automovil'); $edit->clase->option('MOTO', 'Moto'); $edit->clase->option('CAMIONETA', 'Camioneta'); $edit->clase->option('CAMION', 'Camion'); $edit->clase->style = 'width:120px;'; $edit->clase->size = 6; $edit->clase->rule = 'required'; $edit->transmision = new dropdownField('Transmisión', 'transmision_<#i#>'); $edit->transmision->rel_id = 'sinvehiculo'; $edit->transmision->db_name = 'transmision'; $edit->transmision->option('', 'Seleccionar'); $edit->transmision->option('AUTOMATICO', 'Automatico'); $edit->transmision->option('MANUAL', 'Manual'); $edit->transmision->style = 'width:120px;'; $edit->transmision->size = 6; $edit->transmision->rule = 'required'; $edit->peso = new inputField('Peso Kg.', 'peso_<#i#>'); $edit->peso->rel_id = 'sinvehiculo'; $edit->peso->db_name = 'peso'; $edit->peso->rule = 'max_length[10]|numeric|required'; $edit->peso->css_class = 'inputnum'; $edit->peso->size = 12; $edit->peso->maxlength = 12; $edit->placa = new inputField('Placa', 'placa_<#i#>'); $edit->placa->rel_id = 'sinvehiculo'; $edit->placa->db_name = 'placa'; $edit->placa->rule = 'max_length[50]|strtoupper|callback_chrepetidos[placa]'; $edit->placa->size = 12; $edit->placa->maxlength = 50; $edit->placa->autocomplete = false; $mSQL = "SELECT a.costo FROM itscst AS a JOIN scst AS b ON a.control=b.control WHERE codigo='PLACA' AND b.id={$dbid} GROUP BY a.costo"; $qquery = $this->db->query($mSQL); $edit->precioplaca = new dropdownField('Precio placa.', 'precioplaca_<#i#>'); $edit->precioplaca->rel_id = 'sinvehiculo'; $edit->precioplaca->db_name = 'precioplaca'; $edit->precioplaca->rule = 'max_length[10]|numeric|required'; $edit->precioplaca->style = 'width:100px;'; if ($qquery->num_rows() > 1) { $edit->precioplaca->option('', 'Seleccionar'); } foreach ($qquery->result() as $rrow) { $edit->precioplaca->option($rrow->costo, nformat($rrow->costo)); } $edit->id_sfac = new hiddenField('', 'id_sfac_<#i#>'); $edit->id_sfac->rel_id = 'sinvehiculo'; $edit->id_sfac->db_name = 'id_sfac'; $recep = strtotime($edit->get_from_dataobjetct('recep')); $fecha = strtotime($edit->get_from_dataobjetct('fecha')); $actuali = strtotime($edit->get_from_dataobjetct('actuali')); if ($actuali >= $fecha) { $edit->carroceria->type = 'inputhidden'; $edit->motor->type = 'inputhidden'; } $edit->build(); if ($edit->on_success()) { $rt = array('status' => 'A', 'mensaje' => 'Registro guardado', 'pk' => $edit->_dataobject->pk); echo json_encode($rt); } else { $conten['form'] =& $edit; $this->load->view('view_seriales_vehi', $conten); } }
function dataedit() { $this->rapyd->load('dataobject', 'datadetails'); $do = new DataObject('edcont'); $do->pointer('scli', 'scli.cliente=edcont.cliente', 'scli.tipo AS sclitipo, scli.nombre AS nombre, dire11 AS direc, scli.rifci AS rifci', 'left'); //$do->pointer('edres' ,'edres.id=edcont.id_edres','scli.tipo AS sclitipo, scli.nombre AS edresnumero','left'); $do->rel_one_to_many('itedcont', 'itedcont', array('id' => 'id_edcont')); $do->order_rel_one_to_many('itedcont', 'id'); $edit = new DataDetails('', $do); /* $script= ' $(function() { $("#fecha").datepicker({dateFormat:"dd/mm/yy"}); $(".inputnum").numeric("."); $(".inputonlynum").numeric(); }); '; $edit->script($script,'modify'); $edit->script($script,'create'); */ $edit->on_save_redirect = false; $id = $edit->get_from_dataobjetct('id'); if ($id !== false) { $action = "javascript:window.location='" . site_url($this->url . 'formato/' . $id . '/contrato.xml') . "'"; $edit->button('btn_formato', 'Descargar formato', $action, 'TR'); } $status = $edit->get_from_dataobjetct('status'); if ($status == 'P') { $action = "javascript:window.location='" . site_url($this->url . 'actualizar/' . $id) . "'"; $edit->button('btn_actuali', 'Actualizar', $action, 'TR'); } //$edit->back_url = site_url($this->url.'filteredgrid'); $edit->post_process('insert', '_post_insert'); $edit->post_process('update', '_post_update'); $edit->post_process('delete', '_post_delete'); $edit->pre_process('insert', '_pre_insert'); $edit->pre_process('update', '_pre_update'); $edit->pre_process('delete', '_pre_delete'); $edit->id_edres = new inputField('Id_edres', 'id_edres'); $edit->id_edres->rule = 'max_length[11]|integer'; $edit->id_edres->css_class = 'inputonlynum'; $edit->id_edres->size = 13; $edit->id_edres->maxlength = 11; $edit->numero = new inputField('Número', 'numero'); $edit->numero->rule = 'max_length[8]'; $edit->numero->size = 10; $edit->numero->maxlength = 8; $edit->status = new dropdownField('Estatus', 'status'); $edit->status->option('P', 'Pendiente'); $edit->status->option('A', 'Aprobado'); $edit->status->style = 'width:180px;'; $edit->status->rule = 'max_length[1]'; $edit->status->when = array('show'); $edit->numero_edres = new inputField('Reservación', 'numero_edres'); $edit->numero_edres->rule = 'max_length[8]'; $edit->numero_edres->size = 10; $edit->numero_edres->maxlength = 8; $edit->numero = new inputField('Número', 'numero'); $edit->numero->size = 10; $edit->numero->maxlength = 8; $edit->numero->apply_rules = false; //necesario cuando el campo es clave y no se pide al usuario $edit->numero->when = array('show', 'modify'); $edit->fecha = new dateField('Fecha', 'fecha'); $edit->fecha->rule = 'chfecha'; $edit->fecha->size = 10; $edit->fecha->insertValue = date('Y-m-d'); $edit->fecha->maxlength = 8; $edit->fecha->calendar = false; $edit->cliente = new inputField('Cliente', 'cliente'); $edit->cliente->rule = 'max_length[5]|required'; $edit->cliente->size = 7; $edit->cliente->maxlength = 5; $edit->sclitipo = new hiddenField('', 'sclitipo'); $edit->sclitipo->db_name = 'sclitipo'; $edit->sclitipo->pointer = true; $edit->sclitipo->insertValue = 1; $edit->nombre = new inputField('Nombre', 'nombre'); $edit->nombre->size = 25; $edit->nombre->maxlength = 40; $edit->nombre->readonly = true; $edit->nombre->autocomplete = false; $edit->nombre->rule = 'required'; $edit->nombre->type = 'inputhidden'; $edit->nombre->pointer = true; $edit->rifci = new inputField('RIF/CI', 'rifci'); $edit->rifci->autocomplete = false; $edit->rifci->readonly = true; $edit->rifci->size = 15; $edit->rifci->type = 'inputhidden'; $edit->rifci->pointer = true; $edit->direc = new inputField('Dirección', 'direc'); $edit->direc->readonly = true; $edit->direc->size = 40; $edit->direc->type = 'inputhidden'; $edit->direc->pointer = true; $edit->edificacion = new dropdownField('Edificación', 'edificacion'); $edit->edificacion->option('', 'Seleccionar'); $edit->edificacion->options('SELECT id,TRIM(nombre) AS nombre FROM edif ORDER BY nombre'); $edit->edificacion->style = 'width:150px;'; $edit->edificacion->rule = 'max_length[11]|required'; $edit->inmueble = new dropdownField('Inmueble', 'inmueble'); $edit->inmueble->option('', 'Seleccionar'); $edif = $edit->getval('edificacion'); if ($edif !== false) { $dbedif = $this->db->escape($edif); $edit->inmueble->option('', 'Seleccionar'); $edit->inmueble->options("SELECT id,TRIM(descripcion) AS nombre FROM edinmue WHERE status='D' AND edificacion={$dbedif} ORDER BY descripcion"); } else { $edit->inmueble->option('', 'Seleccione una edificacion'); } $edit->inmueble->style = 'width:150px;'; $edit->inmueble->rule = 'max_length[11]|required'; $edit->reserva = new inputField('Reserva', 'reserva'); $edit->reserva->rule = 'max_length[17]|numeric'; $edit->reserva->css_class = 'inputnum'; $edit->reserva->size = 10; $edit->reserva->maxlength = 17; $edit->precioxmt2 = new inputField('Precio m2', 'precioxmt2'); $edit->precioxmt2->rule = 'max_length[17]|numeric|mayorcero|required'; $edit->precioxmt2->css_class = 'inputnum'; $edit->precioxmt2->size = 10; $edit->precioxmt2->maxlength = 17; $edit->precioxmt2->showformat = 'decimal'; $edit->mt2 = new inputField('Área m2', 'mt2'); $edit->mt2->rule = 'max_length[17]|numeric|mayorcero|required'; $edit->mt2->css_class = 'inputnum'; $edit->mt2->size = 7; $edit->mt2->maxlength = 17; $edit->mt2->showformat = 'decimal'; $edit->uso = new dropdownField('Uso', 'uso'); $edit->uso->option('', 'Seleccionar'); $edit->uso->options('SELECT id,uso FROM `eduso` ORDER BY uso'); $edit->uso->style = 'width:180px;'; $edit->uso->rule = 'required'; $edit->inicial = new inputField('Inicial', 'inicial'); $edit->inicial->rule = 'max_length[17]|numeric|mayorcero'; $edit->inicial->css_class = 'inputnum'; $edit->inicial->size = 19; $edit->inicial->maxlength = 17; $edit->inicial->showformat = 'decimal'; $edit->financiable = new inputField('Monto financiable', 'financiable'); $edit->financiable->rule = 'max_length[17]|numeric'; $edit->financiable->css_class = 'inputnum'; $edit->financiable->size = 19; $edit->financiable->maxlength = 17; $edit->financiable->showformat = 'decimal'; $edit->firma = new inputField('Pago final (firma)', 'firma'); $edit->firma->rule = 'max_length[17]|numeric|mayorcero'; $edit->firma->css_class = 'inputnum'; $edit->firma->size = 19; $edit->firma->type = 'inputhidden'; $edit->firma->maxlength = 17; $edit->firma->showformat = 'decimal'; $edit->monto = new inputField('Monto total', 'monto'); $edit->monto->rule = 'max_length[17]|numeric|mayorcero'; $edit->monto->css_class = 'inputnum'; $edit->monto->size = 19; $edit->monto->type = 'inputhidden'; $edit->monto->maxlength = 17; $edit->monto->showformat = 'decimal'; $edit->notas = new textareaField('Notas', 'notas'); $edit->notas->rule = 'max_length[8]'; $edit->notas->cols = 70; $edit->notas->rows = 4; //******************************* // Inicio del detalle //******************************* $edit->it_vencimiento = new dateField('Vencimiento <#o#>', 'it_vencimiento_<#i#>'); $edit->it_vencimiento->rule = 'chfecha|required'; $edit->it_vencimiento->size = 10; $edit->it_vencimiento->insertValue = date('Y-m-d'); $edit->it_vencimiento->db_name = 'vencimiento'; $edit->it_vencimiento->rel_id = 'itedcont'; $edit->it_vencimiento->maxlength = 8; $edit->it_vencimiento->calendar = false; $edit->it_especial = new dropdownField('Especial <#o#>', 'it_especial_<#i#>'); $edit->it_especial->rule = 'max_length[1]|enum[S,N]'; $edit->it_especial->db_name = 'especial'; $edit->it_especial->rel_id = 'itedcont'; $edit->it_especial->style = 'width:80px;'; $edit->it_especial->option('N', 'Normal'); $edit->it_especial->option('S', 'Especial'); $edit->it_monto = new inputField('Monto <#o#>', 'it_monto_<#i#>'); $edit->it_monto->rule = 'max_length[10]|numeric'; $edit->it_monto->db_name = 'monto'; $edit->it_monto->rel_id = 'itedcont'; //$edit->it_monto->on_keyup = 'totagiro()'; //$edit->it_monto->on_keyup ='distrib()'; $edit->it_monto->css_class = 'inputnum'; $edit->it_monto->size = 12; $edit->it_monto->maxlength = 10; $edit->it_monto->showformat = 'decimal'; //****************************** // Fin del detalle //****************************** if ($status != 'A') { $edit->buttons('modify', 'delete', 'add_rel'); //$edit->buttons('modify', 'save', 'undo', 'delete','add_rel'); } //$edit->buttons('back', 'add'); $edit->build(); if ($edit->on_success()) { $rt = array('status' => 'A', 'mensaje' => 'Registro guardado', 'pk' => $edit->_dataobject->pk); echo json_encode($rt); } else { $conten['form'] =& $edit; $data['content'] = $this->load->view('view_edcont', $conten, false); //$data['content'] = $this->load->view('view_edcont', $conten,true); //echo $edit->output; } /* $conten['form'] =& $edit; $data['content'] = $this->load->view('view_edcont', $conten,true); $data['title'] = heading($this->t**s); $data['head'] = $this->rapyd->get_head(); $data['head'] .= script('jquery.js'); $data['head'] .= script('jquery-ui.js'); $data['head'] .= script('plugins/jquery.numeric.pack.js'); $data['head'] .= script('plugins/jquery.floatnumber.js'); $data['head'] .= script('plugins/jquery.meiomask.js'); $data['head'] .= phpscript('nformat.js'); $data['head'] .= style('redmond/jquery-ui-1.8.1.custom.css'); $this->load->view('view_ventanas', $data); */ }
function dataedit($urlfecha = null) { $semana = array('DOMINGO', 'LUNES', 'MARTES', 'MIERCOLES', 'JUEVES', 'VIERNES', 'SABADO'); if (preg_match('/(?P<anio>\\d{4})\\-(?P<mes>\\d{2})\\-(?P<dia>\\d{2})/', $urlfecha, $matches) > 0) { $fecha = date('Y-m-d', mktime(0, 0, 0, $matches['mes'], $matches['dia'], $matches['anio'])); $dia = $semana[date('w', mktime(0, 0, 0, $matches['mes'], $matches['dia'], $matches['anio']))]; } else { $fecha = date('Y-m-d'); $dia = $semana[date('w')]; } $this->rapyd->load('datadetails', 'dataobject'); $do = new DataObject('lcierre'); //$do->pointer('scli' ,'scli.cliente=rivc.cod_cli','sprv.tipo AS sprvtipo, sprv.reteiva AS sprvreteiva','left'); $do->rel_one_to_many('itlcierre', 'itlcierre', array('id' => 'id_lcierre')); $do->order_rel_one_to_many('itlcierre', 'codigo'); $edit = new DataDetails($this->t**s, $do); $edit->on_save_redirect = false; $edit->post_process('insert', '_post_insert_lcierre'); $edit->post_process('update', '_post_update_lcierre'); $edit->post_process('delete', '_post_delete_lcierre'); $edit->pre_process('insert', '_pre_insert_lcierre'); //$edit->pre_process('update' ,'_pre_update_lcierre'); //$edit->pre_process('delete' ,'_pre_delete_lcierre'); $edit->requeson = new inputField('Requeson', 'requeson'); $edit->requeson->css_class = 'inputnum'; $edit->requeson->rule = 'required'; $edit->requeson->size = 12; $edit->requeson->maxlength = 10; $dbfecha = $this->db->escape($fecha); $recibido = $this->datasis->dameval("SELECT SUM(litros) AS val FROM lrece WHERE fecha={$dbfecha}"); //Litros recibidos $producido = $this->datasis->dameval("SELECT SUM(litros-inventario) AS val FROM lprod WHERE fecha={$dbfecha}"); //Litros recibidos usados en produccion $enfria = $recibido - $producido; //Litros que quedan para enfriar $edit->enfriamiento = new inputField('Leche para Enfriamiento', 'enfriamiento'); $edit->enfriamiento->css_class = 'inputnum'; $edit->enfriamiento->rule = 'required'; $edit->enfriamiento->size = 12; $edit->enfriamiento->insertValue = $enfria; $edit->enfriamiento->maxlength = 10; $edit->dia = new inputField('Día', 'dia'); $edit->dia->size = 12; $edit->dia->maxlength = 10; $edit->dia->type = 'inputhidden'; $edit->dia->insertValue = $dia; $edit->fecha = new dateField('Fecha', 'fecha'); $edit->fecha->rule = 'chfecha|required'; $edit->fecha->size = 10; $edit->fecha->maxlength = 8; $edit->fecha->type = 'inputhidden'; $edit->fecha->insertValue = $fecha; $edit->fecha->calendar = false; $edit->usuario = new autoUpdateField('usuario', $this->secu->usuario(), $this->secu->usuario()); //Inicio del detalle $rel = 'itlcierre'; $edit->itcodigo = new inputField('Codigo', 'itcodigo_<#i#>'); $edit->itcodigo->db_name = 'codigo'; $edit->itcodigo->rule = 'max_length[15]|required'; $edit->itcodigo->size = 7; $edit->itcodigo->maxlength = 4; $edit->itcodigo->rel_id = $rel; $edit->itdescrip = new inputField('', 'itdescrip_<#i#>'); $edit->itdescrip->db_name = 'descrip'; $edit->itdescrip->type = 'inputhidden'; $edit->itdescrip->rel_id = $rel; $edit->itcestas = new inputField('Cestas', 'itcestas_<#i#>'); $edit->itcestas->db_name = 'cestas'; $edit->itcestas->rule = 'max_length[12]|numeric|required'; $edit->itcestas->css_class = 'inputnum'; $edit->itcestas->size = 14; $edit->itcestas->maxlength = 12; $edit->itcestas->rel_id = $rel; $edit->itunidades = new inputField('Unidades', 'itunidades_<#i#>'); $edit->itunidades->db_name = 'unidades'; $edit->itunidades->rule = 'max_length[12]|numeric|required'; $edit->itunidades->css_class = 'inputnum'; $edit->itunidades->size = 14; $edit->itunidades->maxlength = 12; $edit->itunidades->rel_id = $rel; $edit->itpeso = new inputField('Producido (Peso)', 'itpeso_<#i#>'); $edit->itpeso->db_name = 'peso'; $edit->itpeso->rule = 'max_length[12]|numeric'; $edit->itpeso->css_class = 'inputnum'; $edit->itpeso->size = 14; $edit->itpeso->maxlength = 12; $edit->itpeso->rel_id = $rel; $edit->itpeso->when = array('modify', 'show'); //Fin del detalle $edit->buttons('add_rel'); $edit->build(); if ($edit->on_success()) { $rt = array('status' => 'A', 'mensaje' => 'Registro guardado', 'pk' => $edit->_dataobject->pk); echo json_encode($rt); } else { //echo $edit->output; //$conten['max_rel_count']=$max_rel_count; $conten['fecha'] = $fecha; $conten['form'] =& $edit; $this->load->view('view_lcierre', $conten); } }