レポート フォームの穴埋め
フォーム テンプレートを作成するときに、テンプレートの ID と各ホールを関連付けます。この ID により、DOM の関数 moveToNextHole
を使用して、フォーム内のホールを移動できます。
関数 moveToNextHole
を最初に実行するとき、DOM API はテンプレート内にある最初のホールまでのすべてのテキストを出力ドキュメントにコピーします。この時点で、DOM の関数 append
を使用して、出力ドキュメントへのコンテンツの追加を開始できます。それにより、最初のホールが埋まります。
関数 moveToNextHole
を次に実行すると、DOM API はテンプレート内の最初のホールと 2 番目のホールの間にあるすべてのテキストを出力ドキュメントにコピーします。その後、コンテンツを出力ドキュメントに追加して、2 番目のホールを埋めることができます。このように、テンプレートからコンテンツをコピーしてすべてのホールを埋めることで、出力ドキュメントを生成します。
たとえば、次の関数は、Title
、Author
および Content
という名前のホールがある Word テンプレートからレポートを生成します。引数 title
、author
および content
は、文字ベクトルであるとします。
function makerpt(title,author,content,rptname,rpttemplate) import mlreportgen.dom.* rpt = Document(rptname,'docx',rpttemplate); while ~strcmp(rpt.CurrentHoleId,'#end#') switch rpt.CurrentHoleId case 'Title' append(rpt,title); case 'Author' append(rpt,author); case 'Content' append(rpt,content); end moveToNextHole(rpt); end close(rpt);
参考
関数
関連する例
- レポートでのサブフォームの使用
- Microsoft Word テンプレートの作成
- Microsoft Word テンプレートでのホールの追加
- HTML および PDF のテンプレートの作成
- HTML および PDF テンプレートでのホールの追加