Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Tạo Data Việc riêng
#1
Em có tạo bảng Data Việc riêng. Nhưng không biết tạo các khóa, quan hệ. Với lại em tạo các bảng như trong file đính kèm như vậy đã đủ chưa.
Nay nhờ các anh chị xem và giúp em. 
Mục đích của em là 
* Cập nhật thông tin nghỉ việc riêng của nhân viên
    - Họ tên
    - Bộ phận
    - Số ngày nghỉ phép.
    - Ngày bắt đầu.
    - Ngày kết thúc
    - Lý do.
    - Người duyệt 1 ( Tổ, bộ phận của nhân viên đó)
    - Người duyệt 2 ( Ban giám đốc Xn)
    - Người duyệt 3 ( Phòng TCHC Công ty)
  Download:  Việc Riêng

Trân trọng cảm ơn
Chữ ký của huuduy.duy Xin chào, mình là huuduy.duy, Tham gia http://thuthuataccess.com/forum từ ngày 24-06 -13.
ღღღღღTài sản của huuduy.duy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#2
* Đây là hình quan hệ mà bạn cần làm

[Hình: tbNghiphep.jpg]

* Một số ghi chú:
- Tất cả nhân viên nhập vào table nhân viên, không tạo nhiều table để nhập theo từng phòng ( ý là nếu có 5 phòng/ban thì không được tạo 5 cái table, mà chỉ duy nhất 1 cái); Ở table này: tất cả thông tin của 1 công nhân nên cho vào đây hết. ( bạn có thể xem hình quan hệ Quản lý nhân sự của mình phía dưới bài viết này)

- Table: B_ViecRieng của bạn không được tạo khóa chính ở trường họ tên ( lý do: 1 người có thể nghỉ nhiều lần trong suốt cả đờ người ta, nếu đặt khóa chính...sẽ tầm bậy) mình chỉnh lại rồi, Table này chỉ cần điền mã nhân viên vào cột tên đó thôi, phần MãDuye cung điền theo mã là được, việc còn lại khi muốn biết chính xác tên ai, ta sẽ dùng Query truy vấn.


Đính kèm Demo trả lời cho bài bạn

[Hình: quanheQLNS2.jpg]

Thân mến!


File đính kèm
.zip   ViecRieng.zip (Kích cỡ: 12.69 KB / Tải về: 16)
Chữ ký của maidinhdan * Để được hỗ trợ tốt nhất, nhấn vào link dưới đây để xem.
1. [Hướng dẫn] Kiểu file gửi lên để được giúp đỡ
2. [Hướng dẫn] Nội quy diễn đàn
3. [Hướng dẫn] Cách Đưa file và hình vào diễn đàn
4.[Hướng dẫn] Để xây dựng một ứng dụng hoàn hảo và lời cảm tạ
5. Cần tìm Demo hay ứng dụng sử dụng thanh tìm kiếm phía trên cùng, bên phải của diễn đàn.
* Nếu muốn cảm ơn, hãy nhấn nút thank, không cần viết thêm bài nào nửa.



ღღღღღTài sản của maidinhdan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn Noname , huuduy.duy , tranthanhan1962
#3
(18-09-15, 07:17 PM)maidinhdan Đã viết: * Đây là hình quan hệ mà bạn cần làm

[Hình: tbNghiphep.jpg]

* Một số ghi chú:
- Tất cả nhân viên nhập vào table nhân viên, không tạo nhiều table để nhập theo từng phòng ( ý là nếu có 5 phòng/ban thì không được tạo 5 cái table, mà chỉ duy nhất 1 cái); Ở table này: tất cả thông tin của 1 công nhân nên cho vào đây hết. ( bạn có thể xem hình quan hệ Quản lý nhân sự của mình phía dưới bài viết này)

