カスタム App の作成 > ファイルパスの作成
 

ファイルパスの作成

FileMaker Pro Advanced では、外部ファイルまたは FileMaker のデータソースへのファイルパスを指定できます。それぞれの名前の付いたファイルまたは FileMaker データソースは、1 つ以上のファイルパスから構成されます。該当すると思われる複数のファイルを検索する場合は、複数のファイルパスを使用します。

FileMaker データソースの追加とファイルパスの指定方法の詳細については、外部データソースへの接続を参照してください。

FileMaker Pro Advanced でサポートされているファイルパスの形式は次のとおりです:

 

パスタイプ

説明

構文

相対パス

現在のデータベースの場所またはユーザのドキュメントフォルダから指定されたターゲットファイルへのパス (下記のメモを参照)

file:ディレクトリ名/ファイル名

filemac:ディレクトリ名/

filewin:../ファイル名

完全なローカルまたはリモート (macOS)

ローカルボリュームまたはリモートボリュームにあるターゲットファイルまたはフォルダに対する、ファイルシステムの最上位からの完全パス

filemac:/ボリューム名/ディレクトリ名/ファイル名

filemac:/ボリューム名/ディレクトリ名/

完全なローカル (Windows)

Windows のターゲットファイルまたはフォルダに対する、ファイルシステムの最上位からの完全パス

filewin:/ドライブ文字:/ディレクトリ名/ファイル名

filewin:/ドライブ文字:/ディレクトリ名

完全なリモート (Windows)

Windows ファイル共有機能を使用して共有されている Windows ボリュームのターゲットファイルまたはフォルダの完全パス

filewin://コンピュータ名/共有名/ディレクトリ名/ファイル名

filewin://コンピュータ名/共有名/ディレクトリ名/

FileMaker ネットワーク

共有されている FileMaker Pro Advanced ファイルへのネットワークパス

fmnet:/ホスト名または IP アドレス/ファイル名

メモ  FileMaker Pro Advanced はファイルパスとしての URL プロトコルをサポートしません。

パスの接頭語について

パスの接頭語によって FileMaker Pro Advanced がパスの残りの部分をどう解釈するかが決まります。クロスプラットフォームの接頭語は相対パスのみですが、すべてのサポートされるプラットフォームで機能します。プラットフォーム固有のファイルパスの場合は、FileMaker Pro Advanced は FileMaker Pro Advanced アプリケーションを実行しているオペレーティングシステムに対応するファイルパスのみを検索します。

FileMaker Pro Advanced でサポートされているパスの接頭語は次のとおりです:

 

パスの接頭語

プラットフォームサポート

用途

file

クロスプラットフォーム

[レコードのインポート] スクリプトステップおよび [レコードのエクスポート] スクリプトステップを使用したデータのインポートおよびエクスポート、FileMaker データソース、[ファイルを挿入] スクリプトステップを使用してオブジェクトフィールドに挿入されたファイル

filemac

filewin

プラットフォーム固有

image

クロスプラットフォーム

それぞれ [PDF を挿入] スクリプトステップまたは [ピクチャを挿入] スクリプトステップを使用してオブジェクトフィールドに挿入されたイメージまたは PDF ファイル

imagemac

imagewin

プラットフォーム固有

movie

クロスプラットフォーム

[オーディオ/ビデオを挿入] スクリプトステップを使用してオブジェクトフィールドに挿入されたオーディオ/ビデオファイル

moviemac

moviewin

プラットフォーム固有

複数のファイルパスの例

該当すると思われる複数のファイルを検索する場合は、複数のファイルパスを使用します。ファイルパスは、表示される順序で検索されます。FileMaker Pro Advanced は、最初に特定できたファイルを開いて検索を完了します。各ファイルパスは個別の行に記述する必要があります。

例 1: この例では、FileMaker Pro Advanced のデータベースは 2 つの異なるオペレーティングシステムで動作する必要があります。それぞれローカルファイルにアクセスする Windows システムおよび macOS システムです。どちらのプラットフォームでも、データベースは「test.xlsx」という名前のローカルファイルにアクセスする必要があります。この場合、次のようなファイル参照を使用します。

filewin:/C:/ExcelFiles/Hosted/test.xlsx
filemac:/MacintoshHD/ExcelFiles/Hosted/test.xlsx

