Usare uno script VBA per connettersi a un database SQL usato da Microsoft Dynamics GP

Questo articolo descrive come usare uno script VBA per connettersi a un database Microsoft SQL usato da Microsoft Dynamics GP.

Si applica a: Microsoft Dynamics GP
Numero KB originale: 892700

Introduzione

Questo articolo descrive come usare uno script di Microsoft Visual Basic, Applications Edition (VBA) per connettersi a un database Microsoft SQL usato da Microsoft Dynamics GP 9.0 e da Microsoft Business Solutions - Great Plains 8.0.

Ulteriori informazioni

L'esempio di script VBA seguente può essere usato per l'evento Description_AfterGotFocus nella finestra Manutenzione account Microsoft Dynamics GP. Questo script si connetterà al database TWO di esempio di Microsoft Dynamics GP ed eseguirà l'accesso come amministratore di sistema con una password. Dopo aver eseguito la connessione, lo script crea un recordset dei dati archiviati nella tabella master dell'indice dell'account GL00105. Lo script restituirà quindi il valore dell'indice dell'account al campo User-Defined1 nella finestra Manutenzione account. Lo script restituisce questo valore quando si immette un nuovo account o si usa il pulsante Ricerca account .

Per usare lo script di esempio, seguire questa procedura:

  1. Aprire la finestra Manutenzione account in Microsoft Dynamics GP.

  2. Scegliere Personalizza dal menu Strumenti e quindi fare clic su Aggiungi finestra corrente a Visual Basic.

  3. Scegliere Personalizza dal menu Strumenti, fare clic su Aggiungi campi a Visual Basic, quindi sul campo Numero account, sul campo Descrizione e sul campo Definito dall'utente 1.

  4. Scegliere Personalizza dal menu Strumenti e quindi fare clic su Visual Basic Editor.

  5. In Visual Basic Editor espandere Great Plains Objects e quindi fare doppio clic su AccountMaintenance per aprire una finestra del codice di manutenzione account.

  6. Copiare il codice seguente e incollarlo nella finestra Del codice di manutenzione account .

    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
    

È anche possibile usare il file RetrieveGlobals_80.dll per Microsoft Business Solutions - Great Plains 8.0 per recuperare le stesse informazioni recuperate da questo esempio di script. Per ottenere il file di .dll appropriato, vedere Ritiro di MBS CustomerSource.

Un file Readme è incluso in ogni versione del file .dll. Il file Readme descrive come dichiarare le variabili. Ad esempio, è possibile dichiarare le variabili nel codice e quindi usare le variabili nel stringa di connessione.