Phát triển HTTT kế toán bằng MS Access - Chương 10 - Form nhập liệu giải ngân cho các chi phiếu trả lương
James Perry, Richard Newmark
Chương
10
Qui trình nhân sự
Form nhập liệu giải ngân cho các chi phiếu trả lương
Pipefitters
Supply Company trả lương nhân viên vào ngày thứ hai sau thời điểm trả lương. Nếu
ngày này rơi vào cuối tuần hay ngày nghỉ, các chi phiếu trả lương sẽ được lưu
vào nơi an toàn của công ty và được giao vào ngày làm việc kế. Form nhập liệu
trả lương sẽ trông giống form nhập liệu giải ngân mà bạn đã tạo ở Chương 9 để
chi trả cho nhà cung ứng (xem Hình 9.50). Khác biệt chính là phần trên của form
sẽ chứa thông tin trả lương nhân viên thay vì thông tin nhập kho và thông tin
liên hệ nhà cung ứng. Trong bài tập kế bạn sẽ tạo một truy vấn chứa các trường
trả lương nhân viên để điền thông tin vào phần trên của form.
BÀI
TẬP 10.26: TẠO TRUY VẤN THÔNG TIN TRẢ LƯƠNG NHÂN VIÊN
1.
Tạo một truy vấn mới bằng công cụ Query Design.
Thêm qryEmployeeName, qryGrossPay,
và qryNetPay vào Table Pane. Liên
kết qryEmployeeName với qryGrossPay bằng
cách kéo EmployeeID từ danh sách trường này đến danh sách trường kia. Liên kết
qryNetPay với qryGrossPay bằng cách
kéo TimeCardID từ danh sách trường này đến danh
sách trường kia.
2.
Thêm các trường liệt kê ở Hình 10.30 vào Criteria Pane. Trong khi điền vào
Criteria Pane hãy dùng thanh trượt để hiển thị các cột trống.
Hình 10.30 Các trường
cho qryFormCDPayrollRecordSourceData.
3.
Sắp TimeCardID theo thứ tự
tăng Ascending.
4.
Lưu truy vấn với tên qryFormCDPayrollRecordSourceData.
5.
Thi hành truy vấn cho tháng 01/2012. Đóng truy vấn.
Form
nhập chi phiếu trả lương sẽ dùng thiết kế form/subform. Phần trên của form sẽ
chứa thông tin trả lương
từ qryFormCDPayrollRecordSourceData. Không thể sửa trường
nào ở đây vì chúng chỉ dùng tham khảo. Subform chứa tất cả các trường
từ tblCashDisbursement. Việc liên kết các trường PayeeID và
EventID vào form chính sẽ tự động điền PayeeID và EventID vào subform. Việc dùng
dữ liệu dẫn từ tblLaborAcquisition sẽ là một
kiểm soát vì các đợt giải ngân trả lương chỉ có thể được ghi nhận cho những đợt
sử dụng lao động có mặt trong tblLaborAcquisition.
BÀI
TẬP 10.27: DÙNG FORM WIZARD ĐỂ TẠO FORM NHẬP CHI PHIẾU TRẢ LƯƠNG
1.
Kích qryFormCDPayrollRecordSourceData trong
nhóm Unassigned Objects thuộc Navigation Pane để làm nổi bật tên truy vấn.
Kích Create tab rồi kích Form
Wizard trong nhóm Forms.
2.
Kích nút >> để chuyển tất cả các trường
từ qryFormCDPayrollRecordSourceData sang khung
Selected Fields.
3.
Chọn tblCashDisbursement từ combo box. Kích
nút >> để chuyển tất cả các trường sang
khung Selected Fields.
4.
Kích Next, kích by
qryFormCDPayrollRecordSourceData để đặt các trường truy vấn vào
form chính và các trường Cash Disbursement vào subform, giống form nhập liệu
giải ngân cho nhà cung ứng mà bạn đã tạo ở Chương 9.
5.
Kích nút Next hai lần để đến hộp thoại đặt tên
các forms. Đặt tên form
là frmCashDisbursementPayroll và tên subform
là fsubCashDisbursementPayroll. Kích
nút Finish để đóng hộp thoại và
mở frmCashDisbursementPayroll ở góc nhìn
Form.
6.
Gõ 1/1/2012 vào hộp thoại thời điểm đầu kỳ
Beginning of Period Date và 1/31/2012 vào hộp
thoại thời điểm cuối kỳ End of Period Date. Form chính sẽ mở ở góc nhìn Form và
subform mở ở góc nhìn Datasheet. Đóng form.
Mặc
dù form này đã có thể hoạt động, ta sẽ cải thiện giao diện của nó, và thêm một
số thành phần điều khiển ở hai bài tập kế.
BÀI
TẬP 10.28: CẢI THIỆN SUBFORM NHẬP CHI PHIẾU TRẢ LƯƠNG
1.
Mở fsubCashDisbursementPayroll ở góc nhìn
Design. Nó nằm ở nhóm Unassigned Objects thuộc Navigation Pane.
Mở Property Sheet.
Chọn Form từ Property Sheet combo box nếu nó
chưa được chọn.
2.
Vì chỉ có một chi phiếu trả lương sẽ được viết cho từng phiếu chấm công time
card, bạn sẽ loại nhiều thành phần điều khiển di chuyển của subform bằng cách
thực hiện các sửa đổi sau cho các thuộc
tính Format của nó:
- Đặt Record Selectors là No.
- Đặt Navigation Buttons là No.
- Đặt Scroll Bars là Neither.
- Đặt Close Button là No.
- Đặt Min Max Button là None.
3.
Tất cả các chi phiếu trả lương được rút từ tài khoản trả lương, CashAccountID
102. Kích thành phần điều
khiển CashAccountID để chọn nó trong Property
Sheet combo box. Kích Data tab rồi đặt thuộc
tính Default Value là “102”. Vì người dùng không được viết
chi phiếu trả lương từ bất kỳ tài khoản nào khác, hãy sửa thuộc tính Enabled
thành No và Locked
thành Yes. Kích Other tab
rồi sửa Tab Stop thành No. Các thay đổi này sẽ ngăn người
dùng nhập sai tài khoản tiền mặt cho các chi phiếu trả lương.
4.
Kích thành phần điều khiển CDTypeID.
Kích Data tab rồi đặt thuộc tính Default Value
là “02”, đây là mã kiểu giải ngân cho các đợt giải ngân trả
lương. Thực hiện các sửa đổi cho CDTypeID như bạn đã làm cho CashAccountID ở
Bước 3.
5.
Các giá
trị PayeeID và EventID sẽ
được đặt qua liên kết giữa subform và form. Hãy khóa các giá trị này như bạn đã
làm ở Bước 3.
6.
Xem subform ở góc nhìn Datasheet. Kích nút chọn Datasheet;
kích More menu trong nhóm Records trên dải
lệnh Home; kích Field Width; rồi
kích Best Fit để điều chỉnh tất cả các độ rộng
cột.
7.
Đóng subform. Để ý rằng bạn không thể dùng nút đóng (dấu X ở góc bên phải form)
vì bạn đã khóa nó. Kích
phải fsubCashDisbursementPayroll tab;
kích Close. Kích Yes để lưu
các thay đổi.
BÀI
TẬP 10.29: CẢI THIỆN FORM NHẬP DỮ LIỆU CHI PHIẾU TRẢ LƯƠNG
Hãy
dùng Hình 10.31 làm tham khảo giao diện cho form của bạn.
Hình
10.31 frmCashDisbursementPayroll hoàn chỉnh ở
góc nhìn Design và góc nhìn Form.
1.
Mở frmCashDisbursementPayroll ở góc nhìn
Design, mở Property Sheet. Sửa đầu đề
thành Payroll Check Data Entry. Kích và kéo
thanh Detail xuống dưới để bạn có thể nắm được
nút điều chỉnh kích cỡ ở đáy nhãn đầu đề và giảm chiều cao quá mức của ô nhãn.
Dời ô văn bản đầu đề sang phải 1/4-inch. Kéo
thanh Detail ngược lên cho đến khi chạm ô nhãn
đầu đề.
2.
Kích và kéo con trỏ qua toàn bộ thành phần điều khiển và nhãn trong phần Detail
ở trên subform. Sửa các thuộc tính Format sau
trên Property Sheet để khóa các thành phần điều khiển:
- Đặt Back Style là Transparent.
- Đặt Border Style là Transparent.
3.
Kích vào vùng trống trên form để khử việc chọn các đối tượng. Chọn tất cả các ô
văn bản (không phải nhãn) trong phần Detail của form bằng cách kích và kéo con
trỏ trên từng ô, hay giữ phím Shift xuống rồi
kích từng ô văn bản. Kích Data tab trong
Property Sheet. Sửa Enabled thành No và Locked
thành Yes. Các thành phần điều khiển đã được khóa. Chỉ các
thành phần điều khiển trong subform là còn hoạt động.
4.
Để ý rằng PayeeID không được tự động điền vào subform vì Form Wizard không tạo
liên kết giữa EmployeeID trong form và PayeeID trong subform. Vì thế, bạn sẽ
thêm liên kết này. Trở về góc nhìn Design.
Kích fsubCashDisbursementPayroll trong combo
box trên Property Sheet. Kích Data tab;
kích Link Master Fields để hiển thị nút Builder
rồi kích nó. Chọn EmployeeID trong Master
Fields combo box thứ hai và PayeeID trong Child
Fields combo box thứ hai. Kích OK.
5.
Định cỡ và bố trí lại các nhãn và thành phần điều khiển trong form cho giống
Hình 10.31. Tất cả các nhãn được canh phải và in đậm. Góc nhìn Layout cho phép
bạn nhìn subform ở góc nhìn Datasheet và cho bạn khả năng dời và định cỡ lại
nó.
6.
Lưu các thay đổi trên form rồi đóng lại.
7.
Nhập dữ liệu tblCashDisbursement cho các chi
phiếu trả lương từ Ch10.xlsx bằng cách dùng phương pháp
tương tự Bài tập 10.11. tblCashDisbursement cần
có 174 bản ghi sau khi nhập liệu.
Mở frmCashDisbursementPayroll ở góc nhìn Form
để xem form trông ra sao sau khi đã nhập liệu.
Giờ
đây bạn đã hoàn tất việc tạo các form nhập để thu thập dữ liệu từ các hoạt động
của qui trình nhân sự HR, bạn sẽ dẫn ra thông tin hữu ích cho các mục đích nội
bộ cũng như bên ngoài.


0 nhận xét