function dataedit() { $this->rapyd->load("dataedit", "datadetalle", "fields", "datagrid"); $formato = $this->datasis->dameval('SELECT formato FROM cemp LIMIT 0,1'); $qformato = '%'; for ($i = 1; $i < substr_count($formato, '.') + 1; $i++) { $qformato .= '.%'; } $this->qformato = $qformato; $modbusp = array('tabla' => 'scli', 'columnas' => array('cliente' => 'Código Cliente', 'nombre' => 'Nombre', 'dire11' => 'Dirección', 'rifci' => 'Rif/CI'), 'filtro' => array('cliente' => 'Código Cliente', 'nombre' => 'Nombre'), 'retornar' => array('cliente' => 'cod_cli'), 'titulo' => 'Buscar Cliente'); $boton = $this->datasis->modbus($modbusp); //Script necesario para totalizar los detalles $modbus = array('tabla' => 'sinv', 'columnas' => array('codigo' => 'Código', 'descrip' => 'descrip'), 'filtro' => array('codigo' => 'Código', 'descrip' => 'descrip'), 'retornar' => array('codigo' => 'codigo<#i#>'), 'p_uri' => array(4 => '<#i#>'), 'titulo' => 'Buscar Articulo'); $fdepar = new dropdownField("ccosto", "ccosto"); $fdepar->options("SELECT depto,descrip FROM dpto WHERE tipo='G' ORDER BY descrip"); $fdepar->status = 'create'; $fdepar->build(); $dpto = $fdepar->output; $dpto = trim($dpto); $dpto = preg_replace('/\\n/i', '', $dpto); $uri = site_url("/contabilidad/casi/dpto/"); $script = ' function totalizar(){ monto=debe=haber=0; amonto=$$(\'input[id^="monto"]\'); for(var i=0; i<amonto.length; i++) { valor=parseFloat(amonto[i].value); if (isNaN(valor)) valor=0.0; if (valor>0) haber=haber+valor; else{ valor=valor*(-1); debe=debe+valor; } $("haber").value=haber; $("debe").value=debe; $("total").value=haber-debe; } } function departa(i){ ccosto=$F(\'ccosto\'+i.toString()) if (ccosto==\'S\'){ //alert("come una matina"); departamen=window.open("' . $uri . '/"+i.toString(),"buscardeparta","width=500,height=200,scrollbars=Yes,status=Yes,resizable=Yes,screenx=5,screeny=5,top="+ ((screen.height - 200) / 2) + ",left=" + ((screen.width - 500) / 2)); departamen.focus(); //new Insertion.Before(\'departa\'+i.toString(), \'' . $dpto . '\') } } '; $edit = new DataEdit(" otrosingresos", "otin"); $edit->post_process("insert", "_guarda_detalle"); $edit->post_process("update", "_actualiza_detalle"); $edit->post_process("delete", "_borra_detalle"); $edit->pre_process('insert', '_pre_insert'); $edit->back_url = "ventas/ otin"; $edit->fecha = new DateonlyField("Fecha", "fecha", "d/m/Y"); $edit->fecha->insertValue = date("Y-m-d"); $edit->fecha->mode = "autohide"; $edit->fecha->size = 10; $edit->vence = new DateonlyField("Vence", "vence", "d/m/Y"); $edit->vence->insertValue = date("Y-m-d"); $edit->vence->size = 10; $edit->numero = new inputField("Número", "numero"); $edit->numero->size = 10; $edit->numero->rule = "required"; $edit->numero->mode = "autohide"; $edit->numero->maxlength = 8; $edit->nombre = new inputField("Nombre", "nombre"); $edit->nombre->size = 55; $edit->nombre->maxlength = 40; $edit->iva = new inputField("IVA", "iva"); $edit->iva->size = 20; $edit->iva->css_class = 'inputnum'; $edit->subtotal = new inputField("Sub.Total", "totals"); $edit->subtotal->size = 20; $edit->subtotal->css_class = 'inputnum'; $edit->total = new inputField("Total", "totalg"); $edit->total->size = 20; $edit->total->css_class = 'inputnum'; $edit->cliente = new inputField("Cliente", "cod_cli"); $edit->cliente->size = 10; $edit->cliente->maxlength = 5; $edit->cliente->append($boton); $edit->rifci = new inputField("RIF/CI", "rifci"); $edit->rifci->size = 20; $edit->direc = new inputField("Dirección", "direc"); $edit->direc->size = 55; $edit->dire1 = new inputField(" ", "dire1"); $edit->dire1->size = 55; $edit->observaciones = new inputField("Observaciones", "observa1"); $edit->observaciones->size = 40; $edit->observaciones1 = new inputField("Observaciones", "observa2"); $edit->observaciones1->size = 40; $edit->orden = new inputField("Orden", "orden"); $edit->orden->size = 20; $edit->tipo = new dropdownField("Tipo", "tipo_doc"); $edit->tipo->option("FC", "FC"); $edit->tipo->option("ND", "ND"); $edit->tipo->option("OT", "OT"); $edit->tipo->size = 20; $edit->tipo->style = 'width:70px;'; $numero = $edit->_dataobject->get('numero'); $tipo = $edit->_dataobject->get('tipo_doc'); $detalle = new DataDetalle($edit->_status); //Campos para el detalle $detalle->db->select('codigo,descrip,precio,impuesto,importe'); $detalle->db->from('itotin'); $detalle->db->where("numero='{$numero}'"); $detalle->db->where("tipo_doc='{$tipo}'"); $detalle->codigo = new inputField("Código", "codigo<#i#>"); $detalle->codigo->size = 18; $detalle->codigo->db_name = 'codigo'; $detalle->codigo->append($this->datasis->p_modbus($modbus, '<#i#>')); $detalle->codigo->readonly = TRUE; $detalle->descripcion = new inputField("Descripción", "descrip<#i#>"); $detalle->descripcion->size = 30; $detalle->descripcion->db_name = 'descrip'; $detalle->descripcion->maxlength = 12; $detalle->precio = new inputField("Precio", "precio<#i#>"); $detalle->precio->css_class = 'inputnum'; $detalle->precio->size = 20; $detalle->precio->db_name = 'precio'; $detalle->impuesto = new inputField("Impuesto", "impuesto<#i#>"); $detalle->impuesto->css_class = 'inputnum'; $detalle->impuesto->size = 20; $detalle->impuesto->db_name = 'impuesto'; $detalle->total = new inputField2("Total", "importe<#i#>"); $detalle->total->db_name = 'importe'; $detalle->total->size = 20; $detalle->total->css_class = 'inputnum'; //fin de campos para detalle $detalle->onDelete('totalizar()'); $detalle->onAdd('totalizar()'); $detalle->script($script); $detalle->style = "width:110px"; //Columnas del detalle $detalle->column("Código", "<#codigo#>"); $detalle->column("Descripción", "<#descripcion#>"); $detalle->column("Precio", "<#precio#>"); $detalle->column("Impuesto", "<#impuesto#>"); $detalle->column("Total", "<#total#>"); $detalle->build(); $conten["detalle"] = $detalle->output; $edit->detalle = new freeField("detalle", 'detalle', $detalle->output); $edit->buttons("save", "undo", "back"); $edit->build(); $smenu['link'] = barra_menu('122'); $data['smenu'] = $this->load->view('view_sub_menu', $smenu, true); $conten["form"] =& $edit; $data['content'] = $this->load->view('view_otrosingresos', $conten, true); $data["head"] = script("tabber.js") . script("prototype.js") . $this->rapyd->get_head() . script("scriptaculous.js") . script("effects.js"); $data['title'] = '<h1>Otros Ingresos</h1>'; $this->load->view('view_ventanas', $data); }
function dataedit() { $this->rapyd->load("dataedit", "datadetalle", "fields", "datagrid"); $formato = $this->datasis->dameval('SELECT formato FROM cemp LIMIT 0,1'); $qformato = '%'; for ($i = 1; $i < substr_count($formato, '.') + 1; $i++) { $qformato .= '.%'; } $this->qformato = $qformato; $modbus = array('tabla' => 'cpla', 'columnas' => array('codigo' => 'Código', 'descrip' => 'Descripción'), 'filtro' => array('codigo' => 'Código', 'descrip' => 'Descripción'), 'retornar' => array('codigo' => 'cuenta<#i#>', 'descrip' => 'concepto<#i#>', 'departa' => 'ccosto<#i#>'), 'titulo' => 'Buscar Cuenta', 'p_uri' => array(4 => '<#i#>'), 'where' => "codigo LIKE \"{$qformato}\"", 'script' => array('departa(<#i#>)')); //Script necesario para totalizar los detalles $fdepar = new dropdownField("ccosto", "ccosto"); $fdepar->options("SELECT depto,descrip FROM dpto WHERE tipo='G' ORDER BY descrip"); $fdepar->status = 'create'; $fdepar->build(); $dpto = $fdepar->output; $dpto = trim($dpto); $dpto = preg_replace('/\\n/i', '', $dpto); $uri = site_url("/contabilidad/casi/dpto/"); $script = ' function totalizar(){ monto=debe=haber=0; amonto=$$(\'input[id^="monto"]\'); for(var i=0; i<amonto.length; i++) { valor=parseFloat(amonto[i].value); if (isNaN(valor)) valor=0.0; if (valor>0) haber=haber+valor; else{ valor=valor*(-1); debe=debe+valor; } $("haber").value=haber; $("debe").value=debe; $("total").value=haber-debe; } } function departa(i){ ccosto=$F(\'ccosto\'+i.toString()) if (ccosto==\'S\'){ //alert("come una matina"); departamen=window.open("' . $uri . '/"+i.toString(),"buscardeparta","width=500,height=200,scrollbars=Yes,status=Yes,resizable=Yes,screenx=5,screeny=5,top="+ ((screen.height - 200) / 2) + ",left=" + ((screen.width - 500) / 2)); departamen.focus(); //new Insertion.Before(\'departa\'+i.toString(), \'' . $dpto . '\') } } '; $edit = new DataEdit("Asientos", "casi"); $edit->_dataobject->db->set('transac', 'MANUAL'); $edit->_dataobject->db->set('origen', 'MANUAL'); $edit->_dataobject->db->set('usuario', $this->session->userdata('usuario')); $edit->_dataobject->db->set('hora', 'CURRENT_TIME()', FALSE); $edit->_dataobject->db->set('estampa', 'NOW()', FALSE); $edit->post_process("insert", "_guarda_detalle"); $edit->post_process("update", "_actualiza_detalle"); $edit->post_process("delete", "_borra_detalle"); $edit->pre_process('delete', '_pre_del'); $edit->back_url = "contabilidad/casi"; $edit->fecha = new DateonlyField("Fecha", "fecha", "d/m/Y"); $edit->fecha->insertValue = date("Y-m-d"); $edit->fecha->mode = "autohide"; $edit->fecha->size = 10; $edit->numero = new inputField("Número", "comprob"); $edit->numero->size = 10; $edit->numero->rule = "required"; $edit->numero->mode = "autohide"; $edit->numero->maxlength = 8; $edit->proveed = new inputField("Código", "proveed"); $edit->proveed->size = 7; $edit->proveed->rule = "required"; $edit->proveed->mode = "autohide"; $edit->proveed->maxlength = 5; $edit->nombre = new inputField("Nombre", "nombre"); $edit->nombre->size = 20; $edit->nombre->maxlength = 40; $edit->descrip = new inputField("Descripción", "descrip"); $edit->descrip->maxlength = 60; $edit->debe = new inputField2("Debe", "debe"); $edit->debe->size = 30; $edit->debe->css_class = 'inputnum'; $edit->debe->readonly = TRUE; $edit->haber = new inputField2("Haber", "haber"); $edit->haber->size = 30; $edit->haber->css_class = 'inputnum'; $edit->haber->readonly = TRUE; $edit->total = new inputField("Saldo", "total"); $edit->total->size = 25; $edit->total->css_class = 'inputnum'; $edit->total->readonly = TRUE; $edit->status = new dropdownField("Status", "status"); $edit->status->style = "width:110px"; $edit->status->option("A", "Actualizado"); $edit->status->option("D", "Diferido"); $comprob = $edit->_dataobject->get('comprob'); $detalle = new DataDetalle($edit->_status); //Campos para el detalle $detalle->db->select('cuenta,referen,concepto,ccosto, debe-haber AS monto'); $detalle->db->from('itcasi'); $detalle->db->where("comprob='{$comprob}'"); $detalle->cuenta = new inputField2("Cuenta", "cuenta<#i#>"); $detalle->cuenta->size = 11; $detalle->cuenta->db_name = 'cuenta'; $detalle->cuenta->append($this->datasis->p_modbus($modbus, '<#i#>')); $detalle->cuenta->readonly = TRUE; $detalle->referencia = new inputField("Referencia", "referen<#i#>"); $detalle->referencia->size = 15; $detalle->referencia->db_name = 'referen'; $detalle->referencia->maxlength = 12; $detalle->concepto = new inputField("Concepto", "concepto<#i#>"); $detalle->concepto->size = 30; $detalle->concepto->db_name = 'concepto'; $detalle->concepto->maxlength = 60; $detalle->monto = new inputField("Monto", "monto<#i#>"); $detalle->monto->css_class = 'inputnum'; $detalle->monto->onchange = 'totalizar()'; $detalle->monto->size = 20; $detalle->monto->db_name = 'monto'; $detalle->departa = new inputField2("Centro Costo", "ccosto<#i#>"); $detalle->departa->type = 'hidden'; $detalle->departa->db_name = 'ccosto'; $detalle->departa->onchange = 'departa(<#i#>)'; //fin de campos para detalle $detalle->onDelete('totalizar()'); $detalle->onAdd('totalizar()'); $detalle->script($script); $detalle->style = "width:110px"; //Columnas del detalle $detalle->column("Cuenta", "<#cuenta#>"); $detalle->column("Referencia", "<#referencia#>"); $detalle->column("Concepto", "<#concepto#>"); $detalle->column("Monto", "<#monto#><#departa#>", 'align=right'); $detalle->build(); $conten["detalle"] = $detalle->output; $edit->detalle = new freeField("detalle", 'detalle', $detalle->output); $edit->buttons("modify", "save", "undo", "delete", "back"); $edit->build(); $conten["form"] =& $edit; $data['content'] = $this->load->view('view_gastos', $conten, true); $data["head"] = script("tabber.js") . script("prototype.js") . $this->rapyd->get_head() . script("scriptaculous.js") . script("effects.js"); $data['title'] = '<h1>Asientos Contables</h1>'; $this->load->view('view_ventanas', $data); }
function dataedit() { $this->rapyd->load("dataedit", "datadetalle", "fields", "datagrid"); $formato = $this->datasis->dameval('SELECT formato FROM cemp LIMIT 0,1'); $qformato = '%'; for ($i = 1; $i < substr_count($formato, '.') + 1; $i++) { $qformato .= '.%'; } $this->qformato = $qformato; $modbus = array('tabla' => 'sinv', 'columnas' => array('codigo' => 'Código', 'descrip' => 'descrip'), 'filtro' => array('codigo' => 'Código', 'descrip' => 'descrip'), 'retornar' => array('codigo' => 'codigo<#i#>', 'precio1' => 'precio1<#i#>', 'precio2' => 'precio2<#i#>', 'precio3' => 'precio3<#i#>', 'precio4' => 'precio4<#i#>', 'iva' => 'iva<#i#>', 'pond' => 'costo<#i#>'), 'p_uri' => array(4 => '<#i#>'), 'titulo' => 'Buscar Articulo'); //Script necesario para totalizar los detalles $fdepar = new dropdownField("ccosto", "ccosto"); $fdepar->options("SELECT depto,descrip FROM dpto WHERE tipo='G' ORDER BY descrip"); $fdepar->status = 'create'; $fdepar->build(); $dpto = $fdepar->output; $dpto = trim($dpto); $dpto = preg_replace('/\\n/i', '', $dpto); $uri = site_url("/contabilidad/casi/dpto/"); $script = ' function totalizar(){ monto=debe=haber=0; amonto=$$(\'input[id^="monto"]\'); for(var i=0; i<amonto.length; i++) { valor=parseFloat(amonto[i].value); if (isNaN(valor)) valor=0.0; if (valor>0) haber=haber+valor; else{ valor=valor*(-1); debe=debe+valor; } $("haber").value=haber; $("debe").value=debe; $("total").value=haber-debe; } } function departa(i){ ccosto=$F(\'ccosto\'+i.toString()) if (ccosto==\'S\'){ //alert("come una matina"); departamen=window.open("' . $uri . '/"+i.toString(),"buscardeparta","width=500,height=200,scrollbars=Yes,status=Yes,resizable=Yes,screenx=5,screeny=5,top="+ ((screen.height - 200) / 2) + ",left=" + ((screen.width - 500) / 2)); departamen.focus(); //new Insertion.Before(\'departa\'+i.toString(), \'' . $dpto . '\') } } '; $edit = new DataEdit("Compras", "scst"); /* $edit->_dataobject->db->set('transac', 'MANUAL'); $edit->_dataobject->db->set('origen' , 'MANUAL'); $edit->_dataobject->db->set('usuario', $this->session->userdata('usuario')); $edit->_dataobject->db->set('hora' , 'CURRENT_TIME()', FALSE); $edit->_dataobject->db->set('estampa', 'NOW()', FALSE); $edit->post_process("insert","_guarda_detalle"); $edit->post_process("update","_actualiza_detalle"); $edit->post_process("delete","_borra_detalle"); $edit->pre_process('delete','_pre_del'); */ $edit->back_url = "finanzas/compras"; $edit->fecha = new DateonlyField("Fecha", "fecha", "d/m/Y"); $edit->fecha->insertValue = date("Y-m-d"); $edit->fecha->mode = "autohide"; $edit->fecha->size = 10; $edit->vence = new DateonlyField("Vence", "vence", "d/m/Y"); $edit->vence->insertValue = date("Y-m-d"); $edit->vence->size = 10; $edit->numero = new inputField("Número", "numero"); $edit->numero->size = 10; $edit->numero->rule = "required"; $edit->numero->mode = "autohide"; $edit->numero->maxlength = 8; $edit->proveedor = new inputField("Proveedor", "proveed"); $edit->proveedor->size = 10; $edit->proveedor->maxlength = 5; $edit->nombre = new inputField("Nombre", "nombre"); $edit->nombre->size = 50; $edit->nombre->maxlength = 40; $edit->cfis = new inputField("C.fis", "nfiscal"); $edit->cfis->size = 15; $edit->cfis->maxlength = 8; $edit->almacen = new inputField("Almance", "depo"); $edit->almacen->size = 15; $edit->almacen->maxlength = 8; $edit->tipo = new dropdownField("Tipo", "tipo_doc"); $edit->tipo->option("FC", "Factura"); $edit->tipo->option("NC", "Nota Credito"); $edit->tipo->option("NE", "Nota de Entrega"); $edit->tipo->rule = "required"; $edit->tipo->size = 20; $edit->tipo->style = 'width:150px;'; $edit->peso = new inputField2("Peso", "peso"); $edit->peso->size = 20; $edit->peso->css_class = 'inputnum'; $edit->orden = new inputField("Orden", "orden"); $edit->orden->size = 15; $edit->credito = new inputField("Credito", "credito"); $edit->credito->size = 20; $edit->credito->css_class = 'inputnum'; $edit->subt = new inputField("Subt", "montotot"); $edit->subt->size = 20; $edit->subt->css_class = 'inputnum'; $edit->iva = new inputField("IVA", "montoiva"); $edit->iva->size = 20; $edit->iva->css_class = 'inputnum'; $edit->total = new inputField("Total", "montonet"); $edit->total->size = 20; $edit->total->css_class = 'inputnum'; $edit->anticipo = new inputField("Anticipo", "anticipo"); $edit->anticipo->size = 20; $edit->anticipo->css_class = 'inputnum'; $edit->contado = new inputField("Contado", "inicial"); $edit->contado->size = 20; $edit->contado->css_class = 'inputnum'; $edit->rislr = new inputField("R.ISLR", "flete"); $edit->rislr->size = 20; $edit->rislr->css_class = 'inputnum'; $edit->riva = new inputField("R.IVA", "reteiva"); $edit->riva->size = 20; $edit->riva->css_class = 'inputnum'; $edit->monto = new inputField("Monto\$", "mdolar"); $edit->monto->size = 20; $edit->monto->css_class = 'inputnum'; $numero = $edit->_dataobject->get('numero'); $detalle = new DataDetalle($edit->_status); //Campos para el detalle $detalle->db->select('codigo,descrip,cantidad,costo,importe'); $detalle->db->from('itscst'); $detalle->db->where("numero='{$numero}'"); $detalle->codigo = new inputField("Codigo", "codigo<#i#>"); $detalle->codigo->size = 10; $detalle->codigo->db_name = 'codigo'; $detalle->codigo->append($this->datasis->p_modbus($modbus, '<#i#>')); $detalle->codigo->readonly = TRUE; $detalle->descripcion = new inputField("Descripción", "descrip<#i#>"); $detalle->descripcion->size = 30; $detalle->descripcion->db_name = 'descrip'; $detalle->descripcion->maxlength = 12; $detalle->cantidad = new inputField("Cantidad", "cantidad<#i#>"); $detalle->cantidad->size = 10; $detalle->cantidad->db_name = 'cantidad'; $detalle->cantidad->maxlength = 60; $detalle->cantidad->css_class = 'inputnum'; $detalle->precio = new inputField("Precio", "costo<#i#>"); $detalle->precio->css_class = 'inputnum'; $detalle->precio->onchange = 'totalizar()'; $detalle->precio->size = 20; $detalle->precio->db_name = 'costo'; $detalle->importe = new inputField2("Importe", "importe<#i#>"); $detalle->importe->db_name = 'importe'; $detalle->importe->css_class = 'inputnum'; $detalle->importe->size = 20; //fin de campos para detalle $detalle->onDelete('totalizar()'); $detalle->onAdd('totalizar()'); $detalle->script($script); $detalle->style = "width:110px"; //Columnas del detalle $detalle->column("Codigo", "<#codigo#>"); $detalle->column("Descripción", "<#descripcion#>"); $detalle->column("Cantidad", "<#cantidad#>"); $detalle->column("Precio", "<#precio#>"); $detalle->column("Importe", "<#importe#>"); $detalle->build(); $conten["detalle"] = $detalle->output; $edit->detalle = new freeField("detalle", 'detalle', $detalle->output); $edit->buttons("modify", "save", "undo", "delete", "back"); $edit->build(); $conten["form"] =& $edit; $data['content'] = $this->load->view('view_compras', $conten, true); $data["head"] = script("tabber.js") . script("prototype.js") . $this->rapyd->get_head() . script("scriptaculous.js") . script("effects.js"); $data['title'] = '<h1>Compras</h1>'; $this->load->view('view_ventanas', $data); }