GrapeCity ActiveReports for .NET 14.0J
JavaScriptでJSビューワの操作
ActiveReportsユーザーガイド > レポートの表示 > JSビューワの使用 > JavaScriptでJSビューワの操作

JavaScriptを使用してJSビューワを操作する場合、初期化中と実行時に設定できるオプションと、初期化した後にのみ使用できるAPIメソッドとプロパティがあります。

ビューワの初期化

初期化オプション

以下のオプションは、初期化中、または実行時にJSビューワを操作するときに設定できます。

action

説明: JSビューワがハイパーリンク、ブックマークリンク、ドリルダウンレポートを開く前、またはレポートコントロールの表示/非表示を切り替える前に呼び出されるコールバック。

: function(actionType, actionParams)

:
action: (actionType, actionParams) => console.log('Action type: ' + actionType + '; Action parameters: ' + actionParams)

availableExports

説明: JSビューワのエクスポート機能で使用できるエクスポート形式の配列。デフォルトでは、PDF、Word、JSON、XML、画像、Excel、CSV形式のエクスポートができます。

: Array

:

ページ/RDLレポート:

availableExports: ['Mht', 'Pdf', 'Tiff', 'Xls', 'Xlsx', 'Csv', 'Doc', 'Docx', 'Json', 'Xml']

セクションレポート:

availableExports: ['Mht', 'Pdf', 'Tiff', 'Xls', 'Xlsx', 'Rtf', 'Txt']

displayMode

説明: 単一ページ/連続ページを設定します。

: String

有効な値: 'single', 'continuous'

:
displayMode: 'Continuous'

documentLoaded

説明: サーバー上でドキュメントが完全にロードされたときに呼び出されるコールバック。

: function()

:       
documentLoaded: () => console.log('サーバー上でドキュメントが完全にロードされました。')

戻り値: Void

element

説明: JSビューワコントロールをホストする要素を指定するJQueryセレクター。

: String

例:

element: '#viewerContainer'

error

説明: レポートの表示プロセスでエラーが発生したときに呼び出されるコールバック。コールバックがtrueを返した場合、デフォルトのエラーパネルは表示されません。エラーパラメータは、エラーメッセージをカスタマイズできるプロパティを持つオブジェクトです。

: function(error)

: 次のコードは、デフォルトのエラーパネルを非表示にします。
error: (error) => {
    if (error.message) {
        // エラーメッセージを表示します。
        alert("内部エラーです。管理者へお問い合わせください。");
        return true; // デフォルトのエラーメッセージを表示しません。
    }
}

locale

説明:: ビューワの表示に使用する事前定義のロケールを指定します。ロケールを明示的に指定しない場合は、ブラウザの設定に対応するロケールが使用されます。ビューワのUI表示は、以下の言語をサポートしています。       

型: String

有効な値: 'en-US'(英語)、'ja-JP'(日本語)、'zh-CN'(中国語)

例:

locale: 'ja-JP'

localeData

説明: ローカライズされた文字列を含むJSON。すべての文字列が必要ではありません。欠損値はデフォルトのローカライズされたデータを使用して表示されます。これは localeUriに似ていますが、ローカライズされたデータへのパスではなく、JSONオブジェクトを介したローカライズされたデータ自体が指定されます。

型: JSON

例:


localeData: JSON.parse( `{
    "export":  {
      "boolTextFalse": "No",
      "boolTextTrue": "Yes"
    },
    "viewer": {
      "toolbar": {
        "refresh": "Refresh"
      }
    }
  }`
),

localeUri

説明: ローカライズされた文字列を含むファイル(custom-locale.json)のURL。すべての文字列が必要ではありません。欠損値はデフォルトのローカライズされたデータを使用して表示されます。

型: String

例:

localeUri: './custom-locale.json'

custom-locale.jsonファイルの内容:


{
  "export": {
    "boolTextFalse": "No",
    "boolTextTrue": "Yes",
    ...
  },
  "exportcsv": {
    "friendlyName": "-CSV-",
    "settings": {
      "ColumnsDelimiter": {
        "label": "ColumnsDelimiter",
        "category": "Misc"
      },
      ...
    },
    ...
  },
  ...
}
        

renderMode

説明: JSビューワでページの表示モードを設定します。デフォルト値は「Paginated」です。

型: String

有効な値: 'Galley', 'Paginated'

例:

renderMode: 'Galley'

reportID

説明: JSビューワに表示されるレポートのID。

: String

:

reportID: 'AnnualReport.rdlx'

reportLoaded

説明: JSビューワが要求されたレポートに関する情報を取得するときに呼び出されるコールバック。TOC情報、パラメータ情報、およびレンダリングされたレポート結果へのリンクを含むreportInfoオブジェクトがこのコールバックに渡されます。

: function(reportInfo)

:
reportLoaded: (reportInfo) => console.log('The report ' + reportInfo.name + ' was successfully loaded!')

reportParameters

説明: レポートの実行に使用されるパラメータを表す{name, value}ペアの配列。

: Array

:

reportParameters: [{ name: 'ReportParameter1', values: ['1']}]

reportService

説明: Web APIに接続するための設定を定義します。

型: 次のオプションのプロパティを持つオブジェクト。

例:

reportService: {
    url: 'http://example.com/api/reporting', // WebサービスURL
    securityToken: 'security_token', // securityTokenを提供します。
    onRequest: (init) => {        
         init.credentials = "include",
         init.headers = { "Cache-Control": "no-cache, no-store, must-revalidate", "Expires": "0", "Pragma": "no-cache", "Accept": "application/json" },
         init.signal = new AbortController().signal
         }        
    }


有効な値パブリックAPIメソッドおよびプロパティ

メソッド

backtoParent

