eDocArrangement2 ヘルプ
|
処理中のファイルに関する書式です。 |
|
|
処理中の状態取得に関する書式です。 |
|
|
マクロで使用可能なデータ領域(変数)に関する書式です。 |
|
|
グローバルデータ設定で設定された文字列に関する書式です。 |
|
|
ローカルデータ設定で設定された文字列に関する書式です。 |
|
|
設定フォルダの設定フォルダデータで設定された文字列に関する書式です。 |
|
|
日付に関する書式です。 |
|
|
文字列操作に関する書式です。 |
|
|
計算、丸め処理等に関する書式です。 |
|
|
条件分岐、繰り返し処理等、実行制御に関する書式です。 |
|
|
コピーや移動などファイル操作に関する書式です。 |
|
|
テキストファイルに関する書式です。 |
|
|
データベースやSQLに関する書式です。 |
|
|
プロセスに関する書式です。 |
|
|
Webに関する書式です。 |
|
|
DocuWorks関連の実行に関する書式です。 |
|
|
DocuWorks (アノテーション) 関連の実行に関する書式です。 |
|
|
PDF関連の実行に関する書式です。 |
|
|
Excel関連の実行に関する書式です。 |
|
|
画像処理に関する書式です。 |
|
|
AI解析サーバー(eDocAIServer)と連携した画像解析(OCR・項目抽出)に関する書式です。 |
|
|
ダイアログ表示等の実行に関する書式です。 |
マクロは、以下の書式で定義されマクロ名と引数を記述します。マクロ名と引数の内容によって実行時に様々な処理を行います。
{%マクロ名(引数1,引数2)}
マクロは戻り値があり、実行時に処理されると戻り値の内容に置換されます。(戻り値が空文字の場合もあります。)
例えば、以下のマクロは現在の日付に置換されます。
{%DATE(yyyy/MM/dd)}
↓置換される
2010/06/20
マクロのネスト(入れ子)も可能です。以下は、今日の日付をメッセージボックスに表示します。
{%MSGBOX({%DATE(yyyy/MM/dd)})}
マクロは、設定画面の各項目の入力欄にも記述できます。(一部入力出来ない項目も有りますが、入力欄の右クリックメニューにマクロセレクターが表示される項目であれば、設定可能となっています。)
例えば、フォルダ作成処理のフォルダ入力欄に、以下の様に記述すれば、日付のフォルダを簡単に作成できます。
C:\Doc\{%DATE(yyyy)}\{%DATE(MM)}\{%DATE(dd)}
↓実行時にシステム日付に置換される
C:\Doc\2010\06\20
省略可能な引数は書式の[]で表しています。
{%XXXXX(a,b,[c],[d])}
上記n書式の場合は、cとdが省略可能です。両方省略する場合は、以下の様な書き方ができます。末尾から連続して省略されている場合はカンマも不要です。
{%XXXXX(a,b)}
{%XXXXX(a,b,,)}
dを指定する場合は、cも指定するか空文字を指定します。
{%XXXXX(a,b,c,d)}
{%XXXXX(a,b,,d)}
一般的なプログラム言語では、文字列を""で囲う仕様があります。eDocArrangement2のマクロでは、文字列を""で囲わないでください。
{%MSGBOX(こんにちは)} -> 「こんにちは」が表示される
マクロの引数の部分の文字がすべて引数として渡されますので、前後にスペースなどを含めるとスペースも引数に渡ってしまいます。
{%MSGBOX( こんにちは )} -> 「 こんにちは 」が表示される
マクロの書式として成立しない文字は全て文字列となりますので、以下の様にマクロ名の先頭と末尾の閉じ括弧の間に#などの文字を入れてしまえばマクロとして動作しなくなります。
{%#SET_U(属性,QRコード内容,ABC)#}
Version 2.2.8から実装されたエスケープマクロ(ESCAPE)を使ってコメントアウトの代用として使用することもできます。(エスケープマクロの引数も構文解析は行っていますので、構文に誤りがあると期待通りに動作しません。)
{%ESCAPE( 2024/05/21 一時的にコメントとする
#ファクス番号のチェック
{%IF({%GET_U(属性,受信ファクス番号)}=,
#空の場合はエラー
{%SET_U(属性,判定,False)}
{%SET_U(属性,メッセージ,■ERR■【ファクス受信】ファクス受信番号がありません。)}
,)}
)}
マクロ書式では、マクロの引数の区切りとして「,」(カンマ)を使用しています。カンマそのものを引数に指定する場合には、カンマの前に「|」(縦棒)を付けてください。
例 ユーザーデータに「 山田,19,男 」というデータが格納されていた場合に、カンマで分割する場合
{%SPLIT({%GET_USER_DATA(Temp,Data)},|,,分割結果)}
マクロで制御コードを使用したい場合は、以下のキーワードを使用します。
|
タブ |
<Tab> |
|
改行 |
<CrLf> |
|
キャリッジ・リターン |
<Cr> |
|
ラインフィード |
<Lf> |
あまりないと思いますが、「<Tab>」そのものを表記したい場合は、「|<Tab>」のように先頭に|をつけてエスケープできます。
例 JOINマクロで改行を連結文字に指定する場合
{%JOIN(wk,<CrLf>)}
制御コードは、マクロの外(設定の入力欄に、マクロの引数ではなく直接書いた文字)に書いた場合も変換されます(Version 2.6.17 から)。詳しくは、下の「マクロの外に書く文字について」をご覧ください。
マクロ書式は、{%マクロ名(引数,引数,・・・)}のような形式となっています。マクロの引数に「{%」及び「)}」の文字を使用したい場合は、マクロ文としての解析を行わないように|でエスケープすることが可能です。
MSGBOXマクロで「{%MSGBOX()}」を表示させる場合
{%MSGBOX(|{%MSGBOX(|)})}
下記のように記述するとマクロをエスケープできます。
{%MSGBOX({%ESCAPE({%MSGBOX()})})}
「||」と書くと「|」となります。
「|,」と書くと、「,」そのものを表しますが、「|,」という文字を書きたい場合は、「|||,」と記述することで、「|,」となります。
これらはマクロの引数の中に書く場合のエスケープです。マクロの外に書いた「||」「|,」は、書いたとおりに出力されます(下の「マクロの外に書く文字について」)。
設定の入力欄に、マクロの外で直接書いた文字(どのマクロの引数でもない部分)は、次のように扱われます。
|
<Tab> <CrLf> <Cr> <Lf> |
マクロの引数の中と同じく、制御コードに変換されます(Version 2.6.17 から)。 |
|
|<Tab> |{% |)} |
マクロの引数の中と同じく、先頭の「|」を除いた文字(<Tab> {% )})になります。 |
|
, |, || |
マクロの外ではカンマが引数の区切りにならないため、書いたとおりに出力されます。カンマは「|」を付けずに、そのまま書いてください。SQLの文字列連結の「||」なども、そのまま書けます。 |
例 テキスト書き込みの出力テキストに、ファイル名と日付をタブで区切って書く場合
{%GET(FileName)}<Tab>{%DATE(yyyy/MM/dd)},済み
↓実行時に置換される(→はタブ)
report.xdw→2026/10/02,済み
Version 2.6.16 以前では、マクロの外に書いた制御コードは変換されず、「<」が消えて「Tab>」のように出力されます。マクロの引数の中に書いた制御コードは、以前の版でも変換されます。