|
FileMaker 製品は 32 ビットアプリケーションである事が分かりました。 今回購入したWindows Server 2008 R2は、64ビット版しか販売されていない。 と言うことで、ODBC設定をするには、 ●64 ビット版の Windows 環境で、FileMaker を xDBC のホストとして使用する場合には、FileMaker Pro をデフォルトの「Program Files (x86)」ディレクトリではないディレクトリにインストールします。(64 ビット版の Windows 環境には、2つの「Program Files」ディレクトリがありますが、「Program Files」ディレクトリにインストールすることはできませんので、別途、インストールディスクのルート上などに「FileMaker」ディレクトリを作成し、その中にインストールを行います。) ●64 ビット版の Windows 環境で、FileMaker から外部 ESS データソースを使用する場合には、32 ビット版の ODBC Data Source Administrator を使用しないと設定した DSN 等を使うことができませんので、C:\Windows\SysWOW64\ 内にある odbcad32.exe を起動して DSN を設定します。が必要である。 ODBCの設定が済んだらデータを流し込むデータベースをFileMakerで作成する。 今回設定するのは、毎日同じデータを定時に更新する設定。 ExcelVBAを開くと、自動処理がはじまり まず、基幹システムのデータをExcelに読み込む ※この設定は、秘密 そして、続けて、FileMakerに登録してあるデータを全削除 最後に、Excelに読み込んだデータをFileMakerに流し込む というVBAを作成する。最初から最後までの処理を一気に処理する。 というこことで、まず、FileMakerのデータベースに有るデータを全部削除するVBAを作成。 最後にご紹介している「FileMaker実践データベースシステム」を参考にさせていただいた。 Option Explicit
'ODBC接続 プライベート定数宣言
Private Const strConnectionDriver As String = "FileMaker ODBC"
Private Const strConnectionHost As String = "localhost" 'ホスト名又はIPアドレス
Private Const strConnectionPort As String = "2399"
Sub ALL_DELETE()
'オブジェクト変数宣言と初期化
Dim objConnection As Object: Set objConnection = CreateObject("ADODB.Connection")
'変数宣言と初期化
Dim strConnectionUserID As String: strConnectionUserID = "idno"
Dim strConnectionPassword As String: strConnectionPassword = "password"
Dim strConnectionDatabase As String: strConnectionDatabase = "database_mei"
Dim strConnectionTable As String: strConnectionTable = "table_mei"
Dim strSQLQuery As String: strSQLQuery = "DELETE FROM " & strConnectionTable
'エラー処理開始
On Error GoTo Error_Transaction
'ODBC接続文字列定義
objConnection.ConnectionString = "DRIVER={" & strConnectionDriver & "};" & _
"HST=" & strConnectionHost & ";" & _
"PRT=" & strConnectionPort & ";" & _
"UID=" & strConnectionUserID & ";" & _
"PWD=" & strConnectionPassword & ";" & _
"SDSN=" & strConnectionDatabase & ";"
'ODBC接続オープン
objConnection.Open
'トランザクション開始
objConnection.BeginTrans
' SQL実行 DELETE FROM <テーブル> WHERE <照合フィールド> = <照合値>
objConnection.Execute strSQLQuery
' コミット
objConnection.CommitTrans
'
Finished:
'ODBC接続クローズ
objConnection.Close
'オブジェクト変数解放
Set objConnection = Nothing
Exit Sub
Error_Transaction:
' ロールバック
objConnection.RollbackTrans
'終了メッセージ生成 エラー発生時
lngResultMessage = "Error:" & Err.Number & vbCrLf & Err.Description
lngResultArgument = vbOKOnly + vbDefaultButton1 + vbCritical
GoTo Finished
End Sub
|

- >
- コンピュータとインターネット
- >
- コンピュータ
- >
- ソフトウェア









