• ベストアンサー

ADOで接続しレポートで印刷する方法

 基幹システムにoracleを利用したシステムを使っているのですが、帳票類はADOで接続しACCESSで作成したいと考えています。しかし、調べてみるとフォームのレコードセットには利用できるのですが、レポートには対応していないことがわかりました。何か効率良くレポートを作成する方法はないでしょうか?

質問者が選んだベストアンサー

  • ベストアンサー
  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.2

>一覧というよりも希望にそった資料を作成するように指示 一覧でなければCrystalReportsを使えばOracleから問題なくレポートを作れると思います。でもちょっと高目ですが。CrystalReportsがあればVBからも使用できます。CrystalReportsでレコードセットを作成して出力なども出来ます。 費用的にとなるとmdbにインポートして「希望にそった資料」になるようにAccessでレポートを作成するのが簡単かと思います。 希望にそうようにレコードをインポートしてきて更に出力時に必要な処理をさせれば良いのではないでしょうか。

その他の回答 (1)

  • O_cyan
  • ベストアンサー率59% (745/1260)
回答No.1

>フォームのレコードセットには利用できるのですが・・・ という事なのでレコードセットは取得できているとして・・ レコードセットの状態でそのまま出力させる。 例えば Set rec = cnn.Execute("select * ・・・・") で取得したレコードセットを下記のようにヘッダ部を出力しレコード全体を出力する。 Printer.Print rec.Fields(0).Name; Tab(20); rec.Fields(1).Name Do While Not rec.EOF Printer.Print rec.Fields(0).Value; Tab(20); rec.Fields(1).Value rec.MoveNext Loop Printer.EndDoc こんな感じではどうでしょうか。 または SQLを指定してmdbのテーブルへインポートしてそのテーブルを使ってレポート出力する。

im02omi
質問者

補足

会社側からは、一覧というよりも希望にそった資料を作成するように指示を受けています。おそらく、mdbテーブルにインポートするしかないと思います。いろいろとためしたのですが、SQLの(SELECT INTO)構文でインポートすることには成功しました。このやり方しかないかもしれません。仮にACCESS以外にもレポートを作成するツールというのは市販されているものでしょうか?調べたところクリスタルレポートというソフトがあったのですが・・・・

関連するQ&A