Ms-Access
使用獨立的文本框以連續的形式為不同的行/寄存器寫入不同的值,重複每一行中的值
我有一個使用連續表單視圖來顯示以下內容的表單:
- 我擁有的不同產品的名稱。
- 在另一列中,我有產品的實際數量。ç
這是使用以 products 表作為來源的表單進行的,並且產品名稱文本框的名稱取自表的產品名稱欄位的值。數量欄位的來源是同一表中的數量欄位。
一切正常。我這樣做只是為了顯示名稱和數量,但我不想編輯此表中的這些欄位,因此我鎖定並禁用了它們。
現在問題來了:我做了一個獨立的文本框欄位,這樣我就可以寫一個數量,不是代替舊的,而是購買,這樣寫的數量就減去了數量欄位。我想將此資訊與產品 ID、數量和日期一起放到一個新表中,但現在的問題是,每當我在獨立文本框中輸入購買數量並按 Enter 或 Tab 鍵或更改為下一個,每行中不同產品的所有獨立文本框都更新為相同的值。
我只是通過試驗和試錯來學習訪問。
我意識到的另一件事是,由於我使用連結表單到表,並且我沒有獲取 Id,我不能使用該 Id 更新表或將其放入另一個系統資料庫表,所以我被卡住了。
我認為這會更容易,只需使用插入查詢所需的欄位編寫查詢並使用按鈕點擊事件觸發它,但我必須以錯誤的方式接近它。
您必須將文本框綁定到欄位。一種無需更改原始表的方法是創建一個虛擬表來保存這些額外的值。該表可以在本地數據庫中。
Dummy
帶列的表:Id Numeric / Long, Primary key (with a type matching the Id in the first table) Value with appropriate type
現在,將您的表單基於如下所示的查詢
SELECT * FROM OriginalTable LEFT JOIN Dummy ON OriginalTable.Id = Dummy.Id
添加一個綁定到
Value
. 每當您在此處輸入值時,都會自動將記錄添加到Dummy
表中。始終在打開表單之前刪除此表的記錄。當然,如果可以接受的話,您可以簡單地在原始表中添加一個新列。
至於另一個問題:始終在查詢中包含 Id 列。你不需要為它添加一個文本框。