説明: ドリルダウンレポートの親レポートをビューワに表示します。

構文: backToParent()Void

:
viewer.backToParent()

戻り値: Void

create

説明:Viewerの新しいインスタンスを作成し、指定されたDOM要素にレンダリングします。

構文create()Void 

パラメータ:

:
const viewer = GrapeCity.ActiveReports.JSViewer.create({
    element: '#root',
    reportID: 'AnnualReport.rdlx',
    availableExports: ['Xml', 'Pdf'],
    // その他のプロパティ
});        

戻り値: Void

destroy

説明: 要素からビューワコンテンツを削除します。

構文: destroy()Void

:
viewer.destroy()

戻り値: Void

export

説明: 現在表示されているレポートをエクスポートします。

構文: export(exportType,callback,saveAsDialog,settings)Void

パラメータ:

  • exportType: エクスポート形式を指定します。           
  • settings: エクスポートの設定。エクスポート形式によって異なります。                    
  • メモ:

    • 描画拡張機能を使用して各種ファイルに出力するため、セクションレポートではsettingsの設定は有効になりません。
    • エクスポートフィルタを使用してPDFにエクスポートするとき、ページレポート/RDLレポートではエクスポート設定は有効になりません。

:        

viewer.export('Pdf', { Title: '1997 Annual Report' })

戻り値: Void

getTOC

説明:レポートの見出しを取得します。

構文: viewer.getToc()

:        

console.log(viewer.getToc())

戻り値: any

goToPage

説明: ビューワに特定のページを表示します。

構文: goToPage(number, offset, callback)Void

パラメータ:

  • number: 移動先のページ番号。
:
viewer.goToPage(1)

戻り値: Void

openReport

説明:レポートを開きます。

構文: openReport(reportID: string, reportParameters?: Array<Parameter>): void

パラメータ:

  • reportID: レポートのID。
:
viewer.openReport('Invoice.rdlx')

戻り値: Void

print

説明: 現在レポートが表示されている場合、そのレポートを印刷します。

構文: print()Void

:
viewer.print()

戻り値: Void

refresh

説明: レポートのプレビューを更新します。

構文: option(name,[value])Object

:
viewer.refresh()

戻り値: Void

version

説明:JSビューワの現在のバージョンを表す文字列。

構文: GrapeCity.ActiveReports.JSViewer.version

:
console.log(GrapeCity.ActiveReports.JSViewer.version)

戻り値: string

toolbar.addItem

説明:カスタム項目(ボタン)をツールバーの最後尾に追加します。

型: item: ToolbarItem

例:

ToolbarItem = {
    key: string;
    iconCssClass?: string;
    icon?: Icon;
    text?: string;
    title?: string;
    checked?: boolean;
    enabled?: boolean;
    action?: (toolbarItem) => function;
    onUpdate?: (args: ChangedEventArgs, toolbarItem) => function;
}
 
Icon = FontIcon | SVGIcon;
 
 
SVGIcon = {
    type: 'svg';
    content: any; //(string | JSX.element)
    size?: Size;
    rotate?: '90' | '180' | '270';
};
 
 
FontIcon = {
    type: 'font';
    iconCssClass: string;
    fontSize?: string;
}
 
var pdfExportButton = {
    key: '$pdfExportButtonKey',
    iconCssClass: 'mdi mdi-file-pdf',
    enabled: true,
    action: function(item) {
        console.log('ドキュメントをPDF形式にエクスポートします。');
    },
    onUpdate: function(arg, item) {
        console.log('ビューワが更新されました。ボタンの状態を確認または更新します。');
    }
};
 
 
//またはsvg形式のボタン
var icon = `
    
`;
 
var svgPdfExportButton = {
    key: '$pdfExportButtonKey',
    icon: {type: 'svg', content: icon},
    enabled: true,
    action: function(item) {
        console.log('ドキュメントをPDF形式にエクスポートします。');
    },
    onUpdate: function(arg, item) {
        console.log('ビューワが更新されました。ボタンの状態を確認または更新します。');
    }
}
 
 
viewer.toolbar.addItem(pdfExportButton);
//または
viewer.toolbar.addItem(svgPdfExportButton);

toolbar.updateItem

説明:指定された項目のレイアウト/機能/状態を更新します。

型: String: key, ToolbarItem item       

例:        

var xlsxExportButton = {
    key: '$xlsxExportButtonKey',
    iconCssClass: 'mdi mdi-file-pdf',
    enabled: true,
    action: function(item) { console.log('ドキュメントをXLSX形式にエクスポートします。'); },
    onUpdate: function(arg, item) { console.log('ビューワが更新されました。ボタンの状態を確認または更新します。'); }
};
viewer.toolbar.updateItem('$pdfExportButtonKey', xlsxExportButton); //ボタンが設定されたプロパティに応じて動作します。

toolbar.removeItem

説明:ツールバーからカスタム項目を削除します。デフォルトの項目を削除するには、updateLayout関数を使用します。

型: String: key

例:

viewer.toolbar.removeItem('$pdfExportButtonKey');

toggleSidebar

説明:サイドバーの表示を切り替えます。パラメータが渡されない場合、トグルとして動作します。

型: boolean

例:

viewer.toggleSidebar();//サイドバーを非表示にします。
viewer.toggleSidebar(true);//サイドバーを表示します。

プロパティ

currentPage

説明: 現在表示されているページ番号を取得します。

構文: viewer.currentPage

:
console.log(viewer.currentPage)

戻り値: 現在表示されているページ番号を表す整数。

pageCount

説明: 現在表示されているレポートのページ数を取得します。

構文: viewer.pageCount

:
console.log(viewer.pageCount())

戻り値: ページ数を表す整数。

関連トピック