VBA スクリプトを使用して、Microsoft Dynamics GP によって使用される SQL データベースに接続する
この記事では、VBA スクリプトを使用して、Microsoft Dynamics GP によって使用される Microsoft SQL データベースに接続する方法について説明します。
適用対象: Microsoft Dynamics GP
元の KB 番号: 892700
概要
この記事では、Microsoft Visual Basic for Applications (VBA) スクリプトを使用して、Microsoft Dynamics GP 9.0 と Microsoft Business Solutions - Great Plains 8.0 で使用される Microsoft SQL データベースに接続する方法について説明します。
詳細
次の VBA スクリプトの例は、Microsoft Dynamics GP アカウントメンテナンス ウィンドウのイベントに使用 Description_AfterGotFocus
できます。 このスクリプトは、Microsoft Dynamics GP サンプル TWO データベースに接続し、パスワードを使用してシステム管理者としてログオンします。 接続が確立されると、スクリプトによって、GL00105 アカウント インデックス マスター テーブルに格納されているデータのレコードセットが作成されます。 その後、スクリプトはアカウントのインデックス値を [アカウントのメンテナンス] ウィンドウの [ユーザー定義 1 ] フィールドに返します。 スクリプトは、新しいアカウントを入力するか、[アカウント 参照 ] ボタンを使用すると、この値を返します。
サンプル スクリプトを使用するには、次の手順に従います。
Microsoft Dynamics GP で [アカウントのメンテナンス] ウィンドウを開きます。
[ ツール ] メニューの [ カスタマイズ] をクリックし、[ 現在のウィンドウを Visual Basic に追加] をクリックします。
[ ツール ] メニューの [ カスタマイズ] をクリックし、[ フィールドを Visual Basic に追加] をクリックし、[ アカウント番号 ] フィールド、[ 説明 ] フィールド、および [ ユーザー定義 1 ] フィールドをクリックします。
[ツール] メニューの [カスタマイズ] をクリックし、[Visual Basic エディター] をクリックします。
Visual Basic エディターで、[グレート プレーン オブジェクト] を展開し、[AccountMaintenance] をダブルクリックして[アカウント メンテナンス] コード ウィンドウを開きます。
次のコードをコピーし、[ アカウント メンテナンス コード] ウィンドウに貼り付けます。
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
また、Microsoft Business Solutions - Great Plains 8.0 の RetrieveGlobals_80.dll ファイルを使用して、このスクリプトの例で取得したのと同じ情報を取得することもできます。 適切な .dll ファイルを取得するには、「 MBS CustomerSource の廃止」を参照してください。
Readme ファイルは、.dll ファイルの各バージョンに含まれています。 Readme ファイルでは、変数を宣言する方法について説明します。 たとえば、コードで変数を宣言してから、接続文字列で変数を使用できます。