Example #1
0
 function prepostprocess()
 {
     $message = "";
     //prepostprocess//
     $this->rapyd->load("dataobject");
     $do = new DataObject("articles");
     $do->set("title", "New Post");
     $do->set("body", "New body");
     $do->set("public", "n");
     $do->post_process("insert", "relate_article_one");
     $saved = $do->save();
     $message = '<strong>$do->save()</strong><hr/>';
     if ($saved) {
         $art_id = $do->get("article_id");
         $message .= "record <strong>{$art_id}</strong> created.<br/>";
         $message .= nl2br(var_export($do->get_all(), true)) . "<hr/>";
         $message .= $do->post_process_result;
         $do->pre_process("delete", "remove_rel_toany_article");
         $deleted = $do->delete();
         $message .= '</div><br/><div class="note">';
         $message .= '<strong>$do->delete()</strong><hr/>';
         $message .= "<strong>remove_rel_toany_article()</strong> pre_process func.<hr/>";
         if ($deleted) {
             $message .= "OK, article {$art_id} is now not related with any article<hr/>";
             $message .= "record of article {$art_id} deleted<hr/>";
         } else {
             $message .= "pre_process fails, so article {$art_id} not deleted<hr/>";
         }
     } else {
         $message = "creation fails<br/>";
     }
     $data["content"] = $message;
     //endprepostprocess//
     $content["content"] = $this->load->view('rapyd/prepostprocess', $data, true);
     $content["rapyd_head"] = "";
     $content["code"] = highlight_code_file(THISFILE, "//prepostprocess//", "//endprepostprocess//");
     $content["code"] .= '<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #FF8000">//relate_article_one function<br /></span><br/>';
     $content["code"] .= highlight_code_file(THISFILE, "//relatearticleone//", "//endrelatearticleone//");
     $content["code"] .= '<br/><br/>&nbsp;&nbsp;&nbsp;&nbsp;<span style="color: #FF8000">//remove_rel_toany_article function<br /></span><br/>';
     $content["code"] .= highlight_code_file(THISFILE, "//removerelarticle//", "//endremoverelarticle//");
     $this->load->view('rapyd/template', $content);
 }
Example #2
0
 /**
  * Constructor
  *
  * @param object data row from db
  */
 function ComponentWidget($db_row = NULL, $type = 'core', $code = NULL)
 {
     // Call parent constructor:
     parent::DataObject('T_widget', 'wi_', 'wi_ID');
     if (is_null($db_row)) {
         // We are creating an object here:
         // Using parent:: instead of $this-> in order to fix http://forums.b2evolution.net//viewtopic.php?p=94778
         parent::set('type', $type);
         parent::set('code', $code);
     } else {
         // We are loading an object:
         $this->ID = $db_row->wi_ID;
         $this->coll_ID = $db_row->wi_coll_ID;
         $this->sco_name = $db_row->wi_sco_name;
         $this->type = $db_row->wi_type;
         $this->code = $db_row->wi_code;
         $this->params = $db_row->wi_params;
         $this->order = $db_row->wi_order;
         $this->enabled = $db_row->wi_enabled;
     }
 }
 function _validafac($do)
 {
     $this->rapyd->load('dataobject');
     $factura = $do->get('factura');
     $controlfac = $do->get('controlfac');
     $fechafac = $do->get('fechafac');
     $numero = $do->get('numero');
     $cod_prov = $do->get('cod_prov');
     $this->chexiste_factura($numero, $factura, $controlfac, $cod_prov, 'B', $e);
     $error = $e;
     $riva = new DataObject("riva");
     $riva->load_where(array('odirect' => $numero, 'status <>' => 'A', 'status <>' => 'AN'));
     $status = $riva->get('status');
     $nrocomp = $riva->get('nrocomp');
     if (!empty($nrocomp) && !($status == 'B' || $status == 'A')) {
         $error .= "No se puede cambiar el numero de factura debido a que la retencion de iva ({$nrocomp}) ya fue declarada";
     }
     if (empty($error)) {
         $riva->set('numero', $factura);
         $riva->set('nfiscal', $controlfac);
         $riva->set('ffactura', $fechafac);
         $riva->save();
     } else {
         $do->error_message_ar['pre_ins'] = $error;
         $do->error_message_ar['pre_upd'] = $error;
         logusu('odirect', "Cambio datos Factura {$factura} Nro {$controlfac} fecha {$fechafac},orden de pago {$numero} con error {$error}");
         return false;
     }
 }
Example #4
0
 function reversar($id)
 {
     $this->rapyd->load('dataobject');
     $do = new DataObject("odirect");
     $do->rel_one_to_many('itodirect', 'itodirect', array('numero' => 'numero'));
     $do->load($id);
     $error = "";
     $codigoadm = $do->get('estadmin');
     $fondo = $do->get('fondo');
     $presup = new DataObject("presupuesto");
     $pk = array('codigoadm' => $codigoadm, 'tipo' => $fondo);
     $partidaiva = $this->datasis->traevalor("PARTIDAIVA");
     //$pk['codigopres'] = $partidaiva;
     //$presup->load($pk);
     //
     //$asignacion   =$presup->get("asignacion");
     //$aumento      =$presup->get("aumento");
     //$disminucion  =$presup->get("disminucion");
     //$traslados    =$presup->get("traslados");
     //$comprometido =$presup->get("comprometido");
     //$disp=(($asignacion+$aumento-$disminucion)+($traslados))-$comprometido;
     //
     $ivaa = $do->get('ivaa');
     $ivag = $do->get('ivag');
     $ivar = $do->get('ivar');
     $iva = $do->get('iva');
     $ivan = $ivag + $ivar + $ivaa + $iva;
     //if($ivan > $disp)
     //	$error.="<div class='alert'><p>El monto de iva ($ivan) de la orden de pago directa, es mayor al monto disponible ($disp) para la partida de iva ($partidaiva)</p></div>";
     if (empty($error)) {
         $sta = $do->get('status');
         if ($sta == "B2") {
             //for($i=0;$i  < $do->count_rel('itodirect');$i++){
             //
             //	$codigopres  = $do->get_rel('itodirect','partida',$i);
             //	$piva        = $do->get_rel('itodirect','iva'    ,$i);
             //
             //	if($piva=2222){
             //		$subt        = $do->get_rel('itodirect','subt'   ,$i);
             //		$mont        = $subt;
             //	}else{
             //		$importe     = $do->get_rel('itodirect','importe',$i);
             //		$mont        = $importe;
             //	}
             //
             //	$pk['codigopres'] = $codigopres;
             //
             //	$presup->load($pk);
             //	$asignacion   =$presup->get("asignacion");
             //	$aumento      =$presup->get("aumento");
             //	$disminucion  =$presup->get("disminucion");
             //	$traslados    =$presup->get("traslados");
             //	$comprometido =$presup->get("comprometido");
             //
             //	$disponible=(($asignacion+$aumento-$disminucion)+($traslados))-$comprometido;
             //	if($mont > $disponible){
             //		$error.="<div class='alert'><p>No se Puede Completar la Transaccion debido a que el monto de la $this->t**s ($mont) es mayor al monto disponible($disponible) para la partida: $codigopres</p></div>";
             //	}
             //}
             if (empty($error)) {
                 for ($i = 0; $i < $do->count_rel('itodirect'); $i++) {
                     $codigopres = $do->get_rel('itodirect', 'partida', $i);
                     $piva = $do->get_rel('itodirect', 'iva', $i);
                     if ($piva == 2222) {
                         $subt = $do->get_rel('itodirect', 'subt', $i);
                         $mont = $subt;
                     } else {
                         $importe = $do->get_rel('itodirect', 'importe', $i);
                         $mont = $importe;
                     }
                     $pk['codigopres'] = $codigopres;
                     $presup->load($pk);
                     $comprometido = $presup->get("comprometido");
                     $causado = $presup->get("causado");
                     $opago = $presup->get("opago");
                     $comprometido -= $mont;
                     $causado -= $mont;
                     $opago -= $mont;
                     $presup->set("comprometido", $comprometido);
                     $presup->set("causado", $causado);
                     $presup->set("opago", $opago);
                     $presup->save();
                 }
                 $pk['codigopres'] = $partidaiva;
                 $presup->load($pk);
                 $comprometido = $presup->get("comprometido");
                 $causado = $presup->get("causado");
                 $opago = $presup->get("opago");
                 $comprometido -= $ivan;
                 $causado -= $ivan;
                 $opago -= $ivan;
                 $presup->set("comprometido", $comprometido);
                 $presup->set("causado", $causado);
                 $presup->set("opago", $opago);
                 $presup->save();
                 $do->set('status', 'B1');
                 $do->save();
             }
         }
     }
     if (empty($error)) {
         redirect($this->url . "dataedit/show/{$id}");
     } else {
         $data['content'] = $error . anchor($this->url . "dataedit/show/{$id}", 'Regresar');
         $data['title'] = " {$this->t**s} ";
         $data["head"] = $this->rapyd->get_head() . script('jquery.js') . script("plugins/jquery.numeric.pack.js");
         $this->load->view('view_ventanas', $data);
     }
 }
Example #5
0
 function guardar()
 {
     $this->rapyd->load('dataobject');
     $fechad = $this->input->post('fechad');
     $fechah = $this->input->post('fechah');
     $fechad2 = $this->db->escape(human_to_dbdate($fechad));
     $fechah2 = $this->db->escape(human_to_dbdate($fechah));
     $cant = $this->input->post('cant');
     $codigoadm = $this->input->post('codigoadm');
     $fondo = $this->input->post('fondo');
     $do = new DataObject("mbanc");
     $error = '';
     $query = "SELECT numero,impmunicipal FROM MUNICIPAL";
     $retenciones = $this->db->query($query);
     $cant2 = $retenciones->num_rows();
     $pagos = $compras = array();
     $reten = 0;
     foreach ($retenciones->result() as $row) {
         $reten += $row->impmunicipal;
         if ('' > 0) {
             $compras[] = '';
         } else {
             $pagos[] = $row->numero;
         }
     }
     if ($cant != $cant2) {
         $error .= "<div class='alert'>Los montos Previsualizados y los actuales no parecen ser iguales</div>";
     }
     if (empty($error)) {
         if ($reten > 0) {
             $do->set("monto", $reten);
             $do->set("status", "J");
             $do->set("tipo", "M");
             $do->set("tipo_doc", "ND");
             $do->set("observa", ".Se cancelo el Impuesto Municipal desde {$fechad} hasta {$fechah} actividad {$codigoadm} fondo {$fondo}");
             $do->set('rel', implode(',', $pagos) . '|' . implode(',', $compras));
             $do->save();
             $id = $do->get('id');
             if (!$id > 0) {
                 $error .= "Ocurrio error al momento de Crear el movimiento bancario";
             }
             if (empty($error)) {
                 $query = "UPDATE odirect a \r\n\t\t\t\t\tJOIN pades b ON a.numero = b.pago\r\n\t\t\t\t\tJOIN desem c ON b.desem = c.numero\r\n\t\t\t\t\tSET a.mmuni={$id}\r\n\t\t\t\t\tWHERE c.status='D2' AND impmunicipal >0 AND fdesem>={$fechad2} AND fdesem<= {$fechah2} AND MID(a.status,1,1)<>'F' AND (a.mmuni IS NULL)";
                 if (!empty($codigoadm)) {
                     $query .= " AND a.estadmin='{$codigoadm}'";
                 }
                 if (!empty($fondo)) {
                     $query .= " AND a.fondo='{$fondo}'";
                 }
                 $bool = $this->db->simple_query($query);
                 if (!$bool) {
                     $error .= "Ocurrio error al momento de actualizar la tabla pagos";
                 }
             }
         } else {
             $error .= "<div class='alert'><p>No hay IMPUESTO MUNICIPAL por pagar desde {$fechad} hasta {$fechah} </p></div>";
         }
     }
     if (empty($error)) {
         logusu('MUNICIPAL', "Creo movimiento bancario de Pago de IMPUESTO MUNICIPAL {$id}");
         redirect("tesoreria/mbanc/dataedit/modify/" . $id);
     } else {
         logusu('MUNICIPAL', "intento crear movimiento bancario de Pago de IMPUESTO MUNICIPAL  con error {$error}");
         $data['content'] = $error . anchor($this->url . "nuevo", 'Regresar');
         $data['title'] = " " . $this->t**s . " ";
         $data["head"] = $this->rapyd->get_head();
         $this->load->view('view_ventanas', $data);
     }
 }
Example #6
0
 function reversar($id)
 {
     $this->rapyd->load('dataobject');
     $do = new DataObject("opago");
     $do->rel_one_to_many('itopago', 'itopago', array('numero' => 'numero'));
     $do->load($id);
     $sta = $do->get('status');
     if ($sta == 'C') {
         $codigoadm = $do->get('estadmin');
         $fondo = $do->get('fondo');
         $ordc = new DataObject("ocompra");
         $ordc->rel_one_to_many('itocompra', 'itocompra', array('numero' => 'numero'));
         $error = '';
         for ($i = 0; $i < $do->count_rel('itopago'); $i++) {
             $orden = $do->get_rel('itopago', 'orden', $i);
             $pago = $do->get_rel('itopago', 'pago', $i);
             $pk2 = array('numero' => $orden);
             $ordc->load($pk2);
             $debe = $ordc->get('total');
             $status = $ordc->get('status');
             if ($status != 'R') {
                 $error .= "<div class='alert'><p>Orden Compra ({$orden}): No ha sido Procesada</p></div>";
             }
         }
     }
     if (empty($error)) {
         $presup = new DataObject("presupuesto");
         for ($i = 0; $i < $do->count_rel('itopago'); $i++) {
             $orden = $do->get_rel('itopago', 'orden', $i);
             $pago = $do->get_rel('itopago', 'pago', $i);
             $pk2 = array('numero' => $orden);
             $ordc->load($pk2);
             $debe = $ordc->get('total');
             $codigoadm = $ordc->get('estadmin');
             $fondo = $ordc->get('fondo');
             $abono = $ordc->get('abono');
             $pk = array('codigoadm' => $codigoadm, 'tipo' => $fondo);
             for ($i = 0; $i < $ordc->count_rel('itocompra'); $i++) {
                 $codigopres = $ordc->get_rel('itocompra', 'partida', $i);
                 $importe = $ordc->get_rel('itocompra', 'importe', $i);
                 $iva = $ordc->get_rel('itocompra', 'iva', $i);
                 $mont = $importe * (($iva + 100) / 100);
                 $pk['codigopres'] = $codigopres;
                 $presup->load($pk);
                 $causado = $presup->get("causado");
                 $causado -= $mont;
                 $presup->set("opago", $causado);
                 $presup->save();
             }
             $ordc->set('status', 'T');
             $ordc->save();
             $do->set('status', 'P');
             $do->save();
         }
         redirect("presupuesto/opago2/dataedit/show/{$id}");
     } else {
         $data['content'] = $error . anchor("presupuesto/opago2/dataedit/show/{$id}", 'Regresar');
         $data['title'] = " Orden de Pago ";
         $data["head"] = $this->rapyd->get_head() . script('jquery.js') . script("plugins/jquery.numeric.pack.js");
         $this->load->view('view_ventanas', $data);
     }
 }
