簡體   English   中英

MS Access在子表單中保留ID字段,該表單中填充了父表單的ID

[英]MS Access keep ID field in subform filled with ID from parent form

每次我跳到可以輸入新記錄的位置時,父級的ID字段為空,因此連接斷開。 我正在尋找解決方法。

我的設定

我有一個處理兩個1:n關系的父表單

(學校課程->學生,學校課程->測試)。

對於第一個關系,我使用了向導。 一切正常。 對於第二個,我在未綁定列表中顯示了已連接的測試。 在列表下面是一個按鈕,用於打開表單,以便為我來自的班級(父表單)輸入新記錄(測試)。 因此,我通過VBA過濾了子表單,以便僅顯示當前類的測試。 那也很好。

在通過已經與該類連接的測試進行移動時,正確的ID(已過濾的類)是相應輸入字段的值。 但是,當我進入新的新記錄狀態(所有字段為空)時,與父級的連接斷開,用戶必須手動輸入父級的ID(學校班級)。

我的問題

我的設置正確嗎? 有沒有更好的方法來創建一個子窗體,該子窗體提供(僅)輸入連接到父數據的新記錄? (也許在子窗體中沒有ID輸入字段,並且沒有通過VBA強制值傳遞?)

感謝您的時間!

您可以使用“默認值”設置“測試”表單的類ID,但請確保父表單在后台或彈出窗口后打開。

在“測試”表單的classid控件的“屬性表/數據”選項卡下,在“默認值”單元格中輸入:

=Forms!parentformname!classid

或者,在VBA中的“測試”表單的OnOpen事件中:

Me.classid.DefaultValue = Forms!parentformname!classid

然后,您可以選擇隱藏(可見-否)此classid控件,以便用戶不要對其進行修改。 始終建議永遠不要讓用戶控制主鍵和外鍵。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM