2011-12-07 23 views
0

最近、2010年に変換されたこの非常に古いアクセスデータベースがあり、何らかの理由でレポートの1つが機能しなくなりました。私はこれを構築せず、所有者は完全にアップグレードするつもりはない、この1つの問題が解決されただけだ。基本的には、レポート(Child131)と内部レポート(Child131)からEquipIDを取得する必要があるこのレポートを含むReport1(rptInspContainers)があります。2010年への変換後にアクセスレポートが失敗する

2010年ではなく以前のバージョンのアクセスでこれが機能するのはなぜですか?

+0

エラーメッセージが表示されますか、まったくデータが戻ってこないのですか? – Sparky

+0

データがありません...手動でクエリを実行し、EquipIDを入力すると正常に動作します。 –

+0

確かに、私はText104の値の周りにトリム関数を追加しようとします、私はそれが無効なEquipIDを返す何かを持っている疑いがあります。知らないくらい多くのことを示唆するほどのアクセス、申し訳ありません – Sparky

答えて

0

これ以降のバージョンはもうちょっと面倒です。そして!

Option Compare Database 
Option Explicit 

Public Function MyReportParameter() As Long 

    MyReportParameter = Reports![rptInspContainers]![Child131].Report![Text104] 

End Function 

次にクエリ

で関数を呼び出しますので、[レポート]すなわち [Reports]![rptInspContainers]![Child131].[Report]![Text104]

それはあなたのデータベースに新しいモジュールを作成して作業し、以下のコードを貼り付けていない場合は前にドットを試してみてください

SELECT TOP 1 tblInspData.Findings 
FROM tblInspData 
WHERE (((tblInspData.EquipID)=MyReportParameter())) 

もう一度お試しください。エラーが表示されない場合は、関数にブレークポイントを設定し、Text104の値が表示されるかどうかを確認します。

+0

@shankusこれは助けになりましたか? –

+0

何らかの理由で私はそれを働かせることができませんでしたので、私はレポートでレポートを参照するのを避けるために必要なIDを返すように、レポートのメインクエリを調整しました。あなたの助けをありがとう! –

+0

「Public」というキーワードが必要だと思います。 –

関連する問題