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.

0 nhận xét