電子文書管理システムのアプリケーション。 パート6:ビュー

EDMSアプリケーションに関する一連の記事を続けて、プレゼンテーションなどのオブジェクトについて説明します。 ビューは、アプリケーションのコンテキストで特定の方法で編成されたドキュメントとタスクのリストを表示できるシステムの要素です。 私の意見では、これはおそらく電子文書管理システムを他のタイプのシステムと区別する最も具体的なオブジェクトです。詳しく見てみましょう。



最初の出版物で述べたように、電子文書管理システム(この場合はDocsvision)のアプリケーションは、文書(文書カード)、プロセスとタスク、プレゼンテーションとフォルダーといった比較的独立したカスタマイズ可能なコンポーネントから組み立てられます。 会計システムの通常の表とは異なり、EDMSでのプレゼンテーションは、はるかに柔軟なツールです。 これは、アプリケーションで使用できる最も多様なタイプのオブジェクトを1つのテーブルビューに表示し、この表示用の特定のコンテキストを形成する必要があるためです。 さらに、ビューを使用すると、アプリケーションユーザーは、アプリケーションのビジネスロジックに従ってビューに表示されるオブジェクトを使用してさまざまなアクションを実行できます。 SED、特にDocsvisionの機能は、プログラミングなしでビューをカスタマイズする必要があることです。



Docsvisionに実装されたプレゼンテーションの概念は、伝説的かつ一時的に革命的なロータスノーツ製品に具現化されたアイデアを創造的に発展させ、そのようなオブジェクトが最初に登場しました。 おそらく、ビューはLotus Notesシステムの主要な「機能」であり、従来のデータベース開発に非常に精通していた私は、このコンポーネントの目的を理解することは非常に困難でした。ロシアのシステム。



異常なものは何ですか?



一方では、これはいくつかのオブジェクトのグループビューを表示する通常のテーブルです。 各行は要素(この場合はドキュメント)に対応し、フィールドは行に表示されます。 テーブルは、ソート、フィルタリング、ドキュメントからの初期化、さまざまな操作、特定のグループ操作(ドキュメントのエクスポート、ステータスの変更など)を実行して初期化できます。







図1 Docsvisionビューの例



プレゼンテーションの特異性は、さまざまなタイプのドキュメントを1つのテーブル(データベースの結合テーブルに類似)に表示できることです。また、絶対に任意のオブジェクト、任意のフィールド、さまざまな派生データを表示できます。 もう少し説明します。



ビューは何に適用できますか?



2つの可能性があります。 1つ目は、ドキュメントを含むフォルダーにビューを適用することです。つまり、ビュー内の物理フォルダーに保存されているドキュメントを表示します。 Docsvisionフォルダーには、異なるメタデータ(属性)のセットを含むさまざまなタイプのドキュメントを保存できます。

2番目は、いわゆる仮想フォルダーにビューを適用することです。これは、フルテキストおよび属性コンポーネントを含む可能性のある検索クエリの結果を表示するフォルダーです。 さまざまな種類のドキュメントが仮想フォルダに表示されることもありますが、どのドキュメントを事前に予測することもできません。 任意のタイプのドキュメントに適用されるフルテキストクエリに一致するドキュメントが該当する場合があります。 各ドキュメントは、個別の行または行のグループとして表示されます(これについては以下で詳しく説明します)。



プレゼンテーション構造



ビューとは、特定のタイプとセマンティクスのデータが各列にあるテーブルです。 上記の例では、これはドキュメントのタイプ、その番号、ドキュメントの作成者、コントローラー、および期限です。







図 2.プレゼンテーションテーブルのヘッダーのセマンティクス。



さらに、さまざまな種類のドキュメントでは、特定のプレゼンテーション列への出力の属性をさまざまなメタデータフィールドに含めることができます。 この例では、「注文」タイプのドキュメントの「締切」列に表示される属性は、「実行前」フィールド、「着信」タイプのドキュメント、「実行日」フィールド、「タスク」-「日付」フィールドに含まれます。完了」、「送信」には、このようなセマンティクスを持つ属性はまったくありません。 ただし、プレゼンテーションでは、これらすべてを1つのテーブルに収集し、さまざまなタイプのドキュメントの実行時間の一般的なビューを取得できます。







図 3.さまざまなタイプのドキュメントの属性がプレゼンテーション列に表示される順序。



もちろん、「伝統的な」アプリケーションの作成に慣れている開発者は困惑するかもしれません。すべてのシステムオブジェクトの単一のデータモデルが事前に考え出されず、そのような奇妙なメカニズムが必要であるような奇妙なアプリケーションをどのように設計できますか? ただし、ここでは、EDMSはモノリシックアプリケーションではないことを覚えておく必要があります。 EDSは、さまざまな種類のドキュメントやプレゼンテーションを含む個々のアプリケーションをさまざまな開発者がさまざまなタイミングで作成し、既製で購入し、運用中に調整できるプラットフォームです。 これはすべて、情報の整合性を確保することが不可能であるという事実につながります(たとえば、単一の属性命名ポリシーを維持するため)。 しかし、これらの独立して作成されたアプリケーションは、「組織の知識を蓄積する」システムの結果を形成し、ユーザーの観点からこのシステムの情報「整合性」を確保するために、このメカニズムが実装されます。



プレゼンテーション列の名前に加えて、列に表示されるデータのタイプと形式(たとえば、ソート方法に影響する日付または小数の形式)を決定することができます。

