public Entidad ConsultarXId(Entidad parametro)
{
List<Parametro> parametros;
Parametro parametroQuery = new Parametro();
DaoUbicacion baseDeDatosUbicacion = FabricaDAOSqlServer.ObtenerDaoUbicacionM7();
CompetenciaM7 idCompetencia = (CompetenciaM7)parametro;
CompetenciaM7 competencia;
try
{
if (idCompetencia.Id > 0)
{
parametros = new List<Parametro>();
competencia = (CompetenciaM7)FabricaEntidades.ObtenerCompetenciaM7();
parametroQuery = new Parametro(RecursosDAOModulo7.ParamIdCompetencia, SqlDbType.Int, idCompetencia.Id.ToString(), false);
parametros.Add(parametroQuery);
DataTable dt = this.EjecutarStoredProcedureTuplas(RecursosDAOModulo7.ConsultarCompetenciaXId, parametros);
foreach (DataRow row in dt.Rows)
{
competencia.Id = int.Parse(row[RecursosDAOModulo7.AliasIdCompetencia].ToString());
competencia.Nombre = row[RecursosDAOModulo7.AliasCompetenciaNombre].ToString();
competencia.TipoCompetencia = row[RecursosDAOModulo7.AliasCompetenciaTipo].ToString();
competencia.FechaInicio = DateTime.Parse(row[RecursosDAOModulo7.AliasCompetenciaFechaInicio].ToString());
competencia.FechaFin = DateTime.Parse(row[RecursosDAOModulo7.AliasCompetenciaFechaFin].ToString());
competencia.Costo = float.Parse(row[RecursosDAOModulo7.AliasCompetenciaCosto].ToString());
UbicacionM7 idUbicacion = (UbicacionM7)FabricaEntidades.ObtenerUbicacionM7();
idUbicacion.Id = int.Parse(row[RecursosDAOModulo7.AliasCompetenciaUbicacionId].ToString());
competencia.Ubicacion = (UbicacionM7)baseDeDatosUbicacion.ConsultarXId(idUbicacion);
}
}
else
{
throw new NumeroEnteroInvalidoException(RecursosDAOModulo7.Codigo_Numero_Parametro_Invalido,
RecursosDAOModulo7.Mensaje_Numero_Parametro_invalido, new Exception());
}
}
catch (SqlException ex)
{
throw new ExceptionSKDConexionBD(RecursoGeneralBD.Codigo,RecursoGeneralBD.Mensaje, ex);
}
catch (NumeroEnteroInvalidoException ex)
{
throw new NumeroEnteroInvalidoException(RecursosDAOModulo7.Codigo_Numero_Parametro_Invalido,
RecursosDAOModulo7.Mensaje_Numero_Parametro_invalido, new Exception());
}
catch (FormatException ex)
{
throw new NumeroEnteroInvalidoException(RecursosDAOModulo7.Codigo_Numero_Parametro_Invalido,
RecursosDAOModulo7.Mensaje_Numero_Parametro_invalido, new Exception());
}
catch (ExceptionSKDConexionBD ex)
{
throw ex;
}
catch (Exception ex)
{
throw new ExceptionSKD(RecursosDAOModulo7.MensajeExceptionSKD, ex);
}
return competencia;
}