Thứ Sáu, 30 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Form nhập đơn mua hàng

James Perry, Richard Newmark


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


Form nhập đơn mua hàng


Form nhập đơn mua hàng tương tự form nhập đơn bán hàng. Để nhập đơn mua hàng, bạn sẽ tạo form liên kết:


  • tblPurchaseOrder với tblVendor, để nhận thông tin chẳng hạn tên và địa chỉ nhà cung ứng.
  • tblPurchaseOrder với tblEmployee để nhận tên nhân viên tạo đơn mua hàng.
  • tblPurchaseOrder với tblReservation-PurchaseOrderInventory, để nhận danh sách mã hàng tồn kho, số lượng, đơn giá, và mã mặt hàng của nhà cung ứng cho mỗi mặt hàng trên từng đơn mua hàng.
  • tblReservation-PurchaseOrderInventory với tblInventory,  và từ tblInventory đến các bảng phân loại tồn kho để nhận mô tả cho mỗi mặt hàng trên từng đơn mua hàng. (Để ý rằng bạn đã tạo các liên kết từ tblInventory đến các bảng phân loại tồn kho ở Chương 8).

Thứ Năm, 29 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Bảng-quan-hệ đơn mua hàng - tồn kho

James Perry, Richard Newmark


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


Bảng-quan-hệ đơn mua hàng - tồn kho


Bảng-quan-hệ đơn mua hàng - tồn kho tương tự bảng-quan-hệ đơn bán hàng - tồn kho ở đó chúng ghi nhận quan hệ dành riêng nhiều-nhiều giữa bảng biến cố cam kết và bảng tài nguyên tblInventory. Vì thế, bảng tblReservation-PurchaseOrderInventory sẽ có bốn trường tương tự các trường trong tblReservation-SaleOrderInventory:

1. Khóa chính của tblPurchaseOrder.
2. Khóa chính của tblInventory.
3. Số lượng từng hàng tồn kho xuất hiện trên từng đơn mua hàng.
4. Chi phí từng hàng tồn kho xuất hiện trên từng đơn mua hàng.

Thêm vào đó, tblReservation-PurchaseOrderInventory sẽ lưu mã mặt hàng của nhà cung ứng cho từng mặt hàng đã đặt vì cùng một mặt hàng có thể được đặt từ nhiều nhà cung ứng, và nhà cung ứng thường dùng mã mặt hàng của riêng họ.

Các khóa chính từ tblPurchaseOrdertblInventory hợp thành khóa chính phức hợp trong tblReservation-PurchaseOrderInventory. Trong Microsoft Access, bạn tạo khóa chính phức hợp bằng cách tạo 2 trường tách rời – mỗi trường cho khóa chính của từng bảng thực thể rồi chỉ định cả 2 trường làm khóa chính. Trước khi bắt đầu bài tập kế, hãy đóng mọi bảng và form đang mở.

BÀI TẬP 8.20: TẠO BẢNG-QUAN-HỆ TBLRESERVATION-PURCHASEORDERINVENTORY

1. Kích phải tblMyReservation-SaleOrderInventory trong phần Tables thuộc Navigation Pane rồi chọn Copy. Kích phải lần nữa rồi chọn Paste. Trong hộp thoại Paste Table As sửa tên bảng thành tblMyReservation-PurchaseOrderInventory, kích nút radio Structure Only, rồi kích OK.

2. Mở tblMyReservation-PurchaseOrderInventory ở góc nhìn Design.

3. Sửa Field Name đầu tiên thuộc khóa chính phức hợp từ SaleOrderID thành PurchaseOrderID. Sửa Caption thành Purchase Order #.

4. Sửa Field Name thứ tư từ SOPrice thành POPrice.

5. Thêm thuộc tính thứ năm. Field Name là VendorItemID. Để Data Type là Short Text. Đặt Field Size là 20, Caption là Vendor Item #, Required là Yes, Allow Zero Length là No, và  thuộc tính Indexed là Yes (Duplicates OK). Indexed được đặt là Yes vì Pipefitters có thể cần tra mặt hàng tồn kho theo mã mặt hàng của nhà cung ứng. Tại sao không đặt mặt nạ nhập liệu Input Mask cho VendorItemID?

6. Lưu rồi đóng bảng.

7. Nhập liệu cho tblReservation-PurchaseOrderInventory (tên worksheet trong Ch09.xlsx được viết tắt là tblReservation-PurchaseOrderInv do chiều dài tên worksheet bị giới hạn) từ Ch09.xlsx file. Theo hướng dẫn ở Bài tập 9.5, thay tblReservation-PurchaseOrderInv cho tblVendor. Khi nhập liệu, lưu bảng là tblMyReservation-PurchaseOrderInventory. Ở góc nhìn Datasheet, kiểm chứng là bạn đã nhập tất cả 181 bản ghi.

Thứ Tư, 28 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Bảng đơn mua hàng Purchase Order

James Perry, Richard Newmark


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


Bảng đơn mua hàng Purchase Order


Bảng đơn mua hàng Purchase Order tương tự bảng đơn bán hàng Sale Order mà bạn đã tạo ở Chương 8 vì chúng mô hình hai biến cố tương tự nhau. Như đơn bán hàng, đơn mua hàng là biến cố cam kết đưa đến một biến cố kinh tế. Đơn bán hàng đưa đến việc bán hàng (trao hàng tồn kho cho khách hàng là biến cố giảm lượng kinh tế) và đơn mua hàng đưa đến việc mua hàng (nhận hàng tồn kho từ nhà cung ứng là biến cố gia lượng kinh tế). Cả hai biến cố đặt hàng chỉ liên kết với một tác nhân ngoại và tại Pipefitters Supply Company, chỉ liên kết với một nhân viên. Hơn nữa, cả hai biến cố đặt hàng đều có quan hệ nhiều-nhiều với tài nguyên tồn kho Inventory.

Một tương tự khác giữa hai bảng là Pipefitters lưu tổng trị giá các mặt hàng đã đặt vào cả hai bảng. Mặc dù tổng trị giá các mặt hàng đã đặt có thể tính được bằng cách lấy tổng các đơn giá nhân số lượng của từng mặt hàng đã đặt, Pipefitters lưu tổng trị giá để kiểm soát. Như được đề cập ở Chương 8, Pipefitters cần định kỳ thi hành một truy vấn để so sánh tổng các dòng đặt hàng với tổng trị giá trong bảng để phát hiện những lỗi có thể phát sinh hay những bất thường.

Hình 9.10 trình bày sáu trường cho tblPurchaseOrder. Để ý rằng tblPurchaseOrder có trường thời điểm thứ hai là thời điểm giao hàng dự kiến expected delivery date. Pipefitters có thể dùng thông tin này để tạo một loạt các truy vấn nhằm xác định tồn kho dự kiến sẵn có để giao cho khách hàng vào một thời điểm cụ thể, thay vì chỉ dựa vào tính toán tồn kho thực sự hiện có.

Hình 9.10 Các trường cho tblPurchaseOrder.

BÀI TẬP 9.9: TẠO BẢNG ĐƠN MUA HÀNG

1. Hãy tạo bảng mới. Kích Create tab, rồi kích Table Design trong nhóm Tables.

2. Tạo khóa chính. Gõ PurchaseOrderID vào ô Field Name đầu tiên rồi kích Primary Key trong nhóm Tools.

3. Nhấn F6 để sang phần Field Properties. Nhập các thuộc tính trường cho PurchaseOrderID liệt kê ở Hình 9.10.

4. Nhập kiểu dữ liệu Data Types và thuộc tính trường Field Properties cho các khóa ngoại EmployeeID VendorID liệt kê ở Hình 9.10.

5. Kế đến, tạo trường thời điểm đặt mua hàng bằng cách nhập PurchaseOrderDate vào ô Field Name. Nhập kiểu dữ liệu và thuộc tính trường liệt kê ở Hình 9.10.

6. Hệ thông tin kế toán của Pipefitters sẽ gửi đơn mua hàng đến nhà cung ứng ngay khi dữ liệu được nhập vào hệ thống. Vì thế, thời điểm đặt mua hàng thường là thời điểm hiện tại. Vì thế, bạn cần đặt giá trị mặc định cho PurchaseOrderDate là thời điểm hiện tại bằng cách nhập Date() vào thuộc tính Default Value. Kiểm soát này sẽ giảm thiểu lỗi nhập liệu.

7. Lưu bảng với tên tblPurchaseOrder.

Giờ đây bạn có bảng đơn mua hàng Purchase Order hoàn chỉnh với một số kiểm soát tổng quát được tạo bên trong nó, đảm bảo việc nhập dữ liệu hợp lý; mã ID phải có đúng số chữ số, tổng trị giá đơn mua hàng không được âm, và thời điểm đặt hàng mặc định là thời điểm hiện thời. Bạn nghĩ sao về một hạn chế hợp lý đối với thời điểm dự kiến giao hàng? Thời điểm giao hàng dự kiến sớm hơn thời điểm đặt hàng được không? Mặc dù ta không thể viết qui tắc hợp lệ ở mức trường (field-level) để so sánh giá trị trường này trong một bản ghi với giá trị trường khác trong cùng bản ghi, ta có thể tạo qui tắc hợp lệ ở mức bảng (table-level) để thực hiện nhiệm vụ này.

BÀI TẬP 9.10: TẠO QUI TẮC HỢP LỆ MỨC BẢNG CHO THỜI ĐIỂM GIAO HÀNG DỰ KIẾN EXPECTEDDELIVERYDATE

1. Mở tblPurchaseOrder ở góc nhìn Design nếu nó chưa được mở.

2. Nếu khung Property Sheet chưa xuất hiện thì kích Property Sheet trong nhóm Show/Hide để mở các thuộc tính ở mức bảng (xem Hình 9.11).

Hình 9.11 Tạo qui tắc hợp lệ mức bảng.

3. Trên Property Sheet, kích ô điều khiển Validation Rule để kích hoạt công cụ tạo biểu thức Expression Builder. Kích nút đó để mở Expression Builder (xem Hình 9.11).

4. Tạo qui tắc hợp lệ ở Hình 9.11. Kích kép PurchaseOrderDate trong danh sách trường ở Expression Builder.Go <=, rồi kích kép ExpectedDeliveryDate. Kích OK để đóng Expression Builder.

5. Thêm thông tin sau vào thuộc tính Validation Text, thông tin đó sẽ xuất hiện khi người dùng nhập vào thời điểm giao hàng dự kiến sớm hơn thời điểm đặt hàng: Expected delivery date cannot be earlier than purchase order date (Thời điểm giao hàng dự kiến không thể sớm hơn thời điểm đặt hàng).

6. Lưu các thay đổi.

7. Hãy theo Bài tập 9.5 để nhập dữ liệu từ Ch09.xlsx vào tblPurchaseOrder. Ở góc nhìn Datasheet, hãy kiểm chứng có 24 bản ghi được nhập vào bảng. Đóng bảng sau khi làm xong.

Bài tập trên đã hoàn tất thiết kế cơ bản của tblPurchaseOrder.

THỬ NGHIỆM

Hãy mở tblPurchaseOrder rồi nhập một bản ghi mới. Nhập 999999 cho PurchaseOrderID, 999 cho EmployeeID, và 9999 cho VendorID. Bạn được phép nhập các giá trị này mặc dù chúng không tồn tại trong các bảng liên quan vì bạn chưa liên kết tblPurchaseOrder với các bảng liên quan và áp đặt tính toàn vẹn tham chiếu. Giữ nguyên thời điểm mặc định trong trường PurchaseOrderDate. Trong trường ExpectedDeliveryDate, hãy nhập thời điểm trước một tháng so với PurchaseOrderDate. Tab sang trường PurchaseOrderAmount rồi gõ 9999. Tab sang bản ghi kế. Để ý hộp thoại với thông tin Validation Text xuất hiện khi bạn thử chuyển sang bản ghi kế. Sau khi kích OK, bạn có thể xóa bản ghi hiện thời bằng cách nhấn phím Esc hay nhập một thời điểm hợp lệ cho ExpectedDeliveryDate. Hãy xóa bản ghi rồi đóng bảng.

Thứ Ba, 27 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Bảng nhân viên Employee

James Perry, Richard Newmark


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


Bảng nhân viên Employee


