Nota del autor: Esta es la publicación final de una serie de cuatro publicaciones en tablas sin DSN en Access.
Puedes revisar la primera parte aquí.
Echa un vistazo a la parte 2 aquí.
Vea la parte 3 aquí.
¿Cómo probar los cambios en la nube con sus usuarios Beta?
Una vez que haya implementado su obra maestra de Access con SQL Server en la nube, a su cliente le encantará tanto su trabajo que solicitarán cambios adicionales. (Sugerencia: si no recibe solicitudes de actualización, no fue una obra maestra para empezar). Es fácil probar los cambios en una base de datos local de SQL Server, pero la mayoría de las veces necesitará que un grupo selecto de usuarios de su aplicación pruebe los cambios antes de implementarlos para todos, y eso significa probar usando la nube.
SQL Server facilita la creación de una base de datos Beta, solo copie la base de datos en vivo o restaure una copia de seguridad completa y asígnele un nombre diferente. Por lo general, le damos a los nuestros el mismo nombre con el sufijo «Beta». Usualmente usamos el servidor de producción como nuestro servidor Beta para probar el sistema en condiciones reales, pero no es necesario. Una vez que tenga una base de datos Beta en funcionamiento, use el siguiente código para cambiar fácilmente de Beta a producción y viceversa.
Cómo cambiar a Beta: simplemente cambie el nombre de su archivo de Access
En nuestras aplicaciones, para cambiar a nuestra base de datos Beta de SQL Server, simplemente agregamos la palabra Beta a nuestro archivo de Access. Tener que cambiar el nombre del archivo y no cambiar ningún código hace la vida más fácil y nos permite experimentar con datos sin afectar las operaciones y asegura que tanto la versión beta como la producción sean funcionalmente idénticas. Nuestro cliente también utiliza la técnica para capacitar a nuevos usuarios en el sistema.
Public Function BetaTesting() As Boolean 10 If CurrentProject.Name = <a href="https://accessexperts.com/blog/2011/01/12/multi-session-global-variables/" target="_blank">ReadGV</a>("ProjectFileName", 1) Then 20 BetaTesting = False 30 <a href="https://accessexperts.com/blog/2010/09/16/maximize-the-user-of-tempvars-in-access-2007-and-2010/" target="_blank">TempVars</a>.Add "BetaTesting", False 'Change from Beta to production? 40 If InStr(1, CurrentDb.TableDefs(ReadGV("BetaTableTest", strText)).Connect, ReadGV("BetaCatalog", strText)) > 0 Then 'Relink to production database 50 ChangeAppTitle ReadGV("ProjectTitle", strText) 60 <a href="https://accessexperts.com/blog/2012/04/04/part-2-linking-tables-using-a-sql-server-table/" target="_blank">RelinkAllTablesADOX</a> 70 End If 80 Else 90 BetaTesting = True 100 TempVars.Add "BetaTesting", True 110 ChangeAppTitle "++++++++ BETA " & ReadGV("ProjectTitle", strText) & " BETA +++++++++" 120 If InStr(1, CurrentDb.TableDefs(ReadGV("BetaTableTest", strText)).Connect, ReadGV("BetaCatalog", strText)) < 1 Then 'Relink to Beta database 130 <a href="https://accessexperts.com/blog/2012/04/04/part-2-linking-tables-using-a-sql-server-table/" target="_blank">RelinkAllTablesADOX</a> 140 End If 150 End If End Function
En la línea 10 probamos si el nombre del archivo actual es la versión de producción almacenada en nuestra tabla tblProgramOptions, de lo contrario, estamos tratando con una versión Beta del sistema. (Haga clic en ReadGV para ver una publicación sobre el uso de ReadGV).
Si se trata de una base de datos de producción, en la línea 30 establecemos una variable global para su uso posterior en la aplicación. En la línea 40 probamos si los enlaces de la tabla apuntan a Beta y, de ser así, vuelven a vincular todas las tablas a la base de datos de producción en la línea 60.
Si se trata de una base de datos Beta, en la línea 90 definimos una variable global, cambiamos el título de la aplicación y volvemos a vincular todas las tablas a la base de datos Beta en la línea 130. (Haga clic en RelinkAllTablesADOX para ver una publicación sobre cómo volver a vincular todas sus tablas).
Como nombramos nuestra base de datos de SQL Server simplemente agregando Beta al nombre, podemos usar las siguientes líneas en RelinkAllTablesADOX para cambiar a Beta.
If TempVars!IsBeta Then strCatalog = conCatalog & "Beta" Else strCatalog = conCatalog End If
* ACTUALIZACIÓN * El código para ChangeAppTitle:
Public Sub ChangeAppTitle(strTitle As String) Dim proTitle As Property On Error Resume Next With CurrentDb Set proTitle = .CreateProperty("AppTitle", dbText, strTitle) Call .Properties.Append(proTitle) .Properties("AppTitle").Value = strTitle End With Call Application.RefreshTitleBar End Sub
Conclusión de la serie
Espero que todas estas publicaciones lo ayuden a aprovechar las tablas sin DSN en su aplicación, avíseme en los comentarios si utiliza el código y cómo le ha ayudado.
Deja tu comentario