[{"id":"08e0fe96-3025-463b-bcee-87f4b29c462b","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"0d5035e7-1a53-4dc5-b32e-9ce261bfa47e","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"2fb2b485-f567-436c-9ca9-06dd71ceadb3","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"c1466f0c-9710-41d3-9812-c7321630328a","tags":[{"product":null,"links":null,"id":"e1d31134-0bda-4c05-bee0-b1f21f82940b","name":"new","color":"#00A273","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"b0e616b5-b520-405e-b108-e81363a8dd74","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"f5712fda-d364-4652-9783-3073e2560b97","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"8f03c498-1e02-459a-a6de-ee619033d6d2","tags":[{"product":null,"links":null,"id":"92283933-94f9-4e9a-8d93-15ba4ec8b3ec","name":"upd","color":"#7e678a","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"2b701643-01a1-40e0-b49b-0a6e93c1f847","tags":[{"product":null,"links":null,"id":"e1d31134-0bda-4c05-bee0-b1f21f82940b","name":"new","color":"#00A273","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]},{"id":"07b4f367-7ddc-4c8a-932c-b180f112364e","tags":[{"product":null,"links":null,"id":"e1d31134-0bda-4c05-bee0-b1f21f82940b","name":"new","color":"#00A273","productId":"77f3d9a0-2c87-4130-b77a-b94ccf13e3cb"}]}]
        
(Showing Draft Content)

レポートアイテムテンプレート

レポートに新しいコントロール(TextBoxなど)を追加すると、そのレポートコントロールのプロパティに自動的にデフォルト値が設定されます。たとえば、Textboxをレポートに追加すると、フォント名がArial、フォントのサイズが10pt、およびフォントのスタイルがNormalに自動的に設定されます。これらのデフォルト値を変更するには、次の方法を実行します。

レポートアイテムテンプレート

レポートアイテムテンプレートは、目的の値をレポートコントロールのデフォルト値として設定したレポートです。デザイナアプリを使用してレポートアイテムテンプレートを作成できます。たとえば、TextBoxのデフォルトのフォント名を 「Times New Roman」 に設定するには、TextBoxをテンプレートレポートに追加して、フォント名を設定できます。


新しく追加されたレポートコントロールには、フォント名などのさまざまなスタイルプロパティに加えて、デフォルトの位置とサイズが設定されます。位置とサイズは、レポートデザイナの右下隅にある寸法の単位に応じて、ヤードポンド法またはメートル法のいずれかで定義できます。


UnitSystemSwitch


また、ヤードポンド法またはメートル法の両方のレポートアイテムテンプレートを作成することもできます。アプリケーションでは単一の寸法の単位のみを使用する場合は、対応する単一のレポートアイテムテンプレートを作成することも可能です。


ActiveReportsJSは、ページレポートおよびRDLレポートの両方のレポートレイアウトをサポートしています。たとえば、ページレポートでサポートされているデフォルトのレポートアイテムプロパティ(固定サイズなど)を定義するには、ページレポートのレポートアイテムテンプレートを作成できます。


要約すると、作成できる4つのレポートアイテムテンプレートがあります。

  • ヤードポンド法を使ったページレポート

  • ヤードポンド法を使ったRDLレポート

  • メートル法を使ったページレポート

  • メートル法を使ったRDLレポート

レポートテンプレートを作成したら、アプリケーションのコードで次のようなオブジェクトを初期化できます。ReportInfoオブジェクトについては、「レポートの読み込み」を参照してください。

const reportItemTemplates = {
  imperialTemplates: [
    cplImperialReportTemplateInfo, // ヤードポンド法を使ったRDLレポートのレポートアイテムテンプレートのレポート情報
    fplImperialReportTemplateInfo // ヤードポンド法を使ったページレポートのレポートアイテムテンプレートのレポート情報
  ],
  metricTemplates: [
    cplMetricReportTemplateInfo, // メートル法を使ったRDLレポートのレポートアイテムテンプレートのレポート情報
    fplMetricReportTemplateInfo // メートル法を使ったページレポートのレポートアイテムテンプレートのレポート情報
  ]
}

たとえば、Reactアプリのパブリックフォルダなど、アプリケーションの静的アセットフォルダ内にレポートテンプレートを保存してから、コードで次のオブジェクトを初期化できます。

const reportItemTemplates = {
  imperialTemplates: [
    {id: "cpl-template-imperial.rdlx-json"}, // ヤードポンド法を使ったRDLレポートのレポートアイテムテンプレートのURL
    {id: "fpl-template-imperial.rdlx-json"} // ヤードポンド法を使ったページレポートのレポートアイテムテンプレートのURL
  ],
  metricTemplates: [
    {id: "cpl-template-metric.rdlx-json"}, // メートル法を使ったRDLレポートのレポートアイテムテンプレートのURL
    {id: "fpl-template-metric.rdlx-json"} // メートル法を使ったページレポートのレポートアイテムテンプレートのURL
  ]
}

たとえば、ユーザーがヤードポンド法みを使用し、TextBoxコントロールのデフォルトのフォント名を設定したいとします。その場合、reportItemTemplatesオブジェクトには、次の1つのレポートアイテムテンプレートの参照のみを含めることができます。

const reportItemTemplates = {
  imperialTemplates: [
    {id: "default-template.rdlx-json"}, // ヤードポンド法を使ったRDLレポートのレポートアイテムテンプレートのURL
  ]
}

Webデザイナコンポーネントの構成

AngularデザイナコンポーネントReactデザイナコンポーネントVueデザイナコンポーネントSvelteデザイナコンポーネントを使用する場合は、customInitTemplatesオブジェクトを含むDesignerConfigオブジェクトを返す関数に解決されるonInitプロパティを利用できます。

import { Designer } from "@mescius/activereportsjs-react";

const reportItemTemplates = {
  imperialTemplates: [
    {id: "cpl-template.rdlx-json"}
  ]
}

function onInit(){
  return { customInitTemplates: reportItemTemplates }
}

function App() { 
  return (
    <div id="designer-host">
      <Designer onInit={onInit}  />
    </div>
  );
}

JavaScriptアプリケーションでは、MESCIUS.ActiveReportsJS.ReportDesigner.Designerクラスのコンストラクタは、2番目のオプションの引数としてcustomInitTemplatesプロパティを含むDesignerConfigオブジェクトを受け入れます。

var designer = new MESCIUS.ActiveReportsJS.ReportDesigner.Designer(
    "#designer-host",
    { customInitTemplates: reportItemTemplates }
);

詳細については、「レポートアイテムテンプレート」デモを参照してください。