Mô hình ở Hình 9.4 cho thấy Pipefitters Supply ghi nhận thông tin nhân viên mua hàng chịu trách nhiệm cho từng đơn mua hàng. Điều này tương tự cách Pipefitters ghi nhận nhân viên bán hàng chịu trách nhiệm cho từng đơn bán hàng. Nhân viên mua hàng được biểu diễn trong bảng đơn mua hàng Purchase Order bằng mã nhân viên (thuộc tính EmployeeID). Khóa ngoại này liên kết bảng đơn mua hàng Purchase Order với bảng nhân viên Employee vì EmployeeID là khóa chính của bảng nhân viên Employee. Các bảng tblEmployee tblEmployeeType bạn đã dùng ở Chương 8 cũng có trong cơ sở dữ liệu Ch09.accdb.

Thứ Hai, 26 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Đơn mua hàng

James Perry, Richard Newmark


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


Đơn mua hàng


Giờ đây bạn đã tạo xong bảng và forms để công ty có thể nhập và bảo trì các bản ghi nhà cung ứng và tồn kho, bạn có thể tạo các thành phần hệ thống nhằm hỗ trợ việc đặt mua hàng từ nhà cung ứng. Tại Pipefitters Supply Company, nhân viên mua hàng chịu trách nhiệm giám sát các mức tồn kho. Họ phải đảm bảo có sẵn hàng tồn kho đủ đáp ứng nhu cầu hiện nay mà không phải chôn vốn vì mua quá nhiều hàng tồn kho. Một khi nhân viên mua hàng xác định cần mua hàng tồn kho, họ phải:


  • Nhận diện các nhà cung ứng hàng tồn kho này.
  • Chọn một nhà cung ứng.
  • Gửi đơn mua hàng đến nhà cung ứng đã chọn.


Đơn mua hàng thay đổi tùy thuộc công ty; tuy nhiên, mọi đơn mua hàng cần chứa thông tin sau:


  • Thời điểm đặt hàng.
  • Tên và địa chỉ nhà cung ứng.
  • (Các) mặt hàng cần mua.
  • Số lượng và giá (các) mặt hàng cần mua.


Đơn mua hàng cũng thường chứa thông tin gửi hàng, bao gồm thời điểm dự kiến hàng sẽ đến nơi. Khóa ngoại trong bảng đơn mua hàng Purchase Order ở Hình 9.4 sẽ tạo quan hệ tham gia giữa bảng nhà cung ứng Vendor và bảng Purchase Order. Liên kết này giúp bạn nhận diện nhà cung ứng với những đơn mua hàng cụ thể, vì như lực lượng một-nhiều ở Hình 9.4 thể hiện, mỗi đơn mua hàng chỉ được đặt với một nhà cung ứng. Tuy nhiên, quan hệ đặt chỗ Reservation nhiều-nhiều liên kết các đơn mua hàng Purchase Order với các hàng tồn kho Inventory cụ thể được liệt kê trên từng đơn mua hàng sẽ cần một bảng-quan-hệ riêng để tạo liên kết đó.

Hãy rà soát mô hình dữ liệu ở Hình 9.4 để xác định các bảng, kể cả bảng-quan-hệ, và khóa ngoại mà Pipefitters Supply Company sẽ cần ghi nhận từng đơn mua hàng. Vào lúc này, đừng lo về quan hệ hoàn tất giữa đơn mua hàng Purchase Order và mua hàng Purchase. Bạn sẽ tạo quan hệ hoàn tất khi tạo bảng mua hàng Purchase bằng cách thêm PurchaseOrderID là khóa ngoại trong bảng mua hàng.

Chủ Nhật, 25 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 8 - Bảo trì các bản ghi khách hàng

James Perry, Richard Newmark


Chương 8
Qui trình bán hàng - thu tiền


Bảo trì các bản ghi khách hàng


Giờ đây bạn đã tạo bảng Customer để lưu thông tin khách hàng và form để làm bảng dễ dùng, bạn có thể bảo trì các bản ghi khách hàng hiệu quả. Các thao tác bảo trì bao gồm tạo bản ghi khách hàng mới, xóa bản ghi khách hàng không cần nữa, và cập nhật bản ghi khách hàng khi thông tin thay đổi.

Các doanh nghiệp cần cập nhật kịp thời thông tin khách hàng của họ. Nhớ rằng một ưu điểm khi dùng mô hình cơ sở dữ liệu quan hệ cho hệ thống kế toán là chỉ cần thêm, xóa, hay sửa thông tin ở một nơi. Với thông tin khách hàng, tblCustomer là nơi đó.

Khi dùng frmCustomer để thêm khách hàng vào tblCustomer, hãy mở form bằng cách kích kép vào form. Để nhập một khách hàng mới, kích nút New Record (bản ghi mới) ở đáy form (xem Chương 1, Hình 1.27) rồi gõ. Nhấn Enter sau khi gõ thông tin vào mỗi trường thành phần điều khiển. Để ý rằng mặt nạ nhập liệu, qui tắc kiểm tra hợp lệ, và giá trị mặc định trong tblCustomer đã tránh nhập sai dữ liệu vào các trường CustomerID, CustomerState, CustomerZipCode, CustomerTelephone, và CustomerCreditLimit.

Sau khi nhập toàn bộ thông tin khách hàng, nhấn Enter để chuyển sang bản ghi kế. Bạn có thể tới lui trong bảng bằng các phím PgUp và PgDn hay các nút di chuyển ở đáy form.

Xóa bản ghi khỏi tblCustomer thì dễ nhưng nguy hiểm. Để xóa bản ghi vừa tạo, hãy di chuyển đến bản ghi đó bằng các nút di chuyển ở đáy form, rồi chọn toàn bộ bản ghi bằng cách kích nút chọn bản ghi Record Selector. Nhấn Delete để xóa bản ghi. Microsoft Access sẽ hiển thị một khuyến cáo yêu cầu khẳng định việc xóa. Thao tác xóa không thể đảo ngược, vì Access không lưu bản ghi vào bộ nhớ tạm khi xóa. Nếu bạn thử xóa một khách hàng đã đặt hàng sau khi xây xong cơ sở dữ liệu, bạn sẽ không được phép xóa khách hàng đó do ràng buộc toàn vẹn tham chiếu đã tạo trong cơ sở dữ liệu.

Bạn có thể xóa từng trường riêng lẻ trong bản ghi ở góc nhìn Form bằng phím Delete. Việc xóa từng trường riêng lẻ có thể đảo ngược bằng cách nhấn Esc trước khi chuyển sang trường kế. Sau khi chuyển sang trường kế trong cùng bản ghi, bạn có thể đảo ngược mọi thao tác xóa trường (hay thay đổi trường) trong bản ghi hiện thời bằng cách nhấn Esc. Mọi thao tác xóa khác là vĩnh viễn.

Xóa bản ghi trong cơ sở dữ liệu kế toán là hành động luôn phải xem xét cẩn thận. Dữ liệu trong bảng kế toán thường quan hệ với dữ liệu trong các bảng khác. Chẳng hạn, nếu xét một bản ghi trong bảng đơn đặt hàng Sale Order, nó chứa mã khách hàng. Nơi duy nhất bạn tìm thấy tên và địa chỉ khách hàng là bảng Customer. Nếu ai đó xóa bản ghi khách hàng trong bảng Customer, bạn có thể chẳng bao giờ tìm thấy khách hàng đó! May mắn là bạn sẽ được hướng dẫn để thêm ràng buộc toàn vẹn nhằm ngăn chặn sự cố đó.

Duy trì việc cập nhật bản ghi khách hàng nhằm phản ánh thay đổi về địa chỉ, số điện thoại, và những thay đổi khác là nhiệm vụ dễ dàng khi dùng frmCustomer. Hãy mở form thông tin khách hàng bằng cách kích Forms tab trong cửa sổ Database rồi kích kép frmCustomer. Hãy dùng các nút di chuyển ở đáy form để chuyển đến bản ghi khách hàng mà bạn muốn sửa. Các thiết đặt thuộc tính Input Mask và Validation Rule cho tblCustomer sẽ hạn chế những thay đổi bạn muốn, giống như khi nhập liệu lần đầu.

THỬ NGHIỆM

Khi dùng các nút di chuyển để đi từ bản ghi này sang bản ghi khác trong form thông tin khách hàng, bạn để ý rằng các bản ghi không được sắp theo thứ tự từ điển. Trừ phi bạn biết CustomerID của khách hàng, sẽ khó tìm được khách hàng cụ thể trong form. Bạn có thể sắp form theo CustomerName bằng cách kích phải trường Name rồi kích Sort A to Z. Giờ đây form được sắp theo CustomerName.

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Form tồn kho

James Perry, Richard Newmark


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


Form tồn kho


Form tồn kho nguyên liệu bạn đã tạo ở Chương 8 giúp người dùng nhập các bản ghi tồn kho dễ dàng và chính xác. Form còn cung cấp một cách tiện lợi để người dùng xem, sửa, hay xóa các bản ghi tồn kho hiện hữu. Ở Bài tập 9.8 bạn sẽ thêm trường chi phí chuẩn vào frmInventory. Thậm chí sau khi thêm trường thứ sáu vào tblInventory, bạn vẫn có thể thấy toàn bộ bản ghi mà không cần thanh cuộn ngang.

BÀI TẬP 9.8: THÊM CHI PHÍ CHUẨN VÀO FORM NHẬP LIỆU TỒN KHO

1. Mở frmInventory ở góc nhìn Design.

2. Làm form rộng hơn bằng cách kích và kéo cạnh phải của form vị trí 7-inch.

3. Tạo một bản sao thành phần điều khiển và nhãn InventoryListPrice. Kích thành phần điều khiển InventoryListPrice, nhấn và giữ phím Shift rồi kích nhãn ListPrice để chọn cả hai đối tượng. Nhấn Ctrl+C, rồi Ctrl+V.

4. Di chuyển thành phần điều khiển và nhãn InventoryListPrice nguyên bản sang cạnh phải của form. Chọn cả hai mục như bạn đã làm ở Bước 2, rồi dùng phím mũi tên phải để di chuyển cả hai đối tượng sang phải.

5. Kích nhãn ListPrice mới hai lần (chậm hơn kích kép), rồi sửa nội dung thành Std. Cost.

6. Sắp nhãn Std. Cost ngang hàng với các nhãn khác. Chọn tất cả các nhãn. Kích vào vùng trống trong Form Header ngay bên dưới nhãn Inventory #. Kích và kéo ô cho đến khi nó chạm tất cả các nhãn (xem Hình 9.7). Kích Arrange tab, rồi chọn Top từ Align menu trong nhóm Sizing & Ordering (xem Hình 9.8).

Hình 9.7 Chọn nhiều mục trong frmInventory để tạo khoảng cách đều nhau theo hàng ngang.

Hình 9.8 Size/Space và Align menus.

7. Tạo khoảng cách đều nhau theo hàng ngang giữa tất cả các nhãn. Với tất cả các nhãn vẫn được chọn, kích Space/Size rồi Equal Horizontal trong nhóm Sizing & Ordering. Dùng kỹ thuật tương tự để sắp thẳng hàng và cách đều nhau cho các thành phần điều khiển trong phần Detail của form.

8. Loại khoảng trống bên dưới các nhãn bằng cách kích và kéo đỉnh của thanh Detail lên trên. Loại khoảng trống bên dưới các thành phần điều khiển bằng cách kích và kéo đỉnh của thanh Form Footer lên trên.

9. Nếu chưa xuất hiện khung Property Sheet, kích Design tab rồi kích Property Sheet trong nhóm Tools. Kích thành phần điều khiển InventoryListPrice mới. Trên Data tab của Property Sheet, sửa Record Source thành InventoryStdCost. Trên Other tab, sửa Name thành InventoryStdCost. Đóng Property Sheet.

10. Sửa thứ tự tab. Kích Tab Order trong nhóm Tools. Để ý là InventoryListPrice xuất hiện trước InventoryStdCost trong cột Custom Order. Để sửa thứ tự tab, bạn có thể kích InventoryStdCost, rồi kích và kéo nó lên trên InventoryListPrice, hay bạn có thể kích Auto Order. Kích OK khi làm xong. Trở về góc nhìn Form. Form cần giống Hình 9.9. Nhấn phím Tab vài lần. Để ý sự di chuyển từ trường này sang trường kế, và từ mục cuối của bản ghi này sang mục đầu của bản ghi kế.

