- ベストアンサー
ASP + ActiveReports
ASP+VBScriptを利用して、ActiveReportsで作成した帳票を印刷したいと考えております。 やりかたとしては、RPXファイル(レポート定義ファイル)にSQL文を埋め込んで、ARビューワーで表示させる方法でいいと思うのですが・・・。 (違っていたら教えて下さい!!) 問題は、帳票にASPから入力したSQLパラメータを渡したいことです。どうしたらよいのでしょうか? あと、OBJECTタグのID,CLASSIDに何を入れたら良いのかもよく分かりません。 始めたばかりで、見当違いの質問でしたらすみません。 よろしくお願い致します。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
> どんなプログラムなんでしょうか? 今までVB6などでAR2.0Jを使っていたのであればそれと同じです。結局あれはActiveReportsのレポーティングエンジン(RPXを読んでパラメータなどからレポート作成)とActiveXビューアが同じEXEの中で動いているだけで、そいつをサーバサイドにレポート、クライアントサイドにビューアを配置する形ですね。 ReportServer.RptServerクラスや、ActiveReportクラスのLoadLayoutメソッドなどをキーワードに情報を集めると良いでしょう。 一例として、 1.input.asp:条件を入力させる。->POST input.asp:条件を受け取りセッションへ。その後、viewer.aspへリダイレクト。 2.viewer.asp:ARビューアコントロールのダウンロードと実行(IEが行う)。ARビューあのレポートソースをreport.aspに設定。 3.ビューアがreport.aspをつっつくのでRPXと条件を元にレポート作成。そのままResponse.BinaryWriteでRDFを直接レスポンス。 4.ビューアにレポートイメージ(RDF)が届いて画面に描画。 という流れでしょうか。
その他の回答 (2)
- anmochi
- ベストアンサー率65% (1332/2045)
> 1クライアント側に帳票、条件を選択してもらう。 これは普通にWebアプリを作るのと同じですね。後はこれらをPOSTしてもらった後セッションに保存するなりそのまま使うなりお好きなように。 > 21を元にしたSQL文(?)をActiveReportsで作った > テンプレート(のことをRPXファイルと呼ぶのでは?)を > 埋め込んでプレビュー・印刷。 RPXファイルは単なるXMLファイルなので、そいつを「レポーティングエンジン(つまり何らかのプログラム)」で読み込んでレポートイメージを生成しなければなりません。 つまり、プログラム中でレポートエンジンを実行し、RPXを読み込んで、レポートイメージを生成、それをPDFやRDFにしてクライアントにダウンロードさせる訳です。この行で分かるように、最終的にクライアントに返す形式が違うだけで、何をするにしても結局RPXを読んでレポート作る作業がIIS側で必要になります。 ObjectタグのIDは、クライアントサイドでVBSやJSから使う名前でこれは適当で良いです。CLSIDはAR2.0Jでは8569D715-FF88-44BA-8D1D-AD3E59543DDEのようですが、ARのバージョンで違うのかどうかは分かりません。 できればIISのバージョンとARのバージョンを開示していただけたら。クライアントとして想定するIEのバージョンも。
補足
コメントにかいてある通りの人ではないですね(笑) 口は悪くないし、知識も豊富ですね(笑) IIS : 5.1 AR : 2.0J IE : 6.x です。 1番は、了解いたしました。 レポーティングエンジン…、初めて聞きました(汗) どんなプログラムなんでしょうか? また、RPXの読込は難しいものなんでしょうか?
- anmochi
- ベストアンサー率65% (1332/2045)
ActiveX ARビューアを使っている例はあまり聞いた事ないな。企業の社内システムでは多いのかも知れないけど。大抵はサーバ側でPDFエクスポートするんではないですかね。以前独立行政法人の仕事の時はMac対応&Netscape対応の必要があったのでARビューアは使えませんでした。 > RPXファイル(レポート定義ファイル)にSQL文を埋め込んで、 > ARビューワーで表示させる方法でいいと思うのですが・・・。 どういう方法なのかさっぱり分かりませんが・・・・。手順を書いていただけたら(例:1番にクライアント側で・・して、次にサーバ側でrpxを・・、最終的にrdfが・・・。)手順ごとに方法論を練ることができるかと。 やりたい事はなんとなく分かるんですが、実現方法をどう考えているのかを詳しく教えてください。
補足
手順として…(理想) 1クライアント側に帳票、条件を選択してもらう。 21を元にしたSQL文(?)をActiveReportsで作ったテンプレート(のことをRPXファイルと呼ぶのでは?)を埋め込んでプレビュー・印刷。 以上のことを実現したいのです。 テンプレートの作り方、それにSQL文を埋め込む方法が全然分かりません。PDFエクスポートについて、もう少し勉強してみます。
補足
すみません、いきなりつまずきました! report.aspにarviewerのreportsourceを設定するにはどうしたらいいんでしょうか??