function actualizar($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('itfac', 'itfac', array('numero' => 'numero')); //$odirect -> rel_one_to_many('islr', 'islr', array('numero'=>'odirect')); //$odirect->pointer('sprv' ,'sprv.proveed = odirect.cod_prov','sprv.nomfis as nom_prov, sprv.rif as rif_prov','LEFT'); $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"); $presupante = new DataObject("presupuestoante"); $ordinalante = new DataObject("ordinalante"); //$islr = new DataObject("islr"); $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 == "E1") { $mbanc->set('status', 'E2'); $m_benefi = $mbanc->get('benefi'); $t = 0; if (empty($error)) { $tislr = 0; for ($j = 0; $j < $mbanc->count_rel('itppro'); $j++) { $orden = $mbanc->get_rel('itppro', 'orden', $j); $it_monto = $mbanc->get_rel('itppro', 'monto', $j); // echo $orden; $odirect->load($orden); //$odirect->load_where('numero',$orden); // print_r($odirect->get_all()); //exit(); $status = $odirect->get('status'); $od_numero = $odirect->get('numero'); $od_estadmin = $odirect->get('estadmin'); $od_fondo = $odirect->get('fondo'); $od_subtotal = $odirect->get('subtotal'); $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_fechafac = $odirect->get('fechafac'); $od_cod_prov = $odirect->get('cod_prov'); $od_creten = $odirect->get('creten'); $od_multiple = $odirect->get('multiple'); $od_pr = $od_reten * 100 / $od_subtotal; //echo $od_numero; //exit($status); echo $status . "----"; if ($status == "F2") { echo "F2"; 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); //echo $p_compra; $ocompra->load($p_compra); // print_r($ocompra->get_all()); //exit(); $oc_codigoadm = $ocompra->get('estadmin'); $oc_fondo = $ocompra->get('fondo'); $oc_status = $ocompra->get('status'); $oc_cod_prov = $ocompra->get('cod_prov'); $oc_creten = $ocompra->get('creten'); $oc_fechafac = $ocompra->get('fechafac'); //echo "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 = $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; //echo $pagado; $ivaa = $ocompra->get('ivaa'); $ivag = $ocompra->get('ivag'); $ivar = $ocompra->get('ivar'); $subtotal = $ocompra->get('subtotal'); $reteiva = $ocompra->get('reteiva'); $impmunicipal = $ocompra->get('imptimbre'); $imptimbre = $ocompra->get('impmunicipal'); $tislr = $reten = $ocompra->get('reten'); $ivan = $ivag + $ivar + $ivaa; //$total = ($subtotal - $reten)+($ivan-($reteiva))-$impmunicipal -$imptimbre; echo $total = $ocompra->get('total'); //exit(); //$pr = $reten*100/$subtotal; echo $total . "AAAAAAAAAAAAAAAAASSSSSSSSSSSSSSSSSSSSDFDDDDDDDDDDDDDDDdd"; if ($total) { //==$pagado // echo "entro"; $pk = array('codigoadm' => $oc_codigoadm, 'tipo' => $oc_fondo); $partidaiva = $this->datasis->traevalor("PARTIDAIVA"); $pk['codigopres'] = $partidaiva; $presup->load($pk); $pasignacion = $presup->get("asignacion"); for ($h = 0; $h < $odirect->count_rel('pacom'); $h++) { $p_compra = $odirect->get_rel('pacom', 'compra', $h); echo $p_compra . "-----"; $ocompra->load($p_compra); $oc_codigoadm = $ocompra->get('estadmin'); $oc_fondo = $ocompra->get('fondo'); $reteiva_prov = $ocompra->get('reteiva_prov'); for ($k = 0; $k < $ocompra->count_rel('itocompra'); $k++) { $islrid = ''; $codigopres = $ocompra->get_rel('itocompra', 'partida', $k); $importe = $ocompra->get_rel('itocompra', 'importe', $k); $iva = $ocompra->get_rel('itocompra', 'iva', $k); $ordinal = $ocompra->get_rel('itocompra', 'ordinal', $k); //$islr = $ocompra->get_rel('itocompra','islr' ,$k); //$imptimbre = $ocompra->get_rel('itocompra','imptimbre',$k); //$impmunicipal= $ocompra->get_rel('itocompra','impmunicipal',$k); if ($pasignacion > 0) { $mont = $importe; } else { $mont = $importe + ($importe * $iva / 100 - $importe * $iva / 100 * $reteiva_prov / 100); } //-$islr-$imptimbre-$impmunicipal; $pk = array('codigoadm' => $oc_codigoadm, 'tipo' => $oc_fondo, 'codigopres' => $codigopres); echo "***" . $mont; $presup->load($pk); print_r($presup->get_all()); $pagado = $presup->get("pagado"); $pagado = $pagado + $mont; $presup->set("pagado", $pagado); $presup->save(); if (!empty($ordinal)) { $arr = array("codigoadm" => $oc_codigoadm, "fondo" => $oc_fondo, "codigopres" => $codigopres, "ordinal" => $ordinal); //print_r($arr); $ord->load($arr); print_r($ord->get_all()); $pag = $ord->get("pagado"); $pag += $mont; $ord->set("pagado", $pag); $ord->save(); } } $ii = $ivan - $reteiva; if ($pasignacion > 0) { $pk['codigopres'] = $partidaiva; $presup->load($pk); $pagado = $presup->get("pagado"); $pagado += $ii; $presup->set("pagado", $pagado); $presup->save(); } $this->sp_presucalc($oc_codigoadm); if ($reteiva > 0) { $riva = new dataobject("riva"); //$riva->load_where('ocompra',$p_compra); $prov = $this->datasis->damerow("SELECT nombre,rif FROM sprv WHERE proveed = '" . $ocompra->get('cod_prov') . "'"); $riva->set('ocompra', $p_compra); $riva->set('odirect', $od_numero); $riva->set('emision', date('Ymd')); $riva->set('periodo', date('Ym')); $riva->set('tipo_doc', ''); $riva->set('fecha', date('Ymd')); $riva->set('numero', $ocompra->get('factura')); $riva->set('ffactura', $ocompra->get('fechafac')); $riva->set('nfiscal', $ocompra->get('controlfac')); $riva->set('clipro', $ocompra->get('cod_prov')); $riva->set('nombre', $prov['nombre']); $riva->set('rif', $prov['rif']); $riva->set('exento', $ocompra->get('exento')); $riva->set('tasa', $ocompra->get('tivag')); $riva->set('general', $ocompra->get('mivag')); $riva->set('geneimpu', $ocompra->get('ivag')); $riva->set('tasaadic', $ocompra->get('tivaa')); $riva->set('adicional', $ocompra->get('mivag')); $riva->set('adicimpu', $ocompra->get('ivaa')); $riva->set('tasaredu', $ocompra->get('tivar')); $riva->set('reducida', $ocompra->get('mivar')); $riva->set('reduimpu', $ocompra->get('ivar')); $riva->set('stotal', $ocompra->get('subtotal')); $riva->set('impuesto', $ocompra->get('ivag') + $ocompra->get('ivar') + $ocompra->get('ivaa')); $riva->set('gtotal', $ocompra->get('ivag') + $ocompra->get('ivar') + $ocompra->get('ivaa') + $ocompra->get('subtotal')); $riva->set('reiva', $ocompra->get('reteiva')); $riva->set('status', 'B'); $riva->set('banc', $banc->get('banco')); $riva->set('numcuent', $banc->get('numcuent')); $riva->set('codbanc', $banc->get('codbanc')); $riva->set('odirect', $od_numero); $riva->set('mbanc', $id); $riva->set('reteiva_prov', $ocompra->get('reteiva_prov')); $riva->save(); } } $ocompra->set('status', 'E'); $ocompra->save(); //$this->db->simple_query("UPDATE ocompra SET status = 'E' WHERE numero = $ "); //$ocompra->save(); } //exit('aaaa'); $odirect->set('status', 'F3'); $odirect->save(); } $odirect->save(); } elseif ($status == "B2") { echo "B2" . $orden . "---"; $ivaa = $od_ivaa; $ivag = $od_ivag; $ivar = $od_ivar; $subtotal = $od_subtotal; $reteiva = $od_reteiva; $tislr = $reten = $od_reten; $ivan = $ivag + $ivar + $ivaa; $total = $subtotal - $reten + ($ivan - $reteiva); $pr = $reten * 100 / $subtotal; $pk = array('codigoadm' => $od_estadmin, 'tipo' => $od_fondo); $partidaiva = $this->datasis->traevalor("PARTIDAIVA"); $pk['codigopres'] = $partidaiva; $presup->load($pk); $pasignacion = $presup->get("asignacion"); $reteiva_prov = $odirect->get('reteiva_prov'); for ($g = 0; $g < $odirect->count_rel('itodirect'); $g++) { $islrid = ''; $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); $ordinal = $odirect->get_rel('itodirect', 'ordinal', $g); $i_islr = $importe * $od_pr / 100; if ($pasignacion > 0) { $mont = $importe; } else { $mont = $importe + ($importe * $iva / 100 - $importe * $iva / 100 * $reteiva_prov / 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($ordinal); $opa = $ord->get("pagado"); $opa += $mont - $i_islr; $ord->set("pagado", $opa); $ord->save(); } //exit('cafe'); //if($status == "B2"){ // // $islr = new DataObject("islr"); // if(!empty($islrid)) // $islr->load($islrid); // // $islr->set('estadmin' , $od_estadmin ); // $islr->set('fondo' , $od_fondo ); // $islr->set('partida' , $codigopres ); // $islr->set('codprov' , $od_cod_prov ); // $islr->set('fechafac' , $od_fechafac ); // $islr->set('benefi' , $m_benefi ); // $islr->set('porcen' , $pr ); // //$islr->set('sustraendo' , ); // $islr->set('islr' , $i_islr ); // $islr->set('fecha' , date('Ymd') ); // $islr->set('creten' , $od_creten ); // $islr->set('odirect' , $islrid ); // $islr->set('status' , 'B' ); // $islr->save(); // $islrid = $islr->get('id'); // // $odirect->set_rel('itodirect','islrid',$islrid ,$g); // //} } if ($status == 'I2') { $odirect->set('status', 'I3'); } if ($status == "B2") { $prov = $this->datasis->damerow("SELECT nombre,rif FROM sprv WHERE proveed = '" . $odirect->get('cod_prov') . "'"); if ($odirect->get('reteiva') > 0) { if ($odirect->get('multiple') == 'N') { $reteiva = $odirect->get('reteiva'); if ($reteiva > 0) { //$riva->load_where('odirect',$od_numero); $riva->set('odirect', $od_numero); $riva->set('emision', date('Ymd')); $riva->set('periodo', date('Ym')); $riva->set('tipo_doc', ''); $riva->set('fecha', date('Ymd')); $riva->set('numero', $odirect->get('factura')); $riva->set('ffactura', $odirect->get('fechafac')); $riva->set('nfiscal', $odirect->get('controlfac')); $riva->set('clipro', $odirect->get('cod_prov')); $riva->set('nombre', $prov['nombre']); $riva->set('rif', $prov['rif']); $riva->set('exento', $odirect->get('exento')); $riva->set('tasa', $odirect->get('tivag')); $riva->set('general', $odirect->get('mivag')); $riva->set('geneimpu', $odirect->get('ivag')); $riva->set('tasaadic', $odirect->get('tivaa')); $riva->set('adicional', $odirect->get('mivag')); $riva->set('adicimpu', $odirect->get('ivaa')); $riva->set('tasaredu', $odirect->get('tivar')); $riva->set('reducida', $odirect->get('mivar')); $riva->set('reduimpu', $odirect->get('ivar')); $riva->set('stotal', $odirect->get('subtotal')); $riva->set('impuesto', $odirect->get('ivag') + $odirect->get('ivar') + $odirect->get('ivaa')); $riva->set('gtotal', $odirect->get('ivag') + $odirect->get('ivar') + $odirect->get('ivaa') + $odirect->get('subtotal')); $riva->set('reiva', $odirect->get('reteiva')); $riva->set('status', 'B'); $riva->set('mbanc', $id); $riva->set('reteiva_prov', $odirect->get('reteiva_prov')); $riva->set('banc', $banc->get('banco')); $riva->set('numcuent', $banc->get('numcuent')); $riva->set('codbanc', $banc->get('codbanc')); $riva->save(); } } elseif ($odirect->get('multiple') == 'S') { for ($l = 0; $l < $odirect->count_rel('itfac'); $l++) { //echo "----"; echo $iditfac = $odirect->get_rel('itfac', 'id', $l); //echo "----"; $reteiva = $odirect->get_rel('itfac', 'reteiva'); if ($reteiva > 0) { $riva = new DataObject('riva'); //$riva->load_where('itfac',$iditfac); //print_r($riva->get_all()); $riva->set('odirect', $od_numero); $riva->set('itfac', $iditfac); $riva->set('emision', date('Ymd')); $riva->set('periodo', date('Ym')); $riva->set('tipo_doc', ''); $riva->set('fecha', date('Ymd')); $riva->set('numero', $odirect->get_rel('itfac', 'factura', $l)); $riva->set('ffactura', $odirect->get_rel('itfac', 'fechafac', $l)); $riva->set('nfiscal', $odirect->get_rel('itfac', 'controlfac', $l)); $riva->set('clipro', $odirect->get('cod_prov')); $riva->set('nombre', $prov['nombre']); $riva->set('rif', $prov['rif']); $riva->set('exento', $odirect->get_rel('itfac', 'exento', $l)); $riva->set('tasa', $odirect->get('tivag')); $riva->set('general', $odirect->get_rel('itfac', 'ivag', $l) * 100 / $odirect->get('tivag')); $riva->set('geneimpu', $odirect->get_rel('itfac', 'ivag', $l)); $riva->set('tasaadic', $odirect->get('tivaa')); $riva->set('adicional', $odirect->get_rel('itfac', 'ivaa', $l) * 100 / $odirect->get('tivaa')); $riva->set('adicimpu', $odirect->get_rel('itfac', 'ivaa', $l)); $riva->set('tasaredu', $odirect->get('tivar')); $riva->set('reducida', $odirect->get_rel('itfac', 'ivar', $l) * 100 / $odirect->get('tivar')); $riva->set('reduimpu', $odirect->get_rel('itfac', 'ivar', $l)); $riva->set('stotal', $odirect->get_rel('itfac', 'subtotal', $l)); $riva->set('impuesto', $odirect->get_rel('itfac', 'ivag', $l) + $odirect->get_rel('itfac', 'ivar', $l) + $odirect->get_rel('itfac', 'ivaa', $l)); $riva->set('gtotal', $odirect->get_rel('itfac', 'ivag', $l) + $odirect->get_rel('itfac', 'ivar', $l) + $odirect->get_rel('itfac', 'ivaa', $l) + $odirect->get_rel('itfac', 'subtotal', $l)); $riva->set('reiva', $odirect->get_rel('itfac', 'reteiva', $l)); $riva->set('status', 'B'); $riva->set('mbanc', $id); $riva->set('reteiva_prov', $odirect->get('reteiva_prov')); $riva->set('banc', $banc->get('banco')); $riva->set('numcuent', $banc->get('numcuent')); $riva->set('codbanc', $banc->get('codbanc')); $riva->save(); } } //echo $odirect->get('multiple'); //echo $odirect->get('reteiva'); //exit('-----'); } } } $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', 'B3'); $this->sp_presucalc($od_estadmin); $odirect->save(); } elseif ($status == "N2") { echo "N2"; $ivaa = $od_ivaa; $ivag = $od_ivag; $ivar = $od_ivar; $subtotal = $od_subtotal; $reteiva = $od_reteiva; $tislr = $reten = $od_reten; $ivan = $ivag + $ivar + $ivaa; $total = $subtotal - $reten + ($ivan - $reteiva); $pr = $reten * 100 / $subtotal; $pk = array('codigoadm' => $od_estadmin, 'tipo' => $od_fondo); $partidaiva = $this->datasis->traevalor("PARTIDAIVA"); $pk['codigopres'] = $partidaiva; $presupante->load($pk); $pasignacion = $presupante->get("asignacion"); $reteiva_prov = $odirect->get('reteiva_prov'); for ($g = 0; $g < $odirect->count_rel('itodirect'); $g++) { $islrid = ''; $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); $ordinal = $odirect->get_rel('itodirect', 'ordinal', $g); $i_islr = $importe * $od_pr / 100; if ($pasignacion > 0) { $mont = $importe; } else { $mont = $importe + ($importe * $iva / 100 - $importe * $iva / 100 * $reteiva_prov / 100); } $pk['codigopres'] = $codigopres; $presupante->load($pk); $pagado = $presupante->get("pagado"); $pagado = $pagado + ($mont - $i_islr); $presupante->set("pagado", $pagado); $presupante->save(); if (!empty($ordinal)) { $ordinalante->load(array("codigoadm" => $od_estadmin, "fondo" => $od_fondo, "codigopres" => $codigopres, "ordinal" => $ordinal)); print_r($ordinal); $opa = $ordinalante->get("pagado"); $opa += $mont - $i_islr; $ordinalante->set("pagado", $opa); $ordinalante->save(); } $reteiva = $odirect->get('reteiva'); if ($reteiva > 0) { //$riva->load_where('odirect',$od_numero); $riva->set('odirect', $od_numero); $riva->set('emision', date('Ymd')); $riva->set('periodo', date('Ym')); $riva->set('tipo_doc', ''); $riva->set('fecha', date('Ymd')); $riva->set('numero', $odirect->get('factura')); $riva->set('ffactura', $odirect->get('fechafac')); $riva->set('nfiscal', $odirect->get('controlfac')); $riva->set('clipro', $odirect->get('cod_prov')); $riva->set('nombre', $prov['nombre']); $riva->set('rif', $prov['rif']); $riva->set('exento', $odirect->get('exento')); $riva->set('tasa', $odirect->get('tivag')); $riva->set('general', $odirect->get('mivag')); $riva->set('geneimpu', $odirect->get('ivag')); $riva->set('tasaadic', $odirect->get('tivaa')); $riva->set('adicional', $odirect->get('mivag')); $riva->set('adicimpu', $odirect->get('ivaa')); $riva->set('tasaredu', $odirect->get('tivar')); $riva->set('reducida', $odirect->get('mivar')); $riva->set('reduimpu', $odirect->get('ivar')); $riva->set('stotal', $odirect->get('subtotal')); $riva->set('impuesto', $odirect->get('ivag') + $odirect->get('ivar') + $odirect->get('ivaa')); $riva->set('gtotal', $odirect->get('ivag') + $odirect->get('ivar') + $odirect->get('ivaa') + $odirect->get('subtotal')); $riva->set('reiva', $odirect->get('reteiva')); $riva->set('status', 'B'); $riva->set('mbanc', $id); $riva->set('reteiva_prov', $odirect->get('reteiva_prov')); $riva->set('banc', $banc->get('banco')); $riva->set('numcuent', $banc->get('numcuent')); $riva->set('codbanc', $banc->get('codbanc')); $riva->save(); } //exit('cafe'); //if($status == "B2"){ // // $islr = new DataObject("islr"); // if(!empty($islrid)) // $islr->load($islrid); // // $islr->set('estadmin' , $od_estadmin ); // $islr->set('fondo' , $od_fondo ); // $islr->set('partida' , $codigopres ); // $islr->set('codprov' , $od_cod_prov ); // $islr->set('fechafac' , $od_fechafac ); // $islr->set('benefi' , $m_benefi ); // $islr->set('porcen' , $pr ); // //$islr->set('sustraendo' , ); // $islr->set('islr' , $i_islr ); // $islr->set('fecha' , date('Ymd') ); // $islr->set('creten' , $od_creten ); // $islr->set('odirect' , $islrid ); // $islr->set('status' , 'B' ); // $islr->save(); // $islrid = $islr->get('id'); // // $odirect->set_rel('itodirect','islrid',$islrid ,$g); // //} } if ($status == "B2") { $prov = $this->datasis->damerow("SELECT nombre,rif FROM sprv WHERE proveed = '" . $odirect->get('cod_prov') . "'"); if ($odirect->get('reteiva') > 0) { if ($odirect->get('multiple') == 'N') { $reteiva = $odirect->get('reteiva'); if ($reteiva > 0) { //$riva->load_where('odirect',$od_numero); $riva->set('odirect', $od_numero); $riva->set('emision', date('Ymd')); $riva->set('periodo', date('Ym')); $riva->set('tipo_doc', ''); $riva->set('fecha', date('Ymd')); $riva->set('numero', $odirect->get('factura')); $riva->set('ffactura', $odirect->get('fechafac')); $riva->set('nfiscal', $odirect->get('controlfac')); $riva->set('clipro', $odirect->get('cod_prov')); $riva->set('nombre', $prov['nombre']); $riva->set('rif', $prov['rif']); $riva->set('exento', $odirect->get('exento')); $riva->set('tasa', $odirect->get('tivag')); $riva->set('general', $odirect->get('mivag')); $riva->set('geneimpu', $odirect->get('ivag')); $riva->set('tasaadic', $odirect->get('tivaa')); $riva->set('adicional', $odirect->get('mivag')); $riva->set('adicimpu', $odirect->get('ivaa')); $riva->set('tasaredu', $odirect->get('tivar')); $riva->set('reducida', $odirect->get('mivar')); $riva->set('reduimpu', $odirect->get('ivar')); $riva->set('stotal', $odirect->get('subtotal')); $riva->set('impuesto', $odirect->get('ivag') + $odirect->get('ivar') + $odirect->get('ivaa')); $riva->set('gtotal', $odirect->get('ivag') + $odirect->get('ivar') + $odirect->get('ivaa') + $odirect->get('subtotal')); $riva->set('reiva', $odirect->get('reteiva')); $riva->set('status', 'B'); $riva->set('mbanc', $id); $riva->set('reteiva_prov', $odirect->get('reteiva_prov')); $riva->set('banc', $banc->get('banco')); $riva->set('numcuent', $banc->get('numcuent')); $riva->set('codbanc', $banc->get('codbanc')); $riva->save(); } } elseif ($odirect->get('multiple') == 'S') { for ($l = 0; $l < $odirect->count_rel('itfac'); $l++) { //echo "----"; echo $iditfac = $odirect->get_rel('itfac', 'id', $l); //echo "----"; $reteiva = $odirect->get_rel('itfac', 'reteiva'); if ($reteiva > 0) { $riva = new DataObject('riva'); //$riva->load_where('itfac',$iditfac); //print_r($riva->get_all()); $riva->set('odirect', $od_numero); $riva->set('itfac', $iditfac); $riva->set('emision', date('Ymd')); $riva->set('periodo', date('Ym')); $riva->set('tipo_doc', ''); $riva->set('fecha', date('Ymd')); $riva->set('numero', $odirect->get_rel('itfac', 'factura', $l)); $riva->set('ffactura', $odirect->get_rel('itfac', 'fechafac', $l)); $riva->set('nfiscal', $odirect->get_rel('itfac', 'controlfac', $l)); $riva->set('clipro', $odirect->get('cod_prov')); $riva->set('nombre', $prov['nombre']); $riva->set('rif', $prov['rif']); $riva->set('exento', $odirect->get_rel('itfac', 'exento', $l)); $riva->set('tasa', $odirect->get('tivag')); $riva->set('general', $odirect->get_rel('itfac', 'ivag', $l) * 100 / $odirect->get('tivag')); $riva->set('geneimpu', $odirect->get_rel('itfac', 'ivag', $l)); $riva->set('tasaadic', $odirect->get('tivaa')); $riva->set('adicional', $odirect->get_rel('itfac', 'ivaa', $l) * 100 / $odirect->get('tivaa')); $riva->set('adicimpu', $odirect->get_rel('itfac', 'ivaa', $l)); $riva->set('tasaredu', $odirect->get('tivar')); $riva->set('reducida', $odirect->get_rel('itfac', 'ivar', $l) * 100 / $odirect->get('tivar')); $riva->set('reduimpu', $odirect->get_rel('itfac', 'ivar', $l)); $riva->set('stotal', $odirect->get_rel('itfac', 'subtotal', $l)); $riva->set('impuesto', $odirect->get_rel('itfac', 'ivag', $l) + $odirect->get_rel('itfac', 'ivar', $l) + $odirect->get_rel('itfac', 'ivaa', $l)); $riva->set('gtotal', $odirect->get_rel('itfac', 'ivag', $l) + $odirect->get_rel('itfac', 'ivar', $l) + $odirect->get_rel('itfac', 'ivaa', $l) + $odirect->get_rel('itfac', 'subtotal', $l)); $riva->set('reiva', $odirect->get_rel('itfac', 'reteiva')); $riva->set('status', 'B'); $riva->set('mbanc', $id); $riva->set('reteiva_prov', $odirect->get('reteiva_prov')); $riva->set('banc', $banc->get('banco')); $riva->set('numcuent', $banc->get('numcuent')); $riva->set('codbanc', $banc->get('codbanc')); $riva->save(); } } //echo $odirect->get('multiple'); //echo $odirect->get('reteiva'); //exit('-----'); } } } $ii = $od_ivaa + $od_ivag + $od_ivar - $od_reteiva; if ($pasignacion > 0) { $pk['codigopres'] = $partidaiva; $presupante->load($pk); $pagado = $presupante->get("pagado"); $pagado += $ii; $presupante->set("pagado", $pagado); $presupante->save(); } $odirect->set('status', 'N3'); $this->sp_presucalc($od_estadmin); $odirect->save(); } elseif ($status == "I2") { if ($status == 'I2') { $odirect->set('status', 'I3'); } $odirect->save(); } elseif ($status == "M2") { if ($status == 'M2') { $odirect->set('status', 'M3'); } $odirect->save(); } elseif ($status == 'S2') { echo "S2"; $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(); $this->sp_presucalc($od_estadmin); $codigopres = $odirect->set_rel('islr', 'status', 'C', $g); } $odirect->set('status', 'S3'); $odirect->save(); } elseif ($status == 'R2') { echo "R2"; $odirect->set('status', 'R3'); $odirect->save(); } elseif ($status == 'G2') { echo "G2"; $odirect->set('status', 'G3'); $odirect->save(); } elseif ($status == 'H2') { $odirect->set('status', 'H3'); $odirect->save(); } elseif ($status == 'O2') { $obr = $odirect->get('obr'); $iva = $odirect->get('iva'); $total2 = $odirect->get('total2'); $amortiza = $odirect->get('amortiza'); $obra = new DataObject("obra"); $obra->load($obr); $codigoadm = $obra->get('codigoadm'); $fondo = $obra->get('fondo'); $codigopres = $obra->get('codigopres'); $ordinal = $obra->get('ordinal'); $mont = $total2 - $amortiza; if (empty($error)) { if (!empty($ordinal)) { $pk = array("codigoadm" => $codigoadm, "fondo" => $fondo, "codigopres" => $codigopres, "ordinal" => $ordinal); $ord->load($pk); $pag = $ord->get("pagado"); $pag += $mont; $ord->set("pagado", $pag); $ord->save(); } else { $pk = array("codigoadm" => $codigoadm, "tipo" => $fondo, "codigopres" => $codigopres); $presup->load($pk); $pag = $presup->get("pagado"); $pag += $mont; $presup->set("pagado", $pag); $presup->save(); } if ($odirect->get('reteiva') > 0) { $prov = $this->datasis->damerow("SELECT nombre,rif FROM sprv WHERE proveed = '" . $odirect->get('cod_prov') . "'"); //$riva->load_where('odirect',$od_numero); $riva->set('odirect', $od_numero); $riva->set('emision', date('Ymd')); $riva->set('periodo', date('Ym')); $riva->set('tipo_doc', 'FC'); $riva->set('fecha', date('Ymd')); $riva->set('numero', $odirect->get('factura')); $riva->set('ffactura', $odirect->get('fechafac')); $riva->set('nfiscal', $odirect->get('controlfac')); $riva->set('clipro', $odirect->get('cod_prov')); $riva->set('nombre', $prov['nombre']); $riva->set('rif', $prov['rif']); $riva->set('exento', $odirect->get('exento')); $riva->set('tasa', $odirect->get('tivag')); $riva->set('general', $odirect->get('mivag')); $riva->set('geneimpu', $odirect->get('ivag')); $riva->set('tasaadic', $odirect->get('tivaa')); $riva->set('adicional', $odirect->get('mivag')); $riva->set('adicimpu', $odirect->get('ivaa')); $riva->set('tasaredu', $odirect->get('tivar')); $riva->set('reducida', $odirect->get('mivar')); $riva->set('reduimpu', $odirect->get('ivar')); $riva->set('stotal', $odirect->get('subtotal')); $riva->set('impuesto', $odirect->get('ivag') + $odirect->get('ivar') + $odirect->get('ivaa')); $riva->set('gtotal', $odirect->get('ivag') + $odirect->get('ivar') + $odirect->get('ivaa') + $odirect->get('subtotal')); $riva->set('reiva', $odirect->get('reteiva')); $riva->set('status', 'B'); $riva->set('mbanc', $id); $riva->set('reteiva_prov', $odirect->get('reteiva_prov')); $riva->set('banc', $banc->get('banco')); $riva->set('numcuent', $banc->get('numcuent')); $riva->set('codbanc', $banc->get('codbanc')); $riva->save(); } } $odirect->set('status', 'O3'); $odirect->save(); } else { $error .= "<div class='alert'><p>N se puede realizar la operacion para la orden de pago ({$od_numero})</p></div>"; } } $islrid = $mbanc->get('islrid'); $islr = new DataObject("islr"); if (!empty($islrid)) { $islr->load($islrid); } if (date('d') > 15) { $q = '02'; } else { $q = '01'; } $islr->set('emision', date('Ymd')); $islr->set('periodo', $q . date('m')); $islr->set('clipro', $od_cod_prov); $islr->set('total', $tislr); $islr->set('status', 'B'); $islr->save(); $islrid = $islr->get('nrocomp'); $mbanc->set('islrid', $islrid); } 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', 'E2'); $mbanc->save(); $saldo -= $m_monto; $banc->set('saldo', $saldo); $banc->save(); logusu('ppro', "Actualizo movimiento Nro {$id}"); redirect($this->url . "dataedit/show/{$id}"); } else { logusu('ppro', "Actualizo movimiento Nro {$id}"); $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); } }
function riva($ocompra = '', $odirect, $itfact = '', $numero, $nfiscal, $ffactura, $clipro, $exento, $tasa, $general, $tasaadic, $adicional, $tasaredu, $reducida, $reiva, $codbanc, $mbanc, $reteiva_prov, $mbanc) { $this->rapyd->load('dataobject'); $riva = new dataobject("riva"); $clipro2 = $this->db->escape($clipro); $codbanc2 = $this->db->escape($codbanc); $sprv = $this->datasis->damerow("SELECT nombre,rif FROM sprv WHERE proveed = {$clipro2} "); $banc = $this->datasis->damerow("SELECT banco,numcuent FROM banc WHERE codbanc = {$codbanc2}"); $geneimpu = $general * $tasa / 1100; $adicimpu = $tasaadic * $adicional / 100; $reduimpu = $tasaredu * $reducida / 100; $riva->set('ocompra', $ocompra); $riva->set('odirect', $odirect); $riva->set('itfac', $itfac); $riva->set('emision', date('Ymd')); $riva->set('periodo', date('Ym')); $riva->set('tipo_doc', 'FC'); $riva->set('fecha', date('Ymd')); $riva->set('numero', $numero); $riva->set('ffactura', $ffactura); $riva->set('nfiscal', $nfiscal); $riva->set('clipro', $clipro); $riva->set('nombre', $sprv['nombre']); $riva->set('rif', $sprv['rif']); $riva->set('exento', $exento); $riva->set('tasa', $tasa); $riva->set('general', $general); $riva->set('geneimpu', $geneimpu); $riva->set('tasaadic', $tasaadic); $riva->set('adicional', $adicional); $riva->set('adicimpu', $adicimpu); $riva->set('tasaredu', $tasaredu); $riva->set('reducida', $reducida); $riva->set('reduimpu', $reduimpu); $riva->set('stotal', $general + $adicional + $reducida); $riva->set('impuesto', $geneimpu + $adicimpu + $reduimpu); $riva->set('gtotal', $general + $adicional + $reducida + $geneimpu + $adicimpu + $reduimpu); $riva->set('reiva', $reiva); $riva->set('status', 'B'); $riva->set('banc', $banc['banco']); $riva->set('numcuent', $banc['numcuent']); $riva->set('codbanc', $codbanc); $riva->set('mbanc', $mbanc); $riva->set('reteiva_prov', $reteiva_prov); $riva->save(); }
function riva($nriva, $codigoadm = '', $fondo = '', $ocompra = '', $odirect, $itfact = '', $numero, $nfiscal, $ffactura, $clipro, $exento, $tasa, $general, $tasaadic, $adicional, $tasaredu, $reducida, $reiva, $codbanc, $mbanc, $reteiva_prov, $rendi = '', $geneimpu = null, $adicimpu = null, $reduimpu = null) { $this->rapyd->load('dataobject'); $riva = new dataobject("riva"); $clipro2 = $this->db->escape($clipro); //$codbanc2= $this->db->escape($codbanc); $sprv = $this->datasis->damerow("SELECT nombre,rif FROM sprv WHERE proveed = {$clipro2} "); //$banc = $this->datasis->damerow("SELECT banco,numcuent FROM banc WHERE codbanc = $codbanc2"); $nro = $this->datasis->dameval("SELECT nrocomp FROM riva WHERE numero='{$numero}' AND nfiscal='{$nfiscal}' AND status='B' AND clipro='{$clipro}' and LENGTH(numero)>0 AND odirect<>'{$odirect}'"); if ($nro > 0) { return "<div class ='alert'>Ya existe una retencion activa ({$nro}) para el proveedor" . $sprv['nombre'] . " y factura {$numero} control {$nfiscal}</div>"; } if (!$geneimpu) { $geneimpu = round($general * $tasa / 100, 2); } if (!$adicimpu) { $adicimpu = round($tasaadic * $adicional / 100, 2); } if (!$reduimpu) { $reduimpu = round($tasaredu * $reducida / 100, 2); } $riva->set('nrocomp', $nriva); $riva->set('codigoadm', $codigoadm); $riva->set('fondo', $fondo); $riva->set('ocompra', $ocompra); $riva->set('odirect', $odirect); $riva->set('itfac', $itfact); $riva->set('rendi', $rendi); $riva->set('emision', date('Ymd')); $riva->set('periodo', date('Ym')); $riva->set('tipo_doc', 'FC'); $riva->set('fecha', date('Ymd')); $riva->set('numero', $numero); $riva->set('ffactura', $ffactura); $riva->set('nfiscal', $nfiscal); $riva->set('clipro', $clipro); $riva->set('nombre', $sprv['nombre']); $riva->set('rif', $sprv['rif']); $riva->set('exento', $exento); $riva->set('tasa', $tasa); $riva->set('general', $general); $riva->set('geneimpu', $geneimpu); $riva->set('tasaadic', $tasaadic); $riva->set('adicional', $adicional); $riva->set('adicimpu', $adicimpu); $riva->set('tasaredu', $tasaredu); $riva->set('reducida', $reducida); $riva->set('reduimpu', $reduimpu); $riva->set('stotal', $general + $adicional + $reducida); $riva->set('impuesto', $geneimpu + $adicimpu + $reduimpu); $riva->set('gtotal', $general + $adicional + $reducida + $geneimpu + $adicimpu + $reduimpu); $riva->set('reiva', $reiva); $riva->set('status', 'B'); //$riva->set('banc' , $banc['banco'] ); //$riva->set('numcuent' , $banc['numcuent'] ); //$riva->set('codbanc' , $codbanc ); //$riva->set('mbanc' , $mbanc ); $riva->set('reteiva_prov', $reteiva_prov); $riva->save(); //return $riva->get('nrocomp'); }