Hình 9.9 Form nhập liệu tồn kho đã được cập nhật.

11. Lưu form.

THỬ NGHIỆM

Combo Box Wizard có viết một truy vấn truy xuất tblInventoryType rồi chèn năm giá trị từ trường Category vào bảng đó. Để khảo sát truy vấn này, kích combo box InventoryType ở góc nhìn Design với Property Sheet đang mở, kích Data tab, chọn thuộc tính Row Source, rồi kích nút Builder. Đó là một truy vấn đơn giản, nhưng làm tốt. Đóng truy vấn và form.

Thứ Bảy, 24 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Bảng tồn kho

James Perry, Richard Newmark


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


Bảng tồn kho


Cơ sở dữ liệu Ch09.accdb chứa bảng tồn kho bạn đã tạo ở Chương 8. Ta cũng dùng bảng này cho qui trình mua hàng - chi tiền vì tồn kho liên quan đến việc mua cũng là tồn kho liên quan đến việc bán hàng cho khách hàng. Tuy nhiên, cần thêm một trường để hỗ trợ các biến cố trong qui trình mua hàng - chi tiền.

Bảng tồn kho ban đầu chứa trường giá niêm yết. Giá bán của Pipefitters sẽ dựa trên giá niêm yết. Tương tự, Pipefitters cần một giá tham khảo để so với giá mua thực. Trong kế toán quản trị giá trị này gọi là chi phí chuẩn (standard cost), là số tiền Pipefitters dự chi cho từng mặt hàng tồn kho. Nhân viên mua hàng có thể dùng thông tin chi phí chuẩn để giúp họ chọn nhà cung ứng tốt nhất cho từng loại hàng tồn kho cụ thể. Hơn nữa, bộ phận quản lý có thể dùng báo cáo so chi phí chuẩn với chi phí thực để đánh giá nhà cung ứng và tính hiệu quả của nhân viên mua hàng. Dĩ nhiên, chi phí chuẩn sẽ lỗi thời nếu không được cập nhật thường xuyên để phản ánh tình hình thị trường.

BÀI TẬP 9.7: THÊM CHI PHÍ CHUẨN VÀO BẢNG TỒN KHO

1. Mở tblInventory ở góc nhìn Design.

2. Kích nút chọn trường bên trái tên trường InventoryListPrice. Nhấn Ctrl+C, kích nút chọn trường ở dòng trống đầu tiên, rồi nhấn Ctrl+V. Sửa tên trường mới thành InventoryStdCost. Kích nút chọn trường của InventoryStdCost, rồi kéo dòng đó ngay bên trên dòng InventoryListPrice.

3. Trong khung thuộc tính trường Field Properties của InventoryStdCost, sửa phụ đề Caption thành Std. Cost rồi sửa thuộc tính Required thành No. Điều này là cần thiết vì bạn chưa có dữ liệu cho trường này.

4. Chuyển sang góc nhìn Datasheet, rồi kích Yes trong hộp thoại để lưu các thay đổi.

5. Mở Ch09.xlsx file rồi chọn tblInventory worksheet. Chép 60 ô StdCost rồi dán chúng vào cột Std. Cost trong bảng Access.

6. Trở về góc nhìn Design. Sửa thuộc tính Required của StdCost thành Yes.

7. Lưu và đóng bảng.

Thứ Sáu, 23 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Thông tin tồn kho

James Perry, Richard Newmark


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


Thông tin tồn kho


Ở Chương 8, bạn đã tạo tblInventory để lưu thông tin hàng tồn kho, và bạn cũng đã tạo form để dễ dàng thêm, sửa, và xóa dữ liệu tồn kho. Ở chương này, bạn sẽ theo dõi các biến cố liên quan đến việc nhập hàng tồn kho như một phần của qui trình mua hàng - chi tiền. Cũng như mô hình dữ liệu mua hàng - chi tiền, các bảng, truy vấn, và forms bạn tạo cho qui trình tác nghiệp này sẽ là hình gương phản chiếu các đối tượng Access bạn đã tạo cho qui trình bán hàng - thu tiền.

Công ty dùng các bản ghi tồn kho để cung cấp mô tả tồn kho cho đơn mua hàng, biên bản bàn giao, và các tài liệu khác trong qui trình mua hàng - chi tiền. Để đảm bảo thông tin tồn kho nhất quán cho toàn doanh nghiệp, công ty lưu mọi thông tin tồn kho vào một chỗ. Pipefitters lưu thông tin tồn kho vào bảng Inventory và các bảng kiểu/nhóm liên quan. Bất kỳ tài liệu, báo cáo, hay giao dịch nào cần thông tin tồn kho thì sẽ tiếp nhận từ cùng một nơi.

Thứ Năm, 22 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Bảo trì các bản ghi nhà cung ứng

James Perry, Richard Newmark


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


Bảo trì các bản ghi nhà cung ứng


Giờ đây bạn đã tạo bảng nhà cung ứng để lưu thông tin nhà cung ứng và form thông tin nhà cung ứng để dễ dàng nhập và xem dữ liệu trong bảng đó. Với form thông tin nhà cung ứng, bạn có thể:


  • Tạo các bản ghi cho những nhà cung ứng mới.
  • Xóa bản ghi nhà cung ứng nào không hoạt động tốt hay đã đóng cửa.
  • Cập nhật bản ghi trong bảng nhà cung ứng khi họ chuyển địa điểm, có số điện thoại mới, và sửa các mục khác đã lưu trong bảng nhà cung ứng.


Bạn sẽ muốn thông tin nhà cung ứng lúc nào cũng chính xác. Một ưu điểm chính của mô hình cơ sở dữ liệu quan hệ là khi bạn thêm, xóa, hay sửa thông tin trong bảng nhà cung ứng, mọi forms và báo cáo dùng dữ liệu nhà cung ứng sẽ được cập nhật. Nếu muốn dùng form thông tin nhà cung ứng để thêm nhà cung ứng vào tblVendor, hãy mở frmVendor. Khi bạn nhập liệu, để ý là các thuộc tính mặt nạ nhập liệu Input Mask và qui tắc kiểm tra hợp lệ Validation Rule mà bạn đã đặt trong tblVendor sẽ giới hạn giá trị bạn có thể nhập vào các thành phần điều khiển VendorID, VendorState, VendorZipCode, và VendorTelephone. Hãy thử nhập giá trị ngoài miền để kiểm thử các kiểm soát nội bộ mà bạn đã tạo trong bảng.

THỬ NGHIỆM

Xóa bản ghi khỏi bảng nhà cung ứng thì dễ. Mở form thông tin nhà cung ứng bằng cách kích kép frmVendor trong Navigation Pane. Để xóa một bản ghi, chuyển đến bản ghi đó bằng các nút di chuyển ở đáy form, rồi chọn Delete Record từ Records menu trong nhóm Records. Access sẽ hiển thị một khuyến cáo yêu cầu khẳng định việc xóa. Thao tác xóa này không thể đảo ngược. Hãy xóa bản ghi nhà cung ứng có mã 1001. Bạn có thể xóa từng trường riêng lẻ trong bản ghi lúc ở góc nhìn Form bằng phím Delete. Việc xóa từng trường riêng lẻ có thể đảo ngược bằng cách nhấn phím Esc, thậm chí sau khi đã chuyển sang trường kế miễn là vẫn ở trong cùng bản ghi. Bây giờ hãy nhập lại nhà cung ứng 1001 vào cơ sở dữ liệu. Kích nút tạo bản ghi mới New (blank) record ở đáy form. Nhập thông tin ở Hình 9.6.

Cẩn thận khi xóa bản ghi trong cơ sở dữ liệu kế toán. Dữ liệu trong bảng kế toán thường quan hệ với dữ liệu trong các bảng khác. Chẳng hạn, nếu xét một bản ghi trong bảng đơn mua hàng Purchase Order, nó chứa mã nhà cung ứng. Nơi duy nhất lưu tên và địa chỉ nhà cung ứng  là bảng Vendor. Nếu ai đó xóa bản ghi nhà cung ứng trong bảng Vendor, bạn có thể chẳng bao giờ tìm thấy nhà cung ứng đó. May mắn là ta thường có thể áp dụng tính toàn vẹn tham chiếu nhằm ngăn chặn sự cố đó.

Duy trì việc cập nhật bản ghi nhà cung ứng nhằm phản ánh thay đổi về địa chỉ, số điện thoại, và những thay đổi khác là nhiệm vụ dễ dàng khi dùng frmVendor. Hãy dùng các nút di chuyển ở đáy form để chuyển đến bản ghi nhà cung ứng mà bạn muốn sửa. Bạn có thể di chuyển qua từng trường thuộc bản ghi đang được hiển thị bằng cách dùng phím Enter hay phím Tab. Phím Shift+Tab sẽ di chuyển theo hướng ngược lại. Thay đổi bất kỳ bạn thực hiện trên nội dung trường sẽ bị hạn chế bởi các thiết đặt thuộc tính Input Mask và Validation Rule cho tblVendor.

THỬ NGHIỆM

Khi dùng các nút di chuyển để đi từ bản ghi này sang bản ghi khác trong form thông tin nhà cung ứng, bạn để ý rằng các bản ghi không được sắp theo thứ tự từ điển. Trừ phi bạn biết VendorID của nhà cung ứng, sẽ khó tìm được nhà cung ứng cụ thể trong form. Bạn có thể sắp form theo VendorName bằng cách kích phải trường Name rồi kích Sort A to Z. Giờ đây form được sắp theo VendorName.

Thứ Tư, 21 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Form thông tin nhà cung ứng

James Perry, Richard Newmark


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


Form thông tin nhà cung ứng


Form thông tin nhà cung ứng chứa dữ liệu hầu như hoàn toàn giống với form thông tin khách hàng mà bạn đã tạo ở Chương 8. Vì thế, bạn sẽ bắt đầu từ một bản sao form thông tin khách hàng rồi chỉ việc sửa nguồn dữ liệu từ tblCustomer thành tblVendor.

BÀI TẬP 9.6: DÙNG FORM THÔNG TIN KHÁCH HÀNG ĐỂ TẠO FORM THÔNG TIN NHÀ CUNG ỨNG

1. Kích frmCustomer trong phần Forms ở Navigation Pane. Nhấn Ctrl+C, rồi Ctrl+V. Trong hộp thoại Paste As, gõ frmVendor.

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

3. Kích Property Sheet trong nhóm Tools nếu khung thuộc tính chưa được mở.

4. Chọn Form từ combo box ở đỉnh khung thuộc tính. Trên Data tab, sửa Record Source thành tblVendor.

5. Sửa CustomerID thành VendorID. Kích thành phần điều khiển CustomerID. Trên khung thuộc tính, sửa Control Source thành VendorID bằng cách kích mũi tên combo box. Điều chỉnh mặt nạ nhập liệu Input Mask để chỉ cho phép bốn chữ số bằng cách xóa một số 0 trong phần đầu của Input Mask. Sửa nhãn thành Vendor #. Kích Other tab. Sửa thuộc tính Name thành VendorID.

6. Xóa thành phần điều khiển CustomerCreditLimit. Di chuyển thành phần điều khiển CustomerPrimaryContact vào vị trí trước đây của CustomerCreditLimit.

7. Sửa Control Source của các trường còn lại thành các trường thích hợp từ tblVendor. Chẳng hạn, sửa CustomerName thành VendorName.

8. Sửa đầu đề thành Vendor Information. Kích và kéo để của thanh Form Footer lên trên để loại bỏ khoảng trống tạo ra do xóa CustomerCreditLimit.

9. Lưu form. Xem form ở góc nhìn Form. Form cần giống Hình 9.6.

Hình 9.6 Form thông tin nhà cung ứng.

Thứ Ba, 20 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Bảng nhà cung ứng Vendor

James Perry, Richard Newmark


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


Bảng nhà cung ứng Vendor


Vì Pipefitters bán hàng cho các doanh nghiệp khác, bảng nhà cung ứng hầu như trùng bảng khách hàng. Hình 9.5 trình bày hai bảng ở góc nhìn Design. Có hai khác biệt nhỏ giữa hai bảng ngoài tiền tố bắt đầu từng tên trường. Đầu tiên, kích cỡ trường Field Size của VendorID chỉ là 4 chữ số thay vì 5 chữ số dùng cho CustomerID vì khó xảy ra trường hợp Pipefitters có nhiều hơn 8,999 nhà cung ứng (từ 1001 đến 9999). Khác biệt thứ hai là bảng nhà cung ứng không có trường hạn mức tín dụng credit limit.

