Main Content

フォームの穴埋めの簡略化

オブジェクト指向の方法では、DOM の fill メソッドを使用して、フォームベースのレポートを簡略化できます。fill メソッドは、mlreportgen.dom.Document または mlreportgen.dom.DocumentPart クラスから派生したクラスのインスタンスを対象とします。ドキュメントまたはドキュメント パーツ テンプレートの各ホールに対し、派生クラスが次のシグネチャをもつメソッドを定義していると仮定します。

     fillHoleID(obj)

このシグネチャの HoleID 部分は、ドキュメントまたはドキュメント パーツ テンプレートで定義されたホールの ID です。obj 引数は、派生クラスのインスタンスです。たとえば、テンプレートで Author という名前のホールを定義しているとします。次に、この Author ホールを埋めるために派生クラスで fillAuthor という名前のメソッドを定義します。これらのホールを埋めるためのメソッドを派生クラスで定義していると仮定して、fill メソッドはドキュメントまたはパーツの最初のホールから最後のホールまで移動し、対応する fillHoleID を呼び出して各ホールを埋めます。

fill メソッドを使用すると、ドキュメントまたはドキュメント パーツのテンプレートのホールに対し、レポート プログラムで明示的にループを行う必要がなくなります。レポートでは、ドキュメントまたはパーツの fill メソッドを呼び出すことのみが必要です。たとえば、mlreportgen.dom.Document クラスから MyReport という名前のレポート クラスが派生しており、この派生クラスではコンストラクターに提供されたデータに基づいてレポート テンプレートで定義された各ホールに対するメソッドを定義しているとします。このとき、必要なのは MyReport のインスタンスを生成する次の 3 行のみです。

function makeReport(rptdata)
rpt = MyReport(rptdata);
fill(rpt);
close(rpt);

フォームベースのオブジェクト指向レポート プログラムの例については、MATLAB® Report Generator™ ドキュメンテーションの [例] ペインで、オブジェクト指向でのレポートの例を参照してください。

参考

関数

クラス

関連する例

詳細