/**
 * Funcion que obtiene el Nombre del socio
 *
 * @param integer $params
 * @return string
 */
function Common_695bad33e1f2af343f99c6a4ceb9d045($params)
{
    $nombre = MSG_NO_PARAM_VALID;
    $xT = new cTipos();
    $socio = $xT->cInt($params);
    $xSoc = new cSocio($socio);
    if ($xSoc->existe($socio) == true) {
        $xSoc->init();
        $nombre = $xSoc->getNombreCompleto(OUT_TXT);
    }
    return $nombre;
}
function jsaPrevalidarCredito($socio, $solicitud, $numpagos, $periocidad, $convenio, $contrato, $fechaMin, $fechaVenc, $monto)
{
    $clave = md5($socio . $solicitud . ROTTER_KEY . date("Ymd"));
    $out = false;
    $msg = "";
    $ctrl = "";
    $xHO = new cHObject();
    $xBtn = new cHButton();
    $arrDatos = array("numero_de_solicitud" => $solicitud, "periocidad_de_pago" => $periocidad, "tipo_de_producto" => $convenio, "numero_de_pagos" => $numpagos, "contrato_corriente_relacionado" => $contrato, "fecha_de_ministracion" => $fechaMin, "fecha_de_vencimiento" => $fechaVenc);
    if ($socio == DEFAULT_SOCIO or $socio == 0) {
        $msg .= "ERROR\t{$socio}\tClave de Persona no Valido\r\n";
        $out = false;
    } else {
        if ($solicitud == DEFAULT_CREDITO or $solicitud == 0) {
            $msg .= "ERROR\t{$socio}\t{$solicitud}\tNumero de Credito no Valido\r\n";
            $out = false;
        } else {
            //Valorar Numero de Creditos por Socio
            $xSoc = new cSocio($socio);
            if ($xSoc->existe($socio) == false) {
                $msg .= "ERROR\t{$socio}\tEl Socio No Existe\r\n";
                $out = false;
            } else {
                $xSoc->init();
                $out = $xSoc->setPrevalidarCredito($arrDatos);
                $msg .= $xSoc->getMessages();
            }
        }
    }
    if ($out == true) {
        $msg .= "OK\tEL CREDITO HA SIDO VALIDADO POR EL SISTEMA - CUMPLE LOS REQUISITOS\r\n";
        $ctrl .= $xBtn->getBasic("TR.guardar credito", "jsFormularioValidado('{$clave}')", "guardar", "idvalidarok");
        $ctrl .= $xBtn->getBasic("TR.validar nuevamente", "jsPrevalidarCredito()", "checar", "idnuevavalidacion");
    } else {
        //$ctrl = "<input type=\"button\" name=\"cmdSubmit\" onclick=\"jsPrevalidarCredito();\" value=\"VALIDAR CREDITO NUEVAMENTE\" />";
        $ctrl .= $xBtn->getBasic("TR.validar nuevamente", "jsPrevalidarCredito()", "checar", "idnuevavalidacion");
    }
    $msg = $xHO->Out($msg, OUT_HTML);
    $svalidate = "{$msg} {$ctrl}";
    return $svalidate;
}
 /**
  * Valida la Cuenta de Captacion
  * @param boolean $ForzarCorreccion
  */
 function setValidar($ForzarCorreccion = false)
 {
     $arrUp = array();
     $DC = $this->getDatosInArray();
     $socio = $this->mSocioTitular;
     $cuenta = $this->mNumeroCuenta;
     $grupo = $this->mGrupoAsociado;
     $sucursal = $DC["sucursal"];
     $user = $DC["idusuario"];
     $oficial = $DC["oficial_de_captacion"];
     $credito = $DC["numero_solicitud"];
     $FApertura = $DC["fecha_apertura"];
     $FAfecta = $DC["fecha_afectacion"];
     //Fecha Valida
     $FechaValida = true;
     $msg = "VALIDAR CUENTA {$cuenta}\r\n";
     //Datos propios de la Inversion
     $FVencInv = $DC["inversion_fecha_vcto"];
     $DiasInv = $DC["dias_invertidos"];
     $TCuenta = $DC["tipo_cuenta"];
     //Cuenta de Intereses
     $CtaInts = $DC["cuenta_de_intereses"];
     //Datos producto
     $xDT = new cInformacionProductoCaptacion($TCuenta);
     $DT = $xDT->init();
     //validar socios
     $xSoc = new cSocio($socio);
     if ($xSoc->existe($socio) == false) {
         $msg .= "CRITICO\tSOCIO\tEl Socio {$socio} no EXISTE \r\n";
         if ($ForzarCorreccion == true) {
             $xSoc->add("SOCIO_CUENTA_{$cuenta}");
             $msg .= "NUEVO\tSOCIO\tAgregado el Socio {$socio}\r\n";
         }
     }
     //validar grupo
     if ($grupo == false or $grupo == 0) {
         $arrUp["numero_grupo"] = DEFAULT_GRUPO;
         $msg .= "ERROR\tGRUPO\tEl Grupo {$grupo} No es Valido, se actualiza al default \r\n";
     } else {
         //Controlar Grupo
         $xGrp = new cGrupo($grupo);
         if ($xGrp->existe($grupo) == false) {
             $msg .= "CRITICO\tGRUPO\tEl Grupo {$grupo} no EXISTE \r\n";
             if ($ForzarCorreccion == true) {
                 $xGrp->add("GRUPO_CUENTA_{$cuenta}", "", false, false, 10, 1, $grupo, $sucursal);
                 $msg .= "NUEVO\tGRUPO\tSe Agrego el Grupo {$grupo} \r\n";
             }
         }
     }
     //Restaurar Credito
     if ($credito != DEFAULT_CREDITO) {
         $arrUp["numero_solicitud"] = DEFAULT_CREDITO;
     }
     //
     //Controlar Usuario
     $xUsr = new cSystemUser($user);
     if ($xUsr->existe($user) == false) {
         $msg .= "CRITICO\tUSUARIO\tEl Usuario {$user} no EXISTE \r\n";
         if ($ForzarCorreccion == true) {
             $xUsr->add("usr{$user}", "", 2, "USR_CTA_{$cuenta}", "", "", "", false, "baja", "", $sucursal, $user);
             $msg .= "NUEVO\tUSUARIO\tSe Agrego el Usuario {$user} \r\n";
         }
     }
     //Controlar Oficial de Captacion
     if ($xUsr->existe($oficial) == false) {
         $msg .= "ERROR\tOFICIAL\tEl Oficial de Captacion {$oficial} no EXISTE \r\n";
         if ($ForzarCorreccion == true) {
             $xUsr->add("usr{$oficial}", "", 2, "OFICIAL_CTA_{$cuenta}", "", "", "", false, "baja", "", $sucursal, $oficial);
             $msg .= "NUEVO\tOFICIAL\tSe Agrego el OFICIAL {$oficial} \r\n";
         }
     }
     if ($FApertura == '0000-00-00') {
         $msg .= "WARN\tLa fecha de Apertura {$FApertura} es INVALIDA\r\n";
         $arrUp["fecha_apertura"] = fechasys();
         $FechaValida = false;
     }
     if ($FAfecta == '0000-00-00') {
         $msg .= "WARN\tLa fecha de Afectacion {$FAfecta} es INVALIDA\r\n";
         $arrUp["fecha_afectacion"] = fechasys();
         $FechaValida = false;
     }
     //Validar las fechas
     if ($FechaValida == true) {
         if (strtotime($FApertura) > strtotime($FAfecta)) {
             $msg .= "WARN\tLa fecha de Apertura {$FApertura} es mayor a la de operaciones {$FAfecta}\r\n";
             $arrUp["fecha_apertura"] = $FAfecta;
         }
     }
     //Validar las funciones del Subproducto
     if ($ForzarCorreccion == true) {
         //Guardar Cambios
         $this->setUpdate($arrUp);
         return $msg;
     }
 }
 function setReportarUsuario($usuarioreportado, $motivo, $mensaje, $documento = false, $fecha = false, $persona = false, $tipo_de_documento = iDE_RECIBO)
 {
     $msg = "";
     $xF = new cFecha(0, $fecha);
     $documento = setNoMenorQueCero($documento);
     $persona = setNoMenorQueCero($persona);
     $usuarioreportado = setNoMenorQueCero($usuarioreportado);
     $cDUsr1 = new cVistaUsuarios();
     $cDUsr1->setData($cDUsr1->query()->initByID($usuarioreportado));
     $PersonaDeDestino = $cDUsr1->codigo_de_persona()->v();
     $tipo_de_docto = setNoMenorQueCero($tipo_de_documento);
     if ($documento > DEFAULT_CREDITO) {
         //$tipo_de_docto	= iDE_CREDITO;
     } else {
         if ($persona > DEFAULT_SOCIO) {
             $documento = $persona;
             $tipo_de_docto = iDE_SOCIO;
         }
     }
     //verificar si existe la persona
     $xSoc = new cSocio($PersonaDeDestino);
     if ($xSoc->existe($PersonaDeDestino) == false) {
         $msg .= "ERROR\tLa persona {$PersonaDeDestino} NO EXISTE, no hay datos para reportar\r\n";
     } else {
         $this->setForceAlerts();
         $res = $this->sendAlerts($PersonaDeDestino, AML_OFICIAL_DE_CUMPLIMIENTO, $motivo, $mensaje, $documento, $fecha, false, 0, $tipo_de_docto, $persona);
         $msg .= $res == false ? "ERROR\tError al agregar el registro\r\n" : "OK\tRegistro correcto\r\n";
     }
     $this->mMessages .= $msg;
     return $msg;
 }
 while (!feof($gestor)) {
     $bufer = fgets($gestor, 4096);
     //$bufer			= stream_get_line($gestor, "\r\n");
     if (!isset($bufer)) {
         $msg .= "{$iReg}\tLa Linea({$iReg}) no se leyo({$bufer})\r\n";
     } else {
         //layout : socio , nombre, monto, cuenta
         $datos = explode(",", trim($bufer), 4);
         $socio = $cT->cInt($datos[0]);
         $nombre = isset($datos[1]) ? $cT->cChar(trim($datos[1])) : "";
         $monto = isset($datos[2]) ? $datos[2] : 0;
         $cuenta = isset($datos[3]) ? $datos[3] : 0;
         if ($socio != 0 and $socio != 0) {
             //
             $xSoc = new cSocio($socio);
             if ($xSoc->existe($socio) == false) {
                 //
                 $msg .= "{$iReg}\tERROR\t{$socio}\tEl Socio NO EXISTE\r\n";
                 $txt .= "{$socio},{$nombre},{$monto},{$cuenta},NO_EXISTE\r\n";
             } else {
                 $xSoc->init();
                 $D = $xSoc->getDatosInArray();
                 $estatus = $cT->cInt($D["estatusactual"]);
                 //
                 switch ($estatus) {
                     case 99:
                         $msg .= "{$iReg}\tWARNING\t{$socio}\tEl Socio puede tener PROBLEMAS al migrar, su estatus es {$estatus}\r\n";
                         break;
                     case 50:
                         $msg .= "{$iReg}\tERROR\t{$socio}\tEl Socio TIENE PROBLEMAS al migrar, su estatus es {$estatus}\r\n";
                         $txt .= "{$socio},{$nombre},{$monto},{$cuenta},{$estatus}\r\n";
             $saldoCW = $cT->cFloat(trim($datos[2]), 2);
             $socioCW = $cT->cInt(trim($DCuenta[5]), true);
             //$msg		.= "COMPACW\tSaldo $saldoCW SOCIO $socioCW\r\n";
             $aCompacW[$socioCW] += $saldoCW;
             $aCompacWC[$socioCW] .= "{$cuenta}\t{$saldoCW}\t";
         }
         $iReg++;
     }
 }
 fclose($gestor);
 foreach ($aCompacW as $key => $value) {
     $socio = $cT->cInt($key, true);
     $sdoCW = $cT->cFloat($value);
     //Filtrar por sucursal
     $xSoc = new cSocio($socio);
     if ($xSoc->existe($socio) == true) {
         switch ($TipoDeImportacion) {
             case "credito":
                 //1-3-01-02-03-0037002
                 $saldo = isset($aCreditos[$socio]) ? $aCreditos[$socio] : 0;
                 if ($cT->getEvalNumeroSimilar($saldo, $sdoCW) == true) {
                     $diferencia = $saldo - $sdoCW;
                     $msg .= "{$socio}\tSUCESS\t{$saldo}\t{$sdoCW}\t{$diferencia}\tSaldo Correcto, SIMILAR/IGUAL\r\n";
                 } else {
                     $diferencia = $saldo - $sdoCW;
                     $msg .= "{$socio}\tERROR\t{$saldo}\t{$sdoCW}\t{$diferencia}\tSaldo Incorrecto\r\n";
                     $msgD .= "{$socio}\t{$saldo}\t{$sdoCW}\t{$diferencia}\t" . $aCompacWC[$socio] . "\r\n";
                 }
                 break;
             case "ahorro":
                 $saldo = isset($aCaptacion[$socio]) ? $aCaptacion[$socio] : 0;
$codigo_postal = parametro("idcodigopostal");
$referencia = parametro("idreferencia");
$numero_interior = parametro("idnumero");
$curp = parametro("curp");
$observaciones = parametro("observaciones");
$consanguinidad = parametro("consan");
$depende = parametro("depende");
$ocupacion = parametro("ocupacion");
$rfc = "";
$grupo_solidario = DEFAULT_GRUPO;
$genero = DEFAULT_GENERO;
$tipo_persona = TIPO_JURIDICO_FISICA;
$numero_de_socio = $numero_de_socio == DEFAULT_SOCIO ? false : $numero_de_socio;
$xRel = new cSocio($numero_de_socio);
//$email					= $xRel->getCorreoElectronico();
if ($xRel->existe() != true) {
    $xRel->add($nombres, $apellido_paterno, $apellido_materno, $rfc, $curp, getCajaLocal(), $fecha_de_nacimiento, "", TIPO_INGRESO_RELACION, DEFAULT_ESTADO_CIVIL, $genero, DEFAULT_EMPRESA, DEFAULT_REGIMEN_CONYUGAL, $tipo_persona, $grupo_solidario, $observaciones, DEFAULT_TIPO_IDENTIFICACION, "", false, false, $telefono_movil, "", 0);
    if (trim($calle) != "") {
        $xRel->addVivienda($calle, $numero, $codigo_postal, "", $referencia, $telefono_fijo, $telefono_movil, TIPO_DOMICILIO_PRINCIPAL, TIPO_VIVIENDA_PROPIA, TIPO_DOMICILIO_PARTICULAR, DEFAULT_TIEMPO, $colonia, "calle");
    }
    if (trim($ocupacion) != "") {
        $xRel->addActividadEconomica("", 0, $ocupacion, DEFAULT_TIEMPO, DEFAULT_EMPRESA);
    }
    $xRel->init();
    $numero_de_socio = $xRel->getCodigo();
}
$xSoc = new cSocio($idsocio);
$xSoc->addRelacion($numero_de_socio, $tipo_de_relacion, $consanguinidad, $depende, $observaciones, $monto_relacionado, $porcentaje_relacionado);
//echo $xRel->getMessages("txt");
//echo $xSoc->getMessages("txt");
header("location:referencias.directas.frm.php?msg=OK&socio=" . $idsocio);
             $localidad = $DLocal["nombre_de_la_localidad"];
         }
         $xSoc->addVivienda($calle, $numero, $cp, "", $referencia, "0", "0", SYS_UNO, FALLBACK_PERSONAS_REGIMEN_VIV, FALLBACK_PERSONAS_TIPO_VIV, DEFAULT_TIEMPO, $colonia, "calle", "", $idlocal, $idpais, $pais, $estado, $municipio, $localidad);
         //Actualizar pais
     }
     $msg .= $xSoc->getMessages(OUT_TXT);
     break;
 case "ALT":
     /*
     1597|1190|"aka"|"OCTOBER HOLDING COMPANY"|-0- 
     1661|1229|"aka"|"PESMAR S.A."|-0-
     6857|4607|"aka"|"CARDENAS GUILLEN, Oscar"|-0-
     */
     //$someword = strtolower(preg_replace("/[^a-z]+/i", "-", $theword));
     $xSoc = new cSocio($id);
     if ($xSoc->existe($id) == true) {
         $xFil->setDataRow($cont);
         $eq = array("AKA" => 511, "FKA" => 512);
         $xRel = new cSocios_relaciones();
         //$xRel->apellido_materno()
         $idrelacion = $xFil->getEntero(2);
         $tipo = trim($xFil->cleanString($xFil->getV(3, "NULL")));
         $nombres = $xFil->cleanString($xFil->getV(4, "NULL"));
         $nombre = "";
         $apellido1 = "";
         $apellido2 = "";
         if (strpos($nombres, ",") !== false) {
             //es nombre de persona
             $ds = explode(",", $nombres, 2);
             $nombre = trim($ds[1]);
             if (strpos($ds[0], " ") !== false) {
         $sucess = true;
     }
 }
 if ($importar == false) {
     if ($xSoc->existe($persona) == false) {
         //$sucess	= false;
         //$msg	.= "ERROR\tLa persona $persona NO EXISTE\r\n";
         if (PERSONAS_COMPARTIR_CON_ASOCIADA == true) {
             //Intentar cargar desde servidor externo
             $cargar = $xSoc->getImportarDesdeAsociada(TPERSONAS_GENERALES);
             if ($cargar == true) {
                 $xSoc->getImportarDesdeAsociada(TPERSONAS_DIRECCIONES);
                 $xSoc->getImportarDesdeAsociada(TPERSONAS_ACTIVIDAD_ECONOMICA);
             }
             $xSoc = new cSocio($persona);
             if ($xSoc->existe($persona) == false) {
                 $sucess = false;
                 $msg .= "ERROR\tLa persona {$persona} NO EXISTE en ASOCIADA\r\n";
             } else {
                 $sucess = true;
                 $msg .= "OK\tLa persona {$persona} ha sido importada\r\n";
             }
         }
         if ($sucess == false) {
         }
     }
 }
 //Agregar
 if ($xSoc->existe($persona) == false) {
     //Dar de Alta
     $persona = setNoMenorQueCero($persona) > 0 ? $persona : false;
 function init()
 {
     $sql = "SELECT *   FROM general_sucursales\tWHERE\t(`general_sucursales`.`codigo_sucursal` =\"" . $this->mClave . "\") ";
     $D = obten_filas($sql);
     $this->mInitPersona = false;
     if (isset($D["titular_de_cobranza"])) {
         $this->mTitularCobranza = $D["titular_de_cobranza"];
         $this->mTitularContable = $D["titular_de_contabilidad"];
         $this->mGerente = $D["gerente_sucursal"];
         $this->mHorarioDeCierre = $D["hora_de_fin_de_operaciones"];
         $this->mCajaLocalRes = $D["caja_local_residente"];
         $this->mMunicipio = $D["municipio"];
         $this->mEstado = $D["estado"];
         $this->mCodigoPostal = $D["codigo_postal"];
         $this->mClaveDePersona = $D["clave_de_persona"];
         $this->mNombreLocalidad = $D["localidad"];
         $this->mClaveNumerica = $D["clave_numerica"];
         $this->mDatosInArray = $D;
         //$xL							= new cLocal($this->mClave);
         //$this->mMessages		.= "ERROR\tLa Persona " . $this->mClaveDePersona . " de Sucursal No existe\r\n";
         $this->mDomicilioCorto = EACP_DOMICILIO_CORTO;
         $localidad = defined("EACP_LOCALIDAD") ? EACP_LOCALIDAD : "NO_DEFINIDO";
         $this->mMunicipio = trim($this->mMunicipio) == "" ? EACP_MUNICIPIO : $this->mMunicipio;
         $this->mEstado = trim($this->mEstado) == "" ? EACP_ESTADO : $this->mEstado;
         $this->mCodigoPostal = (int) $this->mCodigoPostal == 0 ? EACP_CODIGO_POSTAL : $this->mCodigoPostal;
         $this->mNombreLocalidad = trim($this->mNombreLocalidad) == "" ? $localidad : $this->mNombreLocalidad;
         $this->mClaveDeMunicipio = EACP_CLAVE_DE_MUNICIPIO;
         $this->mClaveDeEstado = EACP_CLAVE_NUM_ENTIDADFED;
         $this->mClaveDeEstadoABC = EACP_CLAVE_DE_ENTIDADFED;
         $this->mClaveDeEstadoSIC = EACP_CLAVE_DE_ENTIDAD_SIC;
         $this->mClaveLocalidad = EACP_CLAVE_DE_LOCALIDAD;
         $this->mCalle = EACP_DOMICILIO_CALLE;
         $this->mNumeroExt = EACP_DOMICILIO_NUM_EXT;
         $this->mNumeroInt = EACP_DOMICILIO_NUM_INT;
         $this->mColonia = EACP_COLONIA;
         if (setNoMenorQueCero($this->mClaveDePersona) > 0 and $this->mClaveDePersona != DEFAULT_SOCIO) {
             $xSoc = new cSocio($this->mClaveDePersona);
             if ($xSoc->existe($this->mClaveDePersona) == true) {
                 if ($xSoc->init() == true) {
                     //verificar si existe domicilio
                     $xViv = new cPersonasVivienda($this->mClaveDePersona);
                     $xDB = new cSAFETabla(TPERSONAS_DIRECCIONES);
                     $sql = $xDB->getQueryInicial() . " WHERE socio_numero=" . $this->mClaveDePersona . "  ORDER BY principal DESC, fecha_alta DESC LIMIT 0,1";
                     $DCOL = obten_filas($sql);
                     $this->mTelefono = $xSoc->getTelefonoPrincipal();
                     if (isset($DCOL["idsocios_vivienda"])) {
                         $xViv->init(false, $DCOL);
                         $this->mMunicipio = $xViv->getMunicipio();
                         $this->mEstado = $xViv->getEstado(OUT_TXT);
                         $this->mCodigoPostal = $xViv->getCodigoPostal();
                         $this->mClaveDeEstado = $xViv->getClaveDeEstado();
                         $this->mDomicilioCorto = $xViv->getCalleConNumero();
                         $this->mNombreLocalidad = $xViv->getCiudad();
                         $this->mClaveLocalidad = $xViv->getClaveDeLocalidad();
                         $this->mInitPersona = true;
                         $this->mClaveDeMunicipio = $xViv->getClaveDeMunicipio();
                         $this->mClaveDeEstado = $xViv->getClaveDeEstado();
                         $this->mClaveDeEstadoABC = $xViv->getClaveDeEstadoABC();
                         $this->mClaveDeEstadoSIC = $xViv->getClaveDeEstadoEnSIC();
                         $this->mCalle = $xViv->getCalle();
                         $this->mNumeroExt = $xViv->getNumeroExterior();
                         $this->mNumeroInt = $xViv->getNumeroInterior();
                         $this->mColonia = $xViv->getColonia();
                     } else {
                         $this->mMessages .= "ERROR\tLa Persona " . $this->mClaveDePersona . " de Sucursal, no tiene Domicilio\r\n";
                     }
                 } else {
                     $this->mMessages .= "ERROR\tLa Persona " . $this->mClaveDePersona . " de Sucursal NO EXISTE\r\n";
                     $this->mInitPersona = false;
                 }
             }
         }
         $this->mInit = true;
     }
     return $this->mInit;
 }
    //$xSp->addEvent("onchange", "getNewCuenta");
    //$xSp->addEvent("onblur", "jsaGetValidacion()");
    $xFRM->addHElem($xSp->get(true));
    $xFRM->addHElem($xSel->getListaDeOrigenDeCaptacion()->get(true));
    $xFRM->addHElem($xSel->getListaDeTituloDeCaptacion()->get(true));
    $xFRM->addObservaciones();
    $xFRM->addHElem("<h3>" . $xFRM->l()->getT("TR.Otros") . "</h3><div id='idotrosdatos'></div>");
    $xFRM->addGrupoBasico("", DEFAULT_GRUPO);
    //$xFRM->addCuentaCaptacionInteres();
    $xFRM->addHElem("<h3>" . $xFRM->l()->getT("TR.Mancomunados") . "</h3>");
    $xFRM->addPersonaBasico("2");
    $xFRM->addPersonaBasico("3");
    $xFRM->addSubmit();
} else {
    $xS = new cSocio($idsocio);
    $idsocio = $xS->existe() == false ? false : $idsocio;
    if ($idsocio == DEFAULT_SOCIO) {
        $msg .= "ERROR\tPersona {$idsocio} OR cuenta {$idcuenta} INVALIDA\r\n";
    } else {
        $idsolicitud = DEFAULT_CREDITO;
        $idgrupo = parametro("idgrupo", DEFAULT_GRUPO, MQL_INT);
        $observacion = parametro("idobservaciones");
        $origencuenta = parametro("idorigencaptacion", DEFAULT_CAPTACION_ORIGEN, MQL_INT);
        $tipotitulo = parametro("idtitulocaptacion");
        $dias = parametro("iddias", 0, MQL_INT);
        $tasa = 0;
        $sucursal = getSucursal();
        $fechabaja = "2029-12-31";
        $fechaalta = parametro("idfecha", fechasys());
        $estatus = 10;
        $man1 = parametro("idsocio2", 0, MQL_INT);
 $cls = '';
 $observaciones = "";
 $cadena = explode(",", trim($bufer), 8);
 //Depurar
 $socio = $xT->cInt($cadena[0]);
 $credito = $xT->cInt($cadena[1]);
 $letra = $xT->cInt($cadena[2]);
 $capital = round($xT->cFloat($cadena[3]), 2);
 $interes = round($xT->cFloat($cadena[4]), 2);
 $iva = round($xT->cFloat($cadena[5]), 2);
 $ahorro = round($xT->cFloat($cadena[6]), 2);
 $observaciones = $xT->cChar($cadena[7]);
 $total = $capital + $ahorro + $interes + $iva;
 if (isset($socio) and isset($credito) and !empty($socio) and !empty($credito)) {
     $DSoc = new cSocio($socio);
     $SocioExiste = $DSoc->existe($socio);
     $CreditoExiste = $DSoc->existeCredito($credito);
     if ($SocioExiste == true and $CreditoExiste == true) {
         $DSoc->init();
         $nombre = $DSoc->getNombreCompleto();
         $nombre = substr($nombre, 0, 25);
         //Verificar el Saldo del Credito
         $CCred = new cCredito($credito, $socio);
         //echo "$credito ---- $socio<br>";
         $CCred->init();
         $DCred = $CCred->getDatosDeCredito();
         $saldo = $DCred["saldo_actual"];
         if (!isset($saldo) or $saldo == 0) {
             //$socio 		= "";
             if ($saldo != 0 && $capital != 0) {
                 $msg .= "{$iReg}\t{$socio}\t{$credito}\tDIF1\tEL Saldo({$saldo}) es menor al abono({$capital}), difiere por " . getFMoney($saldo - $capital) . " \r\n ";
$xFRM->addFootElement("<input type='hidden' name='personarelacionada' id='personarelacionada' value='' />");
$xFRM->addFootElement("<input type='hidden' id='idcolonia' name='idcolonia' value='' />");
if ($action == SYS_DOS) {
    $xSuc = new cSucursal(getSucursal());
    $xSuc->init();
    $cajalocal = $xSuc->getCajaLocalResidente();
    $xCL = new cCajaLocal($cajalocal);
    $xCL->init();
    $numeropropio = parametro("personarelacionada", DEFAULT_SOCIO);
    $avalado = parametro("avalado", 0, MQL_FLOAT);
    $depende = parametro("dependiente", false, MQL_BOOL);
    $tiporelacion = parametro("idtipoderelacion", DEFAULT_TIPO_RELACION);
    $tipoparentesco = parametro("idtipodeparentesco", DEFAULT_TIPO_CONSANGUINIDAD);
    $observaciones = parametro("idobservaciones");
    $xSoc = new cSocio($numeropropio);
    if ($xSoc->existe($numeropropio) == true and $numeropropio != DEFAULT_SOCIO) {
        $msg .= "WARN\tSE ENCONTRARON COINCIDENCIAS CON EL MISMO CODIGO, POR LO QUE SE CARGA LA CLAVE DE PERSONA\r\n";
        //$persona			= $xCL->getUltimoSocioRegistrado(true);
        //$xSoc->set($persona);
    } else {
        $nombre = parametro("nombre");
        $materno = parametro("materno");
        $paterno = parametro("paterno");
        $curp = parametro("curp");
        $rfc = parametro("rfc", DEFAULT_PERSONAS_RFC_GENERICO);
        $fnacimiento = parametro("idfecha-0", false);
        $fnacimiento = $fnacimiento == false ? fechasys() : $xF->getFechaISO($fnacimiento);
        $lnacimiento = $xLoc->DomicilioEstadoClaveABC();
        $tingreso = TIPO_INGRESO_RELACION;
        $ecivil = DEFAULT_ESTADO_CIVIL;
        $genero = DEFAULT_GENERO;