Hình 9.5 tblVendor tblCustomer ở góc nhìn Design.

BÀI TẬP 9.4: TẠO BẢNG NHÀ CUNG ỨNG TBLVENDOR TỪ BẢNG KHÁCH HÀNG TBLCUSTOMER

1. Khởi động Microsoft Access và mở cơ sở dữ liệu Ch09.accdb.

2. Kích phải tblCustomer trong phần Tables thuộc Navigation Pane. Kích Copy. Kích phải rồi chọn Paste. Trong hộp thoại Paste Table As, gõ tblVendor vào ô Table Name, kích nút radio Structure Only (chỉ sao chép cấu trúc), rồi kích OK.

3. Mở tblVendor ở góc nhìn Design.

4. Sửa tên khóa chính Primary Key từ CustomerID thành VendorID. Sửa kích cỡ trường Field Size, mặt nạ nhập liệu Input Mask, và phụ đề Caption theo Hình 9.5.

5. Xóa CustomerCreditLimit. Kích phải CustomerCreditLimit, rồi kích Delete Rows. Sửa các tên trường Field Name cho các thuộc tính còn lại (xem Hình 9.5).

6. Lưu rồi đóng bảng.

BÀI TẬP 9.5: NHẬP DỮ LIỆU TỪ EXCEL FILE VÀO TBLVENDOR

1. Hãy nhập dữ liệu nhà cung ứng từ Ch09.xlsx. Kích Excel trên dải External Data. Kích nút Browse để tìm vị trí đã lưu Ch09.xlsx. Kích kép Ch09.xlsx.

2. Kích nút radio tùy chọn thứ hai Append a copy of the records to the table (nối đuôi một bản sao các bản ghi vào bảng); chọn tblVendor từ combo box. Kích OK.

3. Trong hộp thoại kế, làm nổi bật worksheet tblVendor nếu nó chưa nổi bật. Kích Next hai lần.

4. Trong hộp thoại cuối, tblVendor cần xuất hiện trong ô Import to Table. Kích Finish rồi kích Close mà không lưu các bước nhập liệu vì các bước này chỉ áp dụng cho tblVendor. Mở tblVendor ở góc nhìn Datasheet để kiểm chứng có 14 bản ghi đã được nhập vào bảng. Thay vì dùng chức năng nhập liệu như trên, bạn có thể chép và dán dữ liệu từ Excel worksheet vào tblVendor.

Thứ Hai, 19 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Thông tin nhà cung ứng

James Perry, Richard Newmark


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


Thông tin nhà cung ứng


Công ty cần truy xuất nhanh chóng thông tin các nhà cung ứng của họ. Nhân viên mua hàng cần tên, địa chỉ, và điện thoại của nhà cung ứng. Họ cũng cần biết nhà cung ứng nào cung ứng những mặt hàng nào. Thông tin nhà cung ứng xuất hiện trên nhiều tài liệu tác nghiệp như đơn mua hàng và ngân phiếu. Để đảm bảo tính nhất quán về thông tin khách hàng bất kỳ khi nào cần dùng, nhiều công ty lưu mọi thông tin nhà cung ứng vào một bảng. Mọi tài liệu hay báo cáo cần thông tin nhà cung ứng đều tìm đến bảng đó. Chẳng hạn, nếu một nhà cung ứng chuyển địa chỉ, địa chỉ đó chỉ được thay đổi một lần. Hệ thông tin kế toán cơ sở dữ liệu quan hệ sẽ lưu thông tin nhà cung ứng vào bảng Vendor.

Chủ Nhật, 18 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Hoàn thành mô hình mua hàng - chi tiền

James Perry, Richard Newmark


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


Hoàn thành mô hình mua hàng - chi tiền


Khóa chính phải được chọn cho từng thực thể, và các quan hệ phải được tạo ra bằng cách dùng khóa ngoại  và các bảng-quan-hệ.

BÀI TẬP 9.3: TẠO CÁC QUAN HỆ BẰNG VIỆC DÙNG KHÓA NGOẠI VÀ BẢNG-QUAN-HỆ

1. Bằng việc dùng các khóa chính được cung cấp cho mô hình dữ liệu của Pipefitters ở Hình 9.3, hãy tạo khóa ngoại cho các quan hệ một-nhiều.

2. Hãy thêm bảng-quan-hệ và khóa chính phức hợp cho các quan hệ nhiều-nhiều.

Hình 9.3 Qui trình mua hàng - chi tiền với các khóa chính.

Nếu các khóa ngoại và bảng-quan-hệ không khớp với Hình 9.4, hãy ôn lại phần “Hệ quản trị cơ sở dữ liệu” ở Chương 2.

Hình 9.4 Qui trình mua hàng - chi tiền với các khóa chính, khóa ngoại, và bảng-quan-hệ.

Tương tự qui trình bán hàng - thu tiền được trình bày ở Chương 8, qui trình mua hàng - chi tiền thuộc hệ thống kế toán sẽ duy trì thông tin tác nhân ngoại (nhà cung cấp) và tài nguyên (tồn kho cũng như tài khoản tiền mặt).

Thứ Bảy, 17 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Biến cố đơn mua hàng

James Perry, Richard Newmark


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


Biến cố đơn mua hàng


Qui trình mua hàng - chi tiền của Pipefitters bắt đầu bằng việc gửi đơn mua hàng đến nhà cung cấp. Một khi được nhà cung cấp đồng ý, biến cố cam kết (commitment) này cam kết rằng Pipefitters sẽ trả tiền để nhận hàng từ nhà cung cấp theo các điều khoản trong đơn mua hàng. Nhà cung cấp cũng cam kết sẽ giao hàng như đã thỏa thuận.

Khi Pipefitters đặt đơn mua hàng, họ dành riêng chỗ để nhân hàng tồn kho từ nhà cung cấp: ta có quan hệ dành riêng (reservation) giữa đơn mua hàng và tồn kho. Hơn nữa, vì nhân viên mua hàng đặt đơn mua hàng với nhà cung cấp, đơn mua hàng có quan hệ với cả nhà cung cấp lẫn nhân viên. Sau cùng, đơn mua hàng được hoàn tất bằng việc nhận hàng đã đặt từ nhà cung cấp, vì vậy quan hệ giữa đơn mua hàng Purchase Order và mua hàng Purchase (Inv. Receipt) là quan hệ hoàn tất (fulfillment). Sau khi thêm đơn mua hàng và các thành phần liên quan vào mô hình, bạn sẵn sàng chuyển mô hình ý niệm (conceptual) – mô hình dữ liệu trước khi thêm khóa ngoại và bảng quan hệ - sang mô hình logic (logical model), mô hình dữ liệu mà bạn sẽ thi triển trong Access. Cơ sở dữ liệu thật sự đôi khi được gọi là mô hình vật lý (physical model).

BÀI TẬP 9.2: THÊM BIẾN CỐ ĐƠN MUA HÀNG VÀO MÔ HÌNH DỮ LIỆU MUA HÀNG - CHI TIỀN CỦA PIPEFITTERS SUPPLY COMPANY

1. Hãy thêm đơn mua hàng vào mô hình dữ liệu mua hàng - chi tiền ở Hình 9.1 và các quan hệ thích hợp.

2. Hãy thêm lực lượng vào các quan hệ.

Hình 9.2 cho thấy mô hình dữ liệu bán hàng - thu tiền hoàn chỉnh cho Pipefitters Supply Company. Quan hệ hoàn tất Fulfillment SO-S giữa đơn mua hàng Purchase Sale Order và đợt mua Purchase (Inv. Receipt) là một-nhiều vì một đơn mua hàng sẽ có nhiều hơn một đợt mua khi nhà cung cấp thực hiện việc giao hàng từng phần, thường do một mặt hàng không còn đủ trong kho. Quan hệ dành riêng Reservation PO-I giữa đơn mua hàng Purchase Order và tồn kho Inventory là nhiều-nhiều giống như quan hệ dòng-vào Inflow P-I tồn kho Inventory vì một đơn mua hàng có thể có nhiều mặt hàng khác nhau, và một mặt hàng có thể được đặt mua nhiều lần. Cũng như biến cố mua hàng Purchase (Inv. Receipt), lực lượng cho các quan hệ tham gia với  đơn mua hàng (Purchase Order – Vendor; Purchase Order – Employee) là một-nhiều vì các đơn mua hàng chỉ có một nhà cung cấp và một nhân viên, và theo thời gian nhà cung cấp cũng như nhân viên có thể tham gia vào nhiều đơn mua hàng.

Hình 9.2 Qui trình mua hàng - chi tiền của Pipefitters với tất cả tài nguyên, biến cố, và tác nhân.

Ta đã thêm một thực thể nữa vào mô hình ở Hình 9.2 – đó là Employee Type (kiểu nhân viên). Employee Type được thêm vào để Pipefitters có thể đảm bảo rằng chỉ có nhân viên mua hàng mới mua hàng, nhân viên kho hàng mới nhận hàng, và chỉ kế toán viên mới giải ngân.

Thứ Sáu, 16 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Biến cố giải ngân

James Perry, Richard Newmark


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


Biến cố giải ngân


Hình 9.1 cho thấy một biến cố giải ngân Cash Disbursement sẽ phát sinh một dòng tiền ra Outflow vào nhà cung cấp Vendor (tác nhân ngoại), và nhân viên Employee (tác nhân nội) cũng tham gia biến cố đó. Giống như biến cố mua hàng, cả hai quan hệ tham gia đều là một-nhiều. Tương tự, các lực lượng một-nhiều cho biết một tài khoản tiền mặt Cash Account có thể tham gia vào nhiều biến cố giải ngân Cash Disbursement và một biến cố giải ngân Cash Disbursement cụ thể sẽ chỉ được rút từ một tài khoản tiền mặt Cash Account.

Hãy so sánh các mô hình dữ liệu trong Hình 9.1 và Hình 8.2. Để ý sự tương tự cũng như khác biệt giữa qui trình bán hàng - thu tiền và qui trình mua hàng - chi tiền. Như đã đề cập trước đây, khác biệt chính là hướng các dòng tài nguyên. Tài nguyên hàng tồn kho Inventory sẽ chảy vào từ biến cố mua Purchase và chảy ra từ biến cố bán Sale, trong khi tài nguyên tiền Cash Account sẽ chảy ra từ biến cố giải ngân Cash Disbursement và chảy vào từ biến cố thâu ngân Cash Receipt. Cũng vậy, qui trình mua hàng - chi tiền bao gồm các hoán đổi tài nguyên với nhà cung cấp, trong khi các hoán đổi tài nguyên trong qui trình bán hàng - thu tiền là giữa công ty và khách hàng.

Thứ Năm, 15 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Biến cố mua hàng

James Perry, Richard Newmark


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


Biến cố mua hàng


Mô hình dữ liệu ở Hình 9.1 cho thấy một biến cố mua Purchase (Inv. Receipt) sẽ phát sinh một dòng-vào Inflow đi vào tài nguyên tồn kho Inventory từ tác nhân ngoại là nhà cung cấp Vendor, và tác nhân nội nhân viên Employee cũng tham gia quan hệ. Quan hệ một-nhiều External Participation P-V giữa tác nhân nhà cung cấp Vendor và biến cố mua Purchase (Inv. Receipt) là lực lượng điển hình giữa biến cố và tác nhân ngoại; quan hệ này cho biết một nhà cung cấp cụ thể có thể tham gia nhiều đợt mua và một đợt mua có tối đa một nhà cung cấp.


Hình 9.1 Quan hệ đối ngẫu mua hàng - chi tiền với các tài nguyên và tác nhân của Pipefitters Supply Company.

Tương tự, quan hệ một-nhiều giữa tác nhân nhân viên Employee và biến cố mua Purchase (Inv. Receipt) cho biết một nhân viên cụ thể có thể tham gia nhiều đợt mua và một đợt mua chỉ gồm một nhân viên.

