3

私はデータセットとCrystalReportsの使用経験がほとんどないかまったくないので、答えが本当に明白である場合は私を殴らないでください。オンラインで答えを見つけることができませんでした。

DataSetからデータを取得するCrystalReportを含むC#Winformsアプリケーションがあります。アプリケーション内から動的にDataSetにデータを入力します。

以前は、DataSetに別の列を追加した場合、Crystal ReportのDataSetを右クリックし、[データベースの確認]をクリックして、新しい列をレポートで使用できるようにすることができました。

これを行うと、次のウィンドウが表示されます。

ここに画像の説明を入力してください

クラス名コンボボックスに使用できる項目がありません。チェックボックスをオンにすると、空の別のコンボボックスが表示されます。

プログラム内からDataSetにデータを入力するため、接続がないことに注意してください。

Crystal ReportsのDataSetを更新して、新しい列を使用できるようにするにはどうすればよいですか?

ありがとうございました。

PS:次の解決策を試しましたが、機能しませんでした。上記と同じウィンドウが表示されるため、VS2008のCrystalReportsでDataSetスキーマを更新します。

また、これは私が見るものであり、役に立つかもしれません:

ここに画像の説明を入力してください

編集1:フィールドはデータソースに表示されますが、フィールドエクスプローラには表示されません。

新しく追加された列と同じ名前の数式フィールドがすでにいくつかありますが、それらを削除しても効果はありませんでした。

4

2 に答える 2

2

やっと自分で解決できました。私がしたことは3つありますが、問題を再現できていないように見えるため、どちらがうまくいったのかよくわかりません。

  1. 追加したDataTable列と同じ名前の数式フィールドの名前を変更しました。
  2. 「...」ボックスをクリックして、同じファイルを再度選択しました。
  3. [クラス名]テキストボックスに内部接続ID{294de39c-3e3c-4748-9138-53d4be2a74a6}を追加しました。

最初の2つは、以前は機能していなかったため、おそらく役に立たなかったでしょう。文字列を追加したときに機能したので、おそらくそれが解決策ですが、これも初めては機能しませんでした。

うまくいけば、私の無駄な時間は誰かの時間を節約するでしょう。

于 2012-05-19T00:01:27.523 に答える
0

これが私の解決策です。手順は次のとおりです。

  1. 新しいデータセットを作成し、SQLServerObjectExplorerからテーブルをドラッグします
  2. データベースフィールドを右クリックします
  3. データソースの場所を選択
  4. 手順1で作成した新しいデータセットの表をクリックします。
  5. [更新]をクリックします

それが役立つことを願っています

于 2015-10-20T04:41:37.813 に答える