選取下列任何主題以瞭解 Northwind Developer Edition 中的採購單。
此 Northwind 採購單範例應用程式的 Dev Edition 只有採購單模組。 在 Starter Edition 中,產品永遠不會用完,也永遠不需要購買。 此 Dev Edition 會展開資料庫架構 () 在 Northwind 2.0 Starter Edition 中使用的資料表,並使用更進階的功能。 它仍是為了向您介紹 Microsoft Access 的主要功能,而非執行任何特定業務。
-
[採購單清單] 可從功能區取得。 它具有可開啟每個訂購單的超連結。
-
採購單清單和功能區都有 [新增採購單] 按鈕,可開啟新的空白採購單。 您也可以從 [ 產品] 表單>[重新排序產品 ] 按鈕建立採購單。
-
頁首中的按鈕會透過 [提交]、[核准]、[接收] 和 [關閉],透過工作流程來換頁採購單。 表單上對應的追蹤欄位會鎖定,因為它們應該只按一下動作按鈕以程式設計方式設定。
-
核准 PO 需要購買核准許可權。 您可以以有許可權的 Andrew Cencini 登入,或以系統管理員 >權限將它提供給自己。 請注意,您能夠這麼做是 Northwind 不是生產品質應用程式的眾多原因之一。 在現實世界中,使用者將無法提升自己的許可權。
-
採購單中的明細專案會根據其數量進行驗證。 它至少必須是 [最小重新排序數量],最好是將庫存備份到每個產品設定的至少目標層級。
-
收到採購單 時,會叫用特殊處理來將這些產品發佈到 沒有 庫存狀態的訂單明細專案,並將它們設定為 [已配置]。 任何剩餘數量會傳送至庫存。 記錄會新增至 [股價 ] 資料表。
本節說明採購單表單frmPurchaseOrderDetails的值得注意的實作詳細資料:
-
採購單表單會從簡單的查詢 qryPurchaseOrder 取得其資料 (請參閱 RecordSource 屬性) 。 最佳做法是以簡單查詢為基礎建立資料輸入表單。 請注意,您不需要在此查詢中包含 PurchaseOrderDetails 資料表。 詳細資料是由子表單處理。 但查詢會與其他資料表聯結,以挑選唯讀 狀態名稱、 SubmittedBy和 ApprovedBy 字 段。
-
PurchaseOrderList表單可以開啟多個採購單表單實例。 這非常實用,因為 PO 部門處理許多中斷,可能需要在第一個 PO 上工作時開啟另一個 PO,或將它與第三個 PO 比較。 此處會記錄這項技術。
-
VendorID 會從兩欄下拉式方塊取得其值:隱藏的識別碼欄,以及可見的 [描述] 欄。 這類下拉式方塊系結至簡單的兩欄查詢:請參閱 RowSource 屬性。
-
儲存記錄時,至少必須填寫 必要的 欄位。 在 Starter 版本中,我們讓 Access 預設行為發生;在此 Dev 版本中,我們實作了更方便使用者的技術,如下所述。
-
當 PO 狀態 移至 [收到] 時,會叫用特殊處理 (程式 配置ToInventory) ,以便透過等待這些產品的訂單散發新的庫存。
驗證
在 Northwind Dev 版本中實作的驗證碼只需要三行程式碼:
-
在 Form_BeforeUpdate中:Cancel = ValidateForm (Me)
-
在 Form_AfterUpdate: ValidateForm_RemoveHighlights Me
-
在 Form_Current中:ValidateForm_RemoveHighlights我]
這是一個很好的模式:讓程式碼完全獨立,可讓您輕鬆地在任何地方實作。 專業開發人員可能會進一步瞭解這個問題,例如使用表單子分類。 (這是超出 Northwind Dev.)
獨立的驗證碼接受要驗證的表單物件。 然後,它會檢查基礎 RecordsetClone的表單集合,找出哪些控制項系結至必要欄位,並檢查它們是否有值。 如果沒有,則會醒目提示它們。