Example #7
0
 function actualizar($id)
 {
     $error = "";
     $this->rapyd->load('dataobject');
     $do = new DataObject("odirect");
     $do->load($id);
     $obr = $do->get('obr');
     $factura = $do->get('factura');
     $controlfac = $do->get('controlfac');
     $fechafac = $do->get('fechafac');
     $reteiva = $do->get('reteiva');
     $ivaa = $do->get('ivaa');
     $ivag = $do->get('ivag');
     $ivar = $do->get('ivar');
     $iva = $do->get('iva');
     $amortiza = $do->get('amortiza');
     $total = $do->get('total');
     $total2 = $do->get('total2');
     $obra = new DataObject("obra");
     $obra->load($obr);
     $codigoadm = $obra->get('codigoadm');
     $fondo = $obra->get('fondo');
     $codigopres = $obra->get('codigopres');
     $ordinal = $obra->get('ordinal');
     $monto = $obra->get('monto');
     $pagado = $obra->get('pagado');
     $demostrado = $obra->get('demostrado');
     $o_status = $obra->get('status');
     $pagoviejo = $obra->get('pagoviejo');
     $mont = $total2 - $amortiza;
     if ($o_status == "O1") {
         $error .= "<div class='alert'><p>No se pueden hacer pagos para la obra {$obr} </p></div>";
     }
     if (round($mont, 2) > round($monto - ($pagado + $pagoviejo), 2)) {
         $error .= "<div class='alert'><p>El Monto({$mont})  de la orden de pago es mayor al monto adeudado (" . ($monto - ($pagado + $pagoviejo)) . ") para la obra {$obr} </p></div>";
     }
     if ($reteiva > 0 && (empty($factura) || empty($controlfac) || empty($fechafac))) {
         $error .= "<div class='alert'><p> Los campos Nro. Factura, Nro Control y Fecha factura no pueden estar en blanco</p></div>";
     }
     if (empty($error)) {
         $sta = $do->get('status');
         if ($sta == "O1") {
             $mont = $total2 - $amortiza;
             $error .= $this->chequeapresup($codigoadm, $fondo, $codigopres, $ordinal, $mont, 0, 'round($monto,2) > round(($comprometido-$causado),2)', "El Monto ({$mont}) es mayor al disponible para la partida ({$codigoadm}) ({$fondo}) ({$codigopres}) ({$ordinal})");
             if (empty($error)) {
                 $error .= $this->afectapresup($codigoadm, $fondo, $codigopres, $ordinal, $mont, 0, 1, array("causado", "opago"));
                 $obra->set('pagado', $pagado + $mont);
                 $do->set('fopago', date('Ymd'));
                 $obra->set('status', 'O4');
                 $obra->save();
             }
         }
     }
     if (empty($error)) {
         $do->set('status', 'O2');
         $do->set('fopago', date('Ymd'));
         $do->save();
         logusu('pobra', "Actualizo Pago de Obra {$id}");
         redirect($this->url . "dataedit/show/{$id}");
     } else {
         logusu('pobra', "Actualizo Pago de Obra {$id} con error {$error}");
         $data['content'] = $error . anchor($this->url . "dataedit/show/{$id}", 'Regresar');
         $data['title'] = " {$this->t**s} ";
         $data["head"] = $this->rapyd->get_head() . script('jquery.js') . script("plugins/jquery.numeric.pack.js");
         $this->load->view('view_ventanas', $data);
     }
 }
Example #8
0
    function dataedit($status = '', $id = '')
    {
        //$this->datasis->modulo_id(502,1);
        $this->rapyd->load("dataobject", "dataedit");
        $link = site_url('bienes/bienes/ultimo');
        $link2 = site_url('bienes/bienes/sugerir_bienes');
        $script = '
			$(function() {
				$(".inputnum").numeric(".");
			});
			
			function ultimo(){
				$.ajax({
					url: "' . $link . '",
					success: function(msg){
					  alert( "El ultimo codigo ingresado fue: " + msg );
					}
				});
			}
		
			function sugerir(){
				$.ajax({
						url: "' . $link2 . '",
						success: function(msg){
							if(msg){
								$("#codigo").val(msg);
							}
							else{
								alert("No es posible generar otra sugerencia. Coloque el c&oacute;digo manualmente");
							}
						}
					});
				}    	
			
			';
        $do = new DataObject("bienes");
        if ($status == "create" && !empty($id)) {
            $do->load($id);
            $do->set('codigo', '');
            $do->set('barras', '');
        }
        $modbus = array('tabla' => 'grbi', 'columnas' => array('grupo' => 'Codigo', 'nombre' => 'Nombre'), 'filtro' => array('grupo' => 'Codigo', 'nombre' => 'Nombre'), 'retornar' => array('grupo' => 'grupo'), 'titulo' => 'Buscar Grupo de Bienes');
        $bmodbus = $this->datasis->modbus($modbus);
        $edit = new DataEdit("Bien &oacute; Suministro", $do);
        $edit->back_url = site_url("bienes/bienes/filteredgrid");
        $edit->script($script, "modify");
        $edit->script($script, "create");
        $ultimo = '<a href="javascript:ultimo();" title="Consultar ultimo codigo ingresado"> Consultar ultimo c&oacute;digo</a>';
        $sugerir = '<a href="javascript:sugerir();" title="Sugerir un Codigo aleatorio">Sugerir C&oacute;digo </a>';
        $edit->codigo = new inputField("C&oacute;digo", "codigo");
        $edit->codigo->mode = "autohide";
        $edit->codigo->maxlength = 15;
        $edit->codigo->size = 10;
        $edit->codigo->rule = "required|callback_chexiste|trim";
        $edit->codigo->append($sugerir);
        $edit->codigo->append($ultimo);
        $edit->barras = new inputField("C&oacute;digo de barras", "barras");
        $edit->barras->size = 30;
        $edit->barras->maxlength = 15;
        $edit->grupo = new inputField("Grupo de Bienes", "grupo");
        $edit->grupo->size = 10;
        $edit->grupo->maxlength = 6;
        $edit->grupo->append($bmodbus);
        $edit->costo = new inputField("Costo", "costo");
        $edit->costo->size = 18;
        $edit->costo->maxlength = 15;
        $edit->costo->css_class = 'inputnum';
        $edit->nombre = new inputField("Nombre", "nombre");
        $edit->nombre->size = 60;
        $edit->nombre->maxlength = 60;
        $edit->nombre->rule = "required|trim";
        $edit->descripcion = new textareaField("Descripci&oacute;n", "descripcion");
        $edit->descripcion->cols = 70;
        $edit->descripcion->rows = 4;
        for ($i = 1; $i <= 3; $i++) {
            $obj = "serial" . $i;
            $edit->{$obj} = new inputField("Serial {$i}", $obj);
            $edit->{$obj}->size = 30;
            $edit->{$obj}->maxlength = 30;
        }
        $edit->marca = new dropdownField("Marca", "marca");
        $edit->marca->option("", "");
        $edit->marca->options("SELECT marca,marca a FROM marc");
        $edit->marca->style = "width:200px";
        $edit->modelo = new inputField("Modelo", "modelo");
        $edit->modelo->size = 30;
        $edit->modelo->maxlength = 50;
        $edit->peso = new inputField("Peso", "peso");
        $edit->peso->size = 30;
        $edit->peso->maxlength = 15;
        $edit->peso->css_class = 'inputnum';
        $edit->color = new inputField("Color", "color");
        $edit->color->size = 30;
        $edit->color->maxlength = 30;
        $edit->vidautil = new inputField("Vida Util", "vidautil");
        $edit->vidautil->size = 30;
        $edit->vidautil->maxlength = 8;
        $edit->vidautil->css_class = 'inputnum';
        //		$edit->cuenta->rule ="trim|callback_chcuentac";
        //		$edit->cuenta->append($cost);
        $edit->buttons("modify", "save", "undo", "delete", "back");
        $edit->build();
        $data['content'] = $edit->output;
        $data['title'] = "Bienes y Suministros";
        $data["head"] = script("jquery.pack.js") . $this->rapyd->get_head();
        $this->load->view('view_ventanas', $data);
    }
Example #9
0
    function dataedit($status = '', $id = '')
    {
        $this->rapyd->load("dataobject", "dataedit");
        $qformato = $this->qformato = $this->datasis->formato_cpla();
        $link = site_url('inventario/caub/ultimo');
        $link2 = site_url('inventario/caub/sugerir');
        $script = '
		function ultimo(){
			$.ajax({
				url: "' . $link . '",
				success: function(msg){
				  alert( "El ultimo codigo ingresado fue: " + msg );
				}
			});
		}
		
		function sugerir(){
			$.ajax({
					url: "' . $link2 . '",
					success: function(msg){
						if(msg){
							$("#ubica").val(msg);
						}
						else{
							alert("No es posible generar otra sugerencia. Coloque el c&oacute;digo manualmente");
						}
					}
				});
		}		
		';
        $modbus = array('tabla' => 'cpla', 'columnas' => array('codigo' => 'C&oacute;digo', 'descrip' => 'Descripci&oacute;n'), 'filtro' => array('codigo' => 'C&oacute;digo', 'descrip' => 'Descripci&oacute;n'), 'retornar' => array('codigo' => '<#i#>'), 'titulo' => 'Buscar Cuenta', 'where' => "codigo LIKE \"{$qformato}\"", 'p_uri' => array(4 => '<#i#>'));
        $bcu_cost = $this->datasis->modbus($modbus, 'cu_cost');
        $bcu_caja = $this->datasis->modbus($modbus, 'cu_caja');
        $do = new DataObject("caub");
        if ($status == "create" && !empty($id)) {
            $do->load($id);
            $do->set('ubica', '');
        }
        $edit = new DataEdit("Almacenes", $do);
        $edit->back_url = site_url("inventario/caub/filteredgrid");
        $edit->script($script, "create");
        $edit->script($script, "modify");
        $edit->post_process('insert', '_post_insert');
        $edit->post_process('update', '_post_update');
        $edit->post_process('delete', '_post_delete');
        $edit->pre_process('delete', '_pre_del');
        $ultimo = '<a href="javascript:ultimo();" title="Consultar ultimo c&oacute;digo ingresado"> Consultar ultimo c&oacute;digo </a>';
        $sugerir = '<a href="javascript:sugerir();" title="Sugerir un C&oacute;digo aleatorio">Sugerir C&oacute;digo </a>';
        $edit->ubica = new inputField("Almacen", "ubica");
        $edit->ubica->mode = "autohide";
        $edit->ubica->size = 6;
        $edit->ubica->maxlength = 4;
        $edit->ubica->rule = "required|callback_chexiste|trim";
        $edit->ubica->append($sugerir);
        $edit->ubica->append($ultimo);
        $edit->ubides = new inputField("Nombre", "ubides");
        $edit->ubides->size = 35;
        $edit->ubides->maxlength = 30;
        $edit->ubides->rule = "strtoupper|required|trim";
        $edit->gasto = new dropdownField("Gasto", "gasto");
        $edit->gasto->option("N", "No");
        $edit->gasto->option("S", "Si");
        $edit->gasto->style = 'width:60px';
        $edit->invfis = new dropdownField("Inventario Físico", "invfis");
        $edit->invfis->option("N", "No");
        $edit->invfis->option("S", "Si");
        $edit->invfis->style = 'width:60px';
        //$edit->sucursal = new dropdownField("Sucursal","sucursal");
        //$edit->sucursal->option("","");
        //$edit->sucursal->options("SELECT codigo, sucursal FROM sucu ORDER BY sucursal");
        //$edit->sucursal->style='width:135px;';
        //$edit->cu_cost=new inputField("Cuenta Almacen", "cu_cost");
        //$edit->cu_cost->size = 18;
        //$edit->cu_cost->maxlength=15;
        //$edit->cu_cost->rule="callback_chcuentac|trim";
        //$edit->cu_cost->append($bcu_cost);
        //
        //$edit->cu_caja =new inputField("Cuenta Caja", "cu_caja");
        //$edit->cu_caja->size = 18;
        //$edit->cu_caja->maxlength=15;
        //$edit->cu_caja->rule="callback_chcuentac|trim";
        //$edit->cu_caja->append($bcu_caja);
        //$edit->sucursal=new inputField("Sucursal","sucursal");
        //$edit->sucursal->size =4;
        //$edit->sucursal->maxlength=2;
        //$edit->sucursal->rule="trim";
        $edit->buttons("modify", "save", "undo", "delete", "back");
        $edit->build();
        $data['content'] = $edit->output;
        $data['title'] = " Almacenes ";
        $data["head"] = script("jquery.pack.js") . $this->rapyd->get_head();
        $this->load->view('view_ventanas', $data);
    }