- Table: B_ViecRieng của bạn không được tạo khóa chính ở trường họ tên ( lý do: 1 người có thể nghỉ nhiều lần trong suốt cả đờ người ta, nếu đặt khóa chính...sẽ tầm bậy) mình chỉnh lại rồi, Table này chỉ cần điền mã nhân viên vào cột tên đó thôi, phần MãDuye cung điền theo mã là được, việc còn lại khi muốn biết chính xác tên ai, ta sẽ dùng Query truy vấn.


Đính kèm Demo trả lời cho bài bạn

[Hình: quanheQLNS2.jpg]

Thân mến!

Chào anh!
Nhờ anh giúp em thiết kế lại Form sao cho khi cần cập nhật Nhân viên nghỉ phép thì chỉ cần gõ từ gần đúng sau đó hiện tên và click chọn. 

Với lại khi chọn được nhân viên cần cập nhật nghỉ phép thì bên dưới sẽ hiện data sheet lịch sử nghỉ phép của Nhân viên đó.
Trân trọng cảm 
https://drive.google.com/drive/my-drive
Chữ ký của huuduy.duy Xin chào, mình là huuduy.duy, Tham gia http://thuthuataccess.com/forum từ ngày 24-06 -13.
ღღღღღTài sản của huuduy.duy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#4
(18-09-15, 07:17 PM)maidinhdan Đã viết: * Đây là hình quan hệ mà bạn cần làm

[Hình: tbNghiphep.jpg]

* Một số ghi chú:
- Tất cả nhân viên nhập vào table nhân viên, không tạo nhiều table để nhập theo từng phòng ( ý là nếu có 5 phòng/ban thì không được tạo 5 cái table, mà chỉ duy nhất 1 cái); Ở table này: tất cả thông tin của 1 công nhân nên cho vào đây hết. ( bạn có thể xem hình quan hệ Quản lý nhân sự của mình phía dưới bài viết này)

- Table: B_ViecRieng của bạn không được tạo khóa chính ở trường họ tên ( lý do: 1 người có thể nghỉ nhiều lần trong suốt cả đờ người ta, nếu đặt khóa chính...sẽ tầm bậy) mình chỉnh lại rồi, Table này chỉ cần điền mã nhân viên vào cột tên đó thôi, phần MãDuye cung điền theo mã là được, việc còn lại khi muốn biết chính xác tên ai, ta sẽ dùng Query truy vấn.


Đính kèm Demo trả lời cho bài bạn

[Hình: quanheQLNS2.jpg]

Thân mến!

Anh xem dùm em, sao không liên kết giữa main và sub.
Khi em bỏ đánh STT trong Query thì liên kết được, nhưng thêm lệnh đánh STT thì lại không thể liên kết với nhau,

http://www.mediafire.com/download/d4smii...ieng.accdb
Chữ ký của huuduy.duy Xin chào, mình là huuduy.duy, Tham gia http://thuthuataccess.com/forum từ ngày 24-06 -13.
ღღღღღTài sản của huuduy.duy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#5
- Bạn chỉ cần kéo thêm trường [Manhanvien] của table B-ViecRieng vào cái Query 3 là được rồi. Trường hợp của bạn tôi cũng thấy lạ có thể vì bạn đang dùng chính cái Query3 làm subform (chứ không phải 1 Form riêng có Record Source là Query3) nên mặc dù không có  [Link Child Fields] trong query nó vẫn link được. Nhưng làm như vậy sẽ không đảm bảo dữ liệu sẽ chính xác cho mọi trường hợp.

