https://foro.gambas-es.org/viewtopic.php?f=1&t=1764&p=10310#p10310 ----------------------------------- jousseph Domingo, 31 Julio 2011, 06:33 Re: Necesito Ideas De Diseño ----------------------------------- Pues el mio es por Textbox: lo de la gridview no lo veo tan importante como la de las textbox: [img]http://foro.gambas-es.org/files/images/1000/modificar_y_eliminar_coordinadores.jpg[/img] PUBLIC SUB MovieBox1_MouseDown() verregistrosCO.Show Message.Info("BIENVENIDO AQUÍ PODRÁ VER REGISTROS DE COORDINADORES") END PRIVATE asiscon AS Connection PRIVATE asisresul AS Result PUBLIC SUB Form_Open() ValueBox1.Enabled = FALSE TextBox1.Enabled = FALSE TextBox2.Enabled = FALSE TextBox3.Enabled = FALSE TextBox4.Enabled = FALSE TextBox5.Enabled = FALSE ComboBox1.Enabled = FALSE ComboBox2.Enabled = FALSE ComboBox3.Enabled = FALSE ValueBox2.Enabled = FALSE asiscon = NEW Connection asiscon.Type = "sqlite" asiscon.Host = "/home/jousseph/DESARROLLO-JOU/GAMBAS/control_asistencia" asiscon.Name = "asistencia_asesores" TRY asiscon.Open() IF ERROR THEN Message.Error("ERROR AL CONECTAR BASE DE DATOS DEBE SER EL CODIGO MAL COMPILADO.") asiscon = NULL ELSE asisresul = asiscon.Exec("Select * from coordinador") IF asisresul.Available THEN MostrarCampos END IF END PUBLIC SUB MostrarCampos() ValueBox1.Value = asisresul["codigo"] TextBox1.text = asisresul["cedula"] TextBox2.text = asisresul["nombres"] TextBox3.text = asisresul["apellidos"] TextBox4.text = asisresul["direccion"] ComboBox3.text = asisresul["codigo_cel"] TextBox5.text = asisresul["telefono"] ComboBox1.text = asisresul["sexo"] ComboBox2.Text = asisresul["area"] ValueBox2.Value = asisresul["fecha"] END PUBLIC SUB Button3_Click() Message.Info("SE HA HABILITADO EL REGISTRO PARA QUE LO MODIFIQUE SI LO LIMPIA QUEDARÁ DESHABILITADO") TextBox1.Enabled = TRUE TextBox2.Enabled = TRUE TextBox3.Enabled = TRUE TextBox4.Enabled = TRUE TextBox5.Enabled = TRUE ComboBox1.Enabled = TRUE ComboBox2.Enabled = TRUE ComboBox3.Enabled = TRUE END PUBLIC SUB Button2_Click() TextBox1.text = "" TextBox2.text = "" TextBox3.text = "" TextBox4.text = "" TextBox5.text = "" ValueBox1.Enabled = FALSE TextBox1.Enabled = FALSE TextBox2.Enabled = FALSE TextBox3.Enabled = FALSE TextBox4.Enabled = FALSE TextBox5.Enabled = FALSE ComboBox1.Enabled = FALSE ComboBox2.Enabled = FALSE ComboBox3.Enabled = TRUE Message.Info("SE DESHABILITÓ EL REGISTRO PERO PODRA HABILITARLO DE NUEVO") END PUBLIC SUB Button4_Click() DIM VarResult AS Result Message.Info("CUIDADO ELIJA BIEN SI DESEA ELIMINAR ALGÚN REGISTRO") IF Message.Question("¿DESEA ELIMINAR EL REGISTRO?", "SI", "NO") = 1 THEN VarResult = asiscon.Edit("coordinador", "codigo=" & asisresul["codigo"]) VarResult.Delete asisresul = asiscon.Exec("Select * from coordinador") Message.Delete("SU REGISTRO HA SIDO ELIMINADO CON ÉXITO") ME.Close modificaryborrarCO.Show END IF END PUBLIC SUB Button6_Click() asisresul.MoveNext() IF NOT (asisresul.Available) THEN asisresul.MoveLast() MostrarCampos END PUBLIC SUB Button7_Click() asisresul.MovePrevious() IF NOT asisresul.Available THEN asisresul.Movefirst() MostrarCampos END PUBLIC SUB Button5_Click() DIM VarResult AS Result Message.Info("CUIDADO ELIJA BIEN SI DESEA MODIFICAR ALGÚN REGISTRO") IF Message.Question("¿DESEA MODIFICAR EL REGISTRO?", "SI", "NO") = 1 THEN VarResult = asiscon.Edit("coordinador", "codigo=" & asisresul["codigo"]) VarResult["cedula"] = TextBox1.text VarResult["nombres"] = TextBox2.text VarResult["apellidos"] = TextBox3.text VarResult["direccion"] = TextBox4.text VarResult["codigo_cel"] = ComboBox2.text VarResult["telefono"] = TextBox5.text VarResult["sexo"] = ComboBox1.text VarResult["area"] = ComboBox2.text VarResult["fecha"] = ValueBox2.text VarResult.Update asisresul = asiscon.Exec("Select * from coordinador") Message.Info("SU MODIFICACIÓN SE HA EFECTUADO EXITOSAMENTE") Message.Info("SI QUIERE VER LOS CAMBIOS EFECTUADOS PUEDE VER DE NUEVO LOS REGISTROS") ME.Close modificaryborrarCO.Show ENDIF END PUBLIC SUB Button8_Click() asisresul.MoveLast() MostrarCampos END PUBLIC SUB TextBox7_KeyPress() END PUBLIC SUB Button1_Click() ME.Close END PUBLIC SUB PictureBox6_MouseDown() Button5.Enabled = TRUE END PUBLIC SUB PictureBox7_MouseDown() Button4.Enabled = TRUE END PUBLIC SUB PictureBox8_MouseDown() Button5.Enabled = FALSE END PUBLIC SUB PictureBox10_MouseDown() Button4.Enabled = FALSE END PUBLIC SUB PictureBox5_MouseDown() END PUBLIC SUB PictureBox1_MouseDown() END PUBLIC SUB Button9_Click() DIM I AS Integer DIM rs AS Result DIM found AS Boolean found = FALSE rs = asiscon.Exec("select *from coordinador") I = 0 IF TextBox8.Text = "" THEN Message.Info("DEBE LLENAR EL CAMPO REQUERIDO") ELSE rs.MoveFirst WHILE I < rs.Count ' rs = coneccion.asiscon.Exec("SELECT * FROM asesores WHERE codigo = &1", textbox8.text) IF rs.Available THEN IF rs!codigo LIKE "*" & TextBox8.Text & "*" THEN found = TRUE EXIT ELSE rs.MoveNext ENDIF ELSE EXIT ENDIF WEND ENDIF ' IF asisresul.Available THEN IF found THEN ValueBox1.Value = rs["codigo"] TextBox1.text = rs["cedula"] TextBox2.text = rs["nombres"] TextBox3.text = rs["apellidos"] TextBox4.text = rs["direccion"] ComboBox3.Text = rs["codigo_cel"] TextBox5.text = rs["telefono"] ComboBox1.text = rs["sexo"] ComboBox2.Text = rs["area"] ValueBox2.Value = rs["fecha"] Button9.SetFocus ELSE Message.Error("CODIGO O REGISTRO NO ENCONTRADO") ENDIF END PUBLIC SUB TextBox8_Change() CInt(TextBox8.Text) 'Convierte el numero en entero CATCH TextBox8.Text = Mid$(TextBox8.Text, 1, -1) 'Si no es un numero borra el caracter STOP EVENT END PUBLIC SUB TextBox8_GotFocus() ValueBox1.Value = "" TextBox1.text = "" TextBox2.text = "" TextBox3.text = "" TextBox4.text = "" TextBox5.text = "" ComboBox1.text = "" ComboBox2.Text = "" ComboBox3.Text = "" ValueBox2.Value = "" END La idea es hacer una mini consulta ese mismo usuario o personal se puede agregar modificar o eliminar. Luego donde esta el dibujito del asesorse le da click para ver una tableview puede ver el registro e imprimirlo por supuesto guardarlo en html [img]http://foro.gambas-es.org/files/images/1000/consultas_de_coordinadores_con_opciones.jpg[/img] Este posee a la ves un registro general y la persona que se quiere consultar en tableview pero el que me interesa hacer modificaciones es en la textbox y le hago un ME.CLOSE luego un abrir de nuevo.show para actualizar lo visto en textbox este es el codigo: Ejemplos: PUBLIC SUB Form_Open() Label1.Text = ComboBox2.Text IF coneccion.conectarbase() THEN RETURN tabla.Clear() tabla.Columns.Count = 10 tabla.Columns[0].Text = "codigo" tabla.Columns[1].Text = "cedula" tabla.Columns[2].Text = "nombres" tabla.Columns[3].Text = "apellidos" tabla.Columns[4].Text = "direccion" tabla.Columns[5].Text = "codigo_cel" tabla.Columns[6].Text = "telefono" tabla.Columns[7].Text = "sexo" tabla.Columns[8].Text = "area" tabla.Columns[9].Text = "fecha" END PUBLIC SUB Button1_Click() DIM fila AS Integer Button1.Enabled = FALSE Button7.Enabled = FALSE IF Label1.Text = "CODIGO" THEN coneccion.asisresul = coneccion.asiscon.Exec("Select *from coordinador where codigo='" & TextBox2.Text & "'") fila = 0 DO WHILE coneccion.asisresul.Available tabla.Rows.Insert(fila) tabla[fila, 0].Text = coneccion.asisresul["codigo"] tabla[fila, 1].Text = coneccion.asisresul["cedula"] tabla[fila, 2].Text = coneccion.asisresul["nombres"] tabla[fila, 3].Text = coneccion.asisresul["apellidos"] tabla[fila, 4].Text = coneccion.asisresul["direccion"] tabla[fila, 5].Text = coneccion.asisresul["codigo_cel"] tabla[fila, 6].Text = coneccion.asisresul["telefono"] tabla[fila, 7].Text = coneccion.asisresul["sexo"] tabla[fila, 8].Text = coneccion.asisresul["area"] tabla[fila, 9].Text = coneccion.asisresul["fecha"] coneccion.asisresul.MoveNext() fila = fila + 1 LOOP tabla.Refresh ENDIF IF Label1.Text = "CEDULA" THEN coneccion.asisresul = coneccion.asiscon.Exec("Select *from coordinador where cedula='" & TextBox2.Text & "'") fila = 0 DO WHILE coneccion.asisresul.Available tabla.Rows.Insert(fila) tabla[fila, 0].Text = coneccion.asisresul["codigo"] tabla[fila, 1].Text = coneccion.asisresul["cedula"] tabla[fila, 2].Text = coneccion.asisresul["nombres"] tabla[fila, 3].Text = coneccion.asisresul["apellidos"] tabla[fila, 4].Text = coneccion.asisresul["direccion"] tabla[fila, 5].Text = coneccion.asisresul["codigo_cel"] tabla[fila, 6].Text = coneccion.asisresul["telefono"] tabla[fila, 7].Text = coneccion.asisresul["sexo"] tabla[fila, 8].Text = coneccion.asisresul["area"] tabla[fila, 9].Text = coneccion.asisresul["fecha"] coneccion.asisresul.MoveNext() fila = fila + 1 LOOP tabla.Refresh ENDIF fila = fila + 1 IF Label1.Text = "NOMBRES" THEN coneccion.asisresul = coneccion.asiscon.Exec("Select *from coordinador where nombres='" & TextBox2.Text & "'") fila = 0 DO WHILE coneccion.asisresul.Available tabla.Rows.Insert(fila) tabla[fila, 0].Text = coneccion.asisresul["codigo"] tabla[fila, 1].Text = coneccion.asisresul["cedula"] tabla[fila, 2].Text = coneccion.asisresul["nombres"] tabla[fila, 3].Text = coneccion.asisresul["apellidos"] tabla[fila, 4].Text = coneccion.asisresul["direccion"] tabla[fila, 5].Text = coneccion.asisresul["codigo_cel"] tabla[fila, 6].Text = coneccion.asisresul["telefono"] tabla[fila, 7].Text = coneccion.asisresul["sexo"] tabla[fila, 8].Text = coneccion.asisresul["area"] tabla[fila, 9].Text = coneccion.asisresul["fecha"] coneccion.asisresul.MoveNext() fila = fila + 1 LOOP ENDIF IF Label1.Text = "SEXO" THEN coneccion.asisresul = coneccion.asiscon.Exec("Select *from coordinador where sexo='" & TextBox2.Text & "'") fila = 0 DO WHILE coneccion.asisresul.Available tabla.Rows.Insert(fila) tabla[fila, 0].Text = coneccion.asisresul["codigo"] tabla[fila, 1].Text = coneccion.asisresul["cedula"] tabla[fila, 2].Text = coneccion.asisresul["nombres"] tabla[fila, 3].Text = coneccion.asisresul["apellidos"] tabla[fila, 4].Text = coneccion.asisresul["direccion"] tabla[fila, 5].Text = coneccion.asisresul["codigo_cel"] tabla[fila, 6].Text = coneccion.asisresul["telefono"] tabla[fila, 7].Text = coneccion.asisresul["sexo"] tabla[fila, 8].Text = coneccion.asisresul["area"] tabla[fila, 9].Text = coneccion.asisresul["fecha"] coneccion.asisresul.MoveNext() fila = fila + 1 LOOP ENDIF IF Label1.Text = "ÁREA" THEN coneccion.asisresul = coneccion.asiscon.Exec("Select *from coordinador where area='" & TextBox2.Text & "'") fila = 0 DO WHILE coneccion.asisresul.Available tabla.Rows.Insert(fila) tabla[fila, 0].Text = coneccion.asisresul["codigo"] tabla[fila, 1].Text = coneccion.asisresul["cedula"] tabla[fila, 2].Text = coneccion.asisresul["nombres"] tabla[fila, 3].Text = coneccion.asisresul["apellidos"] tabla[fila, 4].Text = coneccion.asisresul["direccion"] tabla[fila, 5].Text = coneccion.asisresul["codigo_cel"] tabla[fila, 6].Text = coneccion.asisresul["telefono"] tabla[fila, 7].Text = coneccion.asisresul["sexo"] tabla[fila, 8].Text = coneccion.asisresul["area"] tabla[fila, 9].Text = coneccion.asisresul["fecha"] coneccion.asisresul.MoveNext() fila = fila + 1 LOOP ENDIF IF Label1.Text = "FECHA DE INGRESO" THEN coneccion.asisresul = coneccion.asiscon.Exec("Select *from coordinador where fecha='" & TextBox2.Text & "'") fila = 0 DO WHILE coneccion.asisresul.Available tabla.Rows.Insert(fila) tabla[fila, 0].Text = coneccion.asisresul["codigo"] tabla[fila, 1].Text = coneccion.asisresul["cedula"] tabla[fila, 2].Text = coneccion.asisresul["nombres"] tabla[fila, 3].Text = coneccion.asisresul["apellidos"] tabla[fila, 4].Text = coneccion.asisresul["direccion"] tabla[fila, 5].Text = coneccion.asisresul["codigo_cel"] tabla[fila, 6].Text = coneccion.asisresul["telefono"] tabla[fila, 7].Text = coneccion.asisresul["sexo"] tabla[fila, 8].Text = coneccion.asisresul["area"] tabla[fila, 9].Text = coneccion.asisresul["fecha"] coneccion.asisresul.MoveNext() fila = fila + 1 LOOP ENDIF END PUBLIC SUB ComboBox2_Click() Label1.Text = ComboBox2.Text END PUBLIC SUB Button5_Click() ME.Close END PUBLIC SUB Button4_Click() tabla.Clear Button1.Enabled = TRUE Button7.Enabled = TRUE END PUBLIC SUB Button7_Click() DIM fila AS Integer coneccion.asisresul = coneccion.asiscon.Exec("Select *from coordinador ") fila = 0 DO WHILE coneccion.asisresul.Available tabla.Rows.Insert(fila) tabla[fila, 0].Text = coneccion.asisresul["codigo"] tabla[fila, 1].Text = coneccion.asisresul["cedula"] tabla[fila, 2].Text = coneccion.asisresul["nombres"] tabla[fila, 3].Text = coneccion.asisresul["apellidos"] tabla[fila, 4].Text = coneccion.asisresul["direccion"] tabla[fila, 5].Text = coneccion.asisresul["codigo_cel"] tabla[fila, 6].Text = coneccion.asisresul["telefono"] tabla[fila, 7].Text = coneccion.asisresul["sexo"] tabla[fila, 8].Text = coneccion.asisresul["area"] tabla[fila, 9].Text = coneccion.asisresul["fecha"] coneccion.asisresul.MoveNext() fila = fila + 1 LOOP tabla.Refresh Button7.Enabled = FALSE Button1.Enabled = FALSE END PUBLIC SUB Button6_Click() DIM ruta AS String DIM archivo AS File DIM i, j AS Integer ruta = User.Home &/ "Reporte de Coordinadores.html" Message.Warning("RECUERDE GUARDAR CADA REPORTE APARTE, DEBIDO A QUE SOBRECRIBE EL ANTERIOR!") IF Message.Question(" ¿DESEA GUARDAR UN REPORTE DE COORDINADORES?", "SI", "NO") = 1 THEN OPEN ruta FOR WRITE CREATE AS #archivo PRINT #archivo, "" PRINT #archivo, "Reporte en HTML de Administradores" PRINT #archivo, "" PRINT #archivo, "" PRINT #archivo, " " PRINT #archivo, " " PRINT #archivo, " " PRINT #archivo, " " PRINT #archivo, " " PRINT #archivo, " " PRINT #archivo, " " PRINT #archivo, " " PRINT #archivo, " " PRINT #archivo, " " PRINT #archivo, " " PRINT #archivo, " " PRINT #archivo, " " FOR i = 0 TO tabla.rows.Count - 1 PRINT #archivo, " " FOR j = 0 TO tabla.Columns.Count - 1 PRINT #archivo, " " NEXT PRINT #archivo, " " NEXT PRINT #archivo, "
" PRINT #archivo, "

Listado de Administradores

" PRINT #archivo, "
CodigoCedulaNombresApellidosDireccionCodigo telefonoTelefonoSexoAreaFecha de Ingreso
" & tabla[i, j].Text & "
" PRINT #archivo, "" PRINT #archivo, "" CLOSE #archivo Message.Info("SE HA CREADO UN REPORTE EN MODO HTML CON ÉXITO (GUARDADO EN EL DIRECTORIO PRINCIPAL)") ENDIF END ESTOS SON OTROS EJEMPLOS DE DISEÑOS POSIBLES: [img]http://foro.gambas-es.org/files/images/1000/acceso_principal_del_sistema.jpg[/img] [img]http://foro.gambas-es.org/files/images/1000/agregar_asesor_datos_completos.jpg[/img] [img]http://foro.gambas-es.org/files/images/1000/asistencia_de_asesores.jpg[/img]