ActiveReportsJSビューワはツールバーからの印刷の他、JavaScriptコードから印刷することが可能です。
以下[クリックして印刷]ボタンのonClickイベントより、viewer.print()メソッドを使用して印刷するサンプルです。
<html>
<head>
<title>ActiveReportsJS Viewer: Printing</title>
<meta charset="utf-8" />
<link rel="stylesheet" href="./css/ar-js-viewer.css" />
<script type="text/javascript" src="./scripts/ie-polyfills.js"></script>
<script type="text/javascript" src="./scripts/ar-js-core.js"></script>
<script type="text/javascript" src="./scripts/ar-js-viewer.js"></script>
</head>
<body onload="load()">
<button type="button" onclick="Print()">クリックして印刷</button>
<div id="ARJSviewerDiv" style="height: 600px"></div>
<script>
var viewer;
function load() {
viewer = new ActiveReports.Viewer('#ARJSviewerDiv');
viewer.open('/reports/InvoiceList.rdlx-json');
}
function Print() {
viewer.print();
}
</script>
</body>
</html>
ActiveReportsJSのワンタッチ印刷機能を利用することで、ユーザーはビューワを表示せずにレポートを印刷することができます。ワンタッチ印刷機能を利用した場合、アプリケーションを実行しレポートのロードが完了すると、印刷を実行します。
以下pageDocument.print()メソッドを使用してワンタッチ印刷するサンプルです。
<html>
<head>
<title>ActiveReportsJS Viewer: Printing</title>
<meta charset="utf-8" />
<link rel="stylesheet" href="./css/ar-js-viewer.css" />
<script type="text/javascript" src="./scripts/ie-polyfills.js"></script>
<script type="text/javascript" src="./scripts/ar-js-core.js"></script>
<script type="text/javascript" src="./scripts/ar-js-viewer.js"></script>
</head>
<body onload="load()">
<button type="button" onclick="Print()">クリックして印刷</button>
<div id="ARJSviewerDiv" style="height: 600px"></div>
<script>
function load(){
var pageReport = new MESCIUS.ActiveReportsJS.Core.PageReport();
pageReport.load(report)
.then(() => pageReport.run())
.then(pageDocument => pageDocument.print());
}
</script>
</body>
</html>
メモ: