Ver Mensaje Individual
  #3 (permalink)  
Antiguo 15/03/2009, 11:40
mumo2006
 
Fecha de Ingreso: agosto-2006
Mensajes: 92
Antigüedad: 18 años, 8 meses
Puntos: 0
Respuesta: VB conectado a Access 03

Primero que todo.
Muy agradecido por la ayuda.
Segundo. Quisiera comentar lo que hago en mi caso. En varios de los forms cargo combos con datos de la base, lo que si me encargue de que una vez cargados, la conexion se cierra inmediatamente.
En caso de guardar datos, es lo mismo. Una vez realizado el proceso de ingreso de datos, cierro la conexion a la base de datos, lo que si permanece conectada la unidad de red que he agregado al host.

Me podrias ayudar un poco mas con el tema del puntero para el acceso a la base de datos? Ahi me quedé un poco enredado.

Adjunto el codigo que poseo en la conexion a la hora de guardar los datos.


Esta es la carga de los datos en el combo. La cual esta en el evento formload:

////////////////////////

Dim con As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim txtsql As String
con.Open ("dsn=gestion_ejecutivos")
On Error Resume Next
rs.Open "Select * From tb_usuarios", con
Do Until rs.EOF()
Combo1.AddItem rs!nom_usuario
rs.MoveNext
Loop
con.Close

////////////////////////

Luego el codigo para guardar datos en la tabla

/////////////////////////////////////////////////////////////////////

Private Sub Command2_Click()
If (RichTextBox1.Text = "" And RichTextBox1.Visible = True) Or Combo1.Text = "" Or Text1.Text = "" Or Combo2.Text = "" Or Combo3.Text = "" Or Combo4.Text = "" Or Combo5.Text = "" Or Combo6.Text = "" Or Combo7.Text = "" Or (Option1.Value = False And Option2.Value = False) Then
MsgBox "Por favor ingrese todos los datos solicitados"
Else

Dim mensaje As String
mensaje = MsgBox("Esta de seguro de guardar estos datos?", 4164)

If mensaje = 6 Then

Dim con As New ADODB.Connection
Dim rs As New ADODB.Recordset
Dim txtsql As String
con.Open ("dsn=gestion_ejecutivos")
On Error Resume Next

If Option1.Value = True Then
txtsql = "INSERT INTO tb_evaluaciones(fono_cliente,manejo_y_claridad,act itud_ante_req,solucion,oportunidad_de_mejora,dia_e val,mes_eval,ano_eval,nom_usuario,area,gestion_a_r ealizar)Values('" & Text1 + "'," & Combo5.Text & "," & Combo6.Text & ",' SI ','" + Combo7.Text & "','" + Combo2.Text & "','" + Combo3.Text & "','" + Combo4.Text & "','" + Combo1.Text & "','" + Label10 + "','" & RichTextBox1.Text & "')"
Set rs = con.Execute(txtsql)
con.Close

Else

If Option2.Value = True Then
txtsql = "INSERT INTO tb_evaluaciones(fono_cliente,manejo_y_claridad,act itud_ante_req,solucion,oportunidad_de_mejora,dia_e val,mes_eval,ano_eval,nom_usuario,area,gestion_a_r ealizar)Values('" & Text1 + "'," & Combo5.Text & "," & Combo6.Text & ",' NO ','" + Combo7.Text & "','" + Combo2.Text & "','" + Combo3.Text & "','" + Combo4.Text & "','" + Combo1.Text & "','" + Label10 + "','" & RichTextBox1.Text & "')"
Set rs = con.Execute(txtsql)
con.Close
End If
End If

MsgBox "Evaluación ingresada con éxito"
Text1.Text = ""
Combo5.ListIndex = 0
Combo6.ListIndex = 0
Combo7.ListIndex = 0
Option1.Value = False
Option2.Value = False
RichTextBox1.Text = ""
End If
End If
End Sub

/////////////////////////////////////////////////////////////////////////

Lo que no he podido lograr es saber si un registro ya existe, esto para evitar la duplicidad de datos.

Gracias por su excelente aporte. Estare atento a sus observaciones de mi codigo.