Một số góp ý:
- Trong cái Query 3, bạn bỏ hết mấy table dư thừa không có relationship, không có lấy dữ liệu có nó phục vụ cho query. Vì nếu bạn để vậy sẽ tạo trùng lập một đống records.
- Không sử dụng tiếng Việt có dấu và khoảng trắng cho Table và cả trong Query. Vì nếu sau này có cần tham chiếu đến trường đó trong code VBA, sẽ báo lỗi ngay. Muốn hiển thị TV thì bạn ra form hay report mà thiết kế Label tiếng Việt.
- Subform nên thiết kế 1 Form riêng có Record Source là Query 3 và hiển thị dạng Datasheet, chứ không nên dùng chính cái Query3 kéo vô làm Subform vì sau này nếu bạn cần tùy biến thêm cho cái subform thì sẽ không làm được. VD: muốn thêm Textbox [Tổng cộng] trong subform sẽ không thiết kế được.
Chữ ký của ongke0711 If you BORN poor, it's not your mistake. But if you DIE poor, It's your mistake!
ღღღღღTài sản của ongke0711 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn huuduy.duy
#6
(24-05-16, 08:57 AM)ongke0711 Đã viết: - Bạn chỉ cần kéo thêm trường [Manhanvien] của table B-ViecRieng vào cái Query 3 là được rồi. Trường hợp của bạn tôi cũng thấy lạ có thể vì bạn đang dùng chính cái Query3 làm subform (chứ không phải 1 Form riêng có Record Source là Query3) nên mặc dù không có  [Link Child Fields] trong query nó vẫn link được. Nhưng làm như vậy sẽ không đảm bảo dữ liệu sẽ chính xác cho mọi trường hợp.

Một số góp ý:
- Trong cái Query 3, bạn bỏ hết mấy table dư thừa không có relationship, không có lấy dữ liệu có nó phục vụ cho query. Vì nếu bạn để vậy sẽ tạo trùng lập một đống records.
- Không sử dụng tiếng Việt có dấu và khoảng trắng cho Table và cả trong Query. Vì nếu sau này có cần tham chiếu đến trường đó trong code VBA, sẽ báo lỗi ngay. Muốn hiển thị TV thì bạn ra form hay report mà thiết kế Label tiếng Việt.
- Subform nên thiết kế 1 Form riêng có Record Source là Query 3 và hiển thị dạng Datasheet, chứ không nên dùng chính cái Query3 kéo vô làm Subform vì sau này nếu bạn cần tùy biến thêm cho cái subform thì sẽ không làm được. VD: muốn thêm Textbox [Tổng cộng] trong subform sẽ không thiết kế được.

Để em làm thử, nếu không được nhờ anh hỗ trợ tiếp
Trân trọng cảm ơn anh
Chữ ký của huuduy.duy Xin chào, mình là huuduy.duy, Tham gia http://thuthuataccess.com/forum từ ngày 24-06 -13.
ღღღღღTài sản của huuduy.duy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#7
- Bạn chỉ cần kéo thêm trường [Manhanvien] của table B-ViecRieng vào cái Query 3 là được rồi. Trường hợp của bạn tôi cũng thấy lạ có thể vì bạn đang dùng chính cái Query3 làm subform (chứ không phải 1 Form riêng có Record Source là Query3) nên mặc dù không có  [Link Child Fields] trong query nó vẫn link được. Nhưng làm như vậy sẽ không đảm bảo dữ liệu sẽ chính xác cho mọi trường hợp.

Theo hướng dẫn thì phần này em đã làm được rồi.
Riêng phần

Một số góp ý:
- Trong cái Query 3, bạn bỏ hết mấy table dư thừa không có relationship, không có lấy dữ liệu có nó phục vụ cho query. Vì nếu bạn để vậy sẽ tạo trùng lập một đống records.

Em không hiểu ý anh lắm, nhưng theo cách làm của em thì nó phát sinh nhiều Record mới. Nhờ anh chỉnh sữa giúp em.

- Không sử dụng tiếng Việt có dấu và khoảng trắng cho Table và cả trong Query. Vì nếu sau này có cần tham chiếu đến trường đó trong code VBA, sẽ báo lỗi ngay. Muốn hiển thị TV thì bạn ra form hay report mà thiết kế Label tiếng Việt.

Nếu thiết kế label tiếng việt thì khi mình thay đổi độ rộng các cột Sub Form thì label có thể thay đổi kích thước luôn không anh.

Trong subForm đánh STT như thế nào vậy anh. Trong Query3 em có làm câu query đánh STT, nhưng ra không đúng. nhờ anh xem lại giùm em. Trân trọng cảm ơn

