Main Content

slreportgen.report.DataDictionary クラス

パッケージ: slreportgen.report
スーパークラス: slreportgen.report.Reporter

Simulink データ ディクショナリ レポーター

説明

slreportgen.report.DataDictionary クラスのオブジェクトを使用して、Simulink® データ ディクショナリについてレポートします。特定のデータ ディクショナリについてレポートするには DataDictionary オブジェクトを作成します。あるいは、slreportgen.finder.DataDictionaryFinder オブジェクトを使用してデータ ディクショナリを検索し、slreportgen.finder.DataDictionaryResult オブジェクトの getReporter メソッドを使用して結果のレポーターを返します。

メモ

レポートで slreportgen.report.DataDictionary レポーターを使用するには、slreportgen.report.Report クラスまたはサブクラスを使用してレポートを作成する必要があります。

slreportgen.report.DataDictionary クラスは handle クラスです。

クラス属性

HandleCompatible
true

クラス属性の詳細については、クラスの属性を参照してください。

作成

説明

reporter = slreportgen.report.DataDictionary() は、既定のテンプレートに基づいて DataDictionary レポーター オブジェクトを作成します。レポーター プロパティを使用して、データ ディクショナリとレポート オプションを指定します。レポート対象のデータ ディクショナリを指定する必要があります。空のデータ ディクショナリ レポーター オブジェクトをレポートに追加すると、エラーが発生します。

reporter = slreportgen.report.DataDictionary(dictionaryName)DataDictionary レポーター オブジェクトを作成し、Dictionary プロパティを指定されたデータ ディクショナリに設定します。レポーター プロパティを使用して、レポート オプションを指定します。

reporter = slreportgen.report.DataDictionary(Name=Value) は、名前と値のペアを使用してレポーター プロパティを設定します。複数の名前と値のペアの引数を任意の順序で指定できます。

プロパティ

すべて展開する

レポート対象のデータ ディクショナリ。MATLAB® パス上のディクショナリのファイル名、またはデータ ディクショナリのパスとファイル名を含む文字ベクトルまたは string スカラーとして指定します。パスは相対パスでも絶対パスでもかまいません。

例: "sldemo_fuelsys_dd.sldd"

例: "myDictionaries/myDataDictionary.sldd"

属性:

GetAccess
public
SetAccess
public

概要テーブルの各データ ディクショナリ エントリについて、レポートするプロパティ。string 配列、または文字ベクトルの cell 配列として指定します。有効なプロパティは次のとおりです。

  • Name

  • Value

  • Class

  • LastModified

  • LastModifiedBy

  • Status

  • DataSource

データ型が数値スカラー、logical スカラー、string スカラー、または文字ベクトルの場合、Value エントリは値を含みます。それ以外の場合、Value エントリは See details です。

例: ["Name" "Value" "Class" "LastModified" "LastModifiedBy" "Status" "DataSource"]

例: {'Name' 'Value' 'Class'}

属性:

GetAccess
public
SetAccess
public

データ ディクショナリの [Design Data] セクションをレポートするかどうか。true または false として指定します。

属性:

GetAccess
public
SetAccess
public

データ型: logical

データ ディクショナリの [Configurations] セクションをレポートするかどうか。true または false として指定します。

属性:

GetAccess
public
SetAccess
public

データ型: logical

データ ディクショナリの [Other Data] セクションをレポートするかどうか。true または false として指定します。

属性:

GetAccess
public
SetAccess
public

データ型: logical

このレポーターのレポート対象のディクショナリによって参照されるディクショナリを含めるかどうか。true または false として指定します。ReferencedDictionaryPolicy プロパティは、参照されたディクショナリをどのようにレポートするかを決定します。

属性:

GetAccess
public
SetAccess
public

データ型: logical

