예제 #1
0
        private void btnAceptar_Click(object sender, EventArgs e)
        {
            try
            {

                if (!string.IsNullOrWhiteSpace(txtNombreIdioma.Text))
                {
                    List<Componente> componentes = new List<Componente>();
                    Componente componente;

                    CultureInfo culturaElegida = (CultureInfo)cboCulturas.SelectedItem;

                    DataTable tabla = (DataTable)this.gridTraduccion.DataSource;

                    foreach (DataRow row in tabla.Rows)
                    {
                        componente = new Componente();
                        componente.Idioma = new Idioma();
                        componente.Idioma.ID = culturaElegida.Name;
                        componente.Idioma.Nombre = txtNombreIdioma.Text.Trim();
                        componente.Leyenda = new Leyenda();
                        componente.Leyenda.ID = Convert.ToInt32(row[0]);
                        componente.Traduccion = string.IsNullOrWhiteSpace(Convert.ToString(row[2])) ? Convert.ToString(row[1]) : Convert.ToString(row[2]);

                        componentes.Add(componente);
                    }

                    if (GestorIdioma.ObtenerInstancia().InsertarNuevoIdioma(componentes))
                    {
                        MessageBox.Show("El idioma se ha creado correctamente", "Gestor de Idioma", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        LimpiarComponentes();
                    }
                }
                else
                {
                    MessageBox.Show("Debe ingresar un nombre de Idioma.", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            catch (Exception ex)
            {
                string mensajeError = ErrorManager.ObtenerInstancia().LoguearGenerarMensajeError(ex, MensajeError.NuevoIdiomaFallido, FormHelper.ObtenerInstancia().TraerUltimoIdioma());
                MessageBox.Show(mensajeError, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
예제 #2
0
        public List<Componente> TraerLeyendasTodas(string idIdioma)
        {
            try
            {
                List<Componente> componentes = new List<Componente>();
                Componente componente = null;

                using (SqlConnection conexion = Conexion.ObtenerInstancia().CrearConexionSQL())
                {

                    using (SqlCommand comando = conexion.CreateCommand())
                    {
                        comando.CommandType = CommandType.StoredProcedure;
                        comando.CommandText = "SPS_Componentes_Traduccion_Todos";
                        comando.Parameters.Add(new SqlParameter("@IdIdioma", idIdioma));

                        comando.Connection.Open();

                        SqlDataReader dataReader = comando.ExecuteReader(CommandBehavior.CloseConnection);

                        while (dataReader.Read())
                        {
                            componente = new Componente();

                            componente.Idioma = new Idioma();
                            componente.Idioma.ID = dataReader["IDIOMA_ID"].ToString();
                            componente.Idioma.Nombre = dataReader["IDIOMA_NOMBRE"].ToString();

                            componente.Leyenda = new Leyenda();
                            componente.Leyenda.ID = Convert.ToInt16(dataReader["LEYENDA_ID"]);
                            componente.Leyenda.Nombre = dataReader["LEYENDA_NOMBRE"].ToString();

                            componente.Traduccion = dataReader["TRADUCCION"].ToString();

                            componentes.Add(componente);
                        }
                    }

                }

                return componentes;
            }
            catch (AccesoBDException ex)
            {
                throw new SecurityDAOException("TraerLeyendasTodas", "AccesoBD", ex.Message, ex);
            }
            catch (SqlException ex)
            {
                throw new SecurityDAOException("TraerLeyendasTodas", "SQL", ex.Message, ex);
            }
            catch (Exception ex)
            {
                throw new SecurityDAOException("TraerLeyendasTodas", "General: " + ex.GetType().ToString(), ex.Message, ex);
            }
        }
예제 #3
0
        public bool InsertarTraduccion(Componente componente)
        {
            try
            {
                int filasAfectadas = 0;

                using (SqlConnection conexion = Conexion.ObtenerInstancia().CrearConexionSQL())
                {

                    using (SqlCommand comando = conexion.CreateCommand())
                    {
                        comando.CommandType = CommandType.StoredProcedure;
                        comando.CommandText = "SPI_Leyenda_Idioma";
                        comando.Parameters.Add(new SqlParameter("@IdIdioma", componente.Idioma.ID));
                        comando.Parameters.Add(new SqlParameter("@IdLeyenda", componente.Leyenda.ID));
                        comando.Parameters.Add(new SqlParameter("@Traduccion", componente.Traduccion));

                        comando.Connection.Open();

                        filasAfectadas = comando.ExecuteNonQuery();

                    }
                }

                if (filasAfectadas > 0)
                {
                    return true;
                }
                else
                {
                    return false;
                }

            }
            catch (AccesoBDException ex)
            {
                throw new SecurityDAOException("InsertarTraduccion", "AccesoBD", ex.Message, ex);
            }
            catch (SqlException ex)
            {
                throw new SecurityDAOException("InsertarTraduccion", "SQL", ex.Message, ex);
            }
            catch (Exception ex)
            {
                throw new SecurityDAOException("InsertarTraduccion", "General: " + ex.GetType().ToString(), ex.Message, ex);
            }
        }