A continuacion les coloco el codigo y el formulario de como cargar dos combobox con la data contenida en una BD.
El codigo de este formulario es el siguiente:
PUBLIC Atencion AS Boolean
PUBLIC SUB Form_Open()
ME.Center()
LlenarCombo()
LaFecha()
END
PUBLIC SUB LaFecha()
DIM FechaActual AS Variant
FechaActual = Date(Day(Now) & «/» & Month(Now) & «/» & Year(Now))
Label9.Text = FechaActual
END
PUBLIC SUB LlenarCombo()
DIM query AS String
DIM resultado AS Result
DIM captura AS Integer
DIM i AS Integer
ModConexion.rs1 = ModConexion.db.Exec(«select codigo FROM laboratorio.datoslab»)
ModConexion.rs1.MoveFirst
captura = ModConexion.rs1.Count
i = 1
WHILE i <= captura
ComboBox1.Add(ModConexion.rs1!codigo)
ComboBox1.Refresh()
ModConexion.rs1.MoveNext
DEC (captura)
WEND
END
PUBLIC SUB Button4_Click()
ME.Close()
END
PUBLIC SUB ValidarVacios()
IF ComboBox1.Text = «» OR ComboBox2.Text = «» OR TextBox1.Text = «» OR TextBox2.Text = «» OR TextEdit1.Text = «» THEN
Message.Error(«Existen casillas vacias\n asegurese de llenarlas todas»)
Atencion = FALSE
TextBox1.Clear()
TextBox2.Clear()
TextEdit1.Clear()
ELSE
Atencion = TRUE
ENDIF
END
PUBLIC SUB ComboBox1_Change()
DIM Respuesta AS String
DIM query AS String
DIM resultado AS Result
DIM captura AS Integer
DIM i AS Integer
ComboBox2.Clear()
TextBox1.Clear()
TextBox2.Clear()
Respuesta = Trim(ComboBox1.Text)
query = «select * from laboratorio.datosequipo where codigo ='» & Respuesta & «‘»
ModConexion.consulta(query)
resultado = db.Exec(query)
ModConexion.rs1.MoveFirst
captura = ModConexion.rs1.Count
i = 1
WHILE i <= captura
ComboBox2.Add(ModConexion.rs1!codequipo)
ComboBox2.Refresh()
ModConexion.rs1.MoveNext
DEC (captura)
WEND
END
PUBLIC SUB ComboBox2_Change()
DIM Respuesta AS String
DIM query AS String
DIM resultado AS Result
Respuesta = Trim(ComboBox2.Text)
query = «select * from laboratorio.datosequipo where codequipo ='» & Respuesta & «‘»
ModConexion.consulta(query)
resultado = db.Exec(query)
IF resultado.Count > 0 THEN
TextBox1.Text = ModConexion.rs1!marca
TextBox2.Text = ModConexion.rs1!modelo
END IF
END
PUBLIC SUB Button1_Click()
DIM query AS String
ValidarVacios()
IF Atencion = TRUE THEN
query = «INSERT INTO laboratorio.mantenimiento set codlab='» & UCase(comboBox1.Text) & «‘, fecha='» & Trim(Label9.Text) & «‘, codequipo='» & UCase(ComboBox2.Text) & «‘, marca='» & UCase(TextBox1.Text) & «‘, modelo='» & UCase(textbox2.text) & «‘, falla='» & UCase(Trim(TextEdit1.text)) & «‘, entregado='» & UCase(TextBox3.Text) & «‘, dpto='» & UCase(ComboBox3.Text) & «‘»
ModConexion.consulta(query)
IF ModConexion.conexion() THEN
message.Info(«Los dato se insertaron satisfactoriamente»)
TextBox1.Clear()
TextBox2.Clear()
TextBox3.Clear()
TextEdit1.Clear()
ComboBox2.Clear()
ELSE
message.Error(«Los datos no se pudieron insertar»)
ENDIF
ENDIF
END
PUBLIC SUB Button2_Click()
END
Hola, he leido tus articulos sobre programacion en Gambas y ya estoy creando un pequeña aplicacion. Hace poco mas de 6 años que estoy programando en PHP, y ya casi se me olvidaba la forma de programar de estos tipos de lenguajes. Bueno pero gracias a tu post rapidamente me actualice. Ahora quiero utilizar unas funcion creadas en mysql, que usaba con php. Es posible hacer el llamado de esta funcion, estoy utilizando Exec con la consulta pero dan un error?
O hay otro metodo, uhhh como una llamada de funciones.?
Gracias.
A lo mejor te vale la orden SHELL, echale un vistaso al foro:
http://gambones.esp.am/index.php?topic=60.0
Hola. Ante todo felicitarte por tu blog. Estoy empezando a ‘bucear’ en Gambas, ya que hasta ahora estaba usando Access con Visual Basic. Estoy utilizando un Combobox y me surge la duda de si se puede asignar a cada item una key específica (por ejemplo el ID de la tabla: 34,77,12,…), o lo asigna directamente Gambas (0,1,2,…). También me gustaría saber si es posible añadir más de una columna en el Combo.
Saludos.
Buenos dias. Se pueden hacer las dos cosas. o asignarlas mediante un id, o decirle a gambas mediante las propiedades del objeto, que las asigne el. mediante codigo tambien es posible agregar una columna.
Podrías poner algún ejemplo. Muchas gracias.
Y como es para un fichero .txt???
buenos dias como coloco una imagen con la cabesera en db.report por favor
buena pregunta, no le he realizado, pero tratare en los proximos dias lo intenrare.
Saludos amigo, voy instalando Gambas en mi PC, no tengo ni la menor idea de como utilizar tus codigos, podias darme una amigo.
ok, no hay problema.
porque usas un combobox y no un datacombo?.
me parece muy buena tu explicacion soy nuevo en esto…podrias contestar mi pregunta para saber por donde encarar mi desarrollo?
saludos
saludos sera que puedes montar el ejemplo del codigo para descargar, gracias asi seria mas facil de experimentar el mismo..
Buenas noches.
A partir del lunes coloco una serie de codigos que lamentablemente los enlaces estan rotos. Gracias por reportar este. sera uno de los primeros que arregle.
¿Y cómo es la base de datos de ésta aplicación? Soy nuevo programando.