ayuda con conexccion datacombo

Iniciado por CARRY-ON, 7 Septiembre 2007, 03:33 AM

0 Miembros y 1 Visitante están viendo este tema.

CARRY-ON

bueno baje un codigo de aca y lo quiero adacatar a un formulario que cree que guarda los datos en una base de datos peor me tira un error de pila




Código:
Option Explicit
Dim cn As ADODB.Connection
Dim rs As ADODB.Recordset
' Variables para la conexión y para el recordset

Private Sub Command1_Click()

    rs.AddNew
    modoeditar True

End Sub

Private Sub Command2_Click()

    rs.Update
    modoeditar False

End Sub

Private Sub Command3_Click()
   rs.Update
    modoeditar False
End Sub

Private Sub Command6_Click()

End Sub

Private Sub cmdanterior_Click()
    rs.MovePrevious
    If rs.BOF Then
        rs.MoveFirst
        MsgBox "estamos en el primer registro"
    End If
End Sub

Private Sub cmdEditar_Click()
modoeditar True
End Sub

Private Sub cmdeliminar_Click()
    rs.Delete
    rs.MoveNext
    If rs.EOF Then
        rs.MoveLast
    End If
End Sub

Private Sub cmdGuardar_Click()

    rs.Update
    modoeditar False
End Sub

Private Sub cmdnuevo_Click()
rs.AddNew
    modoeditar True
End Sub

Private Sub cmdprimero_Click()
rs.MoveFirst
End Sub

Private Sub cmdsiguente_Click()
    rs.MoveNext
    If rs.EOF Then
        rs.MoveLast
        MsgBox "estamos en el ultimo registro"
    End If

End Sub

Private Sub cmdUltimo_Click()
rs.MoveLast
End Sub

Private Sub DataCombo1_Click(Area As Integer)
Set DataCombo1.RowSource = rs
    ' campo a mostrar en el datacombo
    DataCombo1.ListField = "DESCRIPCION"
   

    Set DataCombo1.DataSource = rs    /// en esta linea me marca el error
End Sub

Private Sub Form_Load()
modoeditar False
    Set cn = New ADODB.Connection
    Set rs = New ADODB.Recordset
    cn.Open "Provider=Microsoft.Jet.OLEDB.4.0;" & "Data Source = dax.mdb; "
    rs.ActiveConnection = cn
    rs.CursorType = adOpenKeyset
    rs.LockType = adLockOptimistic
    rs.Open "select * from ANIMALES"
******  esta es la conexccion PARA ABRIR LA TABLA ESPECIE
   
    Set Text1.DataSource = rs
    Text1.DataField = "ID_ANIMAL"
    Set Text2.DataSource = rs
    Text2.DataField = "NUMERO_LARGO"
    Set DataCombo1.DataSource = rs
   DataCombo1.DataField = "ESPECIE"
    Set Text4.DataSource = rs
    Text4.DataField = "ORIGEN"
    Set Calendar1.DataSource = rs
    Calendar1.DataField = "FECHA_NAC"
    Set Text6.DataSource = rs
    Text6.DataField = "GENETICA"
    Set Text7.DataSource = rs
    Text7.DataField = "ID_PADRE"
    Set Text8.DataSource = rs
    Text8.DataField = "ID_MADRE"
    Set Text9.DataSource = rs
    Text9.DataField = "UBICACION"
    Set Text10.DataSource = rs
    Text10.DataField = "COMENTARIO"
   
' nueva conexión ado
    Set cn = New ADODB.Connection

    ' Abre la conexión
    With cn
        .Provider = "Microsoft.Jet.OLEDB.4.0"
        .ConnectionString = "Data Source = " & App.Path & "\dax.mdb"
        .Open
    End With

    ' Nuevo Recordset
    Set rs = New ADODB.Recordset

    ' Propiedades del Recordset
    With rs
        .CursorLocation = adUseClient
        ' Abre el recordset indicando la tabla
        .Open "ESPECIE", cn, adOpenStatic, adLockOptimistic, adCmdTable
    End With
End Sub
///Y  ESTA PARA ABRIR LA TABLA ESPECIE ///
     
Private Sub Form_Unload(Cancel As Integer)
   
    ' Descarga y cierra el recordset
    If Not rs.State = adStateClosed Then
        rs.Close
    End If
    If Not cn Is Nothing Then
        Set cn = Nothing
    End If
   
    ' cierra la conexión ado
    If Not cn.State = adStateClosed Then
        cn.Close
    End If
   
    If Not cn Is Nothing Then
        Set cn = Nothing
    End If
    // ESTO VENIA CON EL CODIGO DEL DATACOMBO ///
End Sub




Private Sub modoeditar(ByVal ok As Boolean)
    Text1.Locked = Not ok
  Text2.Locked = Not ok
    DataCombo1.Locked = Not ok
    Text4.Locked = Not ok

    Text6.Locked = Not ok
    Text7.Locked = Not ok
    Text8.Locked = Not ok
    Text9.Locked = Not ok
    Text10.Locked = Not ok
   
    cmdnuevo.Enabled = Not ok
    cmdEditar.Enabled = Not ok
    cmdeliminar.Enabled = Not ok
    cmdGuardar.Enabled = ok
    If ok Then Text1.SetFocus
End Sub

Private Sub salirautor_Click()
Unload Me
End Sub




LO que quiero HACER CON ESTE CODIGO ES GUARDAR LOS DATOS  EN UNA TABLA ,  PERO EL PROBLEMA ES que CON EL  DATACOMBO HAY que LLAMAR LOS DATOS DE OTRA TABLA EN ESTE CASO LA TABLA ESPECIE EL CAMPO TIPO , PARA que SE MUESTREN EN LA LISTA DEL DATA COMBO Y AL ELEGIR UNO DE ESOS SE GUARDE EN LA TABLA ANIMALES JUNTO CON TODOS LOS DATOS    PEOR AL SELECCIONAR EL DATACOMBO SALEN LOS DATOS PERO SE VEN INTERMITENTES Y AL FINAL DICE ERROR ESPACIO DE PILA INSUFICIENTE SI ALGUIEN ME PUDIERA AYUDAR 

  En línea 


ActiveSheet

que problema leerlo sin

Código (css) [Seleccionar]
xD private "with" <!--- tdgfd xD

porcierto es "conexión"