Thứ Ba, 29 tháng 11, 2016

Phát triển HTTT kế toán bằng MS Access - Chương 10 - Lương phải trả Wages Payable và thuế liên bang thu tại nguồn phải trả FWT Payable

James Perry, Richard Newmark


Chương 10
Qui trình nhân sự


Lương phải trả Wages Payable và thuế liên bang thu tại nguồn phải trả FWT Payable


Lương phải trả Wages Payable, giống như nợ phải trả Accounts Payable, dựa trên sự mất cân đối giữa các biến cố đối ngẫu. Đó là tổng lương sau thuế net pay cho tất cả các đợt sử dụng lao động trừ tất cả các đợt giải ngân cho việc sử dụng lao động. Lương phải trả Wages Payable còn liên quan đến các khoản phải trả về thuế liên bang thu tại nguồn federal withholding tax FWT, thuế an sinh xã hội FICA, và thuế chăm sóc y tế Medicare. Trong quá trình tính lương phải trả Wages Payable, bạn cũng sẽ tính thuế liên bang thu tại nguồn phải trả FWT Payable, bằng tổng các khoản FWT khấu trừ từ lương nhân viên. Tuy nhiên, vì FICA và Medicare còn có đóng góp của nhà tuyển dụng, bạn sẽ tính thuế an sinh xã hội phải trả FICA Payable và thuế chăm sóc y tế phải trả Medicare Payable trong các tập truy vấn riêng.

BÀI TẬP 10.30: TẠO CÁC TRUY VẤN LƯƠNG PHẢI TRẢ WAGES PAYABLE VÀ THUẾ LIÊN BANG THU TẠI NGUỒN PHẢI TRẢ FWT PAYABLE

Các tính toán lương phải trả Wages Payable và thuế liên bang thu tại nguồn phải trả FWT Payable cần sáu truy vấn.

Ba truy vấn đầu giống qryGrossPay, qryFWTax, và qryNetPay, ngoại trừ ràng buộc thời điểm Between được thay bằng ràng buộc thời điểm nhỏ hơn hay bằng.

1. Tạo một bản sao của qryGrossPay và đặt tên là qryWagesPayable1-GrossPay. Mở qryWagesPayable1-GrossPay ở góc nhìn Design (trong phần Unassigned Objects thuộc Navigation Pane). Sửa tiêu chí cho LAPayPeriodEnded thành <= [End of Period Date]. Thi hành truy vấn và thử dùng thời điểm cuối kỳ là 3/31/2012. Bạn cần có 143 bản ghi trong tập động dynaset. Lưu rồi đóng truy vấn.

2. Tạo một bản sao của qryFWTax, đặt tên là qryWagesPayable2-FWT, rồi mở qryWagesPayable2-FWT ở góc nhìn Design. Kích Show Table trong nhóm Query Setup, kích Queries tab, rồi thêm qryWagesPayable1-GrossPay vào Table Pane. Với tất cả các cột trường trên lưới QBE có qryGrossPay là thuộc tính Table, sửa thuộc tính Table thành qryWagesPayable1-GrossPay. Xóa qryGrossPay khỏi Table Pane. Thi hành truy vấn và thử dùng thời điểm cuối là 3/31/2012. Bạn cần có 143 bản ghi trong tập động dynaset. Lưu rồi đóng truy vấn.

3. Tạo một bản sao của qryNetPay; đặt tên là qryWagesPayable3-NetPay rồi mở qryWagesPayable3-NetPay ở góc nhìn Design. Kích Show Table trong nhóm Query Setup; kích Queries tab; rồi thêm qryWagesPayable1-GrossPayqryWagesPayable2-FWT vào Table Pane. Liên kết qryWagesPayable1-GrossPay với qryWagesPayable2-FWT bằng cách kích và kéo TimeCardID từ danh sách trường này đến danh sách trường kia. Hãy thay thuộc tính Table thích hợp. Xóa qryGrossPayqryFWTax khỏi Table Pane. Thi hành truy vấn và thử dùng thời điểm cuối là 3/31/2012. Bạn cần có 143 bản ghi trong tập động dynaset. Lưu rồi đóng truy vấn.

Hãy tính tổng FWT, FICA, Medicare, và NetPay. Nếu ta giả sử rằng Pipefitters chưa chuyển bất kỳ khoản thuế lương nào đến chính phủ liên bang, tổng FWT cho chu kỳ đó sẽ bằng khoản FWT Payable trên bảng cân đối balance sheet.

4. Kích Create tab rồi kích Query Design trong nhóm Queries. Kích Queries tab; kích kép qryWagesPayable3-NetPay rồi kích nút Close. Thêm FWT, FICA, Medicare, và NetPay vào lưới QBE. Kích Totals trong nhóm Show/Hide. Sửa thuộc tính Total cho từng trường thành Sum. Mở Property Sheet. Thêm các phụ đề Caption trong Hình 10.32. Đặt Format và Decimal Places cho FICA và Medicare là Currency2. Lưu truy vấn là qryWagesPayable4-SumOfNetPay. Thi hành truy vấn với 3/31/2012. Bạn cần có các tổng như Hình 10.32.