Quan hệ dòng-vào Inflow giữa biến cố mua Purchase (Inv. Receipt) và tài nguyên tồn kho Inventory là nhiều-nhiều vì một hàng tồn kho cụ thể (chẳng hạn, mặt hàng 1001: ống lót, dài 4-foot, đường kính ống .25-inch) có thể xuất hiện trong nhiều đợt mua, và Pipefitters có thể mua nhiều hàng tồn kho khác nhau (chẳng hạn, ba đơn vị thuộc mặt hàng 1001, hai đơn vị thuộc mặt hàng 1008, và một đơn vị thuộc mặt hàng 1019).

Thứ Tư, 14 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Mô hình dữ liệu mua hàng - chi tiền cơ bản

James Perry, Richard Newmark


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


Mô hình dữ liệu mua hàng - chi tiền cơ bản


Trong bài tập sau bạn sẽ vẽ sơ đồ qui trình mua hàng - chi tiền cơ bản của Pipefitters: các biến cố đối ngẫu tạo nên quan hệ đối ngẫu kinh tế, các tài nguyên và tác nhân liên kết từng biến cố. Các biến cố gia lượng kinh tế sẽ có quan hệ dòng-vào (inflow) với một tài nguyên và các biến cố giảm lượng kinh tế sẽ có quan hệ dòng-ra (outflow) với một tài nguyên. Nói chung các biến cố sẽ tham gia với ít nhất một tác nhân nội – tức quan hệ tham gia nội (internal participation). Các biến cố thường tham gia với duy nhất một tác nhân ngoại trong quan hệ tham gia ngoại (external participation). Mô hình dữ liệu kết quả sẽ tạo cốt lõi cho hầu hết qui trình tác nghiệp mua hàng - chi tiền.

BÀI TẬP 9.1: TẠO MÔ HÌNH DỮ LIỆU MUA HÀNG – CHI TIỀN CƠ BẢN

1. Hãy vẽ quan hệ đối ngẫu giữa các biến cố kinh tế, kể cả lực lượng.

2. Hãy thêm hình tài nguyên và tác nhân cho biến cố mua hàng cũng như các quan hệ của chúng với biến cố mua hàng.

3. Hãy thêm lực lượng vào các quan hệ với biến cố mua hàng.

4. Hãy thêm vào mô hình tài nguyên và tác nhân cho biến cố xuất quỹ cũng như các quan hệ của chúng với biến cố xuất quỹ.

5. Hãy thêm lực lượng vào các quan hệ với biến cố xuất quỹ.

Thứ Ba, 13 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Quan hệ đối ngẫu giữa các biến cố kinh tế

James Perry, Richard Newmark


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


Quan hệ đối ngẫu giữa các biến cố kinh tế


Quan hệ đối ngẫu giữa các biến cố kinh tế trong qui trình mua hàng - chi tiền là hình gương phản chiếu của quan hệ đối ngẫu bán hàng - thu tiền. Trong qui trình mua hàng - chi tiền, tồn kho inventory đi kèm biến cố gia lượng kinh tế - mua hàng; và tiền tệ đi kèm biến cố giảm lượng kinh tế - xuất quỹ. Hai biến cố này không cần phát sinh đồng thời. Khác biệt về thời điểm nhận hàng trước lúc trả tiền, theo thuật ngữ kế toán gọi là nợ phải trả (accounts payable). Tương tự nợ phải thu (accounts receivable), nợ phải trả là giá trị dẫn xuất, không được ghi nhận trực tiếp, bằng cách lấy tổng tất cả các biến cố mua trừ đi tổng tất cả các biến cố xuất quỹ liên quan. Bạn sẽ dùng truy vấn để tính nợ phải trả và các thông tin tài chính khác sau này trong chương.

Do Pipefitters đôi khi chi trả theo nhiều đợt, một đợt mua có thể có nhiều lần xuất quỹ. Vì thế, phía xuất quỹ Cash Disbursement của quan hệ đối ngẫu là M. Do một đợt xuất quỹ chỉ gắn với một biên bản bàn giao (tài liệu tạo ra trong biến cố mua Purchase / Inv. Receipt), phía mua Purchase của quan hệ là 1.

Thứ Hai, 12 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Qui trình tác nghiệp mua hàng - chi tiền của Pipefitters Supply Company

James Perry, Richard Newmark


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


Qui trình tác nghiệp mua hàng - chi tiền của Pipefitters Supply Company


Pipefitters Supply Company liên hệ nhà cung cấp để đặt đơn mua hàng. Mỗi đơn mua hàng có thể chứa nhiều mặt hàng. Đơn mua hàng chứa tên nhà cung cấp và danh sách mặt hàng mà Pipefitters muốn mua. Danh sách mặt hàng chứa số lượng từng mặt hàng và giá thực mua. Giá thực mua thường hơi khác so với giá chuẩn lưu trong bảng tồn kho inventory vì Pipefitters mua hàng từ nhiều nhà cung cấp. Pipefitters đôi khi nhận đơn đặt hàng từ khách hàng muốn có hàng sớm. Nếu cháy hàng, Pipefitters có thể mua hàng từ nhà cung cấp bán giá cao, miễn nhà cung cấp đó có thể giao hàng đúng thời hạn mà khách hàng cần.

Khi hàng cập điểm nhận hàng, nhân viên nhận hàng đếm số lượng rồi ghi nhận tên hàng kèm số lượng vào biên bản bàn giao (inventory receipt). Biên bản bàn giao còn chứa mã tham chiếu đến đơn mua hàng tương ứng. Pipefitters thường mua hàng theo phương thức FOB (free on board) destination. FOB destination nghĩa là trách nhiệm pháp lý sẽ chuyển giao khi hàng đến địa điểm bên mua, và các nguyên tắc kế toán được thừa nhận rộng rãi GAAP (Generally Accepted Accounting Principles) và các tiêu chuẩn báo cáo tài chính quốc tế IFRS (International Financial Report Standards) qui định rằng một thương vụ thường được ghi nhận khi chuyển giao trách nhiệm pháp lý.

Một kế toán viên sẽ chi tiền cho hàng đã nhận bằng việc viết một chi phiếu cho nhà cung cấp, thường trong vòng mười ngày sau khi nhận hàng. Mặc dù Pipefitters Supply Company thường chi trả hết khi có biên bản bàn giao, công ty thường giới hạn mỗi lần chi là $5,000. Khi công ty nhận một đợt hàng trị giá hơn $5,000, công ty sẽ trả trước $5,000 trong vòng mười ngày sau khi nhận hàng rồi trả phần còn lại trong mười ngày sau đó. Để dễ quản lý cơ sở dữ liệu hơn, ta sẽ giả định là Pipefitters sẽ trả cho từng hóa đơn bằng một chi phiếu riêng. Các chi trả thường được thực hiện từ tài khoản kinh doanh operating account.

Chủ Nhật, 11 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Giới thiệu

James Perry, Richard Newmark


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


Giới thiệu


Chương này mô tả qui trình tác nghiệp mua hàng - chi tiền của một hệ thông tin kế toán. Nhiều thành phần trong qui trình mua hàng - chi tiền được minh họa qua dữ liệu mẫu của Pipefitters Supply Company. Như đã đề cập ở Chương 7, ta chỉ tập trung vào các hoạt động kinh doanh của công ty. Qui trình mua hàng - chi tiền (acquisition/payment process, acquisition process, procurement process, hay purchase process) bao gồm các hoạt động liên quan đến việc mua hàng hay dịch vụ. Mặc dù tuyển dụng lao động là một dạng mua sắm, các hoạt động này thường được xem là một phần của qui trình nhân sự vì dữ liệu ghi nhận việc tiếp nhận và chi trả sức lao động rất khác so với dữ liệu ghi nhận trong các mua sắm khác. Vì thế, qui trình nhân sự sẽ được trình bày ở một chương riêng.

Trong các công ty sản xuất và kinh doanh, các hoạt động chính của qui trình mua hàng - chi tiền là đặt hàng, nhận hàng, và chi trả để được hàng tồn kho – nguyên liệu và thứ phẩm phục vụ sản xuất, hàng hóa để kinh doanh. Vì thu mua nguyên liệu không phải là mối quan tâm chính của nhiều công ty dịch vụ, qui trình mua hàng - chi tiền của họ có thể ít quan trọng hơn so với các doanh nghiệp sản xuất và kinh doanh hàng hóa. Mọi doanh nghiệp, kể cả doanh nghiệp dịch vụ, đều mua hàng và dịch vụ bằng qui trình mua hàng - chi tiền của họ để hỗ trợ mọi hoạt động kinh doanh.

Qui trình mua hàng - chi tiền trình bày ở đây là dành cho các tổ chức có nhiều phòng ban. Các công ty nhỏ hơn có thể chỉ hợp thức hóa một phần qui trình này. Qui trình mua hàng - chi tiền sẽ khởi động khi phát sinh nhu cầu mua hàng hay dịch vụ. Nhu cầu này có thể rất đa dạng, từ việc mua nguyên liệu cho sản xuất đến việc mua văn phòng phẩm cho phòng nhân sự. Khi qui trình này được hợp thức hóa, một yêu cầu mua (purchase requisition) được tạo ra dưới dạng điện tử hay in giấy. Đôi khi, yêu cầu mua được hệ thông tin doanh nghiệp tự động phát sinh. Trong một số hệ thống sản xuất, yêu cầu mua được máy tính tự động phát sinh khi tồn kho nguyên liệu thấp hơn điểm tái đặt hàng định sẵn. Chẳng hạn, trong hệ hoạch định yêu cầu nguyên liệu (materials requirement planning system – MRP system), máy tính có thể dùng tổng tiến độ sản xuất (master schedule) để phát sinh kịp thời yêu cầu nguyên liệu mà không cần con người can thiệp. Trong hệ điều khiển sản xuất đúng thời điểm (just-in-time JIT production control system), yêu cầu nguyên liệu được phát sinh thường xuyên – hàng ngày hay hàng tuần. Cho dù được phát sinh thế nào thì yêu cầu nguyên liệu cũng được gửi về phòng thu mua.

Một khi được chấp thuận, phòng thu mua dùng thông tin trong yêu cầu mua để chuẩn bị đơn mua hàng (purchase order). Nhiều hệ thống MRP và JIT trực tiếp phát sinh đơn mua hàng. Để xử lý những nhu cầu bất khả dự đoán, nhân viên thu mua thường dùng báo cáo doanh thu theo ngày, báo cáo tồn kho, nghiên cứu thị trường, và trực quan của họ để ra quyết định mua hàng.

Phòng thu mua gửi đơn mua hàng đến nhà cung cấp.  Nhà cung cấp gửi lại bản chính thức chấp thuận đơn mua hàng. Sau đó thông tin mua hàng được gửi cho phòng tiếp nhận. Thông tin số lượng thường được loại bỏ để đảm bảo nhân viên tiếp nhận đếm chính xác số hàng đã nhận. Khi hàng về, phòng tiếp nhận hoàn tất biên bản bàn giao (receiving report). Nhiều kiểm soát khác nhau được dùng để hỗ trợ phòng kế toán đảm bảo hàng đã nhận đúng là hàng đã đặt mua, và chi trả cho nhà cung cấp đúng trên số hàng đã nhận.

Phòng kế toán soạn ủy nhiệm chi (chi phiếu là một giấy ủy nhiệm chi) và thông tin kèm theo (chẳng hạn đơn mua hàng, báo cáo nhận hàng, và hóa đơn từ nhà cung cấp) ứng với hàng đã nhận. Thông tin này được chuyển cho thủ quỹ. Thủ quỹ chi trả và chỉ rõ trên thông tin kèm theo là hàng đã được chi trả.

Ta sẽ tạo qui trình tác nghiệp mua hàng - chi tiền cho Pipefitters Supply Company. Ta sẽ dùng một số bảng và các đối tượng đã tạo ở Chương 8. Cơ sở dữ liệu Chapter09.accdb chứa mọi đối tượng cần thiết. Ngoài ra, Ch09.xlsx còn chứa dữ liệu dùng cho các bảng được tạo trong chương này.

Thứ Bảy, 10 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 9 - Mục tiêu

James Perry, Richard Newmark


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


Mục tiêu