参照されるディクショナリをレポートするための表示ポリシー。次の値のいずれかとして指定します。

  • "SameTable" — 参照されるディクショナリのエントリを、メイン ディクショナリのエントリと同じテーブルにレポートします。詳細は、概要テーブルに表示される順序で表示されます。この値は既定値です。

  • "SeparateTables" — 参照される各ディクショナリについて個別のテーブルを作成します。参照されるディクショナリの概要テーブルは、メインの概要テーブルの直後に表示されます。参照されるディクショナリの詳細レポーターは、メイン ディクショナリの詳細レポーターの後に表示されます。

  • "List" — 参照されるディクショナリのリストをレポートします。リスト項目は、個別のデータ ディクショナリ レポーターにリンクしています。このリンクは、参照されるディクショナリのレポーターをこのレポートに追加した場合にのみ機能します。リストは、ディクショナリの概要テーブルの直後の「データの設計」の節に表示されます。ディクショナリの概要テーブルは、参照されるディクショナリのエントリを含みません。参照されるディクショナリのエントリの詳細はレポートされません。

属性:

GetAccess
public
SetAccess
public

データ ディクショナリ エントリのフィルター。関数ハンドル、string スカラー、または文字ベクトルとして指定します。EntryFilterFcn を指定しない場合、すべてのエントリがレポートに含まれます。

関数ハンドルを指定する場合、関連付けられた関数は次を行う必要があります。

  • 次の引数を受け入れる。

  • レポートから指定されたエントリをフィルター処理するには true を返し、エントリをレポートに含めるには false を返す。

たとえば、次のコードは EntryFilterFcn プロパティを使用して、Simulink.Parameter オブジェクトであるエントリのレポートを抑止します。

rpt = slreportgen.report.Report("MyReport","pdf");
ddPath = which("slrgex_fuelsys.sldd");

ch = mlreportgen.report.Chapter("slrgex_fuelsys.sldd");
rptr = slreportgen.report.DataDictionary(ddPath);

filterFcnHandle = @(entryObject, entryValue) ...
    isa(entryValue,"Simulink.Parameter");
rptr.EntryFilterFcn = filterFcnHandle;

append(ch,rptr);
append(rpt,ch);

close(rpt);
rptview(rpt);

string スカラーまたは文字ベクトルを指定する場合、式が含まれていなければなりません。その式は次のとおりです。

  • 変数 entryObject および変数 entryValue を使用できる

  • レポートから指定されたエントリをフィルター処理するには、変数 isFilteredtrue に設定し、レポートにエントリを含めるには false を設定する必要がある

たとえば、次のコードは EntryFilterFcn プロパティを使用して、Simulink.Bus オブジェクトであるエントリのレポートを抑止します。

rpt = slreportgen.report.Report("MyReport","pdf");
ddPath = which("slrgex_fuelsys.sldd");

ch = mlreportgen.report.Chapter("slrgex_fuelsys.sldd");
rptr = slreportgen.report.DataDictionary(ddPath);
filterStr = "isFiltered = isa(entryValue,'Simulink.Bus');";
rptr.EntryFilterFcn = filterStr;

append(ch,rptr);
append(rpt,ch);

close(rpt);
rptview(rpt);

属性:

GetAccess
public
SetAccess
public

エントリの概要テーブルのフォーマッタ。mlreportgen.report.BaseTable オブジェクトとして指定します。このプロパティの既定値は、TableStyleName プロパティが DataDictionaryTable スタイルに設定された BaseTable オブジェクトであり、これは DataDictionary レポーターの既定のテンプレートに定義されています。テーブルの外観をカスタマイズするには、既定の BaseTable オブジェクトのプロパティを変更するか、そのオブジェクトをカスタマイズ後の BaseTable レポーターに置き換えます。Title プロパティにコンテンツを追加すると、生成されたレポートでテーブルのタイトルの前にそのコンテンツが表示されます。

属性:

GetAccess
public
SetAccess
public

データ ディクショナリの [Design Data] セクションおよび [Other Data] セクションのエントリ値の詳細をレポートするためのフォーマッタ。mlreportgen.report.MATLABVariable オブジェクトとして指定します。このプロパティの既定値は、既定のプロパティ値をもつ MATLABVariable オブジェクトです。エントリの詳細の外観をカスタマイズするには、既定の MATLABVariable オブジェクトのプロパティを変更するか、このオブジェクトを独自の MATLABVariable レポーターに置き換えます。MATLABVariable レポーターの LocationLinkTarget、および Variable の各プロパティは無視されます。

属性:

