3

これがシナリオです。基本的にドキュメントを管理するための単一機能のデータベースがあります。この例で扱っているテーブルは2つあります。

表1:次のフィールドを持つドキュメントの表DOCUMENT_NUM、PK; DOCUMENT_NAME; など。表1との1対多の関係とに基づく参照整合性DOCUMENT_NUM

表2:フィールドDOCUMENT_NUM、PKを持つドキュメントの改訂履歴の表。REVISION_DATE; REVISION_NUM

表1の情報を入力するフォームと、表2に情報を入力しDOCUMENT_NUMてフォーム1の基準を引き出す別のフォームがあります。

私の問題:表1だけでなく、表2にもあるパラメーターを検索することにより、表1にバインドされたフォーム1を開くことができるようにしたい検索フォームがあります。例:##の間で改訂されたドキュメントを検索します。 / ##/####および##/## / ####ただし、「DOCUMENT_NUM」、「DOCUMENT_NAME」などのフォーム1が開きます。ただし、From 1がTable1にバインドされているため、検索を実行できません。クエリしている情報は表2にあります。

検索はDoCmd.OpenForm "Documents",,,strQueryどこを使用しますstrQuery = "1=1 AND [SOPS].[SOP_NUMBER] = 'QA-001' AND [SOP_REVISIONS].[REVISION_DATE] >= #12/02/2011# AND [SOP_REVISIONS].[REVISION_DATE] <= #12/02/2012#"

([SOPS]==表1&& [SOP_REVISIONS] ==表2)

4

1 に答える 1

2

どうですか:

strQuery = "1=1 AND [SOPS].[SOP_NUMBER] = 'QA-001' " _
    & "AND DOCUMENT_NUM IN (" _
    & "   SELECT DOCUMENT_NUM FROM [SOP_REVISIONS] " _
    & "   WHERE [SOP_REVISIONS].[REVISION_DATE] >= #12/02/2011# " _
    & "   AND [SOP_REVISIONS].[REVISION_DATE] <= #12/02/2012#)"

つまり、サブクエリを使用して、[SOP_REVISIONS]から関連するDOCUMENT_NUMを取得します。

于 2012-12-20T22:22:28.877 に答える