Share via


Uso de un script de VBA para conectarse a una base de datos SQL que usa Microsoft Dynamics GP

En este artículo se describe cómo usar un script vba para conectarse a una base de datos de Microsoft SQL que usa Microsoft Dynamics GP.

Se aplica a: Microsoft Dynamics GP
Número de KB original: 892700

Introducción

En este artículo se describe cómo usar un script de Microsoft Visual Basic para Aplicaciones (VBA) para conectarse a una base de datos de Microsoft SQL que usa Microsoft Dynamics GP 9.0 y Microsoft Business Solutions - Great Plains 8.0.

Más información

El siguiente ejemplo de script vba se puede usar para el Description_AfterGotFocus evento en la ventana Mantenimiento de la cuenta de Microsoft Dynamics GP. Este script se conectará a la base de datos TWO de ejemplo de Microsoft Dynamics GP e iniciará sesión como administrador del sistema con una contraseña. Una vez realizada la conexión, el script crea un conjunto de registros de los datos almacenados en la tabla maestra de índice de cuenta GL00105. A continuación, el script devolverá el valor de índice de la cuenta al campo Definido por el usuario1 en la ventana Mantenimiento de la cuenta. El script devuelve este valor cuando se escribe una cuenta nueva o se usa el botón Búsqueda de cuenta .

Para usar el script de ejemplo, siga estos pasos:

  1. Abra la ventana Mantenimiento de la cuenta en Microsoft Dynamics GP.

  2. En el menú Herramientas , haga clic en Personalizary, a continuación, haga clic en Agregar ventana actual a Visual Basic.

  3. En el menú Herramientas , haga clic en Personalizar, en Agregar campos a Visual Basicy, a continuación, haga clic en el campo Número de cuenta , el campo Descripción y el campo Definido por el usuario 1 .

  4. En el menú Herramientas, haga clic en Personalizary, a continuación, haga clic en Visual Basic Editor.

  5. En Visual Basic Editor, expanda Great Plains Objects y, a continuación, haga doble clic en AccountMaintenance para abrir una ventana de código de mantenimiento de la cuenta.

  6. Copie el código siguiente y péguelo en la ventana Código de mantenimiento de la cuenta.

    Private Sub Description_AfterGotFocus()
    Dim objRec
    Dim objConn
    Dim cmdString
    
    Set objRec = CreateObject("ADODB.Recordset")
    Set objConn = CreateObject("ADODB.Connection")
    
    objConn.ConnectionString = "Provider=MSDASQL;DSN=GreatPlains;Initial Catalog=TWO;User Id=sa;Password=password"
    objConn.Open
    
    cmdString = "Select ACTINDX from GL00105 where (ACTNUMST='" + Account + "')"
    
    Set objRec = objConn.Execute(cmdString)
    
    If objRec.EOF = True Then
    AccountMaintenance.UserDefined1 = ""
    Else
    AccountMaintenance.UserDefined1 = objRec!ACTINDX
    End If
    objConn.Close
    End Sub
    

También puede usar el archivo RetrieveGlobals_80.dll para Microsoft Business Solutions - Great Plains 8.0 para recuperar la misma información que recupera este ejemplo de script. Para obtener el archivo de .dll adecuado, consulte Retirada de MBS CustomerSource.

Se incluye un archivo Léame con cada versión del archivo .dll. El archivo Léame describe cómo declarar las variables. Por ejemplo, puede declarar las variables en el código y, a continuación, usar las variables en el cadena de conexión.