- PR -

Crystal Report が表示されない (キーコードは登録してあります)

1
投稿者投稿内容
たけくん
ベテラン
会議室デビュー日: 2003/08/19
投稿数: 63
投稿日時: 2003-08-21 22:47
 帳票の表示にCrystal Reportを使い、クライアント側でAdobe Reader で表示するように設定してあります。開発環境では帳票は表示されますが、運用サーバーでは帳票のみ表示されないという不具合がおこっています。

 開発環境は、以前はWIN2000,SP2(サービスパックのことです).NET Framework1.0でした。その後、開発環境が変わり、WIN2000 SP4,Framework1.1で開発しています。運用サーバーはWIN2000serverSP3,Framework1.1があててあります。
 検証用に新たに.netを入れたことの無いWIN2000SP2マシンにFramework1.0と1.1をあて、開発マシンで作成したインストーラーでセットアップしたところ、サーバー同様に帳票の表示のみ行なうことのできない状態になりました。しかしながら、もう一つ検証用に用意した、以前にVS.NETを入れ、アンインストールした、WIN2000SP3マシンでは帳票が表示されます。
 
 ロジック部分が一つのdllとしてインストールされる以上、Crystal Report使うところのみエラーが出るとは考えられませんが、Crystal Reportを呼んでいないようにも考えられます。

 はすかしい話ですが、この現象に対して、どのように検証をして、対策を行なえばよいかまったく先が見えていません。このさきどう対策を講じればよいかアドバイスをお願いします。
たけくん
ベテラン
会議室デビュー日: 2003/08/19
投稿数: 63
投稿日時: 2003-08-22 17:47
表示されない問題が解決?したので、書き込みします。
.NETを入れたことのない検証用マシンに、VS.NETをインストールして、削除を行いました。そして、セットアップを行ったところ、見事に帳票が表示されました!!

この結果から、セットアップインストーラーには何らかのファイルが抜け落ちていたんだろうと推測はできるのですが、何が抜け落ちているのかが不明で調査をしています。

bubunya
大ベテラン
会議室デビュー日: 2003/01/16
投稿数: 124
投稿日時: 2003-08-24 00:17
MSDNのヘルプ(ms-help://MS.VSCC/MS.MSDNVS.1041/crystlmn/html/crcondistributingcrystalruntimefilestoaclientcomputer.htm)は見てますか?
あと、過去にも同様の質問がありますよ。

1. アプリケーション配布用のキーコード(別に取得する必要があります)
2. マージモジュール(日本のCrystal Decisionsのサポートページに資料があります)
たけくん
ベテラン
会議室デビュー日: 2003/08/19
投稿数: 63
投稿日時: 2003-08-27 00:31
bubunyaさん、書込みありがとうございます。
MSDNのHELPは
「クライアント コンピュータへの Crystal ランタイム ファイルの配布」
についてでしょうか。
これについては、管理コンポーネント データベース アクセス キーコード はすべて組み込んであり、キーコードについてはregwiz.msmにプロパティからキーコードを入れてあります。
Crystal Decisionsのサポートページも見ており、レジストリに登録、認証されていることもチェック済みです。
IT 会議室、MSDN、など調べつくしても、上記に書いたこと以上に情報が無くほとほと困り果てておりました。
打開策として、.NETのCrystal Report部分だけインストールして削除を行い、帳票が表示されたという次第です。
 結果的にお客様に納品できましたが、くやしいことに何が足りなかったのか、いけないのか分からないままです。次回にもこういうことが起こらないとも限らないので、きちんと原因解明できればと思っています。
 bubunyaさんはじめ、.NET、Crystal Reportに詳しい方にご教授いただければ、そしてこのスレッドにもう少しお付き合いいただければ幸いです。
あみぃ
会議室デビュー日: 2003/01/20
投稿数: 8
投稿日時: 2003-08-27 18:13
クライアント側でCrystalReportViewerを使用している場合、msvcp70.dll(.NET Framework 1.0の場合)が必要になるようです。
で、.NET Framework SDKをインストールすると、このファイルがあるフォルダにパスが通るのですが、再領布パッケージ(実行環境のみ)をインストールした場合は、このファイルにパスが通っていません。

なので、以下のどちらかの対応が必要になります。
・msvcp70.dllが有るフォルダにパスを通す。
 (1.0ではC:\WINDOWS\Microsoft.NET\Framework\v1.0.3705)
・インストーラを作成する時に、このファイルを含むmsmを含めてしまう。
 (1.0ではVC_CRT.msmとV_STL.msm。1.1は名前が変わっています。)

つまりは、SDKと再領布パッケージでパスが異なり、結果SDKを入れたPC(あるいは入れた後アンインストールした)では動くけれど、再領布パッケージを入れたPCでは動かない、というまずい状態になるようです。

パスを設定するのは手間なので、通常はインストーラに上記msmファイルを含めてしまいます。

#以上はFramework1.0での話なので、1.1で同じことが言えるのかどうかは確かめていません。

参考までに、CrystalDecisionsのSupportページのURLを張っておきます。
<How do you deploy an application that uses Crystal Reports and VS .NET?>
http://support.crystaldecisions.com/library/kbase/articles/c2013175.asp

参考になれば幸いです。外していたらごめんなさい^^;
bubunya
大ベテラン
会議室デビュー日: 2003/01/16
投稿数: 124
投稿日時: 2003-08-29 23:40
私が書いたマージモジュールの件がまさにVC_CRTとV_STLです。
日本のサイトからリンクされている下記の資料に書いてあります。
http://support.crystaldecisions.com/communityCS/TechnicalPapers/cr9net_deployme
nt.pdf
1

スキルアップ/キャリアアップ(JOB@IT)