-
RE: Sub Form tự động điền các record
haidc > 16-03-21, 03:51 PM
Cách nay khoảng sơ sơ .... 4 năm bác Ongke0711 đã giúp một đoạn code giải quyết vấn đề tự động chia đều sản lượng cho từng công nhân và điền số liệu đó từ Main Form xuống Sub Form. Từ đoạn code của bác mình add thêm là chia đều số lượng hàng làm được cho các công nhân. Form hoạt động trôi chảy nhưng giờ sếp có thêm yêu cầu mới nên nảy sinh một số vấn đề :
1. Với mặt hàng container do đơn giá có 4 nhóm (Cont 20' hàng, cont 20' rồng, cont 40' hàng, cont 40' rỗng) nên khi gặp phiếu này mình phải chia thành ra thành 4 lệnh ứng với 4 nhóm vì chỉ có 1 textbox số lượng để nhập vào. Còn bổ sung thêm 4 textbox thì đoạn code trên không chạy được.
2. Có các phiếu số công nhân tham gia làm ít hơn số công nhân trong tổ. Ví dụ như tổ 15 người nhưng ngày hôm đó chỉ có 12 người làm, 3 người nghỉ thì form chia đều cho cả 15. Nếu xóa đi 3 người và cài bẫy update tại field cuối của từng record thì phải gõ enter liên tục cho nhảy hết các record thì số lượng và sản lượng mới update đúng theo số người làm.
Bác Ongke0711 có thể giúp giải quyết 2 vấn đề này được không ạ :
1. Bấm nút phân bổ hay gõ enter từ Main Form xuống Sub Form sẽ chia đều các số liệu từ Textbox Số lượng, Sản lượng, Cont 20E, Cont 20F, Cont 40E, Cont 40F.. xuống Sub Form cho từng người.
2. Khi có thay đổi số người ở Sub Form các số liệu trên sẽ cập nhật lại toàn bộ.
File chương trình đính kèm
Rất cảm ơn bác trước nhé. -
RE: Sub Form tự động điền các record
ongke0711 > 16-03-21, 04:37 PM
(16-03-21, 03:51 PM)haidc Đã viết: 1. Bấm nút phân bổ hay gõ enter từ Main Form xuống Sub Form sẽ chia đều các số liệu từ Textbox Số lượng, Sản lượng, Cont 20E, Cont 20F, Cont 40E, Cont 40F.. xuống Sub Form cho từng người.
2. Khi có thay đổi số người ở Sub Form các số liệu trên sẽ cập nhật lại toàn bộ.
1. Ý bạn là lấy sản lượng từng loại Cont chia đều cho số nhân công hay lấy tổng sản lượng của toàn bộ Cont chia đều?
2. Có một giải pháp khi thay đổi số người trong tổ là: sẽ hiện checkbox kế bên tên nhân viên. Mặc định sẽ đánh dấu chọn hết, nhân viên nào nghì thì bỏ chọn -> sẽ phân bổ theo số nhân viên có dấu chọn = True. -
RE: Sub Form tự động điền các record
haidc > 16-03-21, 04:51 PM
(16-03-21, 04:37 PM)ongke0711 Đã viết:
(16-03-21, 03:51 PM)haidc Đã viết: 1. Bấm nút phân bổ hay gõ enter từ Main Form xuống Sub Form sẽ chia đều các số liệu từ Textbox Số lượng, Sản lượng, Cont 20E, Cont 20F, Cont 40E, Cont 40F.. xuống Sub Form cho từng người.
2. Khi có thay đổi số người ở Sub Form các số liệu trên sẽ cập nhật lại toàn bộ.
1. Ý bạn là lấy sản lượng từng loại Cont chia đều cho số nhân công hay lấy tổng sản lượng của toàn bộ Cont chia đều?
2. Có một giải pháp khi thay đổi số người trong tổ là: sẽ hiện checkbox kế bên tên nhân viên. Mặc định sẽ đánh dấu chọn hết, nhân viên nào nghì thì bỏ chọn -> sẽ phân bổ theo số nhân viên có dấu chọn = True.
Vì làm hàng thường thì lương công nhân tính theo sản lượng (sô tấn), riêng hàng container thì lại tính theo số lượng cont. Nên khi nhập phiếu làm cont thì textbox Sản lượng sẽ để 0 còn các textbox Cont20'E, cont20F, cont40E, cont40F sẽ nhập số vào, còn với hàng bình thường thì ngược lại.
Ý số 2 cũng hay nhưng chưa nghĩ ra phải sửa đoạn code của bác thế nào để thỏa điều kiện checkbox -
RE: Sub Form tự động điền các record
ongke0711 > 16-03-21, 05:12 PM
(16-03-21, 04:51 PM)haidc Đã viết: Vì làm hàng thường thì lương công nhân tính theo sản lượng (sô tấn), riêng hàng container thì lại tính theo số lượng cont. Nên khi nhập phiếu làm cont thì textbox Sản lượng sẽ để 0 còn các textbox Cont20'E, cont20F, cont40E, cont40F sẽ nhập số vào, còn với hàng bình thường thì ngược lại.
Vậy bạn phải thiết kế lại cái Form có 2 tuỳ chọn loại hàng: Cont hay thường
Qui cách Cont này cũng đã cố định nên bạn thiết kế thêm 4 cột cho 4 loại Cont để nhập số lượng vô.
Nếu chia theo số lượng Cont thì phải giải quyết vụ chia ra số lẻ đúng không.
Bạn có cái ví dụ chia Cont, gửi lên đê dễ hình dung các trường hợp (làm excel cho nhanh). -
RE: Sub Form tự động điền các record
haidc > 16-03-21, 07:12 PM
(16-03-21, 05:12 PM)ongke0711 Đã viết:
(16-03-21, 04:51 PM)haidc Đã viết: Vì làm hàng thường thì lương công nhân tính theo sản lượng (sô tấn), riêng hàng container thì lại tính theo số lượng cont. Nên khi nhập phiếu làm cont thì textbox Sản lượng sẽ để 0 còn các textbox Cont20'E, cont20F, cont40E, cont40F sẽ nhập số vào, còn với hàng bình thường thì ngược lại.
Vậy bạn phải thiết kế lại cái Form có 2 tuỳ chọn loại hàng: Cont hay thường
Qui cách Cont này cũng đã cố định nên bạn thiết kế thêm 4 cột cho 4 loại Cont để nhập số lượng vô.
Nếu chia theo số lượng Cont thì phải giải quyết vụ chia ra số lẻ đúng không.
Bạn có cái ví dụ chia Cont, gửi lên đê dễ hình dung các trường hợp (làm excel cho nhanh).
Đúng rồi bác. Số cont chưa hẳn chia hết cho số người nhưng ko sao đến cuối tháng số cont đó nhân đơn giá để thành tiền lương. Mình cũng định thiết kế thêm 4 textbox nữa nhưng để hide, khi nào làm hàng cont (dựa vào phương án) sẽ unhide 4 textbox đó ra để cho người nhập gõ vào.
File CSDL đã edit lại đính kèm
File mdb edit -
RE: Sub Form tự động điền các record
ongke0711 > 16-03-21, 09:13 PM
(16-03-21, 07:12 PM)haidc Đã viết: Đúng rồi bác. Số cont chưa hẳn chia hết cho số người nhưng ko sao đến cuối tháng số cont đó nhân đơn giá để thành tiền lương. Mình cũng định thiết kế thêm 4 textbox nữa nhưng để hide, khi nào làm hàng cont (dựa vào phương án) sẽ unhide 4 textbox đó ra để cho người nhập gõ vào.
Ý tôi là bạn muốn máy phân bổ tự động số Cont cho mỗi người thì bạn phải soạn ra một bộ nguyên tắc xử lý cho công việc này để máy nó chiếu theo đó mà xử lý.
Ví dụ: có 5 nhân viên
Cont 20E: 5
Cont 20F: 7
Cont 40E: 3
Cont 40F: 2
TC: 17 cont.
Vậy cách xử lý như thế nào?
- Cont 20E: 5/5 = 1/nv
- Cont 20F: 7/5 = 1.4/nv
- Cont 40F: 3/5 =...
-....
Hay 17 cont/5 = 3.4/nv ?
Hay cách nào khác? -
RE: Sub Form tự động điền các record
haidc > 16-03-21, 10:28 PM
(16-03-21, 09:13 PM)ongke0711 Đã viết:
(16-03-21, 07:12 PM)haidc Đã viết: Đúng rồi bác. Số cont chưa hẳn chia hết cho số người nhưng ko sao đến cuối tháng số cont đó nhân đơn giá để thành tiền lương. Mình cũng định thiết kế thêm 4 textbox nữa nhưng để hide, khi nào làm hàng cont (dựa vào phương án) sẽ unhide 4 textbox đó ra để cho người nhập gõ vào.
Ý tôi là bạn muốn máy phân bổ tự động số Cont cho mỗi người thì bạn phải soạn ra một bộ nguyên tắc xử lý cho công việc này để máy nó chiếu theo đó mà xử lý.
Ví dụ: có 5 nhân viên
Cont 20E: 5
Cont 20F: 7
Cont 40E: 3
Cont 40F: 2
TC: 17 cont.
Vậy cách xử lý như thế nào?
- Cont 20E: 5/5 = 1/nv
- Cont 20F: 7/5 = 1.4/nv
- Cont 40F: 3/5 =...
-....
Hay 17 cont/5 = 3.4/nv ?
Hay cách nào khác?
- Cont 20E: 5/5 = 1/nv
- Cont 20F: 7/5 = 1.4/nv
- Cont 40F: 3/5 =...
-....
Cách này bác. Vì mỗi loại cont có đơn giá khác nhau. -
RE: Sub Form tự động điền các record
ongke0711 > 17-03-21, 03:18 PM
Bạn xem file đã sửa.
- Xoá công nhân trước khi bấm nút phân bổ.
- Nếu xoá nhầm thì bấm nút "Nạp số công nhân"
Link: https://www.mediafire.com/file/gv676ic9m...).mdb/file -
RE: Sub Form tự động điền các record
haidc > 18-03-21, 11:29 AM
(17-03-21, 03:18 PM)ongke0711 Đã viết: Bạn xem file đã sửa.
- Xoá công nhân trước khi bấm nút phân bổ.
- Nếu xoá nhầm thì bấm nút "Nạp số công nhân"
Link: https://www.mediafire.com/file/gv676ic9m...).mdb/file
Quá ok bác. Giải pháp đơn giản giải quyết vấn đề. Thực ra phương án còn nhiều nữa nhưng không sao mình có thể mày mò sửa đổi thêm.
Có cách nào mời bác 1 bữa không nhỉ ?
Một lần nữa cảm ơn bác nhiều.