例 2: この例では、スクリプトレコードのインポートの FileMaker Pro Advanced のデータベースから共有のファイルにアクセスします。ただし、ホストを利用できない場合に参照する代替ファイルとして、別のサーバーで共有されているファイルと、ローカルのハードドライブに保存されているファイルを追加します。最初のネットワークファイルにアクセスできない場合は、次のネットワークファイルが検索されます。2 番目のネットワークファイルにもアクセスできない場合は、ローカルファイルが検索されます。この場合、次のようなファイル参照を使用します。

fmnet:/192.168.10.10/Databases/test.fmp12
fmnet:/192.168.100.120/Databases/test.fmp12
file:../Databases/test.fmp12

ファイルパスで変数を使用する例

ファイルパスにある変数を使用することができます。変数を使用すると、多くのスクリプトステップ ([ファイルを挿入] スクリプトステップ[レコードのインポート] スクリプトステップなど) でファイルやフォルダパスを動的に指定できます。変数の使用を参照してください。

次の例では次の変数を想定しています:

$fileName = "test.xlsx"
$username = "JohnSmith"
$targetDir = "Documents/Clients"
$chosenType = "filewin"
$$source = "file:Documents/2019/demo files"
$driveLetter = "G:"
$searchList = "file:old results.txt
     file:../archived/old results.txt

 

目的

パスの一覧の入力

解決されたパスの一覧

ファイル名のみを指定する

file:testing/$fileName

file:testing/test.xlsx

パスに 1 つまたは複数のディレクトリを指定する

file:$username/$fileName

file:JohnSmith/test.xlsx

さまざまなパスタイプの接頭語で、完全パスまたは相対パスを指定する

filewin:/$driveLetter/$targetDir/contacts.txt

imagemac:../$targetDir/photo.jpg

movie:$targetDir/movie.mp4

filewin:/G:/Documents/Clients/contacts.txt

imagemac:../Documents/Clients/photo.jpg

movie:Documents/Clients/movie.mp4

パスタイプの接頭語を動的に指定するか、長いパスの一部として指定する

$chosenType:/$driveLetter/$targetDir

$$source/$fileName

filewin:/G:/Documents/Clients

file:Documents/2019/demo files/test.xlsx

1 つまたは複数の完全なパスを指定する

$searchList

file:old results.txt

file:../archived/old results.txt

ファイルではなくディレクトリを指定する

file:$targetDir/

$$source/

file:$targetDir/$username/

file:Documents/Clients/

file:Documents/2019/demo files/

file:Documents/Clients/JohnSmith/

メモ 

共有の Windows ボリュームに置かれているファイルにアクセスするには、ネットワークパス形式を使用します。この形式は、共有の Windows ボリュームでのみ使用することができます。共有の macOS ボリュームや、FileMaker Network 共有では互換性はありません。

リモートの macOS ボリュームに置かれているファイルにアクセスするには、まずボリュームをマウントし、パスの先頭に filemac を付けます。たとえば、「myhost」サーバーの「Home」ボリューム上の「Clients」フォルダ内にある「test.xlsx」という名前のファイルへレコードをエクスポートするには、「myhost」で「Home」ボリュームをマウントした場合、パスは「filemac:/Home/Clients/test.xlsx」になります。

FileMaker ネットワークのトラフィックの速度が低下するため、ネットワークファイルパスの定義でアスタリスク (*) をワイルドカードとして使用することはできません。アスタリスクではなく、適切な IP アドレスを使用するか、ファイルパスにある変数を使用するようにしてください。

ファイルパス一覧の区切りとして、"/"、":"、または改行の文字を使用します。

FileMaker データソース参照では変数を使用できます。FileMaker データソースの編集を参照してください。

現在のデータベースがローカルに開かれている場合は、相対パスは現在のデータベースの場所から指定されたターゲットファイルへのパスです。現在のデータベースがリモートで開かれている場合は、相対パスは次の場所から指定されたターゲットファイルへのパスです:

パスが FileMaker Pro Advanced ファイルを指している場合はホストのネットワークアドレス (パスに含まれるフォルダは無視されます)

パスがその他のタイプのファイルを指している場合はユーザのドキュメントフォルダ

ファイルへのアクセスはクライアントによって異なります:

FileMaker Pro Advanced および FileMaker Go の場合、ローカルファイルへのアクセスはオペレーティングシステムでのみ制限されます。

サーバーサイドスクリプトの場合、ファイルアクセスは「Documents」フォルダとテンポラリフォルダに制限されます。サーバーサイドスクリプト内のパスを参照してください。

FileMaker WebDirect、FileMaker Data API、およびカスタム Web 公開はサーバーのファイルシステムにアクセスできません。