前述したように、属性はドキュメント内のテーブルに配置できます。 必要に応じて、たとえば、ファイルのセットがドキュメントに保存されている場合、プレゼンテーションに属性を表示できます。各ファイルには、作成日や名前などの独自の属性セットがあります。 ドキュメントをテーブルに表示するときに、ドキュメント内のファイルと同じ数の行が割り当てられ、各行に対応するファイルの作成の名前と作成日が表示されるビューを作成することができます。



複雑な表示構造を持つビュー



このビューでは、ドキュメントの特定の属性の値だけでなく、ソースに関連付けられているファイルキャビネットとディレクトリの属性も表示できます。 たとえば、ドキュメントの個々の属性と、このドキュメントに関連付けられているタスクをビューに表示します。 このような複雑なプレゼンテーションのもう1つの例は、契約とその属性の表示、およびこの契約に関連付けられている行為(およびその属性)のリストです。 ドキュメントとより複雑な関係にあるオブジェクトの属性を表示する必要がある場合があります。 たとえば、ドキュメントタスクの実行者である従業員のデータ(電話番号など)を表示する必要がある場合があります。 このケースは非常に実用的です。このビューを使用すると、従業員のディレクトリを開かずにドキュメントの実行を遅らせる従業員をすばやく呼び出すことができます。 情報構造を見ると、電話番号がリンクカードではなくドキュメントに保存されているのではなく、従業員のディレクトリに保存されていることがわかります。その記録はドキュメントに関連付けられたタスクカードのフィールドによって示されます。 システムを使用すると、表示されたドキュメントに直接関連するプレゼンテーションのさまざまなオブジェクトのデータを表示したり、中間のオブジェクトを介して接続したりできます(従業員の電話の例のように)。



さらに複雑なケースは、関連オブジェクトのデータを表示するときに特定の条件を考慮することです。 たとえば、関連タスクを表示し、それに応じて従業員の電話を表示する場合、不要なデータでプレゼンテーションが乱雑にならないように、問題のあるタスクについてのみ必要です。 このような条件は、プレゼンテーションの構造を説明するときに考慮することもできます。

場合によっては、表示されたドキュメントまたはそれに関連付けられたオブジェクトのデータに基づいて計算される合成データを表示するプレゼンテーションが必要です。 たとえば、ドキュメントに関連付けられているタスクの数、または契約に基づいて完了した行為の合計数を表示できます。 計算フィールドには、特定の条件を課すことができます。たとえば、不完全なタスクの数のみを表示したり、クローズド行為の量を個別に計算し、同時にルーブルとドルでクローズされていることを考慮します。



必要に応じて、ビューのデータをテーブルの特定の列の値でグループ化できます。 また、列にさまざまな種類のオブジェクトのさまざまな属性の値を表示できることを覚えている場合、さまざまな種類のカードのさまざまな属性によって表されるフィールドでオブジェクトをグループ化できることがわかります。 グループ化の各レベルで、要素の総数、数値フィールドの合計と平均など、さまざまな数値集計を計算できます。







図 4.グループ化と集計値の計算を含むビューの例。



ビジュアルプレゼンテーションデザイン



システムでは、フォント、背景色、セパレーター形式などの視覚的表現をカスタマイズできます。必要に応じて、条件(個々のテーブルフィールドの値)に応じて、テーブルのさまざまな要素(行)にさまざまな色の選択を定義できます。 たとえば、実行期限に違反しているドキュメントや、期限が近づいているドキュメントが強調表示される場合があります。 視覚的な強調表示を設定するシステムは非常に柔軟で、アプリケーション開発中に発生するすべての実用的な問題を解決できます。 図4では、ユニットが表示されている行が色で強調表示され、図1では、完了したタスクが緑色で強調表示され、オレンジ色でステッチされています。



レポートの読みやすさを向上させるもう1つの便利な機能は、個々のドキュメントの属性を文字列として表示する機能です。これは、Outlookで利用可能なテーブルビューでメールの内容を直接作成する方法と同様に、テーブルの列への区切りを無視します







図 5.ドキュメントの概要は、各ドキュメントのビューに個別の行として表示されます



カスタマイズされたプレゼンテーションは、すべてのクライアントに等しく表示されます。「ヘビー」、ライト(HTML)、モバイルで、フォームファクターのタイプに自動的に適応します。







図6 Light Docsvisionクライアントでの表現の表現







図7 Docsvision Mobile Clientでビューを表示する



操作を表示



ビュー全体では、ビュー内のすべてのドキュメントと同様に、リボンパネルおよびコンテキストメニューからさまざまな操作を実行できます。 並べ替えとフィルター処理だけでなく、ビューをExcelにアップロードして、レポートをメールで送信したり、データをさらに操作したりできます。 Outlookのメールと同様に、ドキュメントは既読または未読としてマークできます。 特定のハンドラーを実装できます-これには、グループ操作を構成する特別な機能があります。 グループ操作を適用するプレゼンテーションのドキュメントの種類、操作の表示名、アイコン、操作のアイコンを定義できます。また、ビューに表示されるドキュメントで操作のロジックを実装するスクリプトをC#で作成する必要があります。



この記事を要約すると、Docsvisionプレゼンテーションメカニズムにより、Docsvisionシステムに基づいて実装されたアプリケーションの合成レポートを作成する問題を完全に解決できることに注意してください。 さらに、これらのレポートでは、情報の表示だけでなく、操作(並べ替え、グループ化、フィルタリング)の実行、オブジェクトとの相互作用の初期化、グループ操作の実行も可能です。



All Articles