フィールドマスクを使用すると、ユーザーがテキストフィールドやキーワードフィールドで使用する入力オプションを制限できます。これを行うには、フィールドにマスクを割り当てて、特定の形式のエントリのみが許可されるようにします。例えば、マスクを使用すると、保険証券に使用されるような長い数値の入力をサポートできます。DocuWare には既定のマスクがいくつか含まれていますが、独自のマスクを定義することもできます。
フィールドマスクを定義すると、これらのフィールドマスクを任意のダイアログフィールドに割り当てることができます。
マスクの定義
マスクの定義は正規表現の形式で作成されます。正規表現を使用すると、定義された特定のパターンに従っている文字列のみをフィールドに入力できるようになります。正規表現は通常のアルファベットとメタ文字 ([、]、(、)、{、}、|、?、+、*、\、.) の組み合わせで構成されます。アルファベットの他の文字はすべて文字自体を表します。
以下に使用可能な表記方法をいくつか示します。
[A-Za-z0-9]: いずれかのラテン文字またはいずれかの数字
[0-9]: 0 ~ 9 のいずれかの数字
[A-Z]: いずれかの大文字のラテン文字
\d: 0 ~ 9 のいずれかの数字
?: 直前の文字が 0 個か 1 個の場合に一致します。
{n}: 直前の文字が n 個表示される必要があります。{n,n}:直前の文字が 1 個以上 (最初の n)、最大 x 個 (2 つ目の n) 表示される必要があります。
例:
9 桁の数字のエントリの場合: [0-9]{9}
5 ~ 6 個の数字の後に 2 ~ 3 個の大文字が続く文字列の場合: [0-9][5,6][A-Z]{2,3}
応用例
IBAN
[A-Z]{2}[0-9]{2}[A-Za-z0-9\s]{11,30}
国際IBANコードは常に、国コードを表す2つの大文字と2桁のチェックサムで始まる。その後に、国によって11桁から30桁の金融機関コードと口座番号が続く。
BIC
[A-Z]{6}[A-Z0-9]{2,5}
BIC または SWIFT コードは国際的に標準化された金融機関コードです。参加しているすべての信用機関は BIC によって識別できます。コードの長さは以下のスキームに基づいて 8 ~ 11 個の英数字になります。BBBBCCLLbbb
BBBB は 4 桁の金融機関コードを表します。これらはアルファベット文字のみである可能性があります。CC はアルファベット文字で構成される 2 桁の国コードです。LL は 2 桁の英数字で構成される位置コードを表します。bbb は英数字で構成される支店または部門を識別するためのオプションのコードです。
ISBN
(\d{3}-\d{1,5}-\d{1,7}-\d{1,7}-\d
国際標準図書番号 (ISBN) は書籍のほか、マルチメディア製品などの出版物を識別します。ISBN は 5 つの要素で構成されており、要素の長さが異なる場合がありますが、合計桁数は常に 13 になります。
3 桁の接頭辞から始まります。この後に言語領域を表すグループ番号が続きます。これには 1 ~ 5 桁の数字を含めることができます。この後に発行者番号が続きます。これも長さが異なり、最大 7 桁の数字を含めることができます。この後に最大 6 桁のタイトル番号が続きます。
ISBN の合計桁数を 13 にするため、タイトル番号の前にゼロを追加できます。最後に 1 桁のチェックディジットが続きます。
メール
^[\w!#$%&'*+\-/=?\^_`{|}~]+(\.[\w!#$%&'*+\-/=?\^_`{|}~]+)*@((([\-\w]+\.)+[a-zA-Z]{2,4})|(([0-9]{1,3}\.){3}[0-9]{1,3}))$
DocuWare organisationsの電子メールアドレスの標準フィールドマスクでは、電子メールのドメイン拡張子の前に以下の文字が使用できます。大文字と小文字、0~9の数字、および以下のリストにある特殊文字。!#$%&'*+-/?_`|~.
VAT (ドイツ)
\d{9}
ドイツの企業では、VAT ID は常に DE で始まり、その後に 9 桁の数字が続きます。
その他の EU 諸国の VAT 番号
[A-Z]{2} [A-Z0-9][A-Z0-9]\d{5}[A-Z0-9]{0,5}
イギリスの金融機関コード
[0-9]{2}-[0-9]{2}-[0-9]{2}
イギリスの金融機関コードは 6 桁で、ハイフンによって 2 つのグループに分かれています。
ドイツの金融機関コード
[0-9]{3} [0-9]{3}[0-9]{2}
ドイツの金融機関コードのパターンは単純で、3 桁、3 桁、2 桁で構成されています。
ドイツのナンバープレート番号
([A-ZÖÜÄ]{1,3} [A-Z]{1,2} [1-9]\d{0,3}[H]?)|([A-ZÖÄÜ]{1,3} \d{1,7})
ドイツのナンバープレートは通常、1 ~ 3 個の文字の後に 1 ~ 2 個の文字が続きます。最後に 1 ~ 4 桁の数字が続きますが、最初の数字はゼロ以外にする必要があります。[A-ZÖÜÄ]{1,3}[A-Z]{1,2}[1-9]\d{0,3}[H]?オプションの「H」は「Historic Vehicles」の略を表しています。
このほかには機関専用車両のナンバープレートがあります。1 ~ 3 個の文字の直後に数字が続きます。[A-ZÖÄÜ]{1,3} \d{1,7}
国際電話番号
\+\d{2}\d?-\d{2}\d{0,2}?-\d{3}\d{0,7}
例: +49-3456-1234567890
ドイツの郵便番号
[A-Z][A-Z]?-\d{4}\d?
例:D-82110
時刻
(0?\d|1\d|2[0-3])\:[0-5]\d\:[0-5]\d
例:10:15:00
注
フィールドマスクは、保管ダイアログを介して明示的に発生するのではなく、自動的に発生する保管イベントに対して有効になっていません。例えば、保管ダイアログを開かずに Connect to Outlook によってドキュメントが保管される場合や、ドキュメントが結果リストから別のファイルキャビネットにコピーされる場合、またはエクスポートワークフローを使用してドキュメントがエクスポートされる場合などです。
インデックスダイアログを使用することで、フィールドマスクに準拠していない値を入力することはできますが、インデックスダイアログで同じフィールドマスクまたは別のフィールドマスクが定義されていない場合に限られます。別のフィールドマスクが定義されている場合、元のエントリを変更することはできません。同じフィールドマスクが定義されている場合、別の値を同じ方法で入力できます。
マスクを定義する際は、マスクの初めと終わりにスペースを使用しないようにしてください。保管ダイアログにスペースが含まれていても、ダイアログで適切なインデックス値を入力できますが、索引語はスペースなしでデータベースに保管されます。これにより、同じマスクがフィールドに割り当てられている場合、インデックスダイアログで索引語を編集できなくなります。データベースに保管された用語はマスク定義の要件を満たさないため、読み取り専用として表示されます。
フィールドマスクで使用する正規表現は完全に一致する必要があります。正規表現が 2 つあり、一方がもう一方の拡張正規表現である場合は、長い方の正規表現を最初に指定しないと、正規表現が一致しなくなります。