お世話になっております。
タイトルの件について、カスタムビューに【印刷】というリンクを設置して、
クリック時に印刷プレビューを表示したいと考えております。
現在下記のように設定したのですが、動作しませんでした。
また、できればedge、IE11、firefox、chrome、safariのブラウザで動作させたいと
思っているのですが、可能でしょうか?
※各ブラウザで動作不可の場合は、IE11で設置したいです。
どなたかご存知の方がいらしたら、ご教授いただければ幸いでございます。
*----------------------------------------------------------------------*
【js】
(function() {
“use strict”;
kintone.events.on(‘app.record.index.show’, function(event) {
if (event.viewName !== ‘カスタマイズビュー’) {
return;
}
function showPreview(){
var objWsh = new ActiveXObject(“WScript.Shell”);
objWsh.SendKeys(“%FV”);
}
});
})();
*----------------------------------------------------------------------*
【html】
<p><a href=“javascript:void(0)” onclick=“showPreview()”>印刷</a></p>
*----------------------------------------------------------------------*
こちらに書かれているコードを試してみたところ動きました。しかしIEではActiveXフィルターを無効にしないと動きません。ご参考まで。
https://teratail.com/questions/10474
ダン吉 様
ご返信ありがとうございます。
ご案内いただいた、URLより下記のように設置したのですが、
うまく動作しませんでした。
コードに間違い等はありますでしょうか?
度々お手数ではございますが、ご教授いただければ幸いでございます。
*----------------------------------------------------------------------*
【js】
(function () {
kintone.events.on(‘app.record.index.show’, function(e) {
if (e.viewName != ‘カスタマイズビュー’) return;
function printPreview(){
if(!window.ActiveXObject && !document.documentMode || document.body.insertAdjacentHTML == null){
window.print();
return;
}
var sWebBrowserCode = ‘<object width=“0” height=“0” classid=“CLSID:8856F961-340A-11D0-A96B-00C04FD705A2”></object>’ ;
document.body.insertAdjacentHTML( ‘beforeEnd’, sWebBrowserCode ) ;
var objWebBrowser = document.body.lastChild ;
if( objWebBrowser == null ){
return;
}
objWebBrowser.ExecWB( 7, 1 ) ;
document.body.removeChild( objWebBrowser ) ;
}
});
})();
*----------------------------------------------------------------------*
【html】
<p><a href=“javascript:void(0)” class=“button” onclick=“printPreview()”>印刷</a></p>
*----------------------------------------------------------------------*
すみません、要件を見落としていました。カスタマイズビューで実現されたいのですね。
エラーがわかりませんがおそらくprintPreviewが見つからない状態かと思います。
カスタマイズビューでなく、一覧にボタンを設置してその中にprintPreview()の内容を書くのはNGでしょうか?
参考 https://cybozudev.zendesk.com/hc/ja/articles/201767270
ダン吉 様
ご返信ありがとうございます。
また、返信が遅くなり申し訳ございません。
一覧・カスタマイズニューともに検証してみましたが、
ご教授いただいたURL先のページのコメントに書いてあったように
ActiveXObject実行がブラウザのセキュリティーにひっかかり動作しませんでした。
他にも方法がないか模索してみます。
ありがとうございました。
system
(system)
クローズされました:
6
このトピックはベストアンサーに選ばれた返信から 3 日が経過したので自動的にクローズされました。新たに返信することはできません。