2011-10-31 4 views
0

참조 무결성 제약 조건과 1-M 관계로 연결된 두 테이블의 아주 간단한 액세스 DB가 있습니다. 나는 두 가지 형식으로 데이터를 관리하고 싶습니다. 첫 번째는 첫 번째 테이블의 각 단일 레코드를 보여주고 두 번째 폼을 여는 버튼을 제공합니다.이 버튼은 참조 된 필드를 haging하는 레코드 만 보여 주며 첫 번째 테이블은 기본 키를 recod합니다.ACCESS SubForm : 레코드 추가 시도

두 번째 형식으로 새 레코드를 추가하려고하면 참조로 사용하는 레코드 필드가 기본 테이블의 키에 포함 된 값으로 설정되지 않는다는 경고가 표시됩니다. 그러나 나는 이것이 새로운 레코드를 추가하려고했을 때 Form에 의해 자동으로 수행되기를 기대 했습니까?

어떻게 수정해야합니까?

답변

2

올바르게 이해한다면 몇 가지 필터링 기준을 사용하여 독립적 인 두 번째 양식 (즉, 실제로 하위 양식이 아님)을 여는 것입니다.

  1. 두 번째를 열 때
  2. DoCmd.OpenFormOpenArgs 인수로 외래 키의 값을 전달 외래 키 필드에 바인딩 두 번째 양식에 숨겨진 필드를 추가 :에이 처리하는 한 가지 방법이 될 것입니다 Form_Open 이벤트
  3. 형태
  4. 이 설정 OpenArgs 동일 숨겨진 외래 키 필드의 DefaultValue이 단계에서 전달 된 값 2 ( Me.HiddenKeyField.DefaultValue = Me.OpenArgs)

다른 옵션은 두 번째 양식에게의 하위 폼을 만드는 것입니다 fi 처음. 에 그 작업을 수행하는 가장 쉬운 방법은 다음과 같습니다

  1. 하위 폼의 속성에 가서 설정 첫 번째 양식에 대한보기를 설계하고
  2. 후 첫 번째 양식에 데이터베이스 창에서 두 번째 양식을 드래그로 이동 하위 필드 링크/외래 키 필드와 동일한 링크 마스터 필드
+0

정말 고마워, 정말 도움이 됐어. – Sindico

관련 문제