Thứ Ba, 4 tháng 10, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Tạo truy vấn cho các mục trên dòng trong đơn mua hàng

James Perry, Richard Newmark


Chương 9
Qui trình mua hàng - chi tiền


Tạo truy vấn cho các mục trên dòng trong đơn mua hàng


Các mục trên từng dòng trong đơn mua hàng thì tương tự các mục trên từng dòng trong đơn bán hàng. Cả hai đều bao gồm mã mặt hàng, mô tả mặt hàng đã đặt, số lượng đã đặt, đơn giá, và trị giá trên dòng (đơn giá x số lượng). Hơn nữa, các mục trên từng dòng trong đơn mua hàng còn chứa mã mặt hàng của nhà cung ứng vì hệ thống đánh mã tồn kho của nhà cung ứng thường khác với hệ thống được bên mua sử dụng. Vì thế, các mục trên từng dòng trong đơn mua hàng cần thông tin từ những bảng sau: tblReservation-PurchaseOrderInventory, tblInventory, tblInventoryComposition, tblInventoryType, và tblInventoryDiameter. Ngoài ra, bạn sẽ thêm 2 trường mới: PurchaseOrderLineExtension, sẽ chứa biểu thức (đơn giá x số lượng); và FullDescription, sẽ nối các mô tả về thành phần cấu tạo, kiểu, và đường kính của từng mặt hàng. Do độ phức tạp của truy vấn này và sự tương tự của nó so với qrySaleOrderLineItem, ta có thể tiết kiệm thời gian và công sức bằng cách sao chép qrySaleOrderLineItem rồi sửa trên đó.

BÀI TẬP 9.14: TẠO QRYPURCHASEORDERLINEITEM CHO FORM NHẬP ĐƠN MUA HÀNG

1. Kích qrySaleOrderLineItem ở Navigation Pane. Nhấn Ctrl+C rồi Ctrl+V. Sửa Query Name trong hộp thoại Paste Table As thành qryPurchaseOrderLineItem, rồi kích OK.

2. Mở qryPurchaseOrderLineItem ở góc nhìn Design.

3. Kích Show Table trong nhóm Query Setup, kích kép tblReservation-PurchaseOrderInventory, rồi kích Close. Định cỡ lại tblReservation-PurchaseOrderInventory để hiển thị toàn bộ tên bảng và tất cả các tên trường. Sau đó chuyển nó lên trên tblReservation-SaleOrderInventory để dễ làm việc hơn.

4. Trên Criteria Pane, sửa Table cho các trường InventoryID, QuantityOrdered, SOPrice, và SaleOrderID thành tblReservation-PurchaseOrderInventory.

5. Sửa các tên trường Field sau:

6. SOPrice thành POPrice.

7. SaleOrderID thành PurchaseOrderID.

8. InventoryListPrice thành InventoryStdCost.

9. Kích SaleOrderLineExtension. Kích Builder trong nhóm Query Setup để mở hộp thoại Expression Builder. Sửa biểu thức SaleOrderLineExtension: [QuantityOrdered] * [SOPrice] thành PurchaseOrderLineExtension: [QuantityOrdered] * [POPrice].

10. Kéo VendorItemID từ tblReservation-PurchaseOrderInventory vào Criteria Pane đè lên cột FullDescription để đặt VendorItemID vào giữa InventoryID và FullDescription.

11. Kích tblReservation-SaleOrderInventory; nhấn phím Delete để loại bảng khỏi Table Pane.

12. Lưu truy vấn. Kích Datasheet View trong nhóm Results để thi hành truy vấn và xem tập động dynaset (xem Hình 9.15). Mở tblReservation-PurchaseOrderInventory ở góc nhìn Datasheet. Để ý rằng cả tập động dynaset và bảng đều có 181 bản ghi. Kích mũi tên Sort ở cột Item # của tblReservation-PurchaseOrderInventory để sắp theo thứ tự tăng. Chúng chứa cùng số liệu vì thông tin truy vấn đến từ tblReservation-PurchaseOrderInventory.

Hình 9.15. Tập hợp động qryPurchaseOrderLineItem.

13. Đóng truy vấn và bảng. Đừng lưu những thay đổi trên bảng hay trên truy vấn.

Không có nhận xét nào:

Đăng nhận xét