サポート&サービス

Home > サポート&サービス > テクニカルサポート > ナレッジベース

テクニカルサポート

製品に関する技術的なサービスを提供しています。製品別の技術情報(ナレッジベース)および、対応環境情報をご覧いただけます。また、E-mailによるテクニカルサポートのお申し込みもこちらで受け付けています。

ComponentOne サブスクリプション製品をご購入された方

サブスクリプションにて、ComponentOne製品(ComponentOne Studio、Wijmo、Xuni)をご購入された方は、下記のComponentOne Studioサイトからユーザー登録をお願いいたします。

ComponentOne サブスクリプション製品のユーザー登録を行う

ナレッジベース

HTML5ビューワ使用時にレポートデータソースを動的に変更する方法は?【※サンプル有り】
文書番号 : 39816     文書種別 : HowTo
登録日 : 2017/03/07     最終更新日 : 2017/03/07
文書を印刷する
対象製品
ActiveReports for .NET 11.0J
詳細
HTML5ビューワはクライアント側のブラウザ上で動作するJavaScriptコンポーネントであり、レポートの実行結果は ActiveReports 11.0J Webサービス(ActiveReports.ReportService.asmx)を経由して取得します。
このため、レポートデータソースをサーバーサイドのコード(.vb/.cs)から変更することは通常はできません。

代替案としては、以下の方法が考えられます。
  1. パラメータを介してデータの取得条件を変更する方法
  2. Webサービスをカスタマイズする方法

  1. パラメータを介してデータの取得条件を変更する方法
    HTML5ビューワでは、クライアントスクリプトからレポートにパラメータを渡すことが可能です。
    たとえば、パラメータ"parameter1"に値を渡す場合、以下のようなスクリプトになります。

    ◆サンプルコード(Javascript)
    $(function ()
    {
      var viewer = GrapeCity.ActiveReports.Viewer(
      {
        element: '#viewer',
        report:
        {
          // セクションレポート(コード形式)の場合
          id: 'NameSpace.SectionReport1' ,
          parameters: [
          {
            // パラメータの名称と値の組み合わせを記述します。
            name: 'parameter1',
            value: '100'
          }]
        },
        
        reportService: {
          url: 'ActiveReports.ReportService.asmx'
        },
        uiType: 'desktop',
        localeUri: 'ja.txt',
      });
    });

    このパラメータを使用して、レポートデータソースの取得条件(SQLのWHERE句)を変更したり、フィルタを掛けることでレポートに出力されるデータを動的に変更することが可能です。

    パラメータやフィルタの使用方法については、製品ヘルプの以下のトピックをご参照ください。

    ActiveReportsユーザーガイド
     - 概念
      - 対話的な機能
       - パラメータ
       - フィルタ

  2. Webサービスをカスタマイズする方法
    ActiveReports.ReportService.asmxを継承したWebサービスを作成し、HTML5ビューワから参照することで、イベント内でレポートの生成やデータソースの変更を独自に行うことが可能です。

    たとえば、レポート生成時に発生するイベント"OnCreateReportHandler"では、クライアントスクリプトから"reportID"が文字列として渡されます。この文字列に独自のパラメータを付加し、それによって使用するデータソースを決定するという方法が考えられます。
    詳しい実装方法については、こちらのサンプルをご覧ください。

    ※本サンプルはASP.NET MVCアプリケーションとして構築しておりますが、ASP.NETアプリケーションでも同様の方法が適用可能です。
関連情報
キーワード
HowTo

この情報は、疑問・問題解決のお役に立ちましたか?

    


こちらに入力されたご質問には回答できませんので、製品に関するお問い合わせは、別途「E-mailサポート」をご利用ください。


※ 個人情報保護のため、個人情報の記入はご遠慮ください。

このページの先頭へ