MBS(FileMakerプラグイン)でディレクトリ内ファイル/フォルダの一覧を取得する方法

FileMakerプラグイン「MonkeyBreadSoftware(MBS)」で特定ディレクトリのファイルを一覧する方法、覚え書きです。頻繁に使用する機能。

目的

特定ディレクトリ内のファイルを知る目的は、主に次の3つ。

  • CSVなどのインポート前にファイルの有無をチェックする
  • ディレクトリ内のファイル数をカウントし、過不足をチェックする
  • FileMakerからデータをエクスポートする際にフォルダの有無をチェックする

インポート前にファイルの有無がチェックできると、ファイルを開く操作をユーザーにさせなくてもよくなり、操作ミスを減らせます。position関数を使えば、ファイル名が一定ではない場合も対応できます。たとえば「12文字かつ先頭4文字が2019で始まるファイル、等。

ディレクトリ内のファイル数カウントは、インポート等の操作をする際、想定のファイル数と実際のファイルを照らし合わせてインポート前に再チェックができます。

エクスポートする際のフォルダの有無をチェックするのは、フォルダが無いと自動生成してくれないからです。MBSではファイルコピーをする関数もあってそちらでは自動的に不足しているフォルダを生成しますが、FileMakerのエクスポート機能を使って管理している画像を一括で書き出す場合はあらかじめフォルダの生成が必須です。

記述例

基本様式

MBS( “Files.List”; Path { ; filter; ExtensionFilter } )

例(FileMakerServer/Windows)

MBS( “Files.List”; “\\xxx.xxxx.xxx.xxx\foldername\filename” ;5)

例(ローカル/Windows)

MBS( “Files.List”; “C:\foldername\\” ;5)

foldernameディレクトリにあるファイルを一覧する。サブディレクトリは除外する

MBS(“Files.List”; “C:\\foldername\\”; 0; “.txt”)

foldernameディレクトリ以下にあるファイルのうち拡張子.txtのものを一覧する

オプションの「5」はサブディレクトリは検索しないという指示
すべてのファイルをレポートするデフォルト値は0
ファイルのみを表示する場合は1
ディレクトリのみを表示する場合は2
表示可能な項目のみを表示する場合は4

参照元

https://www.mbsplugins.eu/FilesList.shtml

NO IMAGE
最新情報をチェックしよう!