http://www.mediafire.com/download/d4smii...ieng.accdb
Chữ ký của huuduy.duy Xin chào, mình là huuduy.duy, Tham gia http://thuthuataccess.com/forum từ ngày 24-06 -13.
ღღღღღTài sản của huuduy.duy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#8
- Query 3 của bạn dư nhiều table như trong hình. Thực tế chỉ có 1 record nhưng do table nhân viên bị lập lại nhiều lần nên số record cũng trùng lập nhiều lần.
[Hình: ScreenShot2016-05-24at9.05.31PM.png]

- Khi subform hiển thị dưới dạng datasheet, bạn muốn chỉnh độ rộng cột thì vô chế độ Layout view để kéo từng cột theo ý muốn rồi Save.

Link file: đã chỉnh công thức số thứ tự
http://www.mediafire.com/download/jqixra...ng-2.accdb
Chữ ký của ongke0711 If you BORN poor, it's not your mistake. But if you DIE poor, It's your mistake!
ღღღღღTài sản của ongke0711 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn huuduy.duy
#9
(24-05-16, 11:53 PM)ongke0711 Đã viết: - Query 3 của bạn dư nhiều table như trong hình. Thực tế chỉ có 1 record nhưng do table nhân viên bị lập lại nhiều lần nên số record cũng trùng lập nhiều lần.
[Hình: ScreenShot2016-05-24at9.05.31PM.png]

- Khi subform hiển thị dưới dạng datasheet, bạn muốn chỉnh độ rộng cột thì vô chế độ Layout view để kéo từng cột theo ý muốn rồi Save.

Link file: đã chỉnh công thức số thứ tự
http://www.mediafire.com/download/jqixra...ng-2.accdb

Anh cho em hỏi, em tính tổng số ngày nghỉ  của từng nhân viên cho text51 nó bị lỗi
Hàm tính tổng của em như sau: =DSum([SoNgayNghi],"B_ViecRieng]",[Manhanvien]=[cbxMaNV])
Nhờ anh xem giúp.
Trân trọng
Chữ ký của huuduy.duy Xin chào, mình là huuduy.duy, Tham gia http://thuthuataccess.com/forum từ ngày 24-06 -13.
ღღღღღTài sản của huuduy.duy (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#10
- Bạn không thể truyền tham số [cbxMaNV] ngay trong Textbox. Bạn chỉ làm được điều này trong code VBA.
- 1 cách khác là bạn lấy thông tin tổng số ngày nghỉ từ ngay trong Subform.
Vd: Trong subform [sub_ViecRieng] bạn tạo 1 textbox (txtSumSoNgayNghi) ở phần Form footer và cho Visible:No. Sau đó trong main form text51 bạn tham chiếu đến texbox Sum của subform: =[sub_ViecRieng].[Form]![txtSumSoNgayNghi]
Chữ ký của ongke0711 If you BORN poor, it's not your mistake. But if you DIE poor, It's your mistake!
ღღღღღTài sản của ongke0711 (View All Items) ღღღღღ
Reply
Những người đã cảm ơn huuduy.duy


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  [Hỏi] Về type data Yes/No trên Access 2016 kennguyen2301 2 342 07-12-15, 06:52 PM
Bài mới nhất: kennguyen2301
Question [Hỏi] Cách đặt DATA TYPE cho chính xác? BinhDa 8 2,479 29-11-12, 09:40 PM
Bài mới nhất: manhbn1995
Sad Khó khăn trong việc viết hàm Tính toán trong Report jonahthanh 1 1,165 07-01-12, 07:14 PM
Bài mới nhất: bomnhauag
  nút quay về cửa sổ Data Access Maixiêuphong 8 2,020 19-08-11, 05:02 PM
Bài mới nhất: congnguyen

Chuyển nhanh:


User(s) browsing this thread: 1 Guest(s)
Diễn Đàn Thơ Văn Thi Ẩm Lâu|Nhà Hàng Sông Thơ