このページはInternet Explorerでは正しく表示が行われません。

Google Chrome,Firefox,Edge等のブラウザをご利用ください。

The Fusion of Technology and Graphic Design

eDocArrangement Version1と2の相違点

eDocArrangement Version1は、2004年にリリースされ17年の間、マイナーバージョンアップを続け進化してきました。

eDocArrangement Version2は、最新の開発環境に移行し、内部設計を1から見直し、17年間で得られた技術を結集しました。

そのためVersion1との互換性が失われてしまい、設定は新しく作り直す必要があります。しかし、機能面ではVersion1とほぼ同じ実装を行い、さらに多様な業務処理に対応するための新機能を搭載しております。

このセクションでは、Version1を使った業務処理を経験されている方にお伝えしたい相違点を紹介いたします。

システム構成

開発環境が.NET Frameworkになりました。(一部のライブラリを除く)

共通言語ランタイム (CLR) によるメモリ管理が行われるので、メモリの安全が確保され安定性が向上しました。

スケジュール機能の分離

Version1は1つのフォームアプリケーションに、設定の作成やフォルダ監視のスケジュール機能が一緒になっていました。

Version2では、スケジュール設定、フォルダ監視のスケジュール実行の機能をスケジューラーアプリに分離しました。

メイン画面

スケジューラー

設定ファイル

設定ファイルはSQLiteのデータベースファイルになりました。設定情報は全てデータベースファイルに記録され、設定の数が増えても高速にアクセスできるように設計しています。

メイン画面の設定と、スケジューラーの設定をぞれぞれ別ファイルに保存しています。

設置方法

設定情報は「eDocArrangement2.db」と「eDocArrangement2Schedule.db」に記録されます。この2つのファイルをAppDataフォルダに配置します。

プロダクトIDの保存場所

Ver.1ではプロダクトIDもiniファイルに記録されていましたが、Ver.2では設定ファイルから分離して、AllUsers(ProgramData)フォルダの「eDocArrangement2Common.db」に保存するようになっています。

メイン画面やスケジューラーの設定ファイルにプロダクトIDは記録されないので、社内で作成した設定を、ユーザー先に設置するときにプロダクトIDを消すなどの作業は不要です。

プロダクトIDは、インストールしたPCでeDocArrangementを起動するときに入力画面が表示され、入力すると「eDocArrangement2Common.db」に記録されます。

ファイルメニューの「AllUsersフォルダを開く」で「eDocArrangement2Common.db」のフォルダを開くことができます。

ユーザー様がeDocArrangement2を購入後にプロダクトIDを入力したら、「eDocArrangement2Common.db」をバックアップしておくことをお勧めいたします。

Windowsサービス

Windowsサービスで実行する場合は、eDocArrangementサービスを使用します。Version1では、本体と別でインストールする必要がありました。Version2では、本体のインストーラーに含まれており、eDocArrangementサービスも同時にインストールされます。

設定ファイルは、Version1と同じようにAllUsers(ProgramData)フォルダに設定をコピーして使用します。eDocArrangementスケジューラーの設定画面の共通設定にある、「設定ファイルをAllUsersフォルダにコピーする」をチェックするとAllUsers(ProgramData)フォルダに設定ファイルがコピーされるようになります。

スケジューラーの設定画面の共通設定の「設定ファイルをAllUsersフォルダにコピーする」をチェックした設定ファイルは、手動で設定ファイルを配置するときに、AllUsers(ProgramData)フォルダと、AppDataフォルダの両方にコピーする必要があります。

設定画面の処理パネル

Version1の設定画面は、処理のパネルがファイルの繰り返し内で実行されることを前提としたUIになっています。

また、XDW文書のページの繰り返し処理はマクロ実行のパネルでページ毎に実行するオプションで設定を行っています。

実際の処理では繰り返しの処理がありますが、設定画面で繰り返しの表現を隠して簡略化していました。

Version2の設定画面では、繰り返し処理や分岐処理をツリーで表示して処理の設定がプログラム構造と同じになるようにしました。

プログラミングの基本となる3つの処理(順次・分岐・繰り返し)が表現できるようになったことで、自由に処理を作ることができるようになりました。

これらの処理は右クリックメニューから追加できます。

設定画面のパフォーマンス改善

設定画面の操作性、表示速度を改善しました。設定量が増えても快適に操作できます。

