$Fecha = $Fecha == false ? fechasys() : $xF->getFechaISO($Fecha); $detalles = parametro("idobservaciones"); $cheque = parametro("cheque", DEFAULT_CHEQUE); $comopago = parametro("ctipo_pago", DEFAULT_TIPO_PAGO, MQL_RAW); $cuenta_cheques = parametro("cuenta_cheques", DEFAULT_CUENTA_BANCARIA); $foliofiscal = parametro("foliofiscal", DEFAULT_RECIBO_FISCAL); $xFRM->addToolbar($xBtn->getIrAlInicio(true)); $xCta = new cCuentaALaVista($iddocto, $idsocio); if ($xCta->init() == true) { //$xCta->setCuentaBancaria($cuenta_cheques); $maximo_retirable = $xCta->getMaximoRetirable(); if ($monto > $maximo_retirable) { $msg .= "ERROR\tNo puede Retirar mas de {$maximo_retirable}, usted quizo retirar {$monto}\r\n"; $sucess = false; } else { $recibo = $xCta->setRetiro($monto, $cheque, $comopago, $foliofiscal, $detalles, DEFAULT_GRUPO, $Fecha); } } else { $sucess = false; } if (MODO_DEBUG == true) { $msg .= $xCta->getMessages(); } $xFRM->addAviso($msg); if ($sucess == true) { //Imprime la Ficha del socio $xCta->init(); $xSoc = new cSocio($xCta->getClaveDePersona()); $xSoc->init(); $xFRM->addHTML($xSoc->getFicha()); $xFRM->addHTML($xCta->getFicha(true));
/** * funcion que purga la Cuentas a la Vista Menores a Cero, llevandolas a Cero * @param boolean $DistinctSucursal Distinguir Sucursal?: Si/No * @return string Mensajes del Log de Proceso */ function setCleanCuentasMenoresACero_ALaVista($DistinctSucursal = false) { $msg = "============== ELIMINANDO CUENTAS CON SALDO NEGATIVO \r\n"; $msg .= "============== " . date("dmY h:i:s") . " \r\n"; $BySucursal = ""; if ($DistinctSucursal == true) { $BySucursal = " AND (`captacion_cuentas`.`sucursal`='" . getSucursal() . "') "; $msg .= "============== " . getSucursal() . " \r\n"; } $cRec = new cReciboDeOperacion(10); $xRec = $cRec->setNuevoRecibo(DEFAULT_SOCIO, DEFAULT_CREDITO, fechasys(), 1, 10, "RECIBO_DE_AJUSTES_DE_CAPTACION"); $msg .= "\t\tRECIBO\tEl Recibo de Operacion es {$xRec}\r\n"; $cRec->setNumeroDeRecibo($xRec, true); $msg .= $cRec->getMessages("txt"); $contar = 0; $xTb = new cSAFETabla(TCAPTACION_CUENTAS); $sql = $xTb->getQueryInicial() . "\n\t\t\t\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t\t\t\t\t(\n\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`saldo_cuenta` <= " . TOLERANCIA_SALDOS . ")\n\t\t\t\t\t\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`saldo_cuenta` != 0)\n\t\t\t\t\t\t\t\t\t\t\t)\n\t\t\t\t\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`tipo_cuenta` =10)\n\t\t\t\t\t\t\t\t\t\t\t{$BySucursal}\n\t\t\t\t\t\t\t\t\t\tORDER BY\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`saldo_cuenta`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`fecha_afectacion` "; $rs = getRecordset($sql); while ($rw = mysql_fetch_array($rs)) { $numero = $rw["numero_cuenta"]; $monto = $rw["saldo_cuenta"]; $cuenta = $numero; $socio = $rw["numero_socio"]; $retirar = false; if ($monto < 0) { $monto = $monto * -1; } else { $retirar = true; } $xCuenta = new cCuentaALaVista($numero); $xCuenta->init($rw); $xCuenta->setReciboDeOperacion($xRec); $xCuenta->setForceOperations(); if ($retirar == true) { $xCuenta->setRetiro($monto); } else { $xCuenta->setDeposito($monto); } $NSaldo = $xCuenta->getNuevoSaldo(); $msg .= "{$contar}\t{$socio}\t{$cuenta}\tAGREGAR\tSe Agrega la Cuenta un monto de {$monto}, Saldo Actualizado a {$NSaldo}\r\n"; $msg .= $xCuenta->getMessages("txt"); $contar++; } return $msg; }
} if ($sucess == true and $action == MQL_ADD) { $xCta = new cCuentaALaVista($cuenta); if ($cuenta == false) { $cuenta = $xCta->setNuevaCuenta(DEFAULT_CAPTACION_ORIGEN, $producto_destino, $persona); /* $origen, $subproducto, $socio, $observaciones = "", $credito = 1, $mancomunado1 = "", $mancomunado2 = "", $grupo = 99, $fecha_alta = false, $tipo_de_cuenta = 20, $tipo_de_titulo = 99, $DiasInvertidos = false, $tasa = false, $CuentaDeIntereses = false, $FechaVencimiento = false */ } if ($retiro > 0) { $xCta->setRetiro($retiro); } if ($deposito > 0) { $xCta->setDeposito($deposito); } $msg .= $xCta->getMessages(); } } $conteo++; } $xFRM->addAviso($msg); $xFRM->addSubmit(); } if (MODO_DEBUG == true) { $xF = new cFileLog(); $xF->setWrite($msg);
$sdoOperativo = round($rw["saldo_obtenido"], 2); if ($saldo != $sdoOperativo) { $cCta = new cCuentaALaVista($cuenta, $socio); $cCta->init(); $cCta->setForceOperations(); $cCta->setReciboDeOperacion($recibo); if ($saldo > $sdoOperativo) { //depositar $diferencia = $saldo - $sdoOperativo; $msg .= "{$socio}\t{$cuenta}\tDEPOSITO\tExiste diferencia ( {$diferencia} ) entre el saldo de la cuenta ( {$saldo} ) y el obtenido por Movimientos ( {$sdoOperativo}) \r\n"; $cCta->setDeposito($diferencia, "NA", "ninguno"); } else { //retirar $diferencia = $sdoOperativo - $saldo; $msg .= "{$socio}\t{$cuenta}\tRETIRO\tExiste diferencia ( {$diferencia} ) entre el saldo de la cuenta ( {$saldo} ) y el obtenido por Movimientos ( {$sdoOperativo}) \r\n"; $cCta->setRetiro($diferencia, "NA", "ninguno"); } $msg .= $cCta->getMessages("txt"); } else { $msg .= "{$socio}\t{$cuenta}\tNO_DIF\tNo Existe diferencia ( {$diferencia})( {$saldo} | {$sdoOperativo}) \r\n"; } } break; case 880: $ForzarCorreccion = strtoupper($id) == "SI" ? true : false; $xPerUtils = new cPersonas_utils(); $msg .= $xPerUtils->setCorregirDomicilios($ForzarCorreccion); break; //purga cr�ditos no existentes o no migrables a TCB //purga cr�ditos no existentes o no migrables a TCB case 881:
function Common_c8581154ac4e27cb0e122d71341dd7d8($strCmd) { $DPar = explode(STD_LITERAL_DIVISOR, $strCmd); $xTip = new cTipos(); // $socio = $xTip->cInt($DPar[0]); $cuenta = $xTip->cInt($DPar[1]); $deposito = $xTip->cFloat($DPar[2]); $retiro = $xTip->cFloat($DPar[3]); $nota = $xTip->cChar($DPar[4]); $numero = $xTip->cInt($DPar[5]); $limit = $xTip->cInt($DPar[6]); if (isset($_SESSION["recibo_en_proceso"])) { $recibo = $_SESSION["recibo_en_proceso"]; $fecha = fechasys(); $_SESSION["total_recibo_en_proceso"] += $deposito - $retiro; $xRec = new cReciboDeOperacion(200, false, $recibo); $xRec->setNumeroDeRecibo($recibo, true); $DRec = $xRec->getDatosInArray(); $cheque = $DRec["cheque_afectador"]; $tipopago = $DRec["tipo_pago"]; $recibofiscal = $DRec["recibo_fiscal"]; if ($deposito > 0 or $retiro > 0) { $xC = new cCuentaALaVista($cuenta); $grupo = DEFAULT_GRUPO; $xC->setSocioTitular($socio); $xC->setReciboDeOperacion($recibo); if ($deposito > 0) { $xC->setDeposito($deposito, $cheque, $tipopago, $recibofiscal, $nota, $grupo, $fecha, $recibo); } if ($retiro > 0) { $xC->setRetiro($retiro, $cheque, $tipopago, $recibofiscal, $nota, $grupo, $fecha, $recibo); } } if ($numero == $limit) { $xRec->setForceUpdateSaldos(); $xRec->setFinalizarRecibo(true); //$MsgEnd .= "**** proceso terminado ****"; } } //retorna el id del control de origen para neutralizar return "-{$numero}"; }
function setConciliarCuentas($AppSucursal) { $msg = ""; $AppSucursal = strtoupper($AppSucursal); $BySucursal = " AND (`sucursal` ='" . getSucursal() . "') "; if ($AppSucursal != "SI") { $BySucursal = ""; } //Crea un Array de los saldos de la Cuenta $arrSdoCtas = array(); $arrNumCtas = array(); $arrSdoCW = array(); // $sqlCW = "SELECT\n\t\t\t\t\t\t\t\tCOUNT(`sisbancs_temp_depositos`.`numero_de_socio`) AS `existentes`,\n\t\t\t\t\t\t\t\t`sisbancs_temp_depositos`.`numero_de_socio`\n\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\t`sisbancs_temp_depositos` `sisbancs_temp_depositos`\n\n\t\t\t\t\t\t\tGROUP BY\n\t\t\t\t\t\t\t\t`sisbancs_temp_depositos`.`numero_de_socio` "; $rsA = getRecordset($sqlCW); while ($rw = mysql_fetch_array($rsA)) { $arrSdoCW[$rw["numero_de_socio"]] = $rw["existentes"]; } unset($rsA); unset($rw); // obtiene las cuentas tipo 10[A LA VISTA] en safe y crea un array $sqlSdoCta = " SELECT SQL_CACHE\n\t\t\t\t\t\t\t`captacion_cuentas`.`numero_socio` AS `socio`,\n\t\t\t\t\t\t\t`captacion_cuentas`.`tipo_cuenta`\tAS `tipo`,\n\t\t\t\t\t\t\tCOUNT(`captacion_cuentas`.`numero_cuenta`) AS `cuentas`,\n\t\t\t\t\t\t\tSUM(`captacion_cuentas`.`saldo_cuenta`) AS `suma`\n\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t`captacion_cuentas` `captacion_cuentas`\n\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t(`captacion_cuentas`.`estatus_cuenta` != 99)\n\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t(`captacion_cuentas`.`tipo_cuenta` = 10)\n\t\t\t\t\t\t\t{$BySucursal}\n\t\t\t\t\t\tGROUP BY\n\t\t\t\t\t\t\t`captacion_cuentas`.`numero_socio`,\n\t\t\t\t\t\t\t`captacion_cuentas`.`tipo_cuenta`\n\t\t\t\t\t\tORDER BY\n\t\t\t\t\t\t\t`captacion_cuentas`.`tipo_cuenta` "; $rsA = getRecordset($sqlSdoCta); while ($rw = mysql_fetch_array($rsA)) { $msocio = $rw["socio"]; $arrSdoCtas[$msocio . "-" . $rw["tipo"]] = round($rw["suma"], 2); //OK: Verificar if (!isset($arrSdoCW[$rw["socio"]]) or is_null($arrSdoCW[$rw["socio"]])) { $msg .= "\t{$msocio}\tAgregando un cuadre al socio " . $msocio . " A COMPACW para Verificacion\r\n"; $sqltmp = "INSERT INTO sisbancs_temp_depositos(numero_de_socio, cuenta_contable, nombre, tipo_de_saldo, monto, sucursal)\n \t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tVALUES({$msocio}, '', '_AGREGADO_PARA_CUADRE_MONTO_" . $rw["suma"] . "', 0, 0, 'matriz')"; my_query($sqltmp); } } unset($rsA); unset($rw); //============================================================================================================================ $sqlCuentasSISBANCS = "SELECT SQL_CACHE\n\t\t\t\t\t\t\t\t\t\t`temp_captacion_por_socio`.`numero_socio`,\n\t\t\t\t\t\t\t\t\t\t`temp_sisbancs_depositos`.`numero_de_socio`,\n\t\t\t\t\t\t\t\t\t\t`temp_captacion_por_socio`.`tipo_cuenta`,\n\t\t\t\t\t\t\t\t\t\tROUND(`temp_captacion_por_socio`.`monto`, 2) AS `saldo_safe`,\n\t\t\t\t\t\t\t\t\t\t`temp_sisbancs_depositos`.`total`,\n\t\t\t\t\t\t\t\t\t\t`temp_sisbancs_depositos`.`cuentas`,\n\t\t\t\t\t\t\t\t\t\tROUND((`temp_sisbancs_depositos`.`total` - `temp_captacion_por_socio`.`monto`), 2) AS 'diferencia'\n\n\t\t\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\t\t\t`temp_captacion_por_socio` `temp_captacion_por_socio`\n\t\t\t\t\t\t\t\t\t\t\tINNER JOIN `temp_sisbancs_depositos` `temp_sisbancs_depositos`\n\t\t\t\t\t\t\t\t\t\t\tON `temp_captacion_por_socio`.`numero_socio` = `temp_sisbancs_depositos`\n\t\t\t\t\t\t\t\t\t\t\t.`numero_de_socio`\n\t\t\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t\t\t\t(`temp_captacion_por_socio`.`tipo_cuenta` =10)\n\t\t\t\t\t\t\t\t\t\t{$BySucursal}\n\t\t\t\t\t\t\t\t\tHAVING\n\t\t\t\t\t\t\t\t\t\t(diferencia > 0.02)\n\t\t\t\t\t\t\t\t\t\tOR\n\t\t\t\t\t\t\t\t\t\t(diferencia < -0.02)\n\t\t\t\t\t\t\t\t\tORDER BY\n\t\t\t\t\t\t\t\t\t\tdiferencia\n\t\t\t\t\t\t\t\t /* LIMIT 0,600 */ "; $rs = getRecordset($sqlCuentasSISBANCS); $contar = 0; //Crear un nuevo Recibo de Ajuste $cRec = new cReciboDeOperacion(10); $xRec = $cRec->setNuevoRecibo(DEFAULT_SOCIO, DEFAULT_CREDITO, fechasys(), 1, 10, "RECIBO_DE_AJUSTES_DE_CAPTACION"); $msg .= "\t\tRECIBO\tEl Recibo de Operacion es {$xRec}\r\n"; $cRec->setNumeroDeRecibo($xRec, true); //$cRec->initRecibo(); $msg .= "\t\t============= \r\n"; $msg .= "\t\t============= APLICANDO CUENTAS DESDE COMPACW\r\n"; $msg .= "\t\t============= \r\n"; while ($rw = mysql_fetch_array($rs)) { $socio = $rw["numero_de_socio"]; $ahorro = round($rw["total"], 2); $NCuentas = $rw["cuentas"]; $Monto = 0; //Si el saldo EXISTE Y es Diferente a NULL if (isset($arrSdoCtas["{$socio}-10"]) and !is_null($arrSdoCtas["{$socio}-10"])) { $Monto = $arrSdoCtas["{$socio}-10"]; } //SI es mayor el Monto que el Ahorro, entonces esta inflado la parte Operativa.- Saldo Negativo $diferencia = $ahorro - $Monto; //Si la Difrencia es menor a -0.99 entonces if ($diferencia < TOLERANCIA_SALDOS * -1) { $diferencia = $diferencia * -1; $msg .= "{$contar}\t{$socio}\tEXCESO\tExiste un monto en exceso de {$diferencia} en SAFE, debe tener {$ahorro} segun COMPACW\r\n"; //FIXME: globalizar 5 //TODO: Cambiar esta linea $sqlCSoc = "SELECT\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.*,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentastipos`.`descripcion_cuentastipos` AS `tipo`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`numero_cuenta` AS `cuenta`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`fecha_afectacion` AS `apertura`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`inversion_fecha_vcto` AS `vencimiento`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`tasa_otorgada` AS `tasa`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`dias_invertidos` AS `dias`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`observacion_cuenta` AS `observaciones`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`saldo_cuenta` \t\t\t AS `saldo`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`descripcion_subproductos` AS `subproducto`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`algoritmo_de_premio`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`algoritmo_de_tasa_incremental`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`metodo_de_abono_de_interes`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`destino_del_interes`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`nombre_del_contrato`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`algoritmo_modificador_del_interes`\n\t\t\t\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\t\t\t`captacion_cuentas` `captacion_cuentas`\n\t\t\t\t\t\t\t\t\t\t\tINNER JOIN `captacion_cuentastipos` `captacion_cuentastipos`\n\t\t\t\t\t\t\t\t\t\t\tON `captacion_cuentas`.`tipo_cuenta` = `captacion_cuentastipos`.\n\t\t\t\t\t\t\t\t\t\t\t`idcaptacion_cuentastipos`\n\t\t\t\t\t\t\t\t\t\t\t\tINNER JOIN `captacion_subproductos` `captacion_subproductos`\n\t\t\t\t\t\t\t\t\t\t\t\tON `captacion_cuentas`.`tipo_subproducto` = `captacion_subproductos`\n\t\t\t\t\t\t\t\t\t\t\t\t.`idcaptacion_subproductos`\n\t\t\t\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`numero_socio` ={$socio})\n\t\t\t\t\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`tipo_cuenta` =10)\n\t\t\t\t\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`saldo_cuenta` != 0)\n\t\t\t\t\t\t\t\t\t\tORDER BY\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`saldo_cuenta`,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`fecha_afectacion` "; $rsCSoc = getRecordset($sqlCSoc); while ($CRw = mysql_fetch_array($rsCSoc)) { $cuenta = $CRw["numero_cuenta"]; $saldo = $CRw["saldo_cuenta"]; //Si la Diferencia es mayor al saldo de la cuenta, entonces if ($diferencia >= $saldo and $diferencia > 0) { //Retirar el saldo de la cuenta $cCuenta = new cCuentaALaVista($cuenta); $cCuenta->setReciboDeOperacion($xRec); $cCuenta->set($cuenta); $cCuenta->setForceOperations(); $cCuenta->init($CRw); $cCuenta->setRetiro($saldo); //Quitar el saldo de la cuenta de la diferencia $diferencia = $diferencia - $saldo; //Mensaje $msg .= "{$contar}\t{$socio}\t{$cuenta}\tELIMINAR\tEliminando el saldo de la cuenta por {$saldo}, queda {$diferencia}\r\n"; $msg .= $cCuenta->getMessages("txt"); } elseif ($diferencia < $saldo and $diferencia > 0) { //Restar la diferencia y dejar el saldo de la cuenta con el saldo de la cuenta $NSaldo = $saldo - $diferencia; $cCuenta = new cCuentaALaVista($cuenta); $cCuenta->setReciboDeOperacion($xRec); $cCuenta->set($cuenta); $cCuenta->setForceOperations(); $cCuenta->init($CRw); $cCuenta->setRetiro($diferencia); $msg .= "{$contar}\t{$socio}\t{$cuenta}\tACTUALIZAR\tActualizar la Cuenta a {$NSaldo}, Anteriormente {$saldo}\r\n"; $NuevoSaldo = $cCuenta->getNuevoSaldo(); $msg .= $cCuenta->getMessages("txt"); $msg .= "{$contar}\t{$socio}\t{$cuenta}\tSALDO\tLa cuenta quedo en {$NuevoSaldo}\r\n"; //Llevar a Cero la Diferencia $diferencia = 0; } else { $msg .= "{$contar}\t{$socio}\tIGNORAR\tNo efectuo ninguna accion (SAFE: {$Monto} / CW: {$ahorro})\r\n"; } if ($diferencia <= TOLERANCIA_SALDOS) { $diferencia = 0; } } $msg .= "{$contar}\t{$socio}\tFIN_RET\t------\t------\t------\t------\t------\t------\t------\r\n"; //Diferencia: Si la Diferencia es Mayor a 0.99 } elseif ($diferencia > TOLERANCIA_SALDOS) { $msg .= "{$contar}\t{$socio}\tINSUFICIENCIA\tExiste Insuficiencia de {$diferencia} en SAFE (SAFE: {$Monto} / CW: {$ahorro})\r\n"; //Obtener una Cuenta //FIXME: Globalizar 6 //TODO: Actualizar esta linea $sqlCSoc = "SELECT\n\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.*,\n\t\t\t\t\t\t\t\t\t\t`captacion_cuentastipos`.`descripcion_cuentastipos` AS `tipo`,\n\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`numero_cuenta` AS `cuenta`,\n\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`fecha_afectacion` AS `apertura`,\n\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`inversion_fecha_vcto` AS `vencimiento`,\n\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`tasa_otorgada` AS `tasa`,\n\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`dias_invertidos` AS `dias`,\n\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`observacion_cuenta` AS `observaciones`,\n\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`saldo_cuenta` \t\t\t AS `saldo`,\n\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`descripcion_subproductos` AS `subproducto`,\n\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`algoritmo_de_premio`,\n\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`algoritmo_de_tasa_incremental`,\n\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`metodo_de_abono_de_interes`,\n\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`destino_del_interes`,\n\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`nombre_del_contrato`,\n\t\t\t\t\t\t\t\t\t\t`captacion_subproductos`.`algoritmo_modificador_del_interes`\n\t\t\t\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\t\t\t`captacion_cuentas` `captacion_cuentas`\n\t\t\t\t\t\t\t\t\t\t\tINNER JOIN `captacion_cuentastipos` `captacion_cuentastipos`\n\t\t\t\t\t\t\t\t\t\t\tON `captacion_cuentas`.`tipo_cuenta` = `captacion_cuentastipos`.\n\t\t\t\t\t\t\t\t\t\t\t`idcaptacion_cuentastipos`\n\t\t\t\t\t\t\t\t\t\t\t\tINNER JOIN `captacion_subproductos` `captacion_subproductos`\n\t\t\t\t\t\t\t\t\t\t\t\tON `captacion_cuentas`.`tipo_subproducto` = `captacion_subproductos`\n\t\t\t\t\t\t\t\t\t\t\t\t.`idcaptacion_subproductos`\n\t\t\t\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`numero_socio` ={$socio})\n\t\t\t\t\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`tipo_cuenta` =10)\n\t\t\t\t\t\t\t\t\t\tORDER BY\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`saldo_cuenta` DESC,\n\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.`fecha_afectacion` DESC\n\t\t\t\t\t\t\t\t\t\tLIMIT 0,1 "; $DCta = obten_filas($sqlCSoc); $cuenta = $DCta["numero_cuenta"]; $cCuenta = new cCuentaALaVista($cuenta); $NSaldo = 0; //Si la cuenta no existe, crear una nueva if (!isset($cuenta) or $cuenta == 0 or $cuenta == false) { $cuenta = $cCuenta->setNuevaCuenta(5, 1, $socio, "CUENTA_POR_AJUSTE"); $msg .= "{$contar}\t{$socio}\t{$cuenta}\tNUEVA\tNO Existe la Cuenta, se crea una NUEVA\r\n"; $DCta = false; } $cCuenta->set($cuenta); $cCuenta->init($DCta); $cCuenta->setReciboDeOperacion($xRec); $cCuenta->setDeposito($diferencia); $NSaldo = $cCuenta->getNuevoSaldo(); $msg .= "{$contar}\t{$socio}\t{$cuenta}\tAGREGAR\tSe Agrega la Cuenta un monto de {$diferencia}, Saldo de {$NSaldo}\r\n"; $msg .= $cCuenta->getMessages("txt"); $diferencia = 0; } //$msg .= "==========================================================================\r\n"; $contar++; } $cRec->setFinalizarRecibo(); $msg .= $cRec->getMessages("txt"); return $msg; }
$messages .= $xr->getMessages() . "<br />"; } //===============================Retirar el Ahorro //Buscar Ahorro $xCR = new cCuentaALaVista("50" . $codigo_rep . "01"); $exist = $xCR->setContarCuentaBySocio($codigo_rep, 50); //Si el Ahorro exisre proseguir en el retiro if ($exist >= 1) { $messages .= "Efectuar Retiro de Ahorro de la Socia {$codigo_rep} <br /> "; $sqlSCta = "SELECT\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas`.*\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tFROM\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t`captacion_cuentas` `captacion_cuentas`\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tWHERE\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`numero_socio` = {$codigo_rep})\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t\t(`captacion_cuentas`.`tipo_subproducto` = 50)\n\t\t\t\t\t\t\t\t\t\t\t\t\t\t\tLIMIT 0,1"; $RDG = obten_filas($sqlSCta); $RCta = $RDG["numero_cuenta"]; $RMonto = $RDG["saldo_cuenta"]; $xNC = new cCuentaALaVista($RCta); $xNC->setSocioTitular($codigo_rep); $xNC->setRetiro($RMonto, "NA", "ninguno", "NA", "MVTO_AUTOMATICO_POR_{$iduser}", $grupo); $messages .= $xNC->getMessages() . "<br />"; $messages .= "Se retiro de la Socia {$codigo_rep} un Monto de {$RMonto}<br /> "; } else { $messages .= "No hay Cuenta de Retiro de la Socia {$codigo_rep} <br /> "; } } //=================================================Otras Cuentas $recibo = $DRec["recibo"]; $sqlPlan = "SELECT * FROM operaciones_mvtos\n\t\t\t\t\t\t\t\t\t\t\t\tWHERE recibo_afectado = {$recibo}\n\t\t\t\t\t\t\t\t\t\t\t\tAND\n\t\t\t\t\t\t\t\t\t\t\t\ttipo_operacion = 112"; $arrDatos = array(); //echo $sqlPlan; $rsPlan = mysql_query($sqlPlan, cnnGeneral()); $sumPlan = 0; $td = ""; while ($rw = mysql_fetch_array($rsPlan)) {