HELP

共通マクロ書式

処理中ファイル書式 処理中のファイルに関する書式です。
状態取得書式 処理中の状態取得に関する書式です。
ユーザーデータ書式 マクロで使用可能なデータ領域(変数)に関する書式です。
グローバルデータ書式 グローバルデータ設定で設定された文字列に関する書式です。
日付書式 日付に関する書式です。
ファイルシステム書式 コピーや移動などファイル操作に関する書式です。
文字列書式 文字列操作に関する書式です。
数学書式 計算、丸め処理等に関する書式です。
制御書式 条件分岐、繰り返し処理等、実行制御に関する書式です。
テキストファイル書式 テキストファイルに関する書式です。
データベース書式 データベースやSQLに関する書式です。
プロセス書式 プロセスに関する書式です。
DocuWorks書式 DocuWorks関連の実行に関する書式です。
DocuWorks書式 (アノテーション関連) DocuWorks (アノテーション) 関連の実行に関する書式です。
その他の書式 ダイアログ表示等の実行に関する書式です。

マクロの書式

マクロは、以下の書式で定義されマクロ名と引数を記述します。マクロ名と引数の内容によって実行時に様々な処理を行います。

{%マクロ名(引数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

文字列について

一般的なプログラム言語では、文字列を""で囲う仕様があります。eDocArrangement2のマクロでは、文字列を""で囲わないでください。

{%MSGBOX(こんにちは)}  -> 「こんにちは」が表示される

マクロの引数の部分の文字がすべて引数として渡されますので、前後にスペースなどを含めるとスペースも引数に渡ってしまいます。

{%MSGBOX(  こんにちは  )}  -> 「  こんにちは  」が表示される

コメントアウトについて

マクロの書式として成立しない文字は全て文字列となりますので、以下の様にマクロ名の先頭などに#などの文字を入れてしまえばマクロとして動作しなくなります。

{%#SET_U(属性,QRコード内容,ABC)}

マクロ書式内で使用する文字について

カンマについて

マクロ書式では、マクロの引数の区切りとして「,」(カンマ)を使用しています。カンマそのものを引数に指定する場合には、カンマの前に「|」(縦棒)を付けてください。

例 ユーザーデータに「 山田,19,男 」というデータが格納されていた場合に、カンマで分割する場合

{%SPLIT({%GET_USER_DATA(Temp,Data)},|,,分割結果)}

制御コードについて

マクロで制御コードを使用したい場合は、以下のキーワードを使用します。

タブ <Tab>
改行 <CrLf>
キャリッジ・リターン <Cr>
ラインフィード <Lf>

あまりないと思いますが、「<Tab>」そのものを表記したい場合は、「|<Tab>」のように先頭に|をつけてエスケープできます。

例 JOINマクロで改行を連結文字に指定する場合

{%JOIN(wk,<CrLf>)}

「{%」及び「)}」について

マクロ書式は、{%マクロ名(引数,引数,・・・)}のような形式となっています。マクロの引数に「{%」及び「)}」の文字を使用したい場合は、マクロ文としての解析を行わないように|でエスケープすることが可能です。

MSGBOXマクロで「{%MSGBOX()}」を表示させる場合

{%MSGBOX(|{%MSGBOX(|)})}

エスケープのエスケープについて

「||」と書くと「|」となります。

「|,」と書くと、「,」そのものを表しますが、「|,」という文字を書きたい場合は、「|||,」と記述することで、「|,」となります。