Example #10
0
    function dataedit($status = '', $id = '')
    {
        $this->rapyd->load("dataobject", "dataedit");
        $qformato = $this->qformato = $this->datasis->formato_cpla();
        $link = site_url('inventario/line/ultimo');
        $link2 = site_url('inventario/common/sugerir_line');
        $script = '
		function ultimo(){
			$.ajax({
				url: "' . $link . '",
				success: function(msg){
				  alert( "El ultimo codigo ingresado fue: " + msg );
				}
			});
		}
		
		function sugerir(){
			$.ajax({
					url: "' . $link2 . '",
					success: function(msg){
						if(msg){
							$("#linea").val(msg);
						}
						else{
							alert("No es posible generar otra sugerencia. Coloque el c&oacute;digo manualmente");
						}
					}
				});
		}		
		';
        $modbus = array('tabla' => 'cpla', 'columnas' => array('codigo' => 'C&oacute;digo', 'descrip' => 'Descripci&oacute;n'), 'filtro' => array('codigo' => 'C&oacute;digo', 'descrip' => 'Descripci&oacute;n'), 'retornar' => array('codigo' => '<#i#>'), 'titulo' => 'Buscar Cuenta', 'where' => "codigo LIKE \"{$qformato}\"", 'p_uri' => array(4 => '<#i#>'));
        $bcu_venta = $this->datasis->p_modbus($modbus, 'cu_venta');
        $bcu_inve = $this->datasis->p_modbus($modbus, 'cu_inve');
        $bcu_cost = $this->datasis->p_modbus($modbus, 'cu_cost');
        $bcu_devo = $this->datasis->p_modbus($modbus, 'cu_devo');
        $mdepto = array('tabla' => 'dept', 'columnas' => array('codigo' => 'C&oacute;odigo', 'departam' => 'Nombre'), 'filtro' => array('codigo' => 'C&oacute;digo', 'nombre' => 'Nombre'), 'retornar' => array('codigo' => 'depto'), 'titulo' => 'Buscar Departamento');
        $boton = $this->datasis->modbus($mdepto);
        $do = new DataObject("line");
        if ($status == "create" && !empty($id)) {
            $do->load($id);
            $do->set('linea', '');
        }
        $edit = new DataEdit("Linea de Inventario", $do);
        $edit->back_url = site_url("inventario/line/filteredgrid");
        $edit->script($script, "create");
        $edit->script($script, "modify");
        $edit->pre_process('delete', '_pre_del');
        $edit->post_process('insert', '_post_insert');
        $edit->post_process('update', '_post_update');
        $edit->post_process('delete', '_post_delete');
        $edit->dpto = new dropdownField("Departamento", "depto");
        $edit->dpto->option("", "");
        $edit->dpto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto");
        $edit->dpto->rule = "required";
        $edit->dpto->style = 'width:250px;';
        $ultimo = '<a href="javascript:ultimo();" title="Consultar ultimo c&oacute;digo ingresado"> Consultar ultimo c&oacute;digo</a>';
        $sugerir = '<a href="javascript:sugerir();" title="Sugerir un C&oacute;digo aleatorio">Sugerir C&oacute;digo </a>';
        $edit->linea = new inputField("C&oacute;digo Linea", "linea");
        $edit->linea->mode = "autohide";
        $edit->linea->size = 4;
        $edit->linea->rule = "trim|strtoupper|required|callback_chexiste";
        $edit->linea->maxlength = 2;
        $edit->linea->append($sugerir);
        $edit->linea->append($ultimo);
        $edit->descrip = new inputField("Descripci&oacute;n", "descrip");
        $edit->descrip->size = 35;
        $edit->descrip->rule = "trim|strtoupper|required";
        $edit->descrip->maxlength = 30;
        $edit->cu_inve = new inputField("Cuenta Inventario", "cu_inve");
        $edit->cu_inve->size = 18;
        $edit->cu_inve->maxlength = 15;
        $edit->cu_inve->rule = "trim|callback_chcuentac";
        $edit->cu_inve->append($bcu_inve);
        $edit->cu_cost = new inputField("Cuenta Costo", "cu_cost");
        $edit->cu_cost->size = 18;
        $edit->cu_cost->maxlength = 15;
        $edit->cu_cost->rule = "trim|callback_chcuentac";
        $edit->cu_cost->append($bcu_cost);
        $edit->cu_venta = new inputField("Cuenta Venta", "cu_venta");
        $edit->cu_venta->size = 18;
        $edit->cu_venta->maxlength = 15;
        $edit->cu_venta->rule = "trim|callback_chcuentac";
        $edit->cu_venta->append($bcu_venta);
        $edit->cu_devo = new inputField("Cuenta Devoluci&oacute;n", "cu_devo");
        $edit->cu_devo->size = 18;
        $edit->cu_devo->maxlength = 15;
        $edit->cu_devo->rule = "trim|callback_chcuentac";
        $edit->cu_devo->append($bcu_devo);
        $edit->buttons("modify", "save", "undo", "delete", "back");
        $edit->build();
        $data['content'] = $edit->output;
        $data['title'] = "<h1>Lineas de Inventario</h1>";
        $data["head"] = script("jquery.pack.js") . $this->rapyd->get_head();
        //.script("plugins/jquery.numeric.pack.js").script("plugins/jquery.floatnumber.js").
        $this->load->view('view_ventanas', $data);
    }
Example #11
0
 function guardar()
 {
     $this->rapyd->load('dataobject');
     $fechad = $this->input->post('fechad');
     $fechah = $this->input->post('fechah');
     $fechad2 = $this->db->escape(human_to_dbdate($fechad));
     $fechah2 = $this->db->escape(human_to_dbdate($fechah));
     $cant = $this->input->post('cant');
     $codigoadm = $this->input->post('codigoadm');
     $fondo = $this->input->post('fondo');
     $do = new DataObject("mbanc");
     $error = '';
     $query = "SELECT numero,ocompra,reten FROM ISLR";
     $retenciones = $this->db->query($query);
     $cant2 = $retenciones->num_rows();
     $pagos = $compras = array();
     $reten = 0;
     foreach ($retenciones->result() as $row) {
         $reten += $row->reten;
         if ($row->ocompra > 0) {
             $compras[] = $row->ocompra;
         } else {
             $pagos[] = $row->numero;
         }
     }
     if (round($cant, 2) != round($cant2, 2)) {
         $error .= "<div class='alert'>Los montos Previsualizados ({$cant}) y los actuales no parecen ser iguales ({$cant2}) </div>";
     }
     if (empty($error)) {
         if ($reten > 0) {
             $do->set("monto", $reten);
             $do->set("status", "J");
             $do->set("tipo", "R");
             $do->set("tipo_doc", "ND");
             $do->set("observa", ".Se cancelo el ISLR desde {$fechad} hasta {$fechah} actividad {$codigoadm} fondo {$fondo}");
             $do->set('rel', implode(',', $pagos) . '|' . implode(',', $compras));
             $do->save();
             $id = $do->get('id');
             if (!$id > 0) {
                 $error .= "Ocurrio error al momento de Crear la orden de pago";
             }
             if (empty($error)) {
                 echo $query = "UPDATE  ocompra d\r\n\t\t\t\t\tJOIN pacom e ON d.numero = e.compra\r\n\t\t\t\t\tJOIN odirect a ON e.pago = a.numero\r\n\t\t\t\t\tJOIN pades b ON a.numero = b.pago\r\n\t\t\t\t\tJOIN desem c ON b.desem = c.numero\r\n\t\t\t\t\tSET d.mislr ={$id} \tWHERE c.status='D2' AND d.reten >0 AND fdesem>={$fechad2} AND fdesem <={$fechah2} AND (a.mislr IS NULL)";
             }
             if (!empty($codigoadm)) {
                 $query .= " AND d.estadmin='{$codigoadm}'";
             }
             if (!empty($fondo)) {
                 $query .= " AND d.fondo='{$fondo}'";
             }
             $bool = $this->db->simple_query($query);
             if (!$bool) {
                 $error .= "Ocurrio error al momento de actualizar la tabla de compras</br>";
             }
             $query = "UPDATE odirect a \r\n\t\t\t\t\tJOIN pades b ON a.numero = b.pago\r\n\t\t\t\t\tJOIN desem c ON b.desem = c.numero\r\n\t\t\t\t\tJOIN sprv p ON c.cod_prov = p.proveed\r\n\t\t\t\t\tSET a.mislr={$id}\r\n\t\t\t\t\tWHERE c.status='D2' AND reten >0 AND fdesem>={$fechad2} AND fdesem<= {$fechah2} AND MID(a.status,1,1)<>'F' AND (a.mislr IS NULL)";
             if (!empty($codigoadm)) {
                 $query .= " AND a.estadmin='{$codigoadm}'";
             }
             if (!empty($fondo)) {
                 $query .= " AND a.fondo='{$fondo}'";
             }
             $bool = $this->db->simple_query($query);
             if (!$bool) {
                 $error .= "Ocurrio error al momento de actualizar la tabla pagos</br>";
             }
         } else {
             $error .= "<div class='alert'><p>No hay ISLR por pagar desde {$fechad} hasta {$fechah} </p></div>";
         }
     }
     if (empty($error)) {
         logusu('ISLR', "Creo Movimiento de ISLR {$id}");
         redirect("tesoreria/mbanc/dataedit/modify/" . $id);
     } else {
         logusu('ISLR', "Intento crear Movimiento Bancario de ISLR  con error {$error}");
         $data['content'] = '<div class="alert" >' . $error . '</div></br>' . anchor($this->url . "nuevo", 'Regresar');
         $data['title'] = " " . $this->t**s . " ";
         $data["head"] = $this->rapyd->get_head();
         $this->load->view('view_ventanas', $data);
     }
 }
Example #12
0
 function carga()
 {
     $this->rapyd->load("dataobject");
     $tipo = $this->input->post('tipo');
     $codamd = $this->input->post('codigoadm');
     $do = new DataObject("presusol");
     $data = $this->input->post('gt');
     $data2 = $this->input->post('gs');
     //print_r($data);
     $tot = 0;
     foreach ($data as $codpre => $value) {
         $ccodpre = str_replace('_', '.', $codpre);
         $pk = array('tipo' => $tipo, 'codigoadm' => $codamd, 'codigopres' => $ccodpre);
         $tot += $value;
         $do->load($pk);
         $do->set("asignacion", $value);
         //$do->set("solicitado",$data2[$codpre]);
         $do->save();
     }
     $niveles = explode('.', $ccodpre);
     $ttipo = $this->db->escape($tipo);
     $codamd = $this->db->escape($codamd);
     $pivote = '';
     foreach ($niveles as $var) {
         $pivote .= $var . '.';
         $mSQL = "SELECT SUM(asignacion),SUM(solicitud) FROM presusol WHERE tipo={$ttipo} AND codigoadm={$codamd} AND codigopres LIKE '{$pivote}%'";
     }
     $data['content'] = 'Guardado</br>' . anchor('presupuesto/presupasig', 'regresar');
     $data['title'] = "Asignacion Presupuestaria";
     $data["head"] = script("jquery.js") . script("plugins/jquery.numeric.pack.js") . $this->rapyd->get_head();
     $this->load->view('view_ventanas', $data);
 }
Example #13
0
 function _actualiza($mbanc)
 {
     $this->rapyd->load('dataobject');
     $banc = new DataObject("banc");
     $monto = $mbanc->get('monto');
     $devo = $mbanc->get('devo');
     $codbanc = $mbanc->get('codbanc');
     //$fecha    = $mbanc->get('fecha');
     //$observa  = $mbanc->get('observa');
     $row = $this->datasis->damerow("SELECT total,abonado FROM odirect WHERE numero={$devo}");
     $abonado = $row['abonado'];
     $total = $row['total'];
     //	$codbanc  = $row['codbanc'];
     $banc->load($codbanc);
     $saldo = $banc->get('saldo');
     $activo = $banc->get('activo');
     $error = '';
     if ($activo != 'S') {
         $error .= "<div class='alert'><p>El Banco ({$codbanc}) esta inactivo</p></div>";
     }
     //if($tipo!='D')
     //	$error.="<div class='alert'><p>No se puede actualizar el registro n&uacute;mero ($id)</p></div>";
     //if($status!='D1')
     //	$error.="<div class='alert'><p>No se puede Realizar la operaci&oacute;n</p></div>";
     $a = $total - $abonado;
     if ($monto > $a) {
         $error .= "<div class='alert'><p>El monto del reintegro ({$monto}) es mayor que el monto adeudado ({$a}) del Anticipo ({$devo})</p></div>";
     }
     if (empty($error)) {
         $saldo += $monto;
         $abonado += $monto;
         $this->db->simple_query("UPDATE odirect SET abonado={$abonado} WHERE numero={$devo}");
         $mbanc->set('status', 'D2');
         $banc->set('saldo', $saldo);
         $banc->save();
     } else {
         $mbanc->error_message_ar['pre_ins'] = $error;
         $mbanc->error_message_ar['pre_upd'] = $error;
         return false;
     }
 }
Example #14
0
    function dataedit($status = '', $id = '')
    {
        $this->rapyd->load('dataobject', 'dataedit');
        $qformato = $this->qformato = $this->datasis->formato_cpla();
        $link = site_url('inventario/line/ultimo');
        $link2 = site_url('inventario/common/sugerir_line');
        $script = '
		function ultimo(){ $.ajax({ url: "' . $link . '", success: function(msg){ alert( "El ultimo codigo ingresado fue: " + msg );}});}

		function sugerir(){
			$.ajax({
			url: "' . $link2 . '",
			success: function(msg){
				if(msg){
					$("#linea").val(msg);
				} else {
					alert("No es posible generar otra sugerencia. Coloque el c&oacute;digo manualmente");
				}
			}
			});
		}';
        $modbus = array('tabla' => 'cpla', 'columnas' => array('codigo' => 'C&oacute;digo', 'descrip' => 'Descripci&oacute;n'), 'filtro' => array('codigo' => 'C&oacute;digo', 'descrip' => 'Descripci&oacute;n'), 'retornar' => array('codigo' => '<#i#>'), 'titulo' => 'Buscar Cuenta', 'where' => "codigo LIKE \"{$qformato}\"", 'p_uri' => array(4 => '<#i#>'));
        $bcu_venta = $this->datasis->p_modbus($modbus, 'cu_venta');
        $bcu_inve = $this->datasis->p_modbus($modbus, 'cu_inve');
        $bcu_cost = $this->datasis->p_modbus($modbus, 'cu_cost');
        $bcu_devo = $this->datasis->p_modbus($modbus, 'cu_devo');
        $mdepto = array('tabla' => 'dept', 'columnas' => array('codigo' => 'C&oacute;odigo', 'departam' => 'Nombre'), 'filtro' => array('codigo' => 'C&oacute;digo', 'nombre' => 'Nombre'), 'retornar' => array('codigo' => 'depto'), 'titulo' => 'Buscar Departamento');
        $boton = $this->datasis->modbus($mdepto);
        $do = new DataObject('line');
        if ($status == 'create' && !empty($id)) {
            $do->load($id);
            $do->set('linea', '');
        }
        $edit = new DataEdit('', $do);
        $edit->on_save_redirect = false;
        $edit->script($script, 'create');
        $edit->script($script, 'modify');
        $edit->pre_process('delete', '_pre_delete');
        $edit->post_process('insert', '_post_insert');
        $edit->post_process('update', '_post_update');
        $edit->post_process('delete', '_post_delete');
        $edit->dpto = new dropdownField('Departamento', 'depto');
        $edit->dpto->option('', 'Seleccionar');
        $edit->dpto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto");
        $edit->dpto->rule = 'required';
        $edit->dpto->style = 'width:250px;';
        $ultimo = '<a href="javascript:ultimo();" title="Consultar ultimo c&oacute;digo ingresado"> Consultar ultimo c&oacute;digo</a>';
        $sugerir = '<a href="javascript:sugerir();" title="Sugerir un C&oacute;digo aleatorio">Sugerir C&oacute;digo </a>';
        $edit->linea = new inputField('C&oacute;digo', 'linea');
        $edit->linea->mode = 'autohide';
        $edit->linea->size = 4;
        $edit->linea->rule = 'trim|strtoupper|required|callback_chexiste|alpha_numeric';
        $edit->linea->maxlength = 2;
        $edit->linea->append($sugerir);
        $edit->linea->append($ultimo);
        $edit->descrip = new inputField('Descripci&oacute;n', 'descrip');
        $edit->descrip->size = 35;
        $edit->descrip->rule = 'trim|strtoupper|required';
        $edit->descrip->maxlength = 30;
        $edit->cu_inve = new inputField('Cuenta Inventario', 'cu_inve');
        $edit->cu_inve->size = 18;
        $edit->cu_inve->maxlength = 15;
        $edit->cu_inve->rule = 'trim|existecpla';
        $edit->cu_inve->append($bcu_inve);
        $edit->cu_cost = new inputField('Cuenta Costo', 'cu_cost');
        $edit->cu_cost->size = 18;
        $edit->cu_cost->maxlength = 15;
        $edit->cu_cost->rule = 'trim|existecpla';
        $edit->cu_cost->append($bcu_cost);
        $edit->cu_venta = new inputField('Cuenta Venta', 'cu_venta');
        $edit->cu_venta->size = 18;
        $edit->cu_venta->maxlength = 15;
        $edit->cu_venta->rule = 'trim|existecpla';
        $edit->cu_venta->append($bcu_venta);
        $edit->cu_devo = new inputField('Cuenta Devoluci&oacute;n', 'cu_devo');
        $edit->cu_devo->size = 18;
        $edit->cu_devo->maxlength = 15;
        $edit->cu_devo->rule = 'trim|existecpla';
        $edit->cu_devo->append($bcu_devo);
        //$edit->buttons("modify", "save", "undo", "delete", "back");
        $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;
        }
    }
