private void Subir_Memo() { if (!string.IsNullOrEmpty(ID_Memo.Text) && ID_Memo.Text.All(char.IsDigit) && !string.IsNullOrEmpty(Destino_Memo.Text) && !string.IsNullOrEmpty(Comentario_Memo.Text)) { if (!string.IsNullOrEmpty(BuscarAdjunto_Memo.FileName)) //verificacion de campos { string Carpeta_Memo = @"C:\Gestion_Documental\Memos\"; //definir variables a utilizar string ext = ""; int aux = 0; char punto = '.'; string archivo = ""; StringBuilder errorMessages = new StringBuilder(); for (int i = 0; i < BuscarAdjunto_Memo.FileName.Length; i++) //extraigo la extension del archivo { if (BuscarAdjunto_Memo.FileName[i] == punto) { aux = 1; } if (aux == 1) { ext += BuscarAdjunto_Memo.FileName[i]; } } //termino de extraer extension del archivo archivo += Carpeta_Memo; //creo el directorio, nombre del archivo y extension archivo += ID_Memo.Text; archivo += ext; //termino de crear directorio, nombre del archivo y extension string Fecha = ""; //creo la fecha sin hora Fecha += Fecha_Memo.Value.Year; Fecha += "-"; Fecha += Fecha_Memo.Value.Month; Fecha += "-"; Fecha += Fecha_Memo.Value.Day; //termino de crear la fecha sin hora //string insert = "insert Memos values (@ID_Memo, @Adjunto, @Comentario, @Destino, @Fecha);"; string queryF = "insert Memos values ('"; // Comienzo a crear la Consulta queryF += ID_Memo.Text; queryF += "', '"; queryF += Destino_Memo.Text; queryF += "', '"; queryF += Comentario_Memo.Text; queryF += "', '"; queryF += Fecha; queryF += "', '"; queryF += archivo; queryF += "');"; //termino la consulta SqlCommand Ins_Memo = new SqlCommand(queryF, Conexion.Conectar()); //creo entorno consulta try // intentare ejecutar la consulta { Ins_Memo.ExecuteNonQuery(); //ejecuto consulta System.IO.File.Copy(BuscarAdjunto_Memo.FileName, archivo, true); //creo copia del memo en directorio y nombre correspondiente ID_Memo.Clear(); //limpio campos Destino_Memo.Clear(); //limpio campos Comentario_Memo.Clear(); //limpio campos BuscarAdjunto_Memo.Reset(); //limpio campos LAdjunto_Memo.Text = ""; //limpio campos string query_Memos = "select ID_Memo, Destino, Comentario, Fecha, Archivo From Memos order by ID_Memo desc"; SqlCommand Consulta_Memos = new SqlCommand(query_Memos, Conexion.Conectar()); SqlDataAdapter Date_Memos = new SqlDataAdapter(Consulta_Memos) { SelectCommand = Consulta_Memos }; DataTable Datos_Memos = new DataTable(); Date_Memos.Fill(Datos_Memos); Grilla_Memos.DataSource = Datos_Memos; Grilla_Memos.Columns[0].HeaderText = "Numero Memo"; Grilla_Memos.Columns[1].HeaderText = "Destino"; Grilla_Memos.Columns[2].HeaderText = "Comentario"; Grilla_Memos.Columns[3].HeaderText = "Fecha"; Grilla_Memos.Columns[4].Visible = false; MessageBox.Show("Memo creado Exitosamente"); //aviso que se creo con exito } catch (SqlException ex) //procedimiento si falla la query { for (int i = 0; i < ex.Errors.Count; i++) //ejecuto errores { errorMessages.Append("Index #" + i + "\n" + "Message: " + ex.Errors[i].Message + "\n" + "LineNumber: " + ex.Errors[i].LineNumber + "\n" + "Source: " + ex.Errors[i].Source + "\n" + "Procedure: " + ex.Errors[i].Procedure + "\n"); } Console.WriteLine(errorMessages.ToString()); //aviso en consola el error ID_Memo.Clear(); //limpio campos Destino_Memo.Clear(); //limpio campos Comentario_Memo.Clear(); //limpio campos BuscarAdjunto_Memo.Reset(); //limpio campos LAdjunto_Memo.Text = ""; //limpio campos MessageBox.Show("Error en crear el Memo"); //aviso que no se creo el memo } } } //Rebotar y limpiar formularios if (string.IsNullOrEmpty(ID_Memo.Text) || !ID_Memo.Text.All(char.IsDigit)) //Rebotar y limpiar formularios { Help.ShowPopup(ID_Memo, "Numero de memo no valido", new Point(ID_Memo.Right, ID_Memo.Bottom)); ID_Memo.Clear(); } if (string.IsNullOrEmpty(Destino_Memo.Text)) //Rebotar y limpiar formularios { Help.ShowPopup(Destino_Memo, "Destino Invalido", new Point(Destino_Memo.Right, Destino_Memo.Bottom)); Destino_Memo.Clear(); } if (string.IsNullOrEmpty(Comentario_Memo.Text)) //Rebotar y limpiar formularios { Help.ShowPopup(Comentario_Memo, "Comentario Invalido", new Point(Comentario_Memo.Right, Destino_Memo.Bottom)); Comentario_Memo.Clear(); } if (string.IsNullOrEmpty(BuscarAdjunto_Memo.FileName)) //Rebotar y limpiar formularios { Help.ShowPopup(BAdjuntar_Memo, "ingrese documento", new Point(BAdjuntar_Memo.Right, BAdjuntar_Memo.Bottom)); } //fin de rebotar y limpiar formularios }
private void Subir_Carta() { //verifico campos if (!string.IsNullOrEmpty(De_Carta.Text) && !string.IsNullOrEmpty(Para_Carta.Text) && !string.IsNullOrEmpty(Comentario_Carta.Text) && !string.IsNullOrEmpty(BuscarAdjunto_Carta.FileName)) { StringBuilder errorMessages = new StringBuilder(); //donde guardare el mensaje de error de bbdd DataTable Ultimo_Id = new DataTable(); //creo datatable donde guardare el ultimo id de la bbdd string Traer_Id_Query = "select top 1 ID from Cartas order by ID desc"; // creo consulta para obtener el ultimo id SqlCommand Get_ID_Carta = new SqlCommand(Traer_Id_Query, Conexion.Conectar()); //preparo consulta try { Get_ID_Carta.ExecuteNonQuery(); //ejecuto consulta string Carpeta_Carta = @"C:\Gestion_Documental\Cartas\"; //donde guardare cartas string Archivo = ""; int Nuevo_Id = 0; string Fecha = ""; Fecha += Fecha_Carta.Value.Year; Fecha += "-"; Fecha += Fecha_Carta.Value.Month; Fecha += "-"; Fecha += Fecha_Carta.Value.Day; string ext = ""; char punto = '.'; int aux = 0; SqlDataAdapter datos = new SqlDataAdapter(Get_ID_Carta); //acomodo los datos datos.Fill(Ultimo_Id); //los mando a la variable de datatable //MessageBox.Show(UltimoId.Rows[0][0].ToString()); int ID = Int32.Parse(Ultimo_Id.Rows[0][0].ToString()); //los almaceno como entero Nuevo_Id = (ID + 1); //le sumo uno para tener el nuevo id de la carta for (int i = 0; i < BuscarAdjunto_Carta.FileName.Length; i++) //extraigo la extension del archivo { if (BuscarAdjunto_Carta.FileName[i] == punto) { aux = 1; } if (aux == 1) { ext += BuscarAdjunto_Carta.FileName[i]; } } Archivo += Carpeta_Carta; Archivo += De_Carta.Text; Archivo += Nuevo_Id.ToString(); Archivo += ext; string Query_Subir_Carta = "insert into Cartas values (@ID, @De, @Para, @Comentario, @Fecha, @Archivo);"; SqlCommand Subir_Carta = new SqlCommand(Query_Subir_Carta, Conexion.Conectar()); Subir_Carta.Parameters.AddWithValue("@ID", Nuevo_Id.ToString()); Subir_Carta.Parameters.AddWithValue("@De", De_Carta.Text); Subir_Carta.Parameters.AddWithValue("@Para", Para_Carta.Text); Subir_Carta.Parameters.AddWithValue("@Fecha", Fecha); Subir_Carta.Parameters.AddWithValue("@Comentario", Comentario_Carta.Text); Subir_Carta.Parameters.AddWithValue("@Archivo", Archivo); try { Subir_Carta.ExecuteNonQuery(); System.IO.File.Copy(BuscarAdjunto_Carta.FileName, Archivo, true); //creo copia de la Carta en directorio y nombre correspondiente De_Carta.Clear(); //limpio campos Para_Carta.Clear(); //limpio campos Comentario_Carta.Clear(); //limpio campos BuscarAdjunto_Carta.Reset(); //limpio campos L_Ad_Carta.Text = ""; //limpio campos string query_Cartas = "select ID, De, Para, Comentario, Fecha, Archivo From Cartas order by ID desc"; SqlCommand consulta_Cartas = new SqlCommand(query_Cartas, Conexion.Conectar()); SqlDataAdapter date_Cartas = new SqlDataAdapter(consulta_Cartas) { SelectCommand = consulta_Cartas }; DataTable Datos_Cartas = new DataTable(); date_Cartas.Fill(Datos_Cartas); Grilla_Cartas.DataSource = Datos_Cartas; Grilla_Cartas.Columns[1].HeaderText = "De"; Grilla_Cartas.Columns[2].HeaderText = "Para"; Grilla_Cartas.Columns[3].HeaderText = "Comentario"; Grilla_Cartas.Columns[4].HeaderText = "Fecha"; Grilla_Cartas.Columns[0].Visible = false; Grilla_Cartas.Columns[5].Visible = false; MessageBox.Show("Carta subida con exito! jiji :D"); } catch (SqlException ex) { for (int i = 0; i < ex.Errors.Count; i++)//ejecuto errores { errorMessages.Append("Index #" + i + "\n" + "Message: " + ex.Errors[i].Message + "\n" + "LineNumber: " + ex.Errors[i].LineNumber + "\n" + "Source: " + ex.Errors[i].Source + "\n" + "Procedure: " + ex.Errors[i].Procedure + "\n"); } Console.WriteLine(errorMessages.ToString()); //aviso en consola el error De_Carta.Clear(); //limpio campos Para_Carta.Clear(); //limpio campos Comentario_Carta.Clear(); //limpio campos BuscarAdjunto_Carta.Reset(); //limpio campos L_Ad_Carta.Text = ""; //limpio campos MessageBox.Show("No se pudo subir la carta :c"); //aviso que no se pudo subir la carta } } catch (SqlException ex) { for (int i = 0; i < ex.Errors.Count; i++)//ejecuto errores { errorMessages.Append("Index #" + i + "\n" + "Message: " + ex.Errors[i].Message + "\n" + "LineNumber: " + ex.Errors[i].LineNumber + "\n" + "Source: " + ex.Errors[i].Source + "\n" + "Procedure: " + ex.Errors[i].Procedure + "\n"); } Console.WriteLine(errorMessages.ToString()); //aviso en consola el error ID_Memo.Clear(); //limpio campos Destino_Memo.Clear(); //limpio campos Comentario_Memo.Clear(); //limpio campos BuscarAdjunto_Memo.Reset(); //limpio campos LAdjunto_Memo.Text = ""; //limpio campos MessageBox.Show("No se pudo conectar con la base de datos :c"); //aviso que no se pudo conectar a la base de datos } } if (string.IsNullOrEmpty(De_Carta.Text)) { Help.ShowPopup(BAdjuntar_Carta, "Ingrese datos", new Point(De_Carta.Right, De_Carta.Bottom)); } if (string.IsNullOrEmpty(Para_Carta.Text)) { Help.ShowPopup(BAdjuntar_Carta, "Ingrese datos", new Point(Para_Carta.Right, Para_Carta.Bottom)); } if (string.IsNullOrEmpty(Comentario_Carta.Text)) { Help.ShowPopup(BAdjuntar_Carta, "Ingrese datos", new Point(Comentario_Carta.Right, Comentario_Carta.Bottom)); } if (string.IsNullOrEmpty(BuscarAdjunto_Carta.FileName)) { Help.ShowPopup(BAdjuntar_Carta, "Ingrese datos", new Point(BAdjuntar_Carta.Right, BAdjuntar_Carta.Bottom)); } }