Hola Jose, gracias por el dato, te explico mas o menos lo que estoy haciendo...
Yo en realidad abro cualquier base de datos, el tema es que no se que columna es la de la fecha, puede haber cualqueir campo, coincide en este caso que uno es un campo de fecha.
Te pongo el codigo que estoy manejando para que te des una idea:
Código:
Dim ds As New DataSet
Dim ol As New OleDb.OleDbDataAdapter
Dim cn As New ADODB.Connection
Dim rs2 As New ADODB.Recordset
Private Sub Datos_Ver_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Me.Top = (frm1.Height / 2) + frm1.Top - (Me.Height / 2)
Me.Left = (frm1.Width / 2) + frm1.Left - (Me.Width / 2)
cn.Open("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & nombrebase & ";Persist Security Info=False") ' note 5323 is the name of dbase
rs2.Open(tablanombre, cn, ADODB.CursorTypeEnum.adOpenDynamic, ADODB.LockTypeEnum.adLockOptimistic)
ds.Tables.Add(tablanombre)
ol.Fill(ds.Tables(tablanombre), rs2)
ds.DataSetName = cn.ConnectionString
Me.MSGrid.DataSource = ds.Tables(tablanombre)
cn.Close()
End Sub
Private Sub ButtonXP1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ButtonXP1.Click
Me.Close()
End Sub
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
Try
'' On Error GoTo errores
Dim SQLString As String, connstring As String
connstring = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & nombrebase & ";Persist Security Info=False"
SQLString = "Select * From " & tablanombre
Dim DBDataAdapter As New OleDb.OleDbDataAdapter(SQLString, connstring)
Dim DBUpdateCommand As New OleDb.OleDbCommandBuilder(DBDataAdapter)
DBDataAdapter.Update(ds, tablanombre)
Me.Close()
Exit Sub
errores:
Catch Ex As Exception
MsgBox(Ex.Message)
End Try
End Sub
Con este codigo abro y modifico cualquier tabla independientemente de los campos, la macana que si tenes uno cuyo campo es el de fecha o un campo con un valor por defecto al comenzar a agregar un nuevo dato el datagrid completa todas las columnas con valores nulos, no respeta la estructura de valores predeterminados en la base.
Hay alguna forma de que el datagrid respete los valores tipo como lo hace directamente el access sobre la base de datos?
Gracias!!