Example #15
0
 function reversar($id)
 {
     $this->rapyd->load('dataobject');
     $error = '';
     $do = new DataObject("odirect");
     $do->rel_one_to_many('itodirect', 'itodirect', array('numero' => 'numero'));
     $do->load($id);
     $codigoadm = $do->get('estadmin');
     $fondo = $do->get('fondo');
     $id_mbanc = $do->get('mbanc');
     $monto = $do->get('monto');
     $abonado = $do->get('abonado');
     //$observa     = $do->get('observa');
     //$fecha       = $do->get('fecha');
     //$benefi      = $do->get('benefi');
     $row = $this->datasis->damerow("SELECT monto,abonado,codbanc FROM mbanc WHERE id={$id_mbanc}");
     $m_abonado = $row['abonado'];
     $m_monto = $row['monto'];
     //$a=$m_monto-$m_abonado;
     //if(($monto)>($a))
     //	$error.="<div class='alert'><p>El monto del $this->t**s ($monto) es mayor que el monto adeudado ($a) del Anticipo ($devo)</p></div>";
     $presup = new DataObject("presupuesto");
     $pk = array('codigoadm' => $codigoadm, 'tipo' => $fondo);
     $tiva = 0;
     $tmont = 0;
     $partidaiva = $this->datasis->traevalor("PARTIDAIVA");
     $sta = $do->get('status');
     if ($sta == "C") {
         $tiva = $tsub = $ttot = 0;
         /*for($i=0;$i < $do->count_rel('itodirect');$i++){
         				$codigopres  = $do->get_rel('itodirect','partida',$i);
         				$subtotal    = $do->get_rel('itodirect','subt'   ,$i);
         				$total       = $do->get_rel('itodirect','total'  ,$i);
         				$numfac      = $do->get_rel('itodirect','numfac' ,$i);
         
         				$tiva   += $total-$subtotal;
         				$tsub   += $subtotal;
         				$ttot   += $total;
         
         				$pk['codigopres'] = $codigopres;
         
         
         				$presup->load($pk);
         				$asignacion   = $presup->get("asignacion");
         				$aumento      = $presup->get("aumento");
         				$disminucion  = $presup->get("disminucion");
         				$traslados    = $presup->get("traslados");
         				$comprometido = $presup->get("comprometido");
         
         				$disponible=(($asignacion+$aumento-$disminucion)+($traslados))-$comprometido;
         
         				if($subtotal > $disponible)
         					$error.="<div class='alert'><p>No se Puede Completar la Transaccion debido a que el monto del $this->t**s ($subtotal) es mayor al monto disponible ($disponible) para la partida: $codigopres y factura ($numfac)</p></div>";
         			}
         
         			$pk['codigopres'] = $partidaiva;
         			$presup->load($pk);
         			$asignacion   = $presup->get("asignacion");
         			$aumento      = $presup->get("aumento");
         			$disminucion  = $presup->get("disminucion");
         			$traslados    = $presup->get("traslados");
         			$comprometido = $presup->get("comprometido");
         
         			$disponible=(($asignacion+$aumento-$disminucion)+($traslados))-$comprometido;
         
         			if($tiva > $disponible)
         					$error.="<div class='alert'><p>El monto de iva ($tiva) de la orden de compra, es mayor al monto disponible ($disponible) para la partida de iva ($partidaiva)</p></div>";
         
         			$c=$m_monto-$m_abonado;
         			if($ttot > $m_monto-$m_abonado)
         				$error.="<div class='alert'><p>El monto ($ttot) de la orden de pago directa, es mayor al monto disponible ($c) para el anticipo ($id_mbanc)</p></div>";
         			*/
         if (empty($error)) {
             $tiva = $tsub = $ttot = 0;
             for ($i = 0; $i < $do->count_rel('itodirect'); $i++) {
                 $codigopres = $do->get_rel('itodirect', 'partida', $i);
                 $subtotal = $do->get_rel('itodirect', 'subt', $i);
                 $total = $do->get_rel('itodirect', 'total', $i);
                 $numfac = $do->get_rel('itodirect', 'numfac', $i);
                 $tiva += $total - $subtotal;
                 $tsub += $subtotal;
                 $ttot += $total;
                 $pk['codigopres'] = $codigopres;
                 $presup->load($pk);
                 $comprometido = $presup->get("comprometido");
                 $causado = $presup->get("causado");
                 $opago = $presup->get("opago");
                 $pagado = $presup->get("pagado");
                 $comprometido -= $subtotal;
                 $causado -= $subtotal;
                 $opago -= $subtotal;
                 $pagado -= $subtotal;
                 $presup->set("comprometido", $comprometido);
                 $presup->set("causado", $causado);
                 $presup->set("opago", $opago);
                 $presup->set("pagado", $pagado);
                 $presup->save();
             }
             $pk['codigopres'] = $partidaiva;
             $presup->load($pk);
             $comprometido = $presup->get("comprometido");
             $causado = $presup->get("causado");
             $opago = $presup->get("opago");
             $pagado = $presup->get("pagado");
             $comprometido -= $tiva;
             $causado -= $tiva;
             $opago -= $tiva;
             $pagado -= $tiva;
             $presup->set("comprometido", $comprometido);
             $presup->set("causado", $causado);
             $presup->set("opago", $opago);
             $presup->set("pagado", $pagado);
             $presup->save();
             $m_abonado -= $ttot;
             $this->db->simple_query("UPDATE mbanc SET abonado={$m_abonado} WHERE id={$id_mbanc}");
             $mbanc = new DataObject("mbanc");
             $mbanc->set('monto', $ttot);
             $mbanc->set('tipo', 'B');
             $mbanc->set('status', 'B2');
             $mbanc->set('numero', $id);
             //$mbanc->set('observa',$observa);
             //$mbanc->set('fecha'  ,$fecha);
             //$mbanc->set('benefi' ,$benefi);
             $mbanc->save();
             //$id_mbanc=$mbanc->get('id');
             //$do->set('mbanc'  ,$id_mbanc);
             $do->set('status', 'P');
             $do->save();
         }
     }
     if (empty($error)) {
         redirect($this->url . "/dataedit/show/{$id}");
     } else {
         $data['content'] = $error . anchor($this->url . "/dataedit/show/{$id}", 'Regresar');
         $data['title'] = " {$this->t**s} ";
         $data["head"] = $this->rapyd->get_head() . script('jquery.js') . script("plugins/jquery.numeric.pack.js");
         $this->load->view('view_ventanas', $data);
     }
 }
Example #16
0
 function carga()
 {
     $this->rapyd->load("dataobject");
     $fechad = $this->input->post('fechad');
     $fechah = $this->input->post('fechah');
     $codbanc = $this->input->post('codbanc');
     $do = new DataObject("mbanc");
     $data = $this->input->post('gt');
     $tot = 0;
     foreach ($data as $id => $value) {
         $tot += $value;
         $do->load($id);
         $do->set("concilia", $value);
         $do->set("fconcilia", date('Ymd'));
         $do->save();
     }
     logusu('mbanc', "Concilio Bancos");
     $data['content'] = 'Guardado' . anchor($this->url, 'regresar');
     $data['title'] = "Conciliaci&oacute;n";
     $data["head"] = $this->rapyd->get_head();
     $this->load->view('view_ventanas', $data);
 }
Example #17
0
    function dataedit($status = '', $id = '')
    {
        $this->rapyd->load("dataobject", "dataedit");
        $qformato = $this->qformato = $this->datasis->formato_cpla();
        $link = site_url('inventario/grup/ultimo');
        $link2 = site_url('inventario/common/sugerir_grup');
        $script = '
			$(function() {
				$(".inputnum").numeric(".");
			});
			
			function ultimo(){
				$.ajax({
					url: "' . $link . '",
					success: function(msg){
					  alert( "El ultimo codigo ingresado fue: " + msg );
					}
				});
			}

			function sugerir(){
				$.ajax({
						url: "' . $link2 . '",
						success: function(msg){
							if(msg){
								$("#grupo").val(msg);
							}
							else{
								alert("No es posible generar otra sugerencia. Coloque el c&oacute;digo manualmente");
							}
						}
					});
			}
    	
			function get_linea(){
				$.ajax({
					type: "POST",
					url: "' . site_url('reportes/sinvlineas') . '",
					data: $("#dpto").serialize(),
					success: function(msg){
						$("#td_linea").html(msg);
					},
					error: function(msg){
						alert("Error en la comunicaci&oacute;n");
					}
				});
			}';
        $modbus = array('tabla' => 'cpla', 'columnas' => array('codigo' => 'C&oacute;digo', 'descrip' => 'Descripci&oacute;n'), 'filtro' => array('codigo' => 'C&oacute;digo', 'descrip' => 'Descripci&oacute;n'), 'retornar' => array('codigo' => '<#i#>'), 'titulo' => 'Buscar Cuenta', 'where' => "codigo LIKE \"{$qformato}\"", 'p_uri' => array(4 => '<#i#>'));
        $bcu_venta = $this->datasis->p_modbus($modbus, 'cu_venta');
        $bcu_inve = $this->datasis->p_modbus($modbus, 'cu_inve');
        $bcu_cost = $this->datasis->p_modbus($modbus, 'cu_cost');
        $bcu_devo = $this->datasis->p_modbus($modbus, 'cu_devo');
        $do = new DataObject("grup");
        $do->set('tipo', 'I');
        if ($status == "create" && !empty($id)) {
            $do->load($id);
            $do->set('grupo', '');
        }
        $edit = new DataEdit("Grupos de Inventario", $do);
        $edit->back_url = site_url("inventario/grup/filteredgrid");
        $edit->script($script, "modify");
        $edit->script($script, "create");
        $edit->post_process('insert', '_post_insert');
        $edit->post_process('update', '_post_update');
        $edit->post_process('delete', '_post_delete');
        $edit->depto = new dropdownField("Departamento", "dpto");
        $edit->depto->db_name = 'depto';
        $edit->depto->rule = "required";
        $edit->depto->onchange = "get_linea();";
        $edit->depto->option("", "Seleccionar");
        $edit->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto");
        $edit->linea = new dropdownField("L&iacute;nea", "linea");
        $edit->linea->rule = "required";
        if ($edit->_status == 'modify' or $edit->_status == 'show' or $edit->_status == 'idle' or $edit->_status == 'create') {
            $depto = $this->input->post('dpto') === FALSE ? $edit->_dataobject->get("depto") : $this->input->post('dpto');
            $edit->linea->options("SELECT linea, descrip FROM line WHERE depto='{$depto}' ORDER BY descrip");
        } else {
            $edit->linea->option("", "Seleccione un Departamento");
        }
        $ultimo = '<a href="javascript:ultimo();" title="Consultar ultimo c&oacute;digo ingresado"> Consultar ultimo c&oacute;digo</a>';
        $sugerir = '<a href="javascript:sugerir();" title="Sugerir un C&oacute;digo aleatorio">Sugerir C&oacute;digo </a>';
        $edit->grupo = new inputField("C&oacute;digo Grupo", "grupo");
        $edit->grupo->mode = "autohide";
        $edit->grupo->maxlength = 4;
        $edit->grupo->size = 6;
        $edit->grupo->rule = "trim|strtoupper|required|callback_chexiste";
        $edit->grupo->append($sugerir);
        $edit->grupo->append($ultimo);
        $edit->nom_grup = new inputField("Nombre del Grupo", "nom_grup");
        $edit->nom_grup->size = 35;
        $edit->nom_grup->maxlength = 30;
        $edit->nom_grup->rule = "trim|strtoupper|required";
        //$edit->tipo = new dropdownField("Tipo","tipo");
        //$edit->tipo->style='width:100px;';
        //$edit->tipo->option("I","Inventario" );
        //$edit->tipo->option("G","Gasto"  );
        $edit->comision = new inputField("Comisi&oacute;n. %", "comision");
        $edit->comision->size = 18;
        $edit->comision->maxlength = 10;
        $edit->comision->css_class = 'inputnum';
        $edit->comision->rule = 'trim|numeric|callback_positivo';
        $edit->cu_inve = new inputField("Cuenta Inventario", "cu_inve");
        $edit->cu_inve->size = 18;
        $edit->cu_inve->maxlength = 15;
        $edit->cu_inve->rule = "trim|callback_chcuentac";
        $edit->cu_inve->append($bcu_inve);
        $edit->cu_inve->group = 'Cuentas contables';
        $edit->cu_cost = new inputField("Cuenta Costo", "cu_cost");
        $edit->cu_cost->size = 18;
        $edit->cu_cost->maxlength = 15;
        $edit->cu_cost->rule = "trim|callback_chcuentac";
        $edit->cu_cost->append($bcu_cost);
        $edit->cu_cost->group = 'Cuentas contables';
        $edit->cu_venta = new inputField("Cuenta Venta", "cu_venta");
        $edit->cu_venta->size = 18;
        $edit->cu_venta->maxlength = 15;
        $edit->cu_venta->rule = "trim|callback_chcuentac";
        $edit->cu_venta->append($bcu_venta);
        $edit->cu_venta->group = 'Cuentas contables';
        $edit->cu_devo = new inputField("Cuenta Devoluci&oacute;n", "cu_devo");
        $edit->cu_devo->size = 18;
        $edit->cu_devo->maxlength = 15;
        $edit->cu_devo->rule = "trim|callback_chcuentac";
        $edit->cu_devo->append($bcu_devo);
        $edit->cu_devo->group = 'Cuentas contables';
        $edit->buttons("modify", "save", "undo", "delete", "back");
        $edit->build();
        $link = site_url('inventario/grup/get_linea');
        $data['content'] = $edit->output;
        $data['title'] = "<h1>Grupos de Inventario</h1>";
        $data["head"] = script("jquery.pack.js") . script("plugins/jquery.numeric.pack.js") . script("plugins/jquery.floatnumber.js") . $this->rapyd->get_head();
        $this->load->view('view_ventanas', $data);
    }
