契約に関するデータをデータベースに書き込むプログラミングアプリケーションです。それは銀行ソフトウェアに似ています。
契約は非常に複雑なデータなので、その構造について説明しましょう。
基本的なコントロールのセット(ボタン、チェックボックス、テキストボックスなど)で表される基本情報があります。
契約は、附属書を考慮して、それを説明する追加の複雑なデータがある場合とない場合があります。
契約は、特別なレポートを考慮して、それを説明する追加の複雑なデータがある場合とない場合があります。
AnnexとReportは、元の契約とまったく同じ特性を持っています。ボタン、テキストボックスなどは同じです。契約とこれら2つののみの違いは、契約に2つの追加のテキストボックスがあること、そしてもちろん、AnnexとReportが契約の一部であることです。
以前にここで助けを求め、オンラインで調査した後、スペースを節約するために master-detail interface を使用することにしました。そうすれば、ユーザーは新しいデータを追加することも、既存のデータを編集/削除/検索/印刷などすることもできます。
このような大量のデータを表示するために、タブコントロールを使用することにしました。このソリューションにより、占有スペースが半分になりました。
既存のデータを表示するために、私は次の理由からツリービューコントロールを使用することにしました。
以下は、ユーザーがコントラクト/アネックス/レポートを入力するときのタブコントロールのスケッチです。
download bmml source – Balsamiq Mockups で作成されたワイヤーフレーム
2番目のタブには、契約/付録/レポートの同じコントロールがあります。最初のタブには、契約用に追加の2つのコントロールがありますが、AnnexとReportの両方で同じです。モックアップでは、この投稿の読者に参照ポイントを提供するために、コントラクトの最初のタブを示しました。
以下は、以下の場合のツリービューのスケッチです。
以下は、私がこれまでに「考え出した」ことのスケッチです。
新規入力/既存データ編集のメカニズム:
前述のように、ツリービューはデータベース内の既存のデータを表します。
ユーザーがコントラクト/アネックス/レポートを編集する場合は、目的のノードを確認して<
ボタンを押します。これにより、選択したノードがタブコントロールに読み込まれます。編集が終了したら、ユーザーは>
ボタンを押して編集を保存し、変更を保存します。
ユーザーが契約に新しい附属書/レポートを追加する場合は、タブコントロールに既存の契約をロードし(<
ボタンを押して)、_New Annex
またはNew Report
ボタン(これらのボタンは、コントラクトがタブコントロールに読み込まれるとすぐに有効になります)。別館/レポートのデータの入力が完了したら、ユーザーはsave
ボタンを押して新しいエントリを追加する必要があります。
New Contract
ボタンを押すと、新しいコントラクトが追加されます->タブコントロールがリセットおよびクリアされます。ユーザーがデータの入力を終了したら、save
ボタンを押して契約をデータベースに追加する必要があります。契約はツリービューコントロールに表示されます。
ユーザーはcancel
ボタンを押して編集/新規エントリを中止できます。
ユーザーが契約/付属書/レポートを削除/印刷したい場合は、目的のノードをチェックして対応するボタンを押すことで実行できます。
検索オプションについては、そのボタンを押すと、ユーザーが検索条件を構成するダイアログボックスが起動します。ツリービューに検索結果が再入力されます。
私の一般的な考え方は良いと思います->データの入力にはタブコントロールを使用し、既存のエントリの表示にはツリービューを使用します。 <
および>
ボタンを使用して契約/付属書/レポートを編集するためのソリューションにも満足しています。私の意見では、印刷、削除、検索機能も適切に実装されています。
ただし、新しいエントリを追加することは、その契約/附属書/レポートであっても、私の意見では非効率的です。ユーザーが既存のコントラクトをタブコントロールにロードし、新しいアネックス/レポートを追加しようとした場合も同様です。
私のデザインは非常に「不器用」で非効率的だと思います。これは私の経験不足の結果です。
+
のような特別なタブをタブコントロールに追加することができます)?さらに情報が必要な場合はコメントを残してください。関連情報で投稿を更新します。
一般的に本能は適切ですが、実装は少し不安定です。あなたが持っているインターフェースは、1)右から左に移動します(最初に右から何かを選択してから、左側に情報を入力します)、2)厳密に必要ではないロード/アンロード手順が必要です。
ここで私はあなたのインターフェースをやり直す方法:
download bmml source – Balsamiq Mockups で作成されたワイヤーフレーム
左側をクリックすると、要求された情報が右側のペインにロードされます。編集し、[保存]をクリックして完了します。
このデザインの「新規」ボタンは、状況に応じて適切な場所に配置されています。新しい契約はトップレベルの追加なので、マスターリストに存在します。 New ReportとNew Annexは個々の契約に固有なので、その契約の見解の範囲内にあります。
ここに反映されていない1つのUXパスは、保存されていない契約の場合です。ユーザーが契約に変更を加えてから、別の契約または別館をクリックするとどうなりますか?その場合、「契約#1への変更が保存されていません。変更を保存しますか?[はい] [いいえ]」というポップアップを表示します。