Đánh giá chủ đề:
  • 0 Votes - 0 Average
  • 1
  • 2
  • 3
  • 4
  • 5
[Access] Hỏi Phân quyền - Làm sao từng user chỉ sửa được những gì mình nhập?
#1
Mình hiện có 3 Table; 3 Form như trên
Table User; Table KHONHAP; Table KHOXUAT, Form KHONHAP; Form KHOXUAT
1./Mình muốn ở form KHONHAP; form KHOXUAT, khi User đăng nhập vào và nhập liệu thì chỗ trường USER ở Form sẽ tự động điền đúng user đó vào ô đó; tuy nhiên user đó lại ko chỉnh sửa được ô này ( hoặc ẩn nó đi)
Ví dụ: User là Huyền; khi đăng nhập; mở form KHOXUAT thì ô USER sẽ tự động cập nhập Huyền vào ô USER


2./Ngoài ra có 3 dạng user


2.1/ User chỉ đọc được dữ liệu; xem báo cáo chứ ko chỉnh sửa gì được (cái này cho sếp)


2.2/ User được quyền chỉnh sửa dữ liệu . User này chỉ chỉnh được dữ liệu mình đã nhập vào; ko chỉnh sửa được dữ liệu của user khác. ( cái này cho thủ kho và nhân viên bán hàng)


2.3/ User Toàn quyền thì được chỉnh sửa dữ liệu của tất cả user khác.( cái này admin xài)


Vậy phải làm thế nào để đạt được điều đó? Đang bí chỗ này
[Hình: anhso-204044_PhanQuyenTrongAccess2.jpg]
Chữ ký của trai_chuoi09 Xin chào, mình là trai_chuoi09, Tham gia http://thuthuataccess.com/forum từ ngày 02-09 -11.
Reply
Những người đã cảm ơn
#2
Mình gợi ý thế này. Form có thuộc tính readonly và allow edit.

Như vậy bạn phải có 1 form cha và 1 form mở từ form cha này ra.
Form cha là 1 datagrid gồm có:
txtuser, kho xuat, kho nhap...

Form con gồm có nội dung....

TỪ form cha, ta tạo một nút nhấn có nội dung đại loại
If txtuser="A" Or txtuser="B"...gì gì đó...then
DoCmd.OpenForm "tên form", , , , acFormEdit
Else
DoCmd.OpenForm "tên form", , , , acFormReadOnly
End if

Mình chỉ gợi ý được đến mức đó, bạn cố gắng thực hiện nhé
Chữ ký của Noname 020
ღღღღღTài sản của Noname (View All Items) ღღღღღ
Reply
Những người đã cảm ơn haquocquan
#3
Nếu theo gợi ý của Noname, bạn chưa làm được, Bạn nên up bài lên để mọi người hỗ trợ trực tiếp.
Chữ ký của haquocquan Guest, you are welcome!
ღღღღღTài sản của haquocquan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn trai_chuoi09
#4
Hiện mình đang dựa trên ý tưởng ở đây
http://thuthuataccess.com/forum/thread-2016.html
Phần Table thì đã xong; query thì được 1 phần
File bên Form thì chưa kết nối với bên Table

có nghe qua cách của noname hướng dẫn ở trên; do còn dở code. mình cũng nghĩ ra 1 cách khác là chia database ra nhiều bảng hơn; tương ứng từng user là 1 file Form kết nối với Table đó

Sau đó phần tổng hợp dùng query với form gộp lại

Nhưng nó cũng chưa ổn vì vậy nếu trường hợp muốn truy vấn lại ; hoặc theo dõi chứng từ cũng sinh ra thêm 1 file form khác với user chỉ dùng để xem thôi!
Mọi người có cách nào khác ko?
Chữ ký của trai_chuoi09 Xin chào, mình là trai_chuoi09, Tham gia http://thuthuataccess.com/forum từ ngày 02-09 -11.
Reply
Những người đã cảm ơn
#5
Trong FORUM cũng có nhiều bài, một số bài về phân quyền. Bạn nghiên cứu.
Mình có thêm một số gợi ý thế này:
- Table User: bạn nên chỉ có 1 trường Permission, trong đó người nào được permision nào thì bạn nhập liệu vào đó.
- Bạn tạo một biến lấy permision của người đăng nhập.
- Khi form nào đó open, bạn đặt điều kiện so sánh, nếu permision thuộc diện nào thì cho thực hiện việc đó bằng cách đặt property của form là: allow edition = true/false, allow addition = true/false.
Hoặc trong sự kiện Before Update của form bạn so sánh permision cũng được.
Hoặc là set textbox Enabled/Locked = true/false khi so sánh permission.
Nói chung là có nhiều cách

Đó là gợi ý, còn code chính xác, bạn xem trong form property để biết.

Nếu vẫn không được, up file của bạn đang làm lên và bạn sẽ nhận được support. Nói vo, không biết đâu mà lần, không hướng dẫn bạn được.
Chữ ký của haquocquan Guest, you are welcome!
ღღღღღTài sản của haquocquan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn trai_chuoi09
#6
Cách của bạn haquocquan dễ hiểu hơn; đã hiểu nhưng cũng chưa làm được, nên ... file của mình đang dùng đây.Nhờ bạn giúp
http://www.mediafire.com/?2b5dpshib5adesv
Chữ ký của trai_chuoi09 Xin chào, mình là trai_chuoi09, Tham gia http://thuthuataccess.com/forum từ ngày 02-09 -11.
Reply
Những người đã cảm ơn
#7
Bạn làm acc2007. mình chịu, mình không dùng acc2007. Bạn chuyển sang 2k3 để mọi người giúp.
Chữ ký của haquocquan Guest, you are welcome!
ღღღღღTài sản của haquocquan (View All Items) ღღღღღ
Reply
Những người đã cảm ơn
#8
thực ra mình đang xài access 2010; và trong table mình xài 1 số tính năng mới; form cũng vậy nên ko có cách chuyển về 2003 được.
Chữ ký của trai_chuoi09 Xin chào, mình là trai_chuoi09, Tham gia http://thuthuataccess.com/forum từ ngày 02-09 -11.
Reply
Những người đã cảm ơn
#9
Dữ liệu đã được convert lại cho phiên bản 2003.
http://www.mediafire.com/?b8sa37xzwg3u8xf
Chữ ký của trai_chuoi09 Xin chào, mình là trai_chuoi09, Tham gia http://thuthuataccess.com/forum từ ngày 02-09 -11.
Reply
Những người đã cảm ơn


Có thể liên quan đến chủ đề
Chủ đề: Tác giả Trả lời: Xem: Bài mới nhất
  Tạo from access chuyên nghiệp thanhtruong 2 168 18-02-17, 11:15 PM
Bài mới nhất: tranthanhan1962
  Phần mềm quản lý kho thuốc .mdb thanhtruong 15 841 15-02-17, 12:59 AM
Bài mới nhất: maidinhdan
  code chuyển đổi Hex sang ASCII trong access thanhtruong 9 384 13-02-17, 10:34 PM
Bài mới nhất: ongke0711
  [Help] Truy vấn nhiều giá trị, nhập trong 1 textbox duy nhất ở form ckno1no 11 800 23-01-17, 01:32 PM
Bài mới nhất: ckno1no
  [Hỏi] Nhập dữ liệu sai trong combobox sẽ đưa ra thông báo cannguyen 2 230 12-12-16, 12:06 PM
Bài mới nhất: cannguyen

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ơ