Example #18
0
 function carga()
 {
     $this->rapyd->load("dataobject");
     $cod_prov = $this->input->post('cod_prov');
     $do = new DataObject("ocomrapid");
     $data = $this->input->post('sepago');
     $tot = 0;
     foreach ($data as $id) {
         $do->load($id);
         $status = $do->get('status');
         $monto = $do->get('monto');
         $tot += $monto;
     }
     if ($tot > 0) {
         $query = "INSERT INTO `odirect`\r\n\t\t\t( `numero`,`tipo`,`fecha`   ,`status`,`cod_prov` ,`subtotal`,`exento`,`total`, `total2`,`observa`)\r\n\t\t\tVALUES\r\n\t\t\t(''      ,'B'   ,NOW('Ymd'), 'B'    ,'{$cod_prov}', {$tot}     , {$tot}   , {$tot}  , {$tot}    ,' Pago correspondiente a Ordenes de gasolina')\r\n\t\t\t";
         if ($this->db->query($query)) {
             $numero = $this->db->insert_id();
             $query = "INSERT INTO `itodirect`\r\n\t\t\t\t(`id`,`numero`,`cantidad`,`precio`,`importe`, `unidad`,`descripcion`)\r\n\t\t\t\tVALUES\r\n\t\t\t\t('','{$numero}', 1        , {$tot}   , {$tot}    , 'monto' ,' Pago correspondiente a Ordenes de gasolina')\r\n\t\t\t\t";
             $this->db->query($query);
             $salida = '<p>Se creo la orden de Pago numero ' . str_pad($numero, 8, '0', STR_PAD_LEFT) . '</p>';
             $tot = 0;
             foreach ($data as $id) {
                 $monto = $do->get('monto');
                 $do->load($id);
                 $do->set("status", 'C');
                 $do->set("opago", $numero);
                 $do->save();
             }
         } else {
             $salida = "<p>Error al crear orden de pago</p>";
         }
     } else {
         $salida = "<p>La suma de la seleccion es cero(0)</p>";
     }
     logusu('pagogas', $salida);
     $data['content'] = $salida . '<p>' . anchor($this->url, 'Regresar') . '</p>';
     $data['title'] = " Pago de Deducciones de N&oacute;mina ";
     $data["head"] = $this->rapyd->get_head();
     $this->load->view('view_ventanas', $data);
 }
Example #19
0
 function _validacheque($do)
 {
     $this->rapyd->load('dataobject');
     $error = '';
     $cod_prov = $do->get('cod_prov');
     $codbanc = $do->get('codbanc');
     $monto = $do->get('monto');
     $cheque = $do->get('cheque');
     $tipo_doc = $do->get('tipo_doc');
     $observa = $do->get('observa');
     $id = $do->get('id');
     $fecha = $do->get('fecha');
     $bcta = $do->get('bcta');
     $desem = $do->get('desem');
     $benefi = $do->get('benefi');
     $destino = $do->get('destino');
     $observa2 = $do->get('observa2');
     $error .= $this->chbanse($codbanc, $fecha);
     $existecaja = $this->datasis->traevalor('EXISTECAJA');
     $mbanc = new DataObject("mbanc");
     $mbanc->load($id);
     $tcodbanc = $mbanc->get('codbanc');
     $tmonto = $mbanc->get('monto');
     $tcheque = $mbanc->get('cheque');
     $ttipo_doc = $mbanc->get('tipo_doc');
     $tobserva = $mbanc->get('observa');
     $tfecha = $mbanc->get('fecha');
     $tbenefi = $mbanc->get('benefi');
     $tdestino = $mbanc->get('destino');
     $trelch = $mbanc->get('relch');
     $tobserva2 = $mbanc->get('observa2');
     $desem = $mbanc->get('desem');
     $mbanc->set('desem', $desem);
     if ($existecaja == "S") {
         $fcajrecibe = $do->get('fcajrecibe');
         $fcajdevo = $do->get('fcajdevo');
         if (!empty($fcajrecibe) && empty($fcajdevo)) {
             $error .= "ERROR: El cheque ({$tcheque}) del banco ({$tcodbanc}) se encuentra en caja. Caja tiene el cheque fisicamente, el cheque debe ser devuelto de caja al emisor de cheques";
         }
     }
     $do->set('fecha', $tfecha);
     if (empty($error)) {
         if (true) {
             if (($this->datasis->traevalor('CREANCDIA') == 'S' and 1 * date('Ymd') != 1 * date('Ymd', strtotime($fecha))) || date('m', strtotime($fecha)) != date('m', strtotime($tfecha)) || ($this->datasis->traevalor('CREANCRELCH') == 'S' and strlen($trelch) > 0)) {
                 if ($codbanc != $tcodbanc) {
                     $this->chexiste_cheque($codbanc, $cheque, $tipo_doc, $id, $e);
                     $error .= $e;
                     $banc = new DataObject("banc");
                     $banc->load($codbanc);
                     $saldo = $banc->get('saldo');
                     $activo = $banc->get('activo');
                     $banco = $banc->get('banco');
                     if ($activo != 'S') {
                         $error .= "<div class='alert'><p>El banco ({$banco}) esta inactivo</p></div>";
                     }
                     if ($monto > $saldo) {
                         $error .= "<div class='alert'><p>El Monto ({$monto}) del cheque es mayor al disponible ({$saldo}) en el banco ({$banco})</p></div>";
                     }
                     if (empty($error)) {
                         $banc->set('saldo', $saldo - $monto);
                         $banc->save();
                         $banc->load($tcodbanc);
                         $saldo = $banc->get('saldo');
                         $banc->set('saldo', $saldo + $monto);
                         $banc->save();
                         if (empty($error)) {
                             $do->set('tipo_doc', $ttipo_doc);
                             $do->set('cheque', $tcheque);
                             $do->set('codbanc', $tcodbanc);
                             $do->set('benefi', $tbenefi);
                             $do->set('destino', $tdestino);
                             $do->set('observa', $tobserva);
                             $do->set('observa2', $tobserva2);
                             $do->set('fliable', date('Y-m-d'));
                             $do->set('status', 'A2');
                             $this->creambanc($codbanc, $monto, $cheque, $tipo_doc, $observa, $fecha, $cod_prov, 'E2', $id, $bcta, $desem, $benefi, 'S', NULL, $destino, $observa2);
                             $this->creambanc($tcodbanc, $monto, 'NC' . $tcheque, 'NC', "1-Creada para respaldar cambio de cheque {$tcheque}", $fecha, $cod_prov, 'NC', $id, '', $desem, $tbenefi, 'N', NULL, $destino, $observa2);
                         }
                     }
                 } else {
                     $this->chexiste_cheque($codbanc, $cheque, $tipo_doc, $id, $e);
                     $error .= $e;
                     if (empty($error)) {
                         //exit('7');
                         $do->set('tipo_doc', $ttipo_doc);
                         $do->set('cheque', $tcheque);
                         $do->set('codbanc', $tcodbanc);
                         $do->set('benefi', $tbenefi);
                         $do->set('destino', $tdestino);
                         $do->set('observa', $tobserva);
                         $do->set('observa2', $tobserva2);
                         $do->set('status', 'A2');
                         $this->creambanc($codbanc, $monto, $cheque, $tipo_doc, $observa, $fecha, $cod_prov, 'E2', $id, '', $desem, $benefi, 'S', NULL, $destino, $observa2);
                         $this->creambanc($codbanc, $monto, $tcheque, 'NC', "Anulacion de cheque {$tcheque}", $fecha, $cod_prov, 'NC', $id, '', $desem, $tbenefi, 'N', NULL, $tdestino, $observa2);
                     }
                     //exit("a".$error);
                 }
             } else {
                 if ($codbanc != $tcodbanc) {
                     $this->chexiste_cheque($codbanc, $cheque, $tipo_doc, $id, $e);
                     $error .= $e;
                     $banc = new DataObject("banc");
                     $banc->load($codbanc);
                     $saldo = $banc->get('saldo');
                     $activo = $banc->get('activo');
                     $banco = $banc->get('banco');
                     if ($activo != 'S') {
                         $error .= "<div class='alert'><p>El banco ({$banco}) esta inactivo</p></div>";
                     }
                     if ($monto > $saldo) {
                         $error .= "<div class='alert'><p>El Monto ({$monto}) del cheque es mayor al disponible ({$saldo}) en el banco ({$banco})</p></div>";
                     }
                     if (empty($error)) {
                         //exit('10');
                         $banc->set('saldo', $saldo - $monto);
                         $banc->save();
                         $banc->load($tcodbanc);
                         $saldo = $banc->get('saldo');
                         $banc->set('saldo', $saldo + $monto);
                         $banc->save();
                         if (empty($error)) {
                             //exit('11');
                             $do->set('tipo_doc', $ttipo_doc);
                             $do->set('cheque', $tcheque);
                             $do->set('codbanc', $tcodbanc);
                             $do->set('benefi', $tbenefi);
                             $do->set('observa', $tobserva);
                             $do->set('observa2', $tobserva2);
                             $do->set('status', 'AN');
                             $this->creambanc($codbanc, $monto, $cheque, $tipo_doc, $observa, $fecha, $cod_prov, 'E2', $id, '', $desem, $benefi, 'S', NULL, $destino, $observa2);
                         }
                     }
                 } else {
                     $this->chexiste_cheque($codbanc, $cheque, $tipo_doc, $id, $e);
                     $error .= $e;
                     if (empty($error)) {
                         print_r($do->get_all());
                         //                                                exit('21');
                         $do->set('tipo_doc', $ttipo_doc);
                         $do->set('cheque', $tcheque);
                         $do->set('codbanc', $tcodbanc);
                         $do->set('benefi', $tbenefi);
                         $do->set('observa', $tobserva);
                         $do->set('observa2', $tobserva2);
                         $do->set('status', 'AN');
                     }
                     $this->creambanc($codbanc, $monto, $cheque, $tipo_doc, $observa, $fecha, $cod_prov, 'E2', $id, '', $desem, $benefi, 'S', NULL, $destino, $observa2);
                 }
             }
         } else {
             $this->chexiste_cheque($tcodbanc, $tcheque, $ttipo_doc, $id, $e);
             $error .= $e;
         }
     }
     if (empty($error)) {
         logusu('desem', "cambio datos cheque/banco {$ttipo_doc} Nro {$tcheque} por {$tipo_doc} Nro {$cheque} movimento {$id}");
     } else {
         $do->error_message_ar['pre_ins'] = $error;
         $do->error_message_ar['pre_upd'] = $error;
         logusu('desem', "cambio datos cheque/banco {$ttipo_doc} Nro {$tcheque} por {$tipo_doc} Nro {$cheque} movimento {$id} con error {$error}");
         return false;
     }
 }
Example #20
0
 function anular($id)
 {
     $this->rapyd->load('dataobject');
     $do = new DataObject("ocomrapid");
     $do->load($id);
     $do->set('status', 'AN');
     $do->save();
     logusu('ocomrapid', "Anulo orden de servicio de gasolina {$id}");
     redirect($this->url . "dataedit/show/{$id}");
 }
 function anular($id)
 {
     $error = "";
     $this->rapyd->load('dataobject');
     $do = new DataObject("odirect");
     $do->load($id);
     $status = $do->get('status');
     if (empty($error)) {
         if ($status == "M2") {
             $do->set('status', 'MA');
             $do->save();
         } else {
             $error .= "<div class='alert'><p>Este Pago No puede ser Anulado</p></div>";
         }
     }
     if (empty($error)) {
         logusu('pagomonetario', 'anulo pago monetario numero $id');
         redirect($this->url . "dataedit/show/{$id}");
     } else {
         $data['content'] = $error . anchor($this->url . "dataedit/show/{$id}", 'Regresar');
         $data['title'] = " {$this->t**s} ";
         $data["head"] = $this->rapyd->get_head() . script('jquery.js') . script("plugins/jquery.numeric.pack.js");
         $this->load->view('view_ventanas', $data);
     }
 }
