if ($aml == true) {
         $xSoc->setOmitirAML();
     }
     $xSoc->add($nombre, $apellido1, $apellido2, $rfc, $curp);
     if ($xSoc->init() == true) {
         $persona = $xSoc->getCodigo();
         $sucess = true;
     }
 }
 //verificar cuenta de captacion
 if ($sucess == true) {
     if ($cuenta == false) {
         $cuenta = $xSoc->getCuentaDeCaptacionPrimaria(CAPTACION_TIPO_VISTA, $producto_destino);
         $cuenta = $cuenta == 0 ? false : $cuenta;
     } else {
         if ($xSoc->existeCuenta($cuenta) == false) {
             $msg .= "WARN\tLa cuenta {$cuenta} NO EXISTE. Se genera una NUEVA\r\n";
             $cuenta = false;
         }
     }
 }
 //Verifica que solo haya un tipo de operacion
 if ($sucess == true) {
     if ($deposito > 0 and $retiro > 0) {
         $sucess = false;
         $msg .= "ERROR\tSolo se admite un tipo de operacion por LINEA\r\n";
     }
 }
 //Verifica que solo haya un tipo de operacion
 if ($sucess == true) {
     if ($deposito > 0 and $retiro > 0) {
 $cuentaDestino = $_POST["cCuentaDestino"];
 $observaciones = $_POST["cObservaciones"];
 $tipoOrigen = $_POST["cTipoOrigen"];
 $tipoDestino = $_POST["cTipoDestino"];
 $sucess = true;
 $xSoc = new cSocio($socio);
 $xSoc->init();
 if ($xT->getEvalNotNull(array($cuentaOrigen, $cuentaDestino)) == false) {
     $sucess = false;
     $msg .= "ERROR\tLa cuenta de Origen({$cuentaOrigen}) o la cuenta de Destino({$cuentaDestino}) NO EXISTE\r\n";
 }
 if ($cuentaOrigen == $cuentaDestino) {
     $sucess = false;
     $msg .= "ERROR\tLa cuenta de Origen({$cuentaOrigen}) es igual a la cuenta de Destino({$cuentaDestino}) \r\n";
 }
 if ($xSoc->existeCuenta($cuentaOrigen) == 0 or $xSoc->existeCuenta($cuentaDestino) == 0) {
     $sucess = false;
     $msg .= "ERROR\tLa cuenta de Origen({$cuentaOrigen}) o la cuenta de Destino({$cuentaDestino}) NO son del Misma Persona ({$socio})\r\n";
 }
 if ($sucess == true) {
     if ($tipoOrigen == CAPTACION_TIPO_PLAZO) {
         $xCOrigen = new cCuentaInversionPlazoFijo($cuentaOrigen, $socio);
     } else {
         $xCOrigen = new cCuentaALaVista($cuentaOrigen, $socio);
     }
     $xCOrigen->init();
     //
     if ($tipoDestino == CAPTACION_TIPO_PLAZO) {
         $xCDestino = new cCuentaInversionPlazoFijo($cuentaDestino, $socio);
     } else {
         $xCDestino = new cCuentaALaVista($cuentaDestino, $socio);
 $tasa = 0;
 $sucursal = getSucursal();
 $fechabaja = "2029-12-31";
 $fechaalta = parametro("idfecha", fechasys());
 $estatus = 10;
 $man1 = parametro("idsocio2", 0, MQL_INT);
 $man2 = parametro("idsocio3", 0, MQL_INT);
 $cuentaDeIntereses = parametro("idcuentainteres", DEFAULT_CUENTA_CORRIENTE, MQL_INT);
 $fechaalta = $xF->getFechaISO($fechaalta);
 $subpdto = parametro("idproductocaptacion");
 $sucess = true;
 //Iniciar socio
 $xSoc = new cSocio($idsocio);
 if ($xSoc->init() == true) {
     $idcuenta = $xSoc->getIDNuevoDocto(iDE_CAPTACION, $subpdto);
     if ($xSoc->existeCredito($idcuenta) == true or $xSoc->existeCuenta($idcuenta) == true) {
         $idcuenta = $xSoc->getIDNuevoDocto(iDE_CAPTACION, $subpdto);
         $msg .= "WARN\tNumero de Cuenta Cambiada {$idcuenta}\r\n";
     }
     //if( $xSoc->existeCuenta($idcuenta) )
     $sqlPdto = "SELECT * FROM captacion_subproductos WHERE idcaptacion_subproductos={$subpdto}";
     $dPdto = obten_filas($sqlPdto);
     $tipocuenta = $dPdto["tipo_de_cuenta"];
     $destino_de_intereses = $dPdto["destino_del_interes"];
     //la cuenta debe de ser de intereses
     $eCta = new cCuentaDeCaptacion($cuentaDeIntereses, $idsocio);
     $eCta->init();
     $eTS = $eCta->getTipoDeSubproducto();
     if ($destino_de_intereses == CAPTACION_DESTINO_CTA_INTERES and $eTS != CAPTACION_PRODUCTO_INTERESES) {
         $msg .= "ERROR\tLa Cuenta debe tener una CUENTA VALIDA PARA INTERESES, Si no Existe agrege una NUEVA y Asociela con esta Cuenta\r\n";
         exit($html->setJsDestino("frmcaptacioncuentas.php?s={$idsocio}&x={$idcuenta}&i={$cuentaDeIntereses}&o={$origencuenta}&ti={$tipotitulo}&n={$observacion}&g={$idgrupo}&c={$idsolicitud}&p={$subpdto}&msg={$msg}"));
 $fecha_actual = parametro("idfecha-0", false);
 $fecha_actual = $fecha_actual == false ? fechasys() : $xF->getFechaISO($fecha_actual);
 $xSoc = new cSocio($persona);
 $xSoc->init();
 $tasa = $tasa / 100;
 $CuentaDeInteres = $CuentaDeInteres == DEFAULT_CUENTA_CORRIENTE ? false : $CuentaDeInteres;
 //Codigo para Iniciar la Reinversion
 $xCta = new cCuentaInversionPlazoFijo($cuenta, $persona);
 $xCta->init();
 if ($xCta->getEsOperable($fecha_actual) == false) {
     $messages .= "ERROR\tNO_OP\tLa Cuenta no es Operativa\r\n";
     $sucess = false;
 }
 $arrUpdate = array("tasa_otorgada" => $tasa, "dias_invertidos" => $dias);
 //actualizar datos de la Inversion
 if ($CuentaDeInteres != false and $xSoc->existeCuenta($CuentaDeInteres) == false) {
     $arrUpdate["cuenta_de_intereses"] = $CuentaDeInteres;
     $messages .= "ERROR\tNO_ACT\tLa Cuenta Corriente de Interes es {$CuentaDeInteres}\r\n";
 }
 if ($sucess == true) {
     $xCta->setUpdate($arrUpdate);
     $xCta->init();
 } else {
     $messages .= "WARN\\NO_ACT\tLa Cuenta no se actualizo\r\n";
 }
 $saldo = $xCta->getNuevoSaldo();
 if ($sucess == true) {
     if ($saldo > INVERSION_MONTO_MINIMO) {
         $recibo_de_reinversion = $xCta->setReinversion($fecha_actual, true);
         $messages .= "WARN\tLa Inversion se CIERRA\r\n";
     } elseif ($saldo >= TOLERANCIA_SALDOS) {