Hình 10.32 Tập động dynaset cho các truy vấn FWT Payable và Wages Payable.

Hãy tạo một truy vấn tính tổng tất cả các đợt giải ngân trả lương trước hay vào thời điểm cuối. Ở Chương 9, ta đã liên kết tblCashDisbursement với tblPurchase trong truy vấn để liên kết các đợt giải ngân với các đợt mua hàng. Với việc thêm bảng kiểu giải ngân Cash Disbursement Type vào cơ sở dữ liệu, bạn có thể dùng CDTypeID để chọn các kiểu giải ngân cụ thể.

5. Tạo một truy vấn mới. Thêm tblCashDisbursement vào Table Pane. Thêm CashDisbursementAmount, CashDisbursementDate, và CDTypeID vào lưới QBE. Kích Totals trong nhóm Show/Hide. Sửa thuộc tính Total cho CashDisbursementAmount thành Sum.  Sửa thuộc tính Total cho CashDisbursementDate thành Where, và đặt Criteria của nó là <= [End of Period Date]. Sửa thuộc tính Total cho CDTypeID thành Where, và đặt Criteria của nó là 02. Bạn có thể kiểm chứng CDTypeID bằng cách mở tblCashDisbursementType ở góc nhìn Datasheet.

6. Mở Property Sheet. Nhập CD Payroll cho thuộc tính Caption của CashDisbursementAmount. Lưu truy vấn là qryWagesPayable5-SumOfCDPayroll. Thi hành truy vấn với 3/31/2012. Tập động dynaset ở Hình 10.32. Đóng truy vấn.

Hãy tạo một truy vấn để lấy tổng lương sau thuế net pay trừ tổng các đợt giải ngân. Bạn sẽ dùng hàm Nz như đã dùng để tính các hạng mục trong báo cáo tài chính như nợ phải thu Accounts Receivable và nợ phải trả Accounts Payable.

7. Tạo một truy vấn mới. Thêm qryWagesPayable4-SumOfNetPayqryWagesPayable5-SumOfCDPAyroll vào Table Pane. Thêm SumOfNetPay từ qryWagesPayable4-SumOfNetPay vào lưới QBE. Tạo biểu thức rỗng-thành-0 cho tổng các đợt giải ngân ở ô Field thứ hai trên lưới QBE. Nhấn Shift+F2 để mở cửa sổ Zoom. Gõ CDPayroll: Nz([SumOfCashDisbursementAmount],0) rồi kích OK.

8. Kích ô Field trống kế, mở cửa sổ Zoom, rồi nhập biểu thức lương phải trả Wages Payable: [SumOfNetPay]-[CDPayroll]. Mở Property Sheet rồi thêm các phụ đề Caption ở Hình 10.32. Lưu truy vấn là qryWagesPayable6-WagesPayable. Thi hành truy vấn dùng 3/31/2012 cho thời điểm cuối kỳ. Kết quả ở Hình 10.32. Thi hành lại truy vấn dùng 1/31/2012 cho thời điểm cuối kỳ. Hàm Nz sẽ trả về giá trị 0, nhờ đó lương phải trả Wages Payable có thể tính được. Đóng truy vấn.

THỬ NGHIỆM

Để ý rằng CDPayroll trong qryWagesPayable6-WagesPayable chưa có định dạng tiền tệ. Thông thường bạn có thể chỉnh sửa bằng cách mở Property Sheet rồi chọn Currency là Format. Tuy nhiên, thỉnh thoảng Format combo box trống không và không có thuộc tính Decimal Places! Không may là thỉnh thoảng Access diễn giải sai hay không thể xác định kiểu dữ liệu của một biểu thức, như trường hợp của biểu thức CDPayroll. May là bạn có thể thêm hàm chuyển kiểu vào biểu thức. Hàm CCur sẽ chuyển biểu thức sang kiểu tiền tệ. Dạng của biểu thức là CCur(expr), trong đó expr là biểu thức bạn muốn chuyển sang kiểu tiền tệ. Hãy mở qryWagesPayable6-WagesPayable ở góc nhìn Design. Thêm hàm CCur vào CDPayroll: CCur(Nz([SumOfCashDisbursementAmount],0)). Thi hành lại truy vấn với 3/31/2012. So kết quả của bạn (xem Hình 10.33) với cùng truy vấn ở Hình 10.32 mà không có hàm CCur.

Hình 10.33 qryWagesPayable6-WagesPayable cho 3/31/2012 bằng cách dùng hàm CCur cho biểu thức CDPayroll.

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

Đăng nhận xét