Các hoạt động mua hàng - chi tiền của công ty bao gồm việc đặt hàng với nhà cung cấp, nhận hàng (biến cố mua hàng), và trả tiền nhà cung cấp. Thông tin về các biến cố được ghi nhận để ra quyết định, báo cáo tài chính, và duy trì các bản ghi tài nguyên can dự vào các biến cố (tồn kho và tiền tệ) cũng như các tác nhân liên quan (nhà cung cấp và nhân viên). Trong chương, bạn sẽ học cách dùng Microsoft Access để thiết kế bảng, truy vấn, forms, và báo cáo để giúp bạn:


  • Tạo mô hình qui trình tác nghiệp mua hàng - chi tiền.
  • Tạo cơ sở dữ liệu Access dựa trên mô hình qui trình tác nghiệp.
  • Tạo các kiểm soát để áp đặt qui tắc tác nghiệp.
  • Tạo và bảo trì các bản ghi nhà cung cấp.
  • Tạo và bảo trì các bản ghi tồn kho thành phẩm.
  • Ghi nhận đơn mua hàng.
  • Ghi nhận thông tin hóa đơn mua hàng / tồn kho.
  • Ghi nhận việc chi trả nhà cung cấp.
  • Phát sinh thông tin báo cáo tài chính.
  • Phát sinh thông tin phục vụ nội bộ.

Thứ Sáu, 9 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 6 - Tổng kết

James Perry, Richard Newmark


Chương 6
Tạo và dùng báo cáo


Tổng kết


Bạn đã lĩnh hội rất nhiều kiến thức về báo cáo Access ở chương này. Bạn đã tạo báo cáo ở góc nhìn Layout, thêm biểu tượng và tiêu đề báo cáo, cũng như bổ sung chức năng sắp xếp và gom nhóm để tổng hợp thông tin trong báo cáo. Bằng cách áp dụng định dạng có điều kiện vào trường báo cáo, Access đã làm nổi bật các giá trị khác biệt và bất thường trong trường. Dùng Report Wizard sẽ tăng tốc việc tạo báo cáo nhưng đồng thời hạn chế khả năng kiểm soát nội dung cũng như thiết kế báo cáo. Bạn cần nhớ các hướng dẫn thiết kế báo cáo tốt, bao gồm việc dùng báo cáo giấy hiện thời làm mẫu cho báo cáo điện tử, đảm bảo thứ tự và vị trí các trường báo cáo cho hợp lý và dễ hiểu, cũng như dùng chức năng sắp xếp và gom nhóm. Tóm lại, cần làm báo cáo dễ dùng và dễ hiểu.

Tạo báo cáo từ đầu ở góc nhìn Design sẽ khó hơn, nhưng cho bạn sự linh hoạt tối đa cũng như nhiều quyền kiểm soát về thiết kế báo cáo, cách bài trí, và vị trí thành phần điều khiển. Việc thêm tính toán vào báo cáo được thực hiện dễ nhất ở góc nhìn Design. Thành phần điều khiển tính toán là ô văn bản trong đó thuộc tính Control Source chứa biểu thức để tính toán và hiển thị kết quả dựa trên các giá trị thành phần điều khiển khác trong báo cáo. Thường thì các thành phần điều khiển tính toán được đặt ở các phần chân footers gồm chân nhóm group footers, chân trang page footers, hay chân báo cáo report footers. Các báo cáo nhiều bảng sẽ khai thác quan hệ tự nhiên giữa các bảng chẳng hạn khách hàng và hóa đơn hay nhân viên và bán hàng. Báo cáo cũng có thể được tạo từ câu truy vấn. Khi giá trị phải được tính toán từ các trường khác, bạn có thể tạo truy vấn chứa tính toán đó rồi tạo báo cáo dựa trên truy vấn. Các phương án xuất báo cáo bao gồm in giấy, xuất báo cáo sang dạng RTF để Microsoft Word có thể mở và hiển thị, tạo báo cáo dạng PDF hay XPS, hoặc tạo nhãn thư tín theo mẫu chẳng hạn Avery.

Thứ Năm, 8 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 6 - Tạo nhãn gửi thư

James Perry, Richard Newmark


Chương 6
Tạo và dùng báo cáo


Tạo nhãn gửi thư


Bên cạnh nhiều báo cáo bạn đã thấy cho đến nay, Access còn cung cấp báo cáo chuyên tạo nhãn gửi thư. Nhãn gửi thư đặc biệt hữu ích khi bạn cần gửi thư nhắc, thư mời, …, đến khách hàng, nhà cung ứng, và những người có địa chỉ lưu trong Access. Chẳng hạn, bạn có thể muốn thực hiện chương trình gửi thư đến các khách hàng ở một bang hay thành phố nào đó để khuyến khích họ mua hàng với phiếu giảm giá đặc biệt.

Access cung cấp Label Wizard để hướng dẫn bạn đi qua quá trình tạo nhãn. Bạn chỉ việc cung cấp nguồn dữ liệu – bảng hay câu truy vấn – nhằm cung cấp dữ liệu cho Data Wizard. Nếu bạn dùng bảng làm nguồn dữ liệu, wizard cho phép bạn chọn các trường bạn muốn trong nhãn và vị trí của chúng. Ngoài ra, bạn có thể qui định tiêu chí sắp xếp để tạo nhãn theo một thứ tự cụ thể. Chẳng hạn, bạn có thể muốn sắp nhãn địa chỉ theo thứ tự zip code rồi theo tên họ. Việc sắp theo zip code có thể tiết kiệm chi phí gửi thư nhờ việc nhóm các thư có cùng zip code rồi dùng dịch vụ gửi sỉ. Tuy nhiên, bạn không thể lọc dữ liệu bằng Label Wizard. Chẳng hạn, Label Wizard không có bước hỏi bạn có muốn tạo nhãn cho các địa chỉ đã chọn trong một bang hay một thành phố cụ thể. Nếu bạn muốn giới hạn nhãn trong một tập con của bảng, bạn có hai lựa chọn: (1) Tạo truy vấn chứa các trường xuất hiện trên nhãn và tiêu chí lọc, hay (2) Tạo báo cáo nhãn bằng Label Wizard rồi sửa truy vấn trong báo cáo để có phần lọc. Cả hai cách đều đáp ứng mục tiêu, nhưng cách thứ hai hơi phức tạp hơn.

BÀI TẬP 6.35: TẠO NHÃN GỬI THƯ

1. Trong Navigation Pane, kích tblCustomer để làm nổi bật tên bảng. (Bạn không cần mở bảng.)

2. Kích Create tab rồi kích Labels trong nhóm Reports. Access sẽ thi hành Label Wizard.

3. Kích Avery trong ô danh sách Filter by manuacturer, nếu cần, rồi định vị và kích 5660 trong danh sách Product number. Lựa chọn đó sẽ tạo 10 dòng mỗi dòng ba nhãn hay 30 nhãn mỗi trang (xem Hình 6.32).

Hình 6.32 Chọn nhãn theo nhà sản xuất và mã số.

4. Kích Next. Access sẽ cần bạn cung cấp thông tin về font.

5. Kích Next để hiển thị bài trí của nhãn. Các trường khả dụng xuất hiện ở khung bên trái và cấu trúc nhãn đang phát triển xuất hiện ở bên phải.

6. Kích kép CustFirstName, nhấn Spacebar, kích kép CustLastName rồi nhấn Enter để tạo dòng nhãn đầu tiên.

7. Kích kép CustAddress, nhấn Enter, kích kép CustCity, gõ dấu phẩy và một khoảng cách, kích kép CustState, nhấn Spacebar hai lần, rồi kích kép CustZip. Nhãn của bạn cần khớp với Hình 6.33.

Hình 6.33 Nhãn mẫu.

8. Kích Next để hiển thị các tùy chọn sắp xếp. Kích Next để đến bước tiếp.

9. Gõ MyCustomerLabels để đặt tên báo cáo. Kích Finish để hoàn tất báo cáo. (Kích OK nếu hộp thoại xuất hiện cho biết không đủ chiều ngang.) Access sẽ hiển thị nhãn ở góc nhìn Print Preview. Cứ để báo cáo mở cho bài tập kế để thêm phần lọc.

Mặc dù báo cáo nhãn là tốt khi dùng kiểu nhãn Avery 5660, nhưng nó chứa mọi khách hàng. Bạn có thể cung cấp tiêu chí lọc bằng cách chuyển sang góc nhìn Design rồi sửa thuộc tính Record Source của báo cáo.

BÀI TẬP 6.36: LỌC NHÃN BẰNG CÂU TRUY VẤN ĐẰNG SAU BÁO CÁO

1. Kích phải MyCustomerLabels tab, kích Design View, rồi nhấn Alt+Enter để mở Property Sheet.

2. Kích Data tab trong khung Property Sheet, kích nút trong giá trị thuộc tính Record Source, rồi kích Yes khi xuất hiện hộp thoại hỏi bạn có muốn thi hành trình tạo truy vấn trên bảng không.

3. Kích kép dấu hoa thị (*) trong khung tblCustomer để đặt tất cả các trường vào câu truy vấn. Kích kép CustState để đặt trường đó vào dòng Field ô thứ hai trong lưới truy vấn.

4. Kích ô Show bên dưới cột CustState để xóa nó. Gõ như sau vào ô tiêu chí Criteria bên dưới cột CustState: [Type a state abbreviation] (hãy gõ tên bang tắt) rồi nhấn Enter. Điều này cho phép người dùng qui định bộ lọc bang khi phát sinh báo cáo – có tính tức thì.

5. Kích kép CustZip để đặt trường đó vào dòng Field ô thứ ba trong lưới truy vấn. Kích ô Show bên dưới cột CustZip để xóa nó. Kích ô Sort bên dưới CustZip rồi kích Ascending.

6. Kích Close trong nhóm Close thuộc tab ngữ cảnh Design để đóng truy vấn. Kích Yes khi xuất hiện hộp thoại hỏi bạn có muốn lưu các thay đổi trên lệnh SQL không.

7. Kích Save trong thanh công cụ truy xuất nhanh Quick Access Toolbar để lưu thiết kế báo cáo nhãn.

8. Kích phải MyCustomerLabels tab rồi chọn Print Preview. Nếu hộp thoại xuất hiện cho biết dữ liệu có thể không được hiển thị đầy đủ, kích OK để lờ đi.

9. Hộp thoại Enter Parameter xuất hiện câu Type a state abbreviation. Đây là bộ lọc tức thời nhằm giới hạn các nhãn liên quan đến tên bang viết tắt mà bạn gõ vào. Gõ pa (viết tắt của Pennsylvania) rồi kích OK. Access sẽ hiển thị các nhãn, sắp theo zip code, thuộc bang Pennsylvania ở góc nhìn Print Preview. Xem Hình 6.34.

Hình 6.34 Góc nhìn Print Preview của các nhãn khách hàng thuộc bang Pennsylvania.

10. Kích phải tab báo cáo rồi kích Close All để đóng báo cáo và mọi cửa sổ đang mở khác.

11. Đóng Access.

Thứ Tư, 7 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 6 - Xuất ra E-mail

James Perry, Richard Newmark


Chương 6
Tạo và dùng báo cáo


Xuất ra E-mail


Khi bạn phải gửi báo cáo đến phòng ban khác hay gửi ra nước ngoài, bạn có thể e-mail nó. Sau đây là tổng kết các bước để gửi một báo cáo Access bằng e-mail:


  • Kích tên báo cáo trong Navigation Pane mà bạn muốn e-mail.
  • Kích External Data tab, kích E-mail trong Export, rồi chọn một trong những định dạng khả dụng trong hộp thoại Send Object As. Các lựa chọn là Excel, HTML, Excel 5.0/95, PDF Format, Rich Text Format, Snapshot Format, Text Files, và XPS Format. Kích OK để chuyển báo cáo sang định dạng đã chọn.
  • Snapshot Format là dạng cho phép người nhận xem báo cáo mà không cần có Microsoft Access. Microsoft cung cấp chương trình Snapshot Viewer trực tuyến. Liên kết để tải chương trình là http://support.microsoft.com/kb/175274
  • Microsoft có thể hiển thị hộp thoại với các tùy chọn khác ứng với lựa chọn mà bạn đã định. Nếu vậy, hãy chọn các mục thích hợp.
  • Sau khi Access chuyển đổi báo cáo sang dạng đã chọn, nó sẽ kích hoạt chương trình e-mail. Báo cáo sẽ là file đính kèm e-mail. Bạn có thể viết thêm nội dung nếu muốn trước khi gửi đến người nhận.
  • Cuối cùng là gửi đi.


