Использование скрипта VBA для подключения к базе данных SQL, используемой Microsoft Dynamics GP

В этой статье описывается, как использовать скрипт VBA для подключения к базе данных Microsoft SQL, используемой Microsoft Dynamics GP.

Применимо к: Microsoft Dynamics GP
Оригинальный номер базы знаний: 892700

Введение

В этой статье описывается, как использовать сценарий Microsoft Visual Basic для приложений (VBA) для подключения к базе данных Microsoft SQL, которая используется Microsoft Dynamics GP 9.0 и Microsoft Business Solutions — Great Plains 8.0.

Дополнительная информация

Следующий пример скрипта VBA можно использовать для Description_AfterGotFocus события в окне обслуживания учетной записи Microsoft Dynamics GP. Этот скрипт подключится к примеру базы данных Two microsoft Dynamics GP и войдет в систему от имени системного администратора с паролем. После подключения скрипт создает набор записей данных, хранящихся в индексе учетной записи GL00105 master таблице. Затем скрипт вернет значение индекса учетной записи в поле User-Defined1 в окне обслуживания учетной записи. Скрипт возвращает это значение при вводе новой учетной записи или при использовании кнопки Подстановка учетной записи .

Чтобы использовать пример скрипта, выполните следующие действия.

  1. Откройте окно Обслуживание учетной записи в Microsoft Dynamics GP.

  2. В меню Сервис выберите пункт Настроить, а затем — Добавить текущее окно в Visual Basic.

  3. В меню Сервис нажмите кнопку Настроить, щелкните Добавить поля в Visual Basic, а затем выберите поля Номер учетной записи , Поле Описание и Поле Определяемый пользователем 1 .

  4. В меню Сервис выберите пункт Настроить, а затем — Visual Basic Редактор.

  5. В visual Basic Редактор разверните узел Объекты Great Plains, а затем дважды щелкните AccountMaintenance, чтобы открыть окно "Код обслуживания учетной записи".

  6. Скопируйте следующий код и вставьте его в окно Код обслуживания учетной записи .

    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
    

Вы также можете использовать файл RetrieveGlobals_80.dll для Microsoft Business Solutions — Great Plains 8.0, чтобы получить те же сведения, которые извлекаются в этом примере скрипта. Чтобы получить соответствующий файл .dll, см . статью Прекращение использования MBS CustomerSource.

Файл readme включается в каждую версию файла .dll. В файле Readme описывается объявление переменных. Например, можно объявить переменные в коде, а затем использовать переменные в строка подключения.