主な変更点

  • ログ出力の設定を共通設定で設定することができるようになりました。バッチ設定毎に個別に設定することも可能です。
  • エラー時のメール送信機能は廃止しました。処理設定が階層構造になり、どのタイミングでエラーを検出するかが設定次第になったので、条件分岐パネルや繰り返し処理のエラー時の処理などにマクロを書いて、任意のタイミングでメール送信マクロで送信するように設定すれば送信できます。
  • 処理のコピー&ペーストができるようになりました。但し、別の処理パネルの参照を選択するような項目(アノテーション取得のオープン処理名など)がある場合、コピー先にも同名の処理が必要になります。また、貼り付け後に参照項目を選択するなどの注意が必要です。
  • ユーザーデータはファイルの繰り返し処理の設定で、クリア有無を設定できます。
  • スクリプト実行の処理は廃止となりました。テキスト書き込みでスクリプトを一時フォルダに出力後、コマンド実行でスクリプトを実行することで同様の処理ができます。

  • ブラウザフォームエクステンションは廃止となりました。
  • コメントノードを追加できるようにしました。コメントの下位ノードに配置した処理は実行されません。

    処理を一時的に無効にしたい場合に使用します。

マクロ

Version1のマクロは、当初文字の置換を行うために実装されました。その後、条件分岐や繰り返しも行えるように拡張しましたが、置換処理をベースにした設計で擬似的な方法でプログラムに近い処理が行えるようになっています。

そのため、IFマクロやLOOPマクロの書き方に制限があり、使い方が難しいケースがありました。

Version2のマクロは、一般的な言語と同様の構文解析を行っており、IFマクロ、LOOPマクロもプログラム通りの処理が行えるようになりました。

主な変更点

  • IFマクロの前後に「#--」を書くなどのルールはなくなりました。
  • IFマクロを先に処理するなどの動きはなくなりました。通常のプログラムと同じように上から下に構文解析して実行していきます。
  • マクロの引き数に「,」を使用する場合、Version1は「\,」と「\」でエスケープしましたが、Version2からは「|」をエスケープ記号にしました。「|,」と書くことで「,」そのものを引き数の値に使用することができます。
  • 「\」そのものを書くときにエスケープする必要がなくなりました。Version1では正規表現に「\\」を使いたい場合に、マクロのエスケープも必要だったので、「\\\\」とする必要がありましたが、Version2では「\\」と書けばよくなりました。
  • ログの出力マクロは「WRITE_LOG」になりました。
  • ユーザーデータマクロが拡張され、指定できるキーが10個になりました。この変更により多次元の配列を記憶できるようになりました。
  • XDW文書オープン・クローズの処理を処理パネルに追加して、明示的にオープン・クローズを行うようにしました。

    Version1では、マクロでXDW文書を参照する場合は、マクロ内で毎回オープンとクローズを行っていましたが、Version2では処理パネルでオープンを行い、オープン中のXDW文書に対してマクロの処理を行うようになりました。そのためXDW文書を参照するマクロは、オープン処理名を引数に渡す必要があります。(一部例外あり)

  • 処理中ファイルのパスやファイル名を取得するマクロはGETマクロにまとめられました。

  • 文書属性の取得・設定を行うマクロは、DW_GET_DOCUMENT_ATTRIBUTE」、「DW_SET_DOCUMENT_ATTRIBUTE」になりました。

  • アノテーション削除マクロは、アノテーション取得処理で検索を行い、ヒットしたアノテーションに対して、「DW_REMOVE_ANNOTATION」マクロで削除する方法に変更されました。

  • バインダー、オリジナルデータを操作するマクロは廃止になりました。XDW文書オープンの処理でバインダーをオープンすると一時フォルダにバインダー内の文書が展開され、そのフォルダ名を取得するマクロ(DW_GET_TEMP_FOLDER_FOR_EXTRACTION)が追加されました。

    このフォルダ内のファイルを編集したり、追加・削除するとバインダーのクローズ時に更新保存されます。

    XDW文書オープンについては、 マニュアル をご覧ください。

  • DATEマクロ、FORMATマクロなどの日付書式が.NET FreameWorkの書式に変わりました。年月日時分秒ミリ秒は「yyyy/MM/dd HH:mm:ss fff」という表記になります。 [2021.08.22 追記]

  • 正規表現のエンジンが.NET FreameWorkのライブラリに変わりました。 [2021.08.22 追記]

  • マクロ全般で指定する長さの単位が1/100mmからmmに変更となりました。 [2021.09.02 追記]