Dĩ nhiên bạn có thể tạo PDF hay XPS file trên máy tính của bạn rồi tự mình đính nó vào e-mail.

Thứ Ba, 6 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 6 - Phát sinh báo cáo dạng PDF hay XPS

James Perry, Richard Newmark


Chương 6
Tạo và dùng báo cáo


Phát sinh báo cáo dạng PDF hay XPS


Bạn không thể giả định rằng ai nhận báo cáo từ bạn đều có Access, Word hay bất kỳ sản phẩm Microsoft nào có thể xem báo cáo. Để khả dụng rộng rãi, báo cáo phải ở dạng ai cũng có thể mở - ở dạng dễ dàng hiển thị. Một định dạng được thừa nhận rộng rãi là Portable Document Format (hay PDF). Một phương án khác, ít được thừa nhận rộng rãi hơn, là XPS. Files có định dạng PDF duy trì được độ chính xác của phần mềm tạo chúng. Các PDF files còn có thể mở và hiển thị dùng sản phẩm miễn phí Acrobat Reader thông dụng trên Internet. Các files có định dạng XPS là chuẩn chia sẻ files của Microsoft, bảo toàn được định dạng và bài trí báo cáo. Để hiển thị tài liệu XPS, bạn cần Internet Explorer 7 hay mới hơn. Vì PDF là chuẩn được thừa nhận rộng rãi với các tài liệu cần độ chính xác cao, bạn nên dùng định dạng đó khi phải chia sẻ tài liệu với người khác. Bạn có thể tin rằng tài liệu PDF có khả năng duy trì mọi chi tiết của báo cáo Access. Và hầu như mọi người đều có Acrobat Reader trên máy tính của họ.

Giả sử Access của bạn có phần hỗ trợ cần thiết, hãy tạo một báo cáo dạng PDF. Nếu phần mềm Access của bạn không có hỗ trợ cần thiết, hoặc bạn cài thêm hoặc bỏ qua bài tập kế.

BÀI TẬP 6.34: TẠO BÁO CÁO DẠNG PDF

1. Kích kép MyInvoiceReportVer4 trong Navigation Pane để mở nó ở góc nhìn Report.

2. Kích External Data tab rồi kích PDF or XPS trong nhóm Export.

3. Chuyển đến thư mục folder bạn muốn lưu báo cáo. Gõ MyPdfReport vào ô danh sách File name.

4. Nếu cần, kích mũi tên ô danh sách Save as type rồi chọn PDF.

5. Kích nút radio Standard (publishing online and printing).

6. Kích nút Options, kích nút radio Pages, và đảm bảo là các thành phần điều khiển From:To: chứa số 1 để xuất duy nhất một trang. Kích OK.

7. Kích Publish. Access sẽ xuất file dạng PDF vào thư mục folder đã định và mở báo cáo vừa tạo trong Acrobat Reader.

8. Đóng Acrobat Reader và đóng MyInvoiceReportVer4.

Thứ Hai, 5 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 6 - Xuất báo cáo ra Word

James Perry, Richard Newmark


Chương 6
Tạo và dùng báo cáo


Xuất báo cáo ra Word


Nếu bạn gửi bản sao báo cáo điện tử đến một người không có Microsoft Access, thì bạn có thể xuất báo cáo ra dạng Rich Text Format (rtf). Báo cáo dạng rtf có thể được mở bằng nhiều phần mềm và mọi phiên bản Microsoft Word. Bài tập kế sẽ phát sinh một báo cáo dạng rtf từ MyEmployeeReport bạn đã tạo trước đây trong chương.

BÀI TẬP 6.33: PHÁT SINH BÁO CÁO DẠNG RTF

1. Kích phải MyEmployeeReport trong nhóm Reports thuộc Navigation Pane rồi kích Layout View trong pop-up menu.

2. Kích External Data tab, kích nút More trong nhóm Export, rồi kích Word. Access sẽ mở hộp thoại Export - RTF File.

3. Kích nút Browse, nếu cần, để chuyển đến thư mục folder bạn muốn lưu báo cáo dạng rtf. Gõ MyRtfReport vào ô File name. Kích Save để lưu báo cáo với tên MyRtfReport.rtf. Access sẽ trở về hộp thoại Export - RTF File.

4. Kích OK.

5. Khi bước Save Export Steps xuất hiện, kích Close. Một cách khác, bạn có thể kích ô Save Export Steps để sau này bạn có thể lặp lại quá trình phát sinh báo cáo mà không cần dùng wizard.

6. Đóng báo cáo bằng cách kích phải Employees by Division tab rồi kích Close trong pop-up menu.

Access sẽ lưu báo cáo ở dạng rtf trong thư mục folder đã định trên máy tính của bạn. Bạn có thể mở báo cáo rtf bên ngoài Access. Bài tập Thử nghiệm kế sẽ chỉ bạn cách mở báo cáo rtf trong Word.

THỬ NGHIỆM

Hãy tối tiểu minimize Access. Mở Windows Explorer rồi chuyển đến thư mục folder chứa báo cáo MyRtfReport.rtf. Kích kép tên file MyRtfReport.rtf. Word mở lên, chuyển dạng rtf sang dạng Word, rồi hiển thị báo cáo ở góc nhìn Print Layout (xem Hình 6.31). Đóng Word mà không lưu. Đóng Windows Explorer.

Hình 6.31 Mở báo cáo dạng rtf trong Word.

Chủ Nhật, 4 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 6 - In báo cáo ra giấy

James Perry, Richard Newmark


Chương 6
Tạo và dùng báo cáo


In báo cáo ra giấy


Tạo một bản in báo cáo là chọn lựa thường gặp. Chẳng hạn, báo cáo in giấy được yêu cầu khi bạn cần thảo luận việc phát triển sản phẩm với một nhóm lãnh đạo và muốn tham khảo dữ liệu trong báo cáo. Việc in báo cáo thì dễ. Sau đây là các bước:


  • Kích File tab, kích Print tab, rồi kích Print Preview để kiểm tra các thiết đặt.
  • Trong nhóm Page Layout, đặt hướng và các đặc trưng Page Setup.
  • Kích nút Print trong nhóm Print thuộc tab ngữ cảnh Print Preview.
  • Chọn máy in từ danh sách.
  • Trong khung Print Range, kích nút radio All để in tất cả các trang hay kích nút radio Pages, gõ các giá trị số vào From:To:, rồi kích OK.


Bạn có thể in báo cáo mà không cần xem trước, nhưng bạn nên xem trước để đảm bảo dữ liệu nằm hoàn toàn trong trang. Ở góc nhìn Print Preview, đảm bảo kích nút trang cuối Last Page để xem tổng số trang trong báo cáo. Bạn có thể vô cùng ngạc nhiên lúc in 500 trang trong khi nghĩ báo cáo chỉ dài 5 trang!

Phát triển HTTT kế toán bằng MS Access - Chương 6 - Xuất báo cáo

James Perry, Richard Newmark


Chương 6
Tạo và dùng báo cáo


Xuất báo cáo


Access đáp ứng nhu cầu người đọc báo cáo để có thể xem báo cáo qua Internet cũng như in ra giấy. Bạn có thể gửi báo cáo qua email, in ra giấy, xuất ra Microsoft Word, lưu ở dạng PDF hay XPS. Ta sẽ xét từng phương án này ở phần kế.

Thứ Bảy, 3 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 6 - Thêm nhãn và đồ họa

James Perry, Richard Newmark


Chương 6
Tạo và dùng báo cáo


Thêm nhãn và đồ họa


Báo cáo ở Hình 6.21 có hai nhãn, một vài đồ họa đơn giản, và một dấu sang trang. Nhãn thứ nhất là từ Invoice và nhãn thứ hai là Coffee Merchant sau đó là địa chỉ công ty. Đồ họa là hai đường ngang trước và sau các dòng chi tiết cùng hình chữ nhật bao tên và địa chỉ khách hàng. Việc thêm nhãn và đồ họa có thể làm đẹp hóa đơn mà không quá lố. Hãy bắt đầu bằng việc thêm nhãn vào Page Header.

BÀI TẬP 6.31: THÊM NHÃN VÀO PAGE HEADER

1. Kích phải MyInvoiceReportVer3 trong Navigation Pane rồi kích Design View.

2. Tăng chiều cao vùng Page Header bằng cách kéo dải InvoiceID Header xuống khoảng một inch.

3. Kích tab ngữ cảnh Design, nếu cần rồi kích thành phần điều khiển Label trong nhóm Controls thuộc tab ngữ cảnh Design. Kích góc trái trên trong vùng Page Header để định vị nhãn. Sau đó gõ Invoice rồi nhấn Enter. Thành phần điều khiển nhãn chứa từ Invoice và đang được chọn.

4. Kích tab ngữ cảnh Format, kích ô danh sách Font Size trong nhóm Font, gõ 48 rồi nhấn Enter. Nhãn dường như biến mất. Di chuột đến vị trí định cỡ góc phải dưới của nhãn. Khi nó chuyển thành mũi tên hai đầu hình dấu huyền thì kích kép chuột để mở rộng khung nhãn.

5. Lặp lại Bước 3, đặt nhãn vào góc phải trên của vùng Page Header. Gõ nội dung nhãn sau. Chú thích quan trọng: Nhấn Ctrl+Enter để chuyển sang dòng mới bên trong nhãn.

The Coffee Merchant
5998 Alcala Park
San Diego, CA 92110

6. Nhấn Enter để chọn khung nhãn.

7. Kích tab ngữ cảnh Format, kích nút Align Right trong nhóm Font. Kích ô danh sách Font Size, gõ 14, rồi nhấn Enter để hoàn tất việc thiết đặt. Định cỡ lại nhãn bằng cách kéo các vị trí định cỡ của nó cho giống với nhãn công ty ở Hình 6.21.

8. Kéo qua ba trường khách hàng CustomerName, CustAddress, và CityStateZip. Kích và kéo để định vị chúng ở bên phải (nếu cần) vùng InvoiceID Header. Xem Hình 6.28 để tham khảo vị trí hiện thời của các thành phần điều khiển.

Hình 6.28 Vị trí nhãn của báo cáo.