GetAccess
public
SetAccess
public

データ ディクショナリの [Configurations] セクションのエントリ値の詳細をレポートするためのフォーマッタ。slreportgen.report.ModelConfiguration オブジェクトとして指定します。このプロパティの既定値は、既定のプロパティ値をもつ ModelConfiguration オブジェクトです。エントリの詳細の外観をカスタマイズするには、既定のオブジェクトのプロパティを変更するか、独自の ModelConfiguration オブジェクトに置き換えます。 レポーターの Model プロパティおよび LinkTarget プロパティは無視されます。

属性:

GetAccess
public
SetAccess
public

参照されるディクショナリ リストのリスト フォーマッタ。mlreportgen.dom.UnorderedList オブジェクトまたは mlreportgen.dom.OrderedList オブジェクトとして指定します。リスト フォーマッタは、ReferencedDictionaryPolicy プロパティが "List" に設定されている場合に使用されます。UnorderedList オブジェクトまたは OrderedList オブジェクトがリスト項目を含んでいてはなりません。

このプロパティの既定値は、StyleName プロパティが DataDictionaryList スタイルに設定された UnorderedList オブジェクトであり、これは DataDictionary レポーターの既定のテンプレートに定義されています。リストの詳細の外観をカスタマイズするには、既定の UnorderedList オブジェクトのプロパティを変更するか、このオブジェクトを独自の UnorderedList オブジェクトまたは OrderedList オブジェクトに置き換えます。

属性:

GetAccess
public
SetAccess
public

このレポーターのテンプレートのソース。以下のいずれかの方法で指定します。

  • このレポーターのテンプレートを含むファイルのパスを指定する、文字ベクトルまたは string スカラー

  • このレポーターに使用されているテンプレートをもつか、このレポーター用のテンプレートを含むテンプレート ライブラリをもつ、レポーターまたはレポート

  • このレポーターに使用されているテンプレートをもつか、このレポーター用のテンプレートを含むテンプレート ライブラリをもつ、DOM ドキュメントまたはドキュメント パーツ

指定されるテンプレートは、このレポーターが追加されるレポートと同じタイプでなければなりません。たとえば、Microsoft® Word レポートの場合、TemplateSrc は Word レポーター テンプレートでなければなりません。TemplateSrc プロパティが空の場合、このレポーターはレポートの出力タイプで既定のレポーター テンプレートを使用します。

属性:

GetAccess
public
SetAccess
public

このレポーター テンプレートの名前。文字ベクトルまたは string スカラーとして指定します。このレポーター テンプレートは、このレポーターの TemplateSrc プロパティで指定されたテンプレートのテンプレート ライブラリになければなりません。

属性:

GetAccess
public
SetAccess
public

このレポーターのハイパーリンク ターゲット。リンク ターゲット ID を指定する文字ベクトルまたは string スカラー、あるいは mlreportgen.dom.LinkTarget オブジェクトとして指定します。文字ベクトルまたは string スカラーの値は LinkTarget オブジェクトに変換されます。リンク ターゲットは、出力レポートでこのレポーターのコンテンツの直前に配置されます。

属性:

GetAccess
public
SetAccess
public

メソッド

すべて展開する

すべて折りたたむ

slreportgen.report.DataDictionary クラスのオブジェクトを使用して、Simulink データ ディクショナリについてレポートします。

長い完全修飾クラス名を使用せずに済むように、MATLAB レポートおよび Simulink レポートの API パッケージをインポートします。

import slreportgen.report.*
import mlreportgen.report.*

Simulink レポートを作成します。

rpt = slreportgen.report.Report("MyReport","pdf");

モデル slrgex_fuelsys で使用されるデータ ディクショナリのパスを指定します。

ddPath = which("slrgex_fuelsys.sldd");

データ ディクショナリ情報の章を作成します。

ch = Chapter("slrgex_fuelsys.sldd");

データ ディクショナリのレポーターを作成します。

rptr = DataDictionary(ddPath);

レポーターを章に追加し、その章をレポートに追加します。

append(ch,rptr);
append(rpt,ch);

レポートを閉じて表示します。

close(rpt);
rptview(rpt);

バージョン履歴

R2020b で導入