Conectar a tabla de Sql Server |
Responder |
Autor | |
kisko
Nuevo Unido: 17/Septiembre/2013 Localización: Nuevo Leon Estado: Sin conexión Puntos: 10 |
Tema: Conectar a tabla de Sql Server Enviado: 24/Noviembre/2020 a las 10:01 |
Buenas Compañeros, por favor les pido su ayuda, les explico:
Hace algunos años hice un programa en Access, el cual estaba dividido en dos, un sistemaContable.mdb y se vincula con una base de datos llamada bdsys.mdb, esta trabajando muy bien. Mi modo de guardar registros en cada formulario es por medio de codigo, por ejemplo utilizo la tabla TrisVer en un formulario llamado Ventas que contiene campos independientes, no tiene origen de registro, estos al llenarlos se guardan mediante el siguente codigo en el motor local de la base de datos en la tabla TrisVer de bdsys.mdb: Dim rst As Recordset Dim dbs As DAO.Database Dim strtable As String Dim strentry As String strtable = "TrisVer" Set dbs = CurrentDb Set rst = dbs.OpenRecordset(strtable) rst.AddNew rst!idtris = me.id rst!idempleado = Me.IDEMPLEADOT rst!fecha = Me.FECHAT rst!ABOCOMISION = 0 rst!VENTABRUTA = Me.VENTABRUTAT rst!COMISION = Me.COMISIONT rst!VENTANETA = Me.VENTANETAT rst!HJST = Me.HJSTT rst!EFECTIVO1 = Me.EFECTIVO1T rst!DIFERENCIA = Me.DIFERENCIAT rst!IDVENTA = Me.Texto124 rst!turno = Forms![inicio2]![turno] rst!cajero = Me.CAJEROT rst!PORCOMISION = Me.PORCOMISION rst!sucursal = Me.IDEMPLEADOT.Column(5) rst!TIPOSORTEO = Me.Texto55 rst!sorteo = Me.sorteo rst.Update rst.Close Me están pidiendo que la captura de este formulario se guarde en la misma tabla de TrisVer, pero ya la migraron a una base de datos de SQLSERVER,y no se como conectarla haciendo cambios a este codigo para que se realice el guardado como es de cada registro. Disculpen si no me explique bien. Saludos.
|
|
Buen día... Saludos
|
|
xavi
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Terrassa-BCN Unido: 10/Mayo/2005 Localización: Catalunya |||| Estado: Sin conexión Puntos: 14746 |
Enviado: 24/Noviembre/2020 a las 10:33 |
Yo vincularía la tabla de SQL server y replicaría el código pero cambiando el nombre de la tabla.
Para vincular necesitaras el ODBC correspondiente, nombre del servidor, nombre de la base de datos, nombre de la tabla, usuario y password Un saludo
|
|
Mihura
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Unido: 06/Mayo/2005 Localización: En la dehesa Estado: Sin conexión Puntos: 14027 |
Enviado: 24/Noviembre/2020 a las 10:33 |
La opción más fácil sería crear un ODBC que apunte a la BD SQLSERVER, adjuntar la tabla a Access y ya estaría hecho todo.
La otra opción pasa por hacerlo con ADO: - crearte una conexión a la BD SQLSERVER - añadir el registro a esa tabla, bien por recordset ADO o bien por una consulta de inserción (método recomendable) Entiendo que depende mucho de tu nivel de programación / VBA ... |
|
kisko
Nuevo Unido: 17/Septiembre/2013 Localización: Nuevo Leon Estado: Sin conexión Puntos: 10 |
Enviado: 25/Noviembre/2020 a las 07:37 |
Buenas Noches compañeros, ya esta vinculada la tabla TrisVer a una base de datos en sqlserver,
y modifique el codigo de la siguiente manera: Dim dbs As DAO.Database Dim rst As DAO.Recordset Dim strSQL As String Set dbs = CurrentDb strSQL = "TRISVER" Set rst = dbs.OpenRecordset(strSQL, , dbSeeChanges) rst.AddNew rst!idtris = me.id rst!idempleado = Me.IDEMPLEADOT rst!fecha = Me.FECHAT rst!FECHASYS = Me.FECHAT rst!ABOCOMISION = 0 rst!VENTABRUTA = Me.VENTABRUTAT rst!COMISION = Me.COMISIONT rst!VENTANETA = Me.VENTANETAT rst!HJST = Me.HJSTT rst!EFECTIVO1 = Me.EFECTIVO1T rst!DIFERENCIA = Me.DIFERENCIAT rst!IDVENTA = Me.Texto124 rst!turno = Forms![inicio2]![turno] rst!cajero = Me.CAJEROT rst!PORCOMISION = Me.PORCOMISION rst!sucursal = Me.IDEMPLEADOT.Column(5) rst!TIPOSORTEO = Me.Texto55 rst!sorteo = Me.sorteo rst.Update rst.Close me marca error en la linea de rst.update: Se ha producido el error 3146 en tiempo de ejecucion. ODBC:fallo de llamada Disculpen que mis nivel es limitado, me pueden por favor decir porque marca este error al momento de guardar el registro en esta tabla, y si hay que corregir el código y cual seria una mejor solución con un ejemplo por favor. Saludos. |
|
Buen día... Saludos
|
|
kisko
Nuevo Unido: 17/Septiembre/2013 Localización: Nuevo Leon Estado: Sin conexión Puntos: 10 |
Enviado: 25/Noviembre/2020 a las 07:39 |
Tendran un ejemplo de ADO o tabla de insercion? Perdonen mi nivel.
|
|
Buen día... Saludos
|
|
Mihura
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Unido: 06/Mayo/2005 Localización: En la dehesa Estado: Sin conexión Puntos: 14027 |
Enviado: 25/Noviembre/2020 a las 08:35 |
Entiendo que has creado un ODBC y has vinculado la tabla de SQL en la aplicación ¿correcto?.
Si es así, prueba primero a insertar manualmente un registro directamente en la tabla, a ver si te deja hacerlo, así compruebas el nivel de permisos que tienes.
|
|
kisko
Nuevo Unido: 17/Septiembre/2013 Localización: Nuevo Leon Estado: Sin conexión Puntos: 10 |
Enviado: 26/Noviembre/2020 a las 07:49 |
Buenas noches Mihura, si me permite capturar directamente en la tabla. como puedo cambiar el código del formulario al guardarlo. Muchas Gracias
Saludos. |
|
Buen día... Saludos
|
|
Mihura
Ver perfil usuario
Enviar mensaje privado
Ver los mensajes del usuario
Visite la página de los usuarios
Añadir a la lista de amigos
Administrador Unido: 06/Mayo/2005 Localización: En la dehesa Estado: Sin conexión Puntos: 14027 |
Enviado: 26/Noviembre/2020 a las 12:02 |
Prueba con:
Set rst = dbs.OpenRecordset(strSQL, dbOpenDynaset, dbSeeChanges) |
|
kisko
Nuevo Unido: 17/Septiembre/2013 Localización: Nuevo Leon Estado: Sin conexión Puntos: 10 |
Enviado: 27/Noviembre/2020 a las 23:57 |
Buen día Mihura, ya funciono con la tabla de datos anexados. Muchas Gracias por que aprendí algo nuevo.
Saludos
|
|
Buen día... Saludos
|
|
Responder | |
Tweet
|
Ir al foro | Permisos de foro Usted No puede publicar nuevos temas en este foro Usted No puede responder a temas en este foro Usted No puede borrar sus mensajes en este foro Usted No puede editar sus mensajes en este foro Usted No puede crear encuestas en este foro Usted No puede votar en encuestas en este foro |