Example #22
0
 function reversar($id)
 {
     $this->rapyd->load('dataobject');
     $error = '';
     $ord = new DataObject("ordinal");
     $mbanc = new DataObject("mbanc");
     $mbanc->rel_one_to_many('itppro', 'itppro', array('id' => 'mbanc'));
     $mbanc->load($id);
     $m_codbanc = $mbanc->get('codbanc');
     $m_monto = $mbanc->get('monto');
     $banc = new DataObject("banc");
     $banc->load($m_codbanc);
     $saldo = $banc->get('saldo');
     $activo = $banc->get('activo');
     $odirect = new DataObject("odirect");
     $odirect->rel_one_to_many('pacom', 'pacom', array('numero' => 'pago'));
     $odirect->rel_one_to_many('itodirect', 'itodirect', array('numero' => 'numero'));
     $odirect->rel_one_to_many('islr', 'islr', array('numero' => 'odirect'));
     $ocompra = new DataObject("ocompra");
     $ocompra->rel_one_to_many('itocompra', 'itocompra', array('numero' => 'numero'));
     //$ocompra->pointer('sprv' ,'sprv.proveed=ocompra.cod_prov','sprv.nombre as nom_prov, sprv.rif as rif_prov');
     $riva = new DataObject("riva");
     $presup = new DataObject("presupuesto");
     $partidaiva = $this->datasis->traevalor("PARTIDAIVA");
     if ($activo != 'S') {
         $error .= "<div class='alert'><p>El banco ({$banco}) esta inactivo</p></div>";
     }
     //if($m_monto > $saldo )$error.="<div class='alert'><p>El Monto ($tot) del cheque es mayor al disponible ($saldo) en el banco ($banco)</p></div>";
     $sta = $mbanc->get('status');
     if ($sta == "E2") {
         $t = 0;
         if (empty($error)) {
             for ($j = 0; $j < $mbanc->count_rel('itppro'); $j++) {
                 $orden = $mbanc->get_rel('itppro', 'orden', $j);
                 $it_monto = $mbanc->get_rel('itppro', 'monto', $j);
                 $odirect->load($orden);
                 $status = $odirect->get('status');
                 $od_numero = $odirect->get('numero');
                 $od_estadmin = $odirect->get('estadmin');
                 $od_fondo = $odirect->get('fondo');
                 $od_ivag = $odirect->get('ivag');
                 $od_ivaa = $odirect->get('ivaa');
                 $od_ivar = $odirect->get('ivar');
                 $od_reten = $odirect->get('reten');
                 $od_reteiva = $odirect->get('reteiva');
                 $od_subtotal = $odirect->get('subtotal');
                 $od_pr = $od_reten * 100 / $od_subtotal;
                 if ($status == "F3") {
                     for ($g = 0; $g < $odirect->count_rel('pacom'); $g++) {
                         $p_t = $odirect->get_rel('pacom', 'total', $g);
                         $p_compra = $odirect->get_rel('pacom', 'compra', $g);
                         $ocompra->load($p_compra);
                         $oc_codigoadm = $ocompra->get('estadmin');
                         $oc_fondo = $ocompra->get('fondo');
                         $oc_status = $ocompra->get('status');
                         //$pagado=$this->datasis->dameval("SELECT SUM(a.monto) FROM itppro a JOIN mbanc d ON d.id=a.mbanc JOIN odirect b ON a.orden=b.numero JOIN pacom c ON b.numero=c.pago WHERE c.compra=$p_compra AND d.status='E2'");
                         //$pagado+=$it_monto;
                         //
                         $ivaa = $ocompra->get('ivaa');
                         $ivag = $ocompra->get('ivag');
                         $ivar = $ocompra->get('ivar');
                         //$subtotal  =  $ocompra->get('subtotal');
                         $reteiva = $ocompra->get('reteiva');
                         $reten = $ocompra->get('reten');
                         $ivan = $ivag + $ivar + $ivaa;
                         //$total     =  $subtotal+($ivan-($reteiva+$reten));
                         //if($total==$pagado){
                         $pk = array('codigoadm' => $oc_codigoadm, 'tipo' => $oc_fondo);
                         $partidaiva = $this->datasis->traevalor("PARTIDAIVA");
                         $pk['codigopres'] = $partidaiva;
                         $presup->load($pk);
                         $pasignacion = $presup->get("asignacion");
                         $odirect->count_rel('pacom');
                         for ($h = 0; $h < $odirect->count_rel('pacom'); $h++) {
                             for ($k = 0; $k < $ocompra->count_rel('itocompra'); $k++) {
                                 $codigopres = $ocompra->get_rel('itocompra', 'partida', $k);
                                 $importe = $ocompra->get_rel('itocompra', 'importe', $k);
                                 $islrid = $ocompra->get_rel('itocompra', 'islrid', $k);
                                 //$mont        = $importe*(($iva+100)/100);
                                 //$i_islr      = $importe*$od_pr/100;
                                 //$mont        = $importe-$i_islr;
                                 $ordinal = $ocompra->get_rel('itocompra', 'ordinal', $k);
                                 $iva = $ocompra->get_rel('itocompra', 'iva', $k);
                                 if ($pasignacion > 0) {
                                     $mont = $importe;
                                 } else {
                                     $mont = $importe + $importe * $iva / 100;
                                 }
                                 $pk['codigopres'] = $codigopres;
                                 $presup->load($pk);
                                 $pagado = $presup->get("pagado");
                                 $pagado = $pagado - $mont;
                                 $presup->set("pagado", $pagado);
                                 $presup->save();
                                 if (!empty($ordinal)) {
                                     $ord->load(array("codigoadm" => $oc_codigoadm, "fondo" => $oc_fondo, "codigopres" => $codigopres, "ordinal" => $ordinal));
                                     $opa = $ord->get("pagado");
                                     $opa -= $mont;
                                     $ord->set("pagado", $opa);
                                     $ord->save();
                                 }
                                 //$islr   = new DataObject("islr");
                                 //if(!empty($islrid))
                                 //	$islr->load($islrid);
                                 //
                                 //$islr->set('status' , 'A' );
                                 //$islr->save();
                             }
                             if ($pasignacion > 0) {
                                 $pk['codigopres'] = $partidaiva;
                                 $presup->load($pk);
                                 $pagado = $presup->get("pagado");
                                 $pagado -= $ivan - $reteiva;
                                 $presup->set("pagado", $pagado);
                                 $presup->save();
                             }
                             $this->sp_presucalc($oc_codigoadm);
                             $riva->load_where('ocompra', $p_compra);
                             $riva->set('status', 'A');
                             //print_r($riva->get_all());
                             $riva->save();
                         }
                         $ocompra->set('status', 'O');
                         $ocompra->save();
                         //}
                         $odirect->set('status', 'F2');
                         $odirect->save();
                     }
                     //exit('assaas');
                 } elseif ($status == "B3" || $status == "I3") {
                     $pk = array('codigoadm' => $od_estadmin, 'tipo' => $od_fondo);
                     $partidaiva = $this->datasis->traevalor("PARTIDAIVA");
                     $pk['codigopres'] = $partidaiva;
                     $presup->load($pk);
                     $pasignacion = $presup->get("asignacion");
                     for ($g = 0; $g < $odirect->count_rel('itodirect'); $g++) {
                         $codigopres = $odirect->get_rel('itodirect', 'partida', $g);
                         $importe = $odirect->get_rel('itodirect', 'importe', $g);
                         $piva = $odirect->get_rel('itodirect', 'iva', $g);
                         $islrid = $odirect->get_rel('itodirect', 'islrid', $g);
                         echo $ordinal = $odirect->get_rel('itodirect', 'ordinal', $g);
                         $i_islr = $importe * $od_pr / 100;
                         //exit('12');
                         if ($pasignacion > 0) {
                             $mont = $importe;
                         } else {
                             $mont = $importe + $importe * $piva / 100;
                         }
                         $pk['codigopres'] = $codigopres;
                         $presup->load($pk);
                         $pagado = $presup->get("pagado");
                         $pagado = $pagado - ($mont - $i_islr);
                         $presup->set("pagado", $pagado);
                         $presup->save();
                         if (!empty($ordinal)) {
                             $ord->load(array("codigoadm" => $od_estadmin, "fondo" => $od_fondo, "codigopres" => $codigopres, "ordinal" => $ordinal));
                             print_r($ord->get_all());
                             $opa = $ord->get("pagado");
                             $opa -= $mont - $i_islr;
                             $ord->set("pagado", $opa);
                             $ord->save();
                         }
                         //exit('ww');
                     }
                     if ($status == "B3") {
                         $riva->load_where('odirect', $od_numero);
                         $riva->set('status', 'A');
                         $riva->save();
                         $ii = $od_ivaa + $od_ivag + $od_ivar - $od_reteiva;
                         if ($pasignacion > 0) {
                             $pk['codigopres'] = $partidaiva;
                             $presup->load($pk);
                             $pagado = $presup->get("pagado");
                             $pagado -= $ii;
                             $presup->set("pagado", $pagado);
                             $presup->save();
                         }
                         $odirect->set('status', 'B2');
                         $odirect->save();
                         $this->sp_presucalc($od_estadmin);
                     }
                 } elseif ($status == 'S3') {
                     $pk = array('codigoadm' => $od_estadmin, 'tipo' => $od_fondo);
                     for ($g = 0; $g < $odirect->count_rel('islr'); $g++) {
                         $islrid = '';
                         $codigopres = $odirect->get_rel('islr', 'partida', $g);
                         $i_islr = $odirect->get_rel('islr', 'islr', $g);
                         $pk['codigopres'] = $codigopres;
                         $presup->load($pk);
                         $pagado = $presup->get("pagado");
                         $pagado -= $i_islr;
                         $presup->set("pagado", $pagado);
                         $presup->save();
                         $codigopres = $odirect->set_rel('islr', 'status', 'B', $g);
                     }
                     $odirect->set('status', 'S2');
                     $odirect->save();
                     $this->sp_presucalc($codigoadm);
                 } elseif ($status == 'R3') {
                     $odirect->set('status', 'R2');
                 } elseif ($status == 'G3') {
                     $odirect->set('status', 'G2');
                 } else {
                     $error .= "<div class='alert'><p>No se puede realizar la operacion para la orden de pago ({$od_numero})</p></div>";
                 }
             }
             $odirect->save();
             //exit('hgghhgg');
             if ($status == "B2") {
                 $islr = new DataObject("islr");
                 $islrid = $do->get->islr('islrid');
                 if (!empty($islrid)) {
                     $islr->load($islrid);
                     $islr->set('status', 'A');
                     $islr->save();
                 }
             }
         } else {
             $error .= "<div class='alert'><p>Error aun no determinado</p></div>";
         }
     } else {
         $error .= "<div class='alert'><p>No se Puede Completar la operacion s</p></div>";
     }
     if (empty($error)) {
         $mbanc->set('status', 'E1');
         $mbanc->save();
         $saldo += $m_monto;
         $banc->set('saldo', $saldo);
         $banc->save();
         redirect($this->url . "dataedit/show/{$id}");
     } else {
         $data['content'] = $error . anchor($this->url . "/dataedit/show/{$id}", 'Regresar');
         $data['title'] = " " . $this->t**s . " ";
         $data["head"] = $this->rapyd->get_head() . script('jquery.js') . script("plugins/jquery.numeric.pack.js");
         $this->load->view('view_ventanas', $data);
     }
 }
Example #23
0
 function anular($id)
 {
     $this->rapyd->load('dataobject');
     $do = new DataObject("otrabajo");
     $do->load($id);
     $do->set('status', 'A');
     $do->save();
     logusu('otrabajo', "Anulo Orden de Compra Nro {$id}");
     redirect("presupuesto/otrabajo/dataedit/show/{$id}");
 }
Example #24
0
    function dataedit($status = '', $id = '')
    {
        $this->rapyd->load('dataedit2', 'dataobject');
        $link = site_url('suministros/common/add_marc');
        $link4 = site_url('suministros/common/get_marca');
        $link5 = site_url('suministros/common/add_unidad');
        $link6 = site_url('suministros/common/get_unidad');
        $link7 = site_url('suministros/sumi/ultimo');
        $link8 = site_url('suministros/sumi/sugerir');
        $link9 = site_url('suministros/common/add_depto');
        $link10 = site_url('suministros/common/get_depto');
        $link11 = site_url('suministros/common/add_linea');
        $link12 = site_url('suministros/common/get_linea');
        $link13 = site_url('suministros/common/add_grupo');
        $link14 = site_url('suministros/common/get_grupo');
        $script = '
		function dpto_change(){

			$.post("' . $link12 . '",{ depto:$("#depto").val() },function(data){$("#linea").html(data);})
			$.post("' . $link14 . '",{ linea:"" },function(data){$("#grupo").html(data);})
		}

		$(function(){
			$("#depto").change(function(){dpto_change(); });
			$("#linea").change(function(){ $.post("' . $link14 . '",{ linea:$(this).val() },function(data){$("#grupo").html(data);}) });

			$("#tdecimal").change(function(){
				var clase;
				if($(this).attr("value")=="S") clase="inputnum"; else clase="inputonlynum";
				$("#exmin").unbind();$("#exmin").removeClass(); $("#exmin").addClass(clase);
				$("#exmax").unbind();$("#exmax").removeClass(); $("#exmax").addClass(clase);
				$("#exord").unbind();$("#exord").removeClass(); $("#exord").addClass(clase);
				$("#exdes").unbind();$("#exdes").removeClass(); $("#exdes").addClass(clase);



				$(".inputnum").numeric(".");
				$(".inputonlynum").numeric("0");
			});

			//requeridos(true);
		});

		function ultimo(){
			$.ajax({
				url: "' . $link7 . '",
				success: function(msg){
				  alert( "El ultimo codigo ingresado fue: " + msg );
				}
			});
		}

		function sugerir(){
			$.ajax({
				url: "' . $link8 . '",
				success: function(msg){
					if(msg){
						$("#codigo").val(msg);
					}
					else{
						alert("No es posible generar otra sugerencia. Coloque el c&oacute;digo manualmente");
					}
				}
			});
		}

		function add_marca(){
			marca=prompt("Introduza el nombre de la MARCA a agregar");
			if(marca==null){
			}else{
				$.ajax({
				 type: "POST",
				 processData:false,
					url: "' . $link . '",
					data: "valor="+marca,
					success: function(msg){
						if(msg=="s.i"){
							marca=marca.substr(0,30);
							$.post("' . $link4 . '",{ x:"" },function(data){$("#marca").html(data);$("#marca").val(marca);})
						}
						else{
							alert("Disculpe. En este momento no se ha podido agregar la marca, por favor intente mas tarde");
						}
					}
				});
			}
		}

		function add_unidad(){
			unidad=prompt("Introduza el nombre de la UNIDAD a agregar");
			if(unidad==null){
			}else{
				$.ajax({
				 type: "POST",
				 processData:false,
					url: "' . $link5 . '",
					data: "valor="+unidad,
					success: function(msg){
						if(msg=="s.i"){
							unidad=unidad.substr(0,8);
							$.post("' . $link6 . '",{ x:"" },function(data){$("#unidad").html(data);$("#unidad").val(unidad);})
						}
						else{
							alert("Disculpe. En este momento no se ha podido agregar la unidad, por favor intente mas tarde");
						}
					}
				});
			}
		}

		function add_depto(){
			depto=prompt("Introduza el nombre del DEPARTAMENTO a agregar");
			if(depto==null){
			}else{
				$.ajax({
				 type: "POST",
				 processData:false,
					url: "' . $link9 . '",
					data: "valor="+depto,
					success: function(msg){
						if(msg=="Y.a-Existe"){
							alert("Ya existe un Departamento con esa Descripcion");
						}
						else{
							if(msg=="N.o-SeAgrego"){
								alert("Disculpe. En este momento no se ha podido agregar el departamento, por favor intente mas tarde");
							}else{
								$.post("' . $link10 . '",{ x:"" },function(data){$("#depto").html(data);$("#depto").val(msg);})
							}
						}
					}
				});
			}
		}

		function add_linea(){
			deptoval=$("#depto").val();
			if(deptoval==""){
				alert("Debe seleccionar un Departamento al cual agregar la linea");
			}else{
				linea=prompt("Introduza el nombre de la LINEA a agregar al DEPARTAMENTO seleccionado");
				if(linea==null){
				}else{
					$.ajax({
					 type: "POST",
					 processData:false,
						url: "' . $link11 . '",
						data: "valor="+linea+"&&valor2="+deptoval,
						success: function(msg){
							if(msg=="Y.a-Existe"){
								alert("Ya existe una Linea con esa Descripcion");
							}
							else{
								if(msg=="N.o-SeAgrego"){
									alert("Disculpe. En este momento no se ha podido agregar la linea, por favor intente mas tarde");
								}else{
									$.post("' . $link12 . '",{ depto:deptoval },function(data){$("#linea").html(data);$("#linea").val(msg);})
								}
							}
						}
					});
				}
			}
		}

		function add_gruposolo(){
			grupo=prompt("Introduza el nombre del GRUPO a agregar");
			if(grupo==null){
			}else{
				$.ajax({
				 type: "POST",
				 processData:false,
					url: "' . $link13 . '",
					data: "valor="+depto,
					success: function(msg){
						if(msg=="Y.a-Existe"){
							alert("Ya existe un Departamento con esa Descripcion");
						}
						else{
							if(msg=="N.o-SeAgrego"){
								alert("Disculpe. En este momento no se ha podido agregar el departamento, por favor intente mas tarde");
							}else{
								$.post("' . $link10 . '",{ x:"" },function(data){$("#depto").html(data);$("#depto").val(msg);})
							}
						}
					}
				});
			}
		}

		function add_grupo(){
			lineaval=$("#linea").val();
			deptoval=$("#depto").val();
			if(lineaval==""){
				alert("Debe seleccionar una Linea a la cual agregar el departamento");
			}else{
				grupo=prompt("Introduza el nombre del GRUPO a agregar a la LINEA seleccionada");
				if(grupo==null){
				}else{
					$.ajax({
					 type: "POST",
					 processData:false,
						url: "' . $link13 . '",
						data: "valor="+grupo+"&&valor2="+lineaval+"&&valor3="+deptoval,
						success: function(msg){
							if(msg=="Y.a-Existe"){
								alert("Ya existe una Linea con esa Descripcion");
							}
							else{
								if(msg=="N.o-SeAgrego"){
									alert("Disculpe. En este momento no se ha podido agregar la linea, por favor intente mas tarde");
								}else{
									$.post("' . $link14 . '",{ linea:lineaval },function(data){$("#grupo").html(data);$("#grupo").val(msg);})
								}
							}
						}
					});
				}
			}
		}
		';
        $do = new DataObject("sumi");
        if ($status == "create" && !empty($id)) {
            $do->load($id);
            $do->set('codigo', '');
        }
        $edit = new DataEdit2("Suministros", $do);
        $edit->script($script, "create");
        $edit->script($script, "modify");
        $edit->back_url = site_url("suministros/sumi/filteredgrid");
        $ultimo = '<a href="javascript:ultimo();" title="Consultar ultimo c&oacute;digo ingresado"> Consultar ultimo c&oacute;digo</a>';
        $sugerir = '<a href="javascript:sugerir();" title="Sugerir un C&oacute;digo aleatorio">Sugerir C&oacute;digo </a>';
        $edit->codigo = new inputField("C&oacute;digo", "codigo");
        $edit->codigo->size = 20;
        $edit->codigo->maxlength = 15;
        $edit->codigo->rule = "trim|required|strtoupper|callback_chexiste";
        $edit->codigo->mode = "autohide";
        $edit->codigo->append($sugerir);
        $edit->codigo->append($ultimo);
        $edit->barras = new inputField("C&oacute;digo Barras", "barras");
        $edit->barras->size = 20;
        $edit->barras->maxlength = 15;
        $edit->barras->rule = "trim";
        $AddUnidad = '<a href="javascript:add_unidad();" title="Haz clic para Agregar una unidad nueva">Agregar Unidad</a>';
        $edit->unidad = new dropdownField("Unidad", "unidad");
        $edit->unidad->style = 'width:180px;';
        //$edit->unidad->option("","");
        $edit->unidad->options("SELECT unidades, unidades as valor FROM unidad ORDER BY unidades");
        $edit->unidad->append($AddUnidad);
        $AddDepto = '<a href="javascript:add_depto();" title="Haz clic para Agregar un nuevo Departamento">Agregar Departamento</a>';
        $edit->depto = new dropdownField("Departamento", "depto");
        $edit->depto->rule = "required";
        //$edit->depto->onchange = "get_linea();";
        $edit->depto->option("", "Seleccione un Departamento");
        $edit->depto->options("SELECT depto, descrip FROM dpto WHERE tipo='I' ORDER BY depto");
        $edit->depto->append($AddDepto);
        $AddLinea = '<a href="javascript:add_linea();" title="Haz clic para Agregar una nueva Linea;">Agregar Linea</a>';
        $edit->linea = new dropdownField("L&iacute;nea", "linea");
        $edit->linea->rule = "required";
        $edit->linea->append($AddLinea);
        $depto = $edit->getval('depto');
        if ($depto !== FALSE) {
            $edit->linea->options("SELECT linea, descrip FROM line WHERE depto='{$depto}' ORDER BY descrip");
        } else {
            $edit->linea->option("", "Seleccione un Departamento primero");
        }
        /*if($edit->_status=='modify' or $edit->_status=='show' or $edit->_status=='idle' or $edit->_status=='create'){
        			$depto = ($this->input->post('depto')===FALSE) ? $edit->_dataobject->get("depto") : $this->input->post('dpto');
        			$edit->linea->options("SELECT linea, descrip FROM line WHERE depto='$depto' ORDER BY descrip");
        		}else{
        			$edit->linea->option("","Seleccione un Departamento primero");
        		}*/
        $AddGrupo = '<a href="javascript:add_grupo();" title="Haz clic para Agregar un nuevo Grupo;">Agregar Grupo</a>';
        $edit->grupo = new dropdownField("Grupo", "grupo");
        $edit->grupo->rule = "required";
        $edit->grupo->append($AddGrupo);
        //$edit->grupo->options("SELECT grupo, nom_grup FROM grup nom_grup");//WHERE linea='$linea' ORDER BY
        $linea = $edit->getval('linea');
        if ($linea !== FALSE) {
            $edit->grupo->options("SELECT grupo, nom_grup FROM grup WHERE linea='{$linea}' ORDER BY nom_grup");
        } else {
            $edit->grupo->option("", "Seleccione un Departamento primero");
        }
        $edit->activo = new dropdownField("Activo", "activo");
        $edit->activo->style = 'width:100px;';
        $edit->activo->option("S", "Si");
        $edit->activo->option("N", "No");
        $edit->tdecimal2 = new freeField("", "free", "Usa Decimales");
        $edit->tdecimal2->in = "activo";
        $edit->tdecimal = new dropdownField("", "tdecimal");
        $edit->tdecimal->style = 'width:100px;';
        $edit->tdecimal->option("N", "No");
        $edit->tdecimal->option("S", "Si");
        $edit->tdecimal->in = "activo";
        $edit->descrip = new textareaField("Descripci&oacute;n", "descrip");
        $edit->descrip->cols = 50;
        $edit->descrip->rows = 2;
        $edit->descrip->maxlength = 45;
        $edit->descrip->rule = "trim|required|strtoupper";
        $AddMarca = '<a href="javascript:add_marca();" title="Haz clic para Agregar una marca nueva">Agregar Marca</a>';
        $edit->marca = new dropdownField("Marca", "marca");
        $edit->marca->style = 'width:180px;';
        $edit->marca->option("", "");
        $edit->marca->options("SELECT marca as codigo, marca FROM marc ORDER BY marca");
        $edit->marca->append($AddMarca);
        $edit->modelo = new inputField("Modelo", "modelo");
        $edit->modelo->size = 20;
        $edit->modelo->maxlength = 20;
        $edit->modelo->rule = "trim|strtoupper";
        $edit->exmin = new inputField("Existencia Minima", "exmin");
        $edit->exmin->size = 10;
        $edit->exmin->maxlength = 12;
        $edit->exmin->css_class = 'inputonlynum';
        $edit->exmin->rule = 'numeric|callback_positivo|trim';
        $edit->exmax = new inputField("Existencia Maxima", "exmax");
        $edit->exmax->size = 10;
        $edit->exmax->maxlength = 12;
        $edit->exmax->css_class = 'inputonlynum';
        $edit->exmax->rule = 'numeric|callback_positivo|trim';
        $edit->existen = new inputField("Existencia Actual", "existen");
        $edit->existen->when = array("show");
        $edit->buttons("add", "modify", "save", "undo", "delete", "back");
        $edit->build();
        $data['content'] = $edit->output;
        $data['title'] = "Maestro de Inventario";
        $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);
    }
Example #25
0
 function termina($numero)
 {
     $this->rapyd->load('dataobject');
     $error = '';
     $do = new DataObject("ingresos");
     $do->load($numero);
     $status = $do->get('status');
     if ($status == 'P') {
         $do->set('status', 'C');
     } else {
         $error .= "<div class='alert'>No se puede realizar la operacion para el certificado</div>";
     }
     if (empty($error)) {
         $do->save();
         logusu('ingresos', "Marco como terminado Ingreso nro {$numero}");
         redirect($this->url . "dataedit/show/{$numero}");
     } else {
         logusu('cdisp', "Marco como terminado ingreso nro {$numero} con ERROR {$error}");
         $data['content'] = $error . anchor($this->url . "dataedit/show/{$numero}", 'Regresar');
         $data['title'] = " {$this->t**s}";
         $data["head"] = $this->rapyd->get_head();
         $this->load->view('view_ventanas', $data);
     }
 }
Example #26
0
 function reversar($id)
 {
     $this->rapyd->load('dataobject');
     $error = '';
     $odirect = new DataObject("odirect");
     $odirect->load($id);
     $status = $odirect->get('status');
     $compra = $odirect->get('compra');
     $pago = $odirect->get('pago');
     //print_r($odirect->get_all());
     //
     //echo "-".$status;
     //exit;
     if ($status == 'O') {
         $ocompra = new DataObject("ocompra");
         $ocompra->rel_one_to_many('odirect', 'odirect', array('numero' => 'compra'));
         $ocompra->load($compra);
         $o_subtotal = $ocompra->get('subtotal');
         $o_ivag = $ocompra->get('ivag');
         $o_ivar = $ocompra->get('ivar');
         $o_ivaa = $ocompra->get('ivaa');
         $o_reten = $ocompra->get('reten');
         $o_reteiva = $ocompra->get('reteiva');
         $o_abonado = $ocompra->get('abonado');
         $o_iva = $o_ivaa + $o_ivag + $o_ivar;
         $o_debe = $o_subtotal + ($o_iva - ($o_reten + $o_reteiva));
         $tot = 0;
         for ($i = 0; $i < $ocompra->count_rel('odirect'); $i++) {
             $r_pago = $ocompra->get_rel('odirect', 'pago', $i);
             $tot += $r_pago;
         }
         //$a = $o_debe-($tot-$pago);
         //if($pago > $a)
         //	$error.="<div class='alert'><p>El monto de la orden de pago($pago) es mayor al monto adeudado ($a)</p></div>";
     } else {
         $error .= "<div class='alert'><p>No se Puede Completar la operacion</p></div>";
     }
     if (empty($error)) {
         $ocompra->set('abonado', $tot - $pago);
         $odirect->set('status', 'T');
         if ($tot = $o_debe) {
             $odirect->set('ivag', 0);
             $odirect->set('ivar', 0);
             $odirect->set('ivaa', 0);
             $odirect->set('reten', 0);
             $odirect->set('creten', 0);
             $odirect->set('reteiva', 0);
             $odirect->set('exento', 0);
         }
         $ocompra->save();
         $odirect->save();
     } else {
         //$odirect -> delete();
     }
     if (empty($error)) {
         redirect($this->url . "dataedit/show/{$id}");
     } else {
         $data['content'] = $error . anchor($this->url . "/dataedit/show/{$id}", 'Regresar');
         $data['title'] = " " . $this->t**s . " ";
         $data["head"] = $this->rapyd->get_head() . script('jquery.js') . script("plugins/jquery.numeric.pack.js");
         $this->load->view('view_ventanas', $data);
     }
 }
Example #27
0
    function dataedit($status = '', $id = '', $id2 = '')
    {
        $this->rapyd->load('dataobject', 'dataedit');
        $script = '
		$(function() {
			$(".inputnum").numeric(".");
			$("#banco1").change(function () { acuenta(); }).change();
			$("#banco2").change(function () { acuenta(); }).change();
		});';
        $do = new DataObject('fiscalz');
        if ($status == 'create' && !empty($id) && !empty($id2)) {
            $do->load(array('serial' => $id, 'numero' => $id2));
            $do->set('numero', '');
            $do->set('hora', '');
            $do->set('base', '');
            $do->set('iva', '');
            $do->set('base1', '');
            $do->set('iva1', '');
            $do->set('iva2', '');
            $do->set('base2', '');
            $do->set('exento', '');
            $do->set('ncexento', '');
            $do->set('ncbase', '');
            $do->set('nciva', '');
            $do->set('ncbase1', '');
            $do->set('nciva1', '');
            $do->set('ncbase2', '');
            $do->set('nciva2', '');
            $do->set('ncnumero', '');
        }
        $script = '
		$(function() {
			$("#fecha").datepicker({dateFormat:"dd/mm/yy"});
			$(".inputnum").numeric(".");
		});
		';
        $edit = new DataEdit('', $do);
        $edit->script($script, 'modify');
        $edit->script($script, 'create');
        $edit->on_save_redirect = false;
        $edit->back_url = site_url($this->url . 'filteredgrid');
        $edit->script($script, 'create');
        $edit->script($script, 'modify');
        $edit->post_process('insert', '_post_insert');
        $edit->post_process('update', '_post_update');
        $edit->post_process('delete', '_post_delete');
        $edit->caja = new inputField('Caja', 'caja');
        $edit->caja->size = 6;
        $edit->caja->maxlength = 4;
        $edit->caja->rule = 'trim|required';
        $edit->serial = new inputField('Serial de la impresora fiscal', 'serial');
        $edit->serial->size = 15;
        $edit->serial->maxlength = 12;
        $edit->serial->mode = 'autohide';
        $edit->serial->rule = 'trim|required';
        $edit->numero = new inputField('N&uacute;mero del cierre Z', 'numero');
        $edit->numero->size = 6;
        $edit->numero->maxlength = 4;
        $edit->numero->mode = 'autohide|required';
        $edit->numero->rule = 'trim';
        $edit->fecha1 = new DateonlyField('Fecha Inicial', 'fecha1', 'd/m/Y');
        $edit->fecha1->insertValue = date('Y-m-d');
        $edit->fecha1->rule = 'required';
        $edit->fecha1->size = 12;
        $edit->fecha1->calendar = false;
        $edit->fecha = new DateonlyField('Fecha Final', 'fecha', 'd/m/Y');
        $edit->fecha->insertValue = date('Y-m-d');
        $edit->fecha->rule = 'required';
        $edit->fecha->size = 12;
        $edit->fecha->append('Si el cierre se saco el mismo d&iacute;a de las ventas la fecha final es igual a la fecha inicial');
        $edit->fecha->calendar = false;
        $edit->hora = new inputField('Hora del cierre', 'hora');
        $edit->hora->size = 8;
        $edit->hora->rule = 'trim|callback_chhora|required';
        $edit->hora->append('hh:mm:ss');
        $edit->hora->rule = 'trim';
        $edit->factura = new inputField('N&uacute;mero de la &uacute;ltima Factura', 'factura');
        $edit->factura->size = 10;
        $edit->factura->maxlength = 8;
        $edit->factura->rule = 'trim|required';
        $edit->factura->append('ULT.FACTURA');
        $edit->ncnumero = new inputField('N&uacute;mero de la &uacute;ltima Nota de Cr&eacute;dito numero', 'ncnumero');
        $edit->ncnumero->size = 10;
        $edit->ncnumero->maxlength = 8;
        $edit->ncnumero->rule = 'trim|required';
        $edit->ncnumero->append('ULT.NOTA.CREDITO');
        $edit->exento = new inputField('Montos de Facturas exentas', 'exento');
        $edit->exento->size = 15;
        $edit->exento->css_class = 'inputnum';
        $edit->exento->maxlength = 12;
        $edit->exento->rule = "trim";
        $edit->exento->group = 'Montos exentos';
        $edit->exento->append('EXENTO');
        $edit->ncexento = new inputField("Monto de notas de Cr&eacute;dito exentas", "ncexento");
        $edit->ncexento->size = 15;
        $edit->ncexento->css_class = 'inputnum';
        $edit->ncexento->maxlength = 12;
        $edit->ncexento->rule = 'trim';
        $edit->ncexento->group = 'Montos exentos';
        $edit->ncexento->append('NC. EXENTO');
        $edit->base = new inputField('Ventas Base imponible', 'base');
        $edit->base->size = 15;
        $edit->base->css_class = 'inputnum';
        $edit->base->maxlength = 12;
        $edit->base->group = 'Seg&uacute;n Alicuota General';
        $edit->base->rule = 'trim';
        $edit->iva = new inputField('Ventas Iva', 'iva');
        $edit->iva->size = 15;
        $edit->iva->css_class = 'inputnum';
        $edit->iva->maxlength = 12;
        $edit->iva->group = 'Seg&uacute;n Alicuota General';
        $edit->iva->rule = 'trim';
        $edit->iva->append('IVA G');
        $edit->base1 = new inputField('Ventas Base imponible', 'base1');
        $edit->base1->size = 15;
        $edit->base1->css_class = 'inputnum';
        $edit->base1->maxlength = 12;
        $edit->base1->group = 'Seg&uacute;n Alicuota Reducida';
        $edit->base1->rule = 'trim';
        $edit->iva1 = new inputField('Ventas Iva', 'iva1');
        $edit->iva1->size = 15;
        $edit->iva1->css_class = 'inputnum';
        $edit->iva1->maxlength = 12;
        $edit->iva1->group = 'Seg&uacute;n Alicuota Reducida';
        $edit->iva1->rule = 'trim';
        $edit->base2 = new inputField('Ventas Base imponible', 'base2');
        $edit->base2->size = 15;
        $edit->base2->css_class = 'inputnum';
        $edit->base2->maxlength = 12;
        $edit->base2->group = 'Seg&uacute;n Alicuota Adicional';
        $edit->base2->rule = 'trim';
        $edit->iva2 = new inputField('Ventas Iva', 'iva2');
        $edit->iva2->size = 15;
        $edit->iva2->css_class = 'inputnum';
        $edit->iva2->maxlength = 12;
        $edit->iva2->group = 'Seg&uacute;n Alicuota Adicional';
        $edit->iva2->rule = 'trim';
        $edit->ncbase = new inputField('Nota de Cr&eacute;dito base imponible', 'ncbase');
        $edit->ncbase->size = 15;
        $edit->ncbase->css_class = 'inputnum';
        $edit->ncbase->maxlength = 12;
        $edit->ncbase->group = 'Seg&uacute;n Alicuota General';
        $edit->ncbase->rule = 'trim';
        $edit->ncbase->append('NC. BI G');
        $edit->ncsiva = new inputField('Nota de Cr&eacute;dito iva', 'nciva');
        $edit->ncsiva->size = 15;
        $edit->ncsiva->css_class = 'inputnum';
        $edit->ncsiva->maxlength = 12;
        $edit->ncsiva->group = 'Seg&uacute;n Alicuota General';
        $edit->ncsiva->rule = 'trim';
        $edit->ncsiva->append('NC. IVA G');
        $edit->ncbase1 = new inputField('Nota de Cr&eacute;dito base imponible', 'ncbase1');
        $edit->ncbase1->size = 15;
        $edit->ncbase1->css_class = 'inputnum';
        $edit->ncbase1->maxlength = 12;
        $edit->ncbase1->group = 'Seg&uacute;n Alicuota Reducida';
        $edit->ncbase1->rule = 'trim';
        $edit->ncsiva1 = new inputField('Nota de Cr&eacute;dito iva', 'nciva1');
        $edit->ncsiva1->size = 15;
        $edit->ncsiva1->css_class = 'inputnum';
        $edit->ncsiva1->maxlength = 12;
        $edit->ncsiva1->group = 'Seg&uacute;n Alicuota Reducida';
        $edit->ncsiva1->rule = "trim";
        $edit->ncbase2 = new inputField('Nota de Cr&eacute;dito base imponible', 'ncbase2');
        $edit->ncbase2->size = 15;
        $edit->ncbase2->css_class = 'inputnum';
        $edit->ncbase2->maxlength = 12;
        $edit->ncbase2->group = 'Seg&uacute;n Alicuota Adicional';
        $edit->ncbase2->rule = "trim";
        $edit->ncsiva2 = new inputField('Nota de Cr&eacute;dito iva', 'nciva2');
        $edit->ncsiva2->size = 15;
        $edit->ncsiva2->css_class = 'inputnum';
        $edit->ncsiva2->maxlength = 12;
        $edit->ncsiva2->group = 'Seg&uacute;n Alicuota Adicional';
        $edit->ncsiva2->rule = 'trim';
        $edit->ncsiva1->append('NC. IVA R');
        $edit->ncsiva2->append('NC. IVA A');
        $edit->ncbase1->append('NC. BI R');
        $edit->ncbase2->append('NC. BI A');
        $edit->iva1->append('IVA R');
        $edit->iva2->append('IVA A');
        $edit->base->append('BI G');
        $edit->base1->append('BI R');
        $edit->base2->append('BI A');
        $edit->manual = new autoUpdateField('manual', 'S', 'S');
        $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;
        }
    }
Example #28
0
 function _actsumi($id, $oper, $status)
 {
     $this->rapyd->load('dataobject');
     $error = "";
     $do = new DataObject("suminr");
     $do->rel_one_to_many('itsuminr', 'itsuminr', array('numero' => 'numero'));
     $do->load($id);
     $caub = $do->get('caub');
     $caube = $this->db->escape($caub);
     $sta = $do->get('sta');
     if ($sta != $status) {
         for ($i = 0; $i < $do->count_rel('itsuminr'); $i++) {
             $codigo = $do->get_rel('itsuminr', 'codigo', $i);
             $cantidad = $do->get_rel('itsuminr', 'cantidad', $i);
             $precio = $do->get_rel('itsuminr', 'precio', $i);
             $cantidad = 1 * $cantidad;
             $codigo = $this->db->escape($codigo);
             $this->db->query("INSERT IGNORE INTO su_itsumi (`codigo`,`alma`) value ({$codigo},{$caube})");
             if (is_numeric($cantidad)) {
                 $this->db->query("UPDATE sumi SET existen=existen {$oper} {$cantidad},pond=pond {$oper} ({$precio}*{$cantidad}) WHERE codigo={$codigo}");
                 $this->db->simple_query("UPDATE su_itsumi SET cantidad=cantidad {$oper} {$cantidad} WHERE codigo={$codigo} AND alma={$caube}");
             } else {
                 $error .= 'La cantidad no es numerica';
             }
             //echo "UPDATE sumi SET existen=existen $oper $cantidad,pond=pond $oper $precio WHERE codigo=$codigo";
             //exit($precio);
         }
         logusu('suminr', "Marco nota de recepcion Nro {$id} como {$status}");
     } else {
         $error .= "No se puede realizar la operacion para la nota de recepcion";
     }
     if (empty($error)) {
         $do->set('status', $status);
         $do->save();
         logusu('suminr', "Marco nota de recepcion Nro {$id} como {$status}");
         redirect($this->url . "/dataedit/show/{$id}");
     } else {
         logusu('sumine', "Marco nota de recepcion Nro {$id} como {$status} . con ERROR:{$error}");
         $data['content'] = $error . anchor($this->url . "/dataedit/show/{$id}", 'Regresar');
         $data['title'] = $this->t**s;
         $data["head"] = $this->rapyd->get_head();
         $this->load->view('view_ventanas', $data);
     }
 }
Example #29
0
 function reversar($id)
 {
     $this->rapyd->load('dataobject');
     $do = new DataObject("odirect");
     $do->rel_one_to_many('itodirect', 'itodirect', array('numero' => 'numero'));
     $do->load($id);
     $sta = $do->get('status');
     if ($sta == 'C') {
         $codigoadm = $do->get('estadmin');
         $fondo = $do->get('fondo');
         $presup = new DataObject("presupuesto");
         $pk = array('codigoadm' => $codigoadm, 'tipo' => $fondo);
         $error = '';
         $tiva = 0;
         for ($i = 0; $i < $do->count_rel('itodirect'); $i++) {
             $codigopres = $do->get_rel('itodirect', 'partida', $i);
             $importe = $do->get_rel('itodirect', 'importe', $i);
             $iva = $do->get_rel('itodirect', 'iva', $i);
             $m = $importe * (($iva + 100) / 100) - $importe;
             $tiva += $m;
             $mont = $importe;
             $pk['codigopres'] = $codigopres;
             $presup->load($pk);
             $comprometido = $presup->get("comprometido");
             $causado = $presup->get("causado");
             $opago = $presup->get("opago");
             $pagado = $presup->get("pagado");
             $comprometido -= $mont;
             $causado -= $mont;
             $opago -= $mont;
             $pagado -= $mont;
             $presup->set("comprometido", $comprometido);
             $presup->set("causado", $causado);
             $presup->set("opago", $opago);
             $presup->set("pagado", $pagado);
             $presup->save();
         }
         $partidaiva = $this->datasis->traevalor("PARTIDAIVA");
         $pk['codigopres'] = $partidaiva;
         $presup->load($pk);
         $comprometido = $presup->get("comprometido");
         $causado = $presup->get("causado");
         $opago = $presup->get("opago");
         $pagado = $presup->get("pagado");
         $comprometido -= $tiva;
         $causado -= $tiva;
         $opago -= $tiva;
         $pagado -= $tiva;
         $presup->set("comprometido", $comprometido);
         $presup->set("causado", $causado);
         $presup->set("opago", $opago);
         $presup->set("pagado", $pagado);
         $presup->save();
         $do->set('status', 'P');
         $do->save();
     }
     redirect($this->url . "/dataedit/show/{$id}");
 }
Example #30
0
 function reversar($id)
 {
     $this->rapyd->load('dataobject');
     $do = new DataObject("pmov");
     $do->rel_one_to_many('itpmov', 'itpmov', array('numero' => 'numero'));
     $do->load($id);
     $codigoadm = $do->get('estadmin');
     $fondo = $do->get('fondo');
     $presup = new DataObject("presupuesto");
     $pk = array('codigoadm' => $codigoadm, 'tipo' => $fondo);
     $error = '';
     $tot = 0;
     $sta = $do->get('status');
     if ($sta == "T") {
         for ($i = 0; $i < $do->count_rel('itpmov'); $i++) {
             $codigopres = $do->get_rel('itpmov', 'partida', $i);
             $monto = $do->get_rel('itpmov', 'monto', $i);
             $tot += $monto;
             $pk['codigopres'] = $codigopres;
             $presup->load($pk);
             $recibido = $presup->get("recibido");
             if ($recibido < 0) {
                 $error .= "<div class='alert'><p>partida ({$codigopre}):El monto debe ser positivo</p></div>";
             }
         }
         if (empty($error)) {
             $tot = 0;
             for ($i = 0; $i < $do->count_rel('itpmov'); $i++) {
                 $codigopres = $do->get_rel('itpmov', 'partida', $i);
                 $monto = $do->get_rel('itpmov', 'monto', $i);
                 $tot += $monto;
                 $pk['codigopres'] = $codigopres;
                 $presup->load($pk);
                 $recibido = $presup->get("recibido");
                 $recibido -= $monto;
                 $presup->set("recibido", $recibido);
                 $presup->save();
             }
             $do->set('status', 'C');
             $do->save();
         }
     }
     if (empty($error)) {
         redirect($this->url . "/dataedit/show/{$id}");
     } else {
         $data['content'] = $error . anchor($this->url . "/dataedit/show/{$id}", 'Regresar');
         $data['title'] = " {$this->t**s} ";
         $data["head"] = $this->rapyd->get_head() . script('jquery.js') . script("plugins/jquery.numeric.pack.js");
         $this->load->view('view_ventanas', $data);
     }
 }