Đồ họa trong hóa đơn trình bày ở Hình 6.21 là hai đường thẳng và một hình chữ nhật. Ta dễ thêm các đồ họa này. Để đường thẳng xuất hiện trước các trường chi tiết đầu tiên, nó phải được đặt trong đầu đề ngay dưới các nhãn cột (Invntory ID, Qty, Item #, …) và ngay trên dải Detail. Tương tự, bạn đặt đường thẳng xuất hiện bên dưới các mục chi tiết cuối cùng (xem Hình 6.21) ngay dưới dải InvoiceID Footer và trước thành phần điều khiển tính toán tổng thành phần.

BÀI TẬP 6.32: THÊM ĐƯỜNG THẲNG VÀ HÌNH CHỮ NHẬT

1. Kích và kéo cạnh trên của dải Header xuống dưới đủ để chứa đường thẳng giữa nó và các nhãn trong InvoiceID Header.

2. Kích nút More trong nhóm Controls thuộc tab ngữ cảnh Design để mở danh sách thành phần điều khiển. Kích nút Line trong nhóm Controls thuộc tab ngữ cảnh Design (báo cáo vẫn ở góc nhìn Design).

3. Nhấn và giữ phím Shift rồi kéo chuột từ cạnh trái của của dải Detail, nhưng ở ngay trên nó, sang phải – vừa quá nhãn Extended. Nhả chuột và phím Shift. (Việc giữ phím Shift trong lúc kéo thành phần điều khiển đường thẳng sẽ giữ đường thẳng luôn nằm ngang.) Dùng các phím mũi tên lên xuống trái phải để điều chỉnh đường thẳng từng khoảng nhỏ.

4. Nhấn Ctrl+C để sao cho đường thẳng đang chọn, kích dải InvoiceID Footer (nó sẽ tô đen), rồi nhấn Ctrl+V để dán một đường thẳng mới vào InvoiceID Footer. Dùng các phím mũi tên để điều chỉnh vị trí của đường thẳng.

5. Với đường thẳng vẫn đang được chọn, nếu cần, nhấn phím mũi tên lên để di chuyển đường thẳng sát cạnh dưới của InvoiceID Footer. Nếu lỡ đặt nó vào vùng Detail thì chỉ việc dùng phím mũi tên xuống để chuyển ngược xuống.

6. Kích nút More trong nhóm Controls thuộc tab ngữ cảnh Design. Kích Rectangle trong nhóm Controls. Đừng kích Option Group mà có một nhãn nhỏ trên đỉnh hình chữ nhật. Bao thông tin khách hàng trong InvoiceID Header bằng cách kích góc trái trên của thông tin khách hàng rồi kéo đến góc phải dưới. Nhả chuột khi hình chữ nhật bao toàn bộ thông tin khách hàng.

7. Để ý là hình chữ nhật sẽ che mất các trường. Kích phải bên trong hình chữ nhật, trỏ đến Position trong pop-up menu, rồi kích Send to Back. Một cách khác, bạn có thể kích Fill/Back Color trong pop-up menu rồi kích Transparent trong bảng màu (xem Hình 6.29).

Hình 6.29 Làm hình chữ nhật trở nên trong suốt.

8. Kích File tab, kích Save As, kích kép Save Object As, gõ MyInvoiceReportVer4 vào ô văn bản Save As, kích OK, rồi kích Home tab.

Hãy duyệt lại đồ họa và nhãn. Print Preview là cách tốt nhất để xem đồ họa và nhãn vừa thêm.

THỬ NGHIỆM

Kích phải MyInvoiceReportVer4 tab rồi kích Print Preview. Access sẽ hiển thị báo cáo hóa đơn giống như khi in ra giấy (xem Hình 6.30). Kích phải MyInvoiceReportVer4 tab rồi kích Close All để đóng nó và mọi cửa sổ khác.

Hình 6.30 Duyệt trước báo cáo hóa đơn (chưa hoàn tất).

Để ý là báo cáo hiển thị nhiều hóa đơn trên một trang. Hóa đơn của từng khách hàng cần ở một trang riêng để dễ dàng gửi đi. Đó là bài tập cho bạn.

Thứ Sáu, 2 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 6 - Thêm các thành phần điều khiển tính toán

James Perry, Richard Newmark


Chương 6
Tạo và dùng báo cáo


Thêm các thành phần điều khiển tính toán


So sánh báo cáo với Hình 6.21, bạn thấy rằng hóa đơn thiếu các giá trị thành tiền, thuế doanh thu, và tổng thành tiền. Đó là các thành phần điều khiển tính toán, bạn sẽ thêm chúng vào báo cáo ở góc nhìn Design. Thành phần điều khiển tính toán (calculated controls) là thành phần điều khiển chứa biểu thức trỏ đến các thành phần điều khiển bị ràng buộc, hằng số, và hàm Access. Các biểu thức sẽ tiến hành tính toán vào thời điểm phát sinh báo cáo, thành phần điều khiển tính toán là ô văn bản chứa biểu thức bạn gõ vào thuộc tính Control Source. Ô văn bản là một trong nhiều kiểu thành phần điều khiển trong nhóm Controls ở góc nhìn Design thuộc tab ngữ cảnh Design. Ta sẽ thêm các thành phần điều khiển tính toán cần thiết ở phần kế.

Biểu thức chứa các toán tử số học, các hằng số hay ký tự, các tên trường bảng, và các đối tượng báo cáo nhằm tạo nên thành phần điều khiển tính toán và bảo Access cách tính và hiển thị kết quả. Chẳng hạn, truy vấn qryInvoiceReport, nhằm cung cấp thông tin cho báo cáo, chứa một số biểu thức. Trong đó có biểu thức tính tích các trường Quantity, UnitPrice, và Discount. Biểu thức đó được đặt vào hàm có sẵn Round, nhằm làm tròn kết quả về hai vị trí thập phân. Biểu thức đó như sau:

Round([tblInvoiceLine]![Quantity]* [tblInvoiceLine]![UnitPrice]* (1-[tblInvoiceLine]![Discount]),2)

Bạn có thể tạo thành phần điều khiển tính toán, hay biểu thức, trong forms và báo cáo. Chẳng hạn, tổng từng phần Subtotal, thuế doanh thu Sales Tax, phí vận chuyển Shipping, và tổng Total ở Hình 6.21 là các trường tính toán. Chúng không phải là giá trị lưu trong bảng, vì điều đó vi phạm qui tắc chuẩn hóa và nhanh chóng đưa đến tình trạng dữ liệu không nhất quán. Vì bốn trường đều được tính toán, các giá trị của chúng thay đổi theo từng hóa đơn. Report Wizard sẽ tạo trường báo cáo tổng từng phần Subtotal trong InvoiceID Footer nếu bạn kích nút Summary Options rồi đánh dấu ô Sum bên dưới cột Extended. Tuy nhiên, ta sẽ không theo cách đó. Thay vào đó, bạn sẽ tạo thành phần điều khiển tính toán Subtotal còn thiếu. Nó sẽ tính tổng các trường thành tiền cho từng hóa đơn. Sau này, bạn sẽ tạo các thành phần điều khiển tính toán khác gồm Sales Tax, Shipping, và Total.

Biểu thức trong thuộc tính Control Source của thành phần điều khiển sẽ trỏ đến thành phần điều khiển báo cáo tổng thành phần bạn tạo để tính tổng thành tiền. Trong bài tập kế bạn sẽ tạo thành phần điều khiển đó, bạn sẽ đổi tên nó là ctlSubtotal. Tiền tố ctrl giúp bạn nhớ nguồn giá trị là một thành phần điều khiển báo cáo. Việc gán tên đối tượng chẳng hạn ctlSubtotal hay ctlSalesTax thực hiện hai điều quan trọng. Thứ nhất, tên cho biết ý nghĩa của trường  bạn tạo trong tài liệu thiết kế (báo cáo hay form). Thứ hai, tên sẽ gợi nhớ khi bạn tạo các biểu thức tính toán khác.

Bài tập kế sẽ hướng dẫn từng bước việc tạo thành phần điều khiển tính toán ctlSubtotal. Nó xuất hiện ngay bên dưới cột Extended trong InvoiceID Footer. Nó không thể xuất hiện trong phần Detail vì đầu tiên Access phải hiển thị toàn bộ các dòng hóa đơn trong một hóa đơn trước khi có thể tổng kết chúng. Vì thế, chân nhóm là nơi lý tưởng cho tổng thành phần subtotal và các tính toán khác trên nhóm các bản ghi liên quan trong một báo cáo. Nhưng đầu tiên, bạn cần tạo nhiều khoảng không hơn trong InvoiceID Footer để nó có thể chứa nhiều trường hơn.

BÀI TẬP 6.29 TẠO THÀNH PHẦN ĐIỀU KHIỂN TÍNH TOÁN TỔNG THÀNH PHẦN SUBTOTAL

1. Kích phải MyInvoiceReportVer2 trong Navigation Pane; kích Design View trong pop-up menu.

2. Di chuột đến cạnh trên của Page Footer. Khi con trỏ chuyển thành mũi tên hai đầu, kéo cạnh trên của Page Footer xuống dưới khoảng một inch. Hành động này sẽ tạo khoảng không cho các thành phần điều khiển tính toán mà bạn sẽ thêm vào.

3. Kích tab ngữ cảnh Design, nếu cần. Kích Group & Sort trong nhóm Grouping & Totals để đóng khung Group, Sort, and Total. Hành động này sẽ làm thoáng màn hình.

4. Kích Text Box trong nhóm Controls. Đó là biểu tượng “ab|” trong nhóm Controls. (di con trỏ chuột lên đó vài giây, gợi ý Text Box sẽ xuất hiện.)

5. Di (không phải kéo) con trỏ chữ thập đến vị trí trong InvoiceID Footer ngay bên dưới thành phần điều khiển bị ràng buộc Extended trong dải Detail. Kích chuột để đặt nhãn và ô văn bản trống vào InvoiceID Footer (xem Hình 6.25).

Hình 6.25 Đặt ô văn bản vào chân nhóm.

6. Kích Property Sheet trong nhóm Tools thuộc tab ngữ cảnh Design để hiển thị Property Sheet của thành phần điều khiển ô văn bản.

7. Kích Other tab trong Property Sheet, kích thuộc tính Name để làm nổi bật giá trị được gán cho nó, gõ ctlSubtotal, rồi nhấn Enter để đặt lại tên cho thành phần điều khiển ô văn bản.

8. Kích Format tab trong khung Property Sheet, kích thuộc tính Format, kích mũi tên ô danh sách thuộc tính, rồi kích Currency từ danh sách (xem Hình 6.26).

Hình 6.26 Định dạng một thành phần điều khiển.

9. Kích Data tab trong Property Sheet.

10. Kích ô văn bản Control Source, rồi kích nút Build xuất hiện bên phải thuộc tính Control Source. (Nút Build có dấu ba chấm.) Hộp thoại tạo biểu thức Expression Builder xuất hiện.

11. Trong hộp thoại Expression Builder, gõ =SUM([Extended]) rồi kích OK để đóng hộp thoại. Đảm bảo rằng tên trường được bao bằng cặp ngoặc vuông rồi được bao bằng cặp ngoặc tròn.

12. Kích, kích lần nữa, thành phần điều khiển nhãn bên trái thành phần điều khiển tính toán để chọn toàn bộ văn bản hiện thời của nó, gõ Subtotal, rồi nhấn Enter.

13. Kích nhãn để khử việc chọn nó (nếu cần).

14. Kích Format tab, kích thuộc tính Text Align, kích mũi tên ô danh sách của nó để hiển thị danh sách lựa chọn, rồi kích Right. Kích bên ngoài nhãn để khử việc chọn nó.

15. Đóng Property Sheet.

Bạn rất có thể muốn xem liệu thành phần điều khiển vừa thêm có hoạt động và hiển thị tốt không. Bài tập nhỏ kế sẽ sửa vài chi tiết cuối cùng trên thành phần điều khiển và nhãn của nó.

BÀI TẬP 6.30: SỬA VÀI CHI TIẾT NHỎ TRÊN THÀNH PHẦN ĐIỀU KHIỂN VÀ NHÃN CỦA NÓ

1. Kích phải MyInvoiceReportVer2 tab rồi kích Layout View.

2. Xét vị trí và kích cỡ của thành phần điều khiển tính toán và nhãn của nó. Điều chỉnh chiều dài nhãn bằng cách kéo biên trái của nó, nếu cần.

3. Nếu cần, điều chỉnh chiều dài của bản thân thành phần điều khiển tính toán để nó không đè lên nhãn.

4. Nếu cần, kích thành phần điều khiển tính toán rồi dùng các phím mũi tên để di chuyển từng bước nhỏ sao cho thẳng hàng với giá thành Extended cuối cùng – 176.03 trong trường hợp này. Tổng giá trị phải là $637.59, khớp giá trị trong Hình 6.27.

Hình 6.27 Báo cáo với thành phần điều khiển tính toán hoàn chỉnh.

5. Lưu báo cáo dưới tên mới: Kích File tab, kích Save As, kích kép Save Object As, gõ MyInvoiceReportVer3 vào ô văn bản Save As, rồi kích OK. Access sẽ lưu báo cáo và đóng hộp thoại.

Thủ tục thêm các thành phần điều khiển thuế doanh thu, phí vận chuyển, và tổng thành tiền sẽ tương tự các bước trên. Đây là bài tập cho bạn.

Thứ Năm, 1 tháng 9, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 6 - Lưu báo cáo dưới tên mới

James Perry, Richard Newmark


Chương 6
Tạo và dùng báo cáo


Lưu báo cáo dưới tên mới


Nếu bạn muốn lưu từng giai đoạn sửa báo cáo hóa đơn, bạn phải lưu thay đổi kể từ lần lưu báo cáo trước bằng việc dùng tên mới. Bạn chỉ việc kích File tab để mở góc nhìn hậu trường Backstage, kích Save As tab, kích Save Object As, kích nút Save As, rồi tiếp tục các bước để lưu nó dưới một tên mới.

BÀI TẬP 6.28: LƯU BÁO CÁO VỚI TÊN MỚI

1. Kích File tab để mở góc nhìn hậu trường Backstage, kích Save As tab, kích Save Object As, kích nút Save As.

2. Gõ MyInvoiceReportVer2 vào ô văn bản Save As, rồi kích OK. Access sẽ lưu báo cáo đã sửa dưới một tên mới, và tên đó xuất hiện trong Navigation Pane. Để ý là tên trên tab báo cáo cũng được sửa.

3. Kích Home tab.