タイトル
ODBCでフォルダをまたいでアクセスできないのは仕様か?
フォーラムに投稿
よく知られているように、FileMaker Serverのデータベースファイルを保存するフォルダの中にサブフォルダを作って管理することができるようになっています。
たとえば、Databaseフォルダの中にProjectAとProjectBという2つのサブフォルダを作り、それぞれにデータベース(.fp7)ファイルを入れておくことができます。このようにサブフォルダを作ることで、FileMaker Server Adminではサブフォルダ単位でファイルのオープン・クローズ操作が行えるようになります。
で、このサブフォルダ分けはFileMaker Server上での管理のしやすさのためだけにあり、データベースの動作には影響しないと思っていたのですが、ODBC経由でアクセスした場合、どうもそうではないようです。
たとえば、ProjectAフォルダ内のFileA.fp7から、ProjectBフォルダのFileB.fp7の中のテーブルへリンクしていたとします。つまりFileAのリレーションシップグラフにFileBに由来するテーブルが表れている状態とします。FileMaker ProでFileMaker Server上のFileAを開いたときは、もちろんFileBに由来するテーブルにも問題なくアクセスできます。ですがODBCでFileAにアクセスした場合、FileBに由来するテーブルにはまったくアクセスできません。FileBをProjectAフォルダに入れてやると問題ないのすが。
このFileMaker Server上でのフォルダが異なると、ほかのフォルダ内にあるファイルからリンクしているテーブルにはODBC経由でアクセスできないというのは、一体仕様なのでしょうか、バグなのでしょうか?この現象はFileMaker Server Advanced 8と9で確認しています。
バグなら直してもらいたいものです。
Ranja さん、Matthew さん、こんにちは。
Mac OS X 10.5.6 上の Server 9 Advanced (9.0.3.326) で確認しましたが、
Ranja さんの書かれた現象が再現します。
なお、FileA.fp7 の外部データソースにある FileB の指定を、file:FileB.fp7 から file:FileB.fp7<改行>file:../FolderB/FileB.fp7 に変えると、FileA の DSN 経由で、FileB テーブルが見えるようになりますので、ODBC接続時にはサブフォルダの違いは解釈されず、オカレンスから実ソーステーブルが取得できないのだと思います。
環境の都合で Server 10 でのテストがすぐ出来ませんが、参考として上げさせていただきます。