none
ExcelのシートをReporting Serverに公開したいのですが、公開できません。 RRS feed

  • 質問

  • Report Builder2.0でOleDBの接続文字列で作成していますが、ローカルだと出力可能ですが、

    Reporting Serverへ移行すると、出力されません。

    Excelデータは、Reporting Serverでは公開できないのでしょうか。

    以上 よろしくお願いします。

    2012年8月28日 8:50

回答

  • 直接は指定できないなら、インストールしたACEを使って、リンクサーバーに登録したらどうでしょう?
    • 回答の候補に設定 佐伯玲 2012年9月6日 6:24
    • 回答としてマーク 佐伯玲 2012年9月10日 1:31
    2012年9月4日 3:11
  • Windows7 64bit SQLServer2008R2 ReportBuilder3.0の環境で試してみました。(ローカルにReportingServicesがはいってます)

    ODBCしか試してませんがExcel(.xls)をデータソースにすることができました。以下手順。

    1.xlsファイルを用意する。(C:\ExcelDatasource.xls)

    2.C:\Windows\SysWOW64\odbcad32.exeを実行してシステムDSNに「TEST」を追加する。

    3.C:\Windows\System32\odbcad32.exeを実行して2と同名のDSNを追加する。

    どうやらビルダ上で実行する時とReportサーバーにupした時で32bitODBCと64bitODBCが別々に使われるようです。

    • 回答の候補に設定 佐伯玲 2012年9月6日 6:24
    • 回答としてマーク 佐伯玲 2012年9月10日 1:31
    2012年9月4日 4:04

すべての返信

  • OLEDBの接続文字列はどのようになっていますか?

    おそらくローカルのファイルを参照されているため、サーバーからは見えないのではないでしょうか。


    2012年8月28日 15:22
  • ご回答ありがとうございます。

    接続方法は、

    OLEDB接続文字列やODBCを試してますが、

    どちらもローカルなら正常に出力されますが、

    サーバーなら出力されません。

    ご回答のように、

    サーバーから見えない場合は、その旨のエラーがでますので、

    直ぐにわかります。

    因みに、接続文字列は、以下のとおりです、ローカルなら正常に出力されます。

    サーバーに移行すると、接続文字列が作成されませんのエラーがでます。

    Provider=Microsoft.OLEDB.4.0;Data Source=c:\AAAA.xls;Mode=Read;Extended Properties="Excel 8.0;HDR=Yes;"

    2012年8月29日 8:05
  • 1.サーバが64bitのOSだとJETドライバ(Microsoft.Jet.OLEDB.4.0)は使えません。
    代わりに Microsoft.ACE.OLEDB.12.0 を使ってください。

    2.サーバのCドライブのルートに「AAAA.xls」ってファイルがありますか?
    2012年8月29日 9:52
  • ああ、やはりローカルファイルを参照していますね。

    サーバーのCドライブにAAAA.xlsをおけばいいかと。というかNASかどっかにぶちこんだほうがいいです。

    あとhihijijiさんのおっしゃる通りドライバの確認は必要ですね。

    2012年8月29日 16:33
  • ご回答ありがとうございます。

    1.当サーバは64bitOSですので、ご指摘のとおりMicrosoft.ACE.OLEDB.12.0に変更しましたが、

    結果は同じでした。

    2.もちろん、サーバのCドライブのルートに「AAAA.xls」を置いて、テストしています。

    2012年8月31日 0:37
  • Microsoft.ACE.OLEDB.12.0を使うにはMS-Office2010または以下をインストールしてください。

    Microsoft Access データベース エンジン 2010 再頒布可能コンポーネント

    2012年8月31日 6:30
  • >2.もちろん、サーバのCドライブのルートに「AAAA.xls」を置いて、テストしています。

    サーバーでレポートビルダから実行すればどうなりますか?

    2012年9月1日 4:15
  • ご回答ありがとうございます。

    環境を整備しますので、ちょっと、時間をください。

    2012年9月3日 1:30
  • その後、ご指摘のとおり、

    MS ACCESS 2010コンポーネントを導入しましたが、

    結局、結果は同じで、サーバーでは実行できませんでした。

    このように、色々、実験をしましたが、

    結論的には、

    64bitOSのReportingServerではExcelデータは表示できないという結論です。

    2012年9月3日 23:56
  • 直接は指定できないなら、インストールしたACEを使って、リンクサーバーに登録したらどうでしょう?
    • 回答の候補に設定 佐伯玲 2012年9月6日 6:24
    • 回答としてマーク 佐伯玲 2012年9月10日 1:31
    2012年9月4日 3:11
  • Windows7 64bit SQLServer2008R2 ReportBuilder3.0の環境で試してみました。(ローカルにReportingServicesがはいってます)

    ODBCしか試してませんがExcel(.xls)をデータソースにすることができました。以下手順。

    1.xlsファイルを用意する。(C:\ExcelDatasource.xls)

    2.C:\Windows\SysWOW64\odbcad32.exeを実行してシステムDSNに「TEST」を追加する。

    3.C:\Windows\System32\odbcad32.exeを実行して2と同名のDSNを追加する。

    どうやらビルダ上で実行する時とReportサーバーにupした時で32bitODBCと64bitODBCが別々に使われるようです。

    • 回答の候補に設定 佐伯玲 2012年9月6日 6:24
    • 回答としてマーク 佐伯玲 2012年9月10日 1:31
    2012年9月4日 4:04
  • こんにちは、yutan999 さん
    フォーラムオペレータの佐伯 玲 です。

    みなさんの情報はご確認頂けたでしょうか?
    参考になりそうな情報に勝手ながら私のほうで「回答としてマーク」をさせて頂きました。

    追加の情報などございましたら引き続きこのスレッドへご返信下さいませ。

    今後ともMSDNフォーラムを宜しくお願い致します。
    __________________________
    日本マイクロソフト株式会社 フォーラム オペレーター 佐伯 玲

    2012年9月10日 1:31