Tạo ứng dụng Client - Server đơn giản trong Access

Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Mạng LAN mà than chậm nữa thì mạng nào nhanh?
Chỉ có trên cùng 1 máy thì nhanh thôi.

Nên phát triển theo dạng server giống như internet vậy chứ đừng "share" như mạng LAN.

Mấy hôm em đụng 1 chương trình, sử dụng trong mạng WAN, Việc cập nhật data vào Database được nhiều người dùng ở nhiều tỉnh thành (trong mạng WAN - ping thấy ip nhau) cập nhật vào, nhưng chưa biết áp dụng mô hình nào. Nghe anh nói cách như trên em thấy phù hợp với nhu cầu hiện tại. Em đang ngâm cứu tài liệu, nhờ anh help thêm khi bí. Thanks U50!

-----------------------------------------------------------------------------------------
Hic làm client - server access với cách này cho doanh nghiệp vừa và nhỏ quá OK rồi. Không cần phải ngước nhìn lên mấy nữa.
Tìm hoài giờ mới thấy, không ngờ nó đơn giản quá thể.


Vấn đề của mình là khi click vào nút Hoá đơn mới để tạo Hoá đơn mới thì MAQL trong bảng HDmain hoặc TCmain sẻ tăng lên 1.
(Ghi chú: theo module viết sẵn nếu click nút Hoá đơn mới thì "nếu MAQL là null thì = 1, ngược lại thì = số hiện tại +1")
(ghi chú: MAQL là mã có khoá tại HDmain và link 1-n với MAQL của HDsub).

Nếu anh Kinh doanh click vào nút tạo hoá đơn mới để xuất bán hàng và Anh thủ kho cũng click như thế để xuất NVL và nhập dở dang thành phẩm,... thì nó có bị trùng và lỗi không?

Và xử lý các thuộc tính để phân quyền xoá, sửa, thêm mới,... có dễ như thế không?

Rất mong chỉ giúp!

1/ Áp dụng mô hình nào thế?
2/ Phần câu hỏi : Nếu có file đính kèm thì test & trả lời dễ hơn. (NẾU [you] (nếu thôi nhé, còn bạn biết rồi thì thôi) chưa biết cách chia sẻ file online: Bạn có thể đính kèm trực tiếp hoặc đưa vào trang web chia sẻ file như http://www.4shared.com - Đăng nhập - tạo account rồi upload file lên, rồi copy link chứa file đó để chia sẻ)
 
Sửa lần cuối:
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Client - Server theo kiểu "đao to búa lớn" thì khoan bàn tới, chứ cái việc ví dụ như bây giờ ở đơn vị bạn có cái folder cho share data được thì có thể làm đơn gian như vầy:

Thiết kế ứng dụng thành 2 phần (2 mdb): 1 là file data (data.mdb) và 1 là file ứng dụng (app.mdb).

Chép data.mdb vào folder share.

Ở máy nào cho xài ứng dụng thì chép một bản app.mdb trên máy đó. Rồi vào Link Table Manager mà cho link lại đến file data.mdb ở share folder.

Thế thì vô tư mà xài.

Xài Client - Server chính quy còn tùy thuộc khá nhiều vào hạ tầng: đường truyền, phần cứng, ... Và cơ chế redundant, cơ chế replica "từa lưa" nữa. Ngộp.
 
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Client - Server theo kiểu "đao to búa lớn" thì khoan bàn tới, chứ cái việc ví dụ như bây giờ ở đơn vị bạn có cái folder cho share data được thì có thể làm đơn gian như vầy:

Thiết kế ứng dụng thành 2 phần (2 mdb): 1 là file data (data.mdb) và 1 là file ứng dụng (app.mdb).

Chép data.mdb vào folder share.

Ở máy nào cho xài ứng dụng thì chép một bản app.mdb trên máy đó. Rồi vào Link Table Manager mà cho link lại đến file data.mdb ở share folder.

Thế thì vô tư mà xài.

Xài Client - Server chính quy còn tùy thuộc khá nhiều vào hạ tầng: đường truyền, phần cứng, ... Và cơ chế redundant, cơ chế replica "từa lưa" nữa. Ngộp.

Mình xin nhờ bạn hướng dẫn thêm vấn đề về share file Data.mdb
vd:
- Không cho các máy không liên quan vào vọc, xoá, sửa,... như các file share thông thường. Mà chỉ các máy có liên quan phần mềm mới sử dụng được Folder data.mdb đã share này.
- không cho các máy App.mdb vào trực tiếp Link Table để thêm xoá sửa, chỉ thực hiện được những phần việc của mình trên form, và báo cáo report,.. đã thiết kế sẳn cho từng app.mdb

Sẳn tiện bạn chỉ dùm, đoạn mã để thêm hoá đơn mới chạy tốt khi ở data.mdb.
Nhưng nó báo lỗi khi sử dụng App.mdb ( có bảng là Link của data.mdb )

Private Sub HDMOI_Click()
DoCmd.GoToRecord , , acNewRec
Dim CSDL As Database, TBL As Recordset
Set CSDL = CurrentDb
Set TBL = CSDL.OpenRecordset("T10 HDMAIN", dbOpenTable)
If TBL.RecordCount <> 0 Then
TBL.MoveLast
MAQLHD = Format(Val(TBL!MAQLHD) + 1, "000000")
Else
MAQLHD = "000001"
End If
TBL.Close
CSDL.Close
MANV.SetFocus
MANV.Dropdown
End Sub


Chân thành cám ơn!
 
Sửa lần cuối:
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Mình xin nhờ bạn hướng dẫn thêm vấn đề về share file Data.mdb
vd:
- Không cho các máy không liên quan vào vọc, xoá, sửa,... như các file share thông thường. Mà chỉ các máy có liên quan phần mềm mới sử dụng được Folder data.mdb đã share này.
- không cho các máy App.mdb vào trực tiếp Link Table để thêm xoá sửa, chỉ thực hiện được những phần việc của mình trên form, và báo cáo report,.. đã thiết kế sẳn cho từng app.mdb

Sẳn tiện bạn chỉ dùm, đoạn mã để thêm hoá đơn mới chạy tốt khi ở data.mdb.
Nhưng nó báo lỗi khi sử dụng App.mdb ( có bảng là Link của data.mdb )

Chân thành cám ơn!

Muốn đừng ai đụng chạm đến data.mdb thì:
1. Đơn giản:
Tạo một group cho phép truy cập lên folder chứa data.mdb
Máy nào xài chương trình thì add nó vào group.
2. Phức tạp:
Muốn người sử dụng không được thao tác trực tiếp trên table thì phải tạo một system.mdw, trong đó tạo một group permission. Cái này nói dài dòng lắm, bạn có thể dùng help của Access để xem nội dung liên quan này.

Thử sửa cái dbOpenTable -> dbOpenSnapshot xem sao. Nghĩa là đừng mở nó theo dạng table mà mở theo dạng recordset mà thôi.
 
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Vừa tìm ra, bản gốc:
How to Share File with Group and User Permissions in Windows XP

Sometimes you might find out there is no group and user permissions control when you share file or folder in Windows XP.

Did you know why??
It’s because you use default simple file sharing, that way you don’t have user or group permissions control.

Below are step-by-step instructions on showing you how to share file and folder with group and user permissions in home network. Please note it only apply to Windows XP Professional Edition, you won’t be able to apply following steps if you are using Windows XP Home Edition. XP home edition users can only use simple file sharing.
Note: Make sure you've enabled File and Printer Sharing for Microsoft Networks on network card's properties, if not you won't be able to share file or printer.

1) Open the folder which you plan to share, go to Tools and click Folder Options.

2) Folder Options window will appear. Click View tab, scroll down in Advanced settings section and uncheck Use simple file sharing. Click OK at last.
Note: Simple file sharing is enabled by default in Windows XP’s computer that is not part of Active Directory. It won’t work for those Active Directory users or computers.

3) Now Right click the folder and click Sharing and Security.
4) Your folder properties window will appear. Click Share this folder and proceed to change the quantity of users that allowed to connect to this shared folder at the same time. You can also change the shared folder name. Later click Permissions button.

5) Folder Permissions window will appear. Here is the place where you set the users or groups that can access this shared folder over the network. In this case, I only allow Alice to access this folder with read permission. Click OK at last.
Note: Alice must login using username Alice and Alice’s password when she tries to access this folder from other computers that runs Windows 2000/XP. She also needs to login Windows 95/98/Me on other computers with the same username and password that set on this computer in order to access that shared folder.
Note: Remember to remove Everyone from accessing this folder unless it’s really needed.

6) Ok.. Back to your shared folder properties, select Security tab and here you can set the permissions for allowing the users and groups to access this folder from this computer. Here I only allow Administrators, my username Benny, creator owner and Alice (read permission only) to access this folder. Click OK at last
Note: You only able to set these permissions on local computer if you are using NTFS file system. This local security feature is available on every folder and file even you don't share them.

Note: Please be noted that the shared folder might inherits permissions from parent folder. Click Advanced button and uncheck folder inheritance, after that you can only remove those permissions that inherits from parent folder. Check out here to learn more on folder inheritance.

7) Once you have shared the folder, you will see there is a hand supporting your folder. You have successfully shared your folder. Finally you can share file by putting in this folder.

Bản dịch:

Làm thế nào để chia sẻ tệp với các Group và Quyền người này trong Windows XP

Đôi khi bạn có thể tìm hiểu không có nhóm cho phép người sử dụng và kiểm soát khi bạn chia sẻ tập tin hoặc thư mục trong Windows XP.

Bạn có biết tại sao?
Đó là bởi vì bạn sử dụng mặc định đơn giản, chia sẻ tập tin, như vậy bạn không có quyền truy cập người dùng hoặc một nhóm kiểm soát.

Dưới đây là từng bước hướng dẫn trên cho thấy bạn làm thế nào để chia sẻ tập tin và thư mục với các nhóm và cho phép người sử dụng trong mạng. Xin lưu ý nó chỉ áp dụng cho Windows XP Professional Edition, bạn sẽ không thể áp dụng theo các bước sau nếu bạn đang sử dụng Windows XP Home Edition. XP của nhà người sử dụng ấn bản chỉ có thể sử dụng đơn giản, chia sẻ tập tin. Lưu ý: Hãy chắc chắn rằng bạn đã kích hoạt Chia sẻ file và máy in cho Microsoft Networks trên card mạng của tài sản, nếu không bạn sẽ không thể để chia sẻ tập tin hoặc máy in.
enable-file-printer-sharing.jpg

1) Mở thư mục mà bạn đã lập kế hoạch để chia sẻ, hãy vào công cụ và nhấp vào Tùy chọn Thư mục.
folder-options.jpg


2) Thư mục Tùy chọn sẽ xuất hiện cửa sổ. Xem bấm vào thẻ tab, di chuyển xuống trong phần nâng cao cài đặt và bỏ chọn sử dụng đơn giản, chia sẻ tập tin. Nhấp OK ở cuối cùng. Lưu ý: đơn giản là chia sẻ tập tin kích hoạt theo mặc định trong Windows XP của máy tính mà không phải là một phần của Active Directory. Nó sẽ không làm việc cho những người sử dụng Active Directory hoặc máy tính.
disable-simple-file-sharing.jpg


3) Bây giờ phải bấm vào thư mục và bấm vào Chia sẻ và Bảo mật. 4) của bạn thư mục tài sản của cửa sổ sẽ xuất hiện. Chia sẻ Click vào thư mục này và tiếp tục để thay đổi số lượng người sử dụng mà cho phép kết nối đến thư mục này được chia sẻ cùng một lúc. Bạn cũng có thể thay đổi tên thư mục được chia sẻ. Sau đó bấm vào nút Quyền.
folder-shared-with-permissions.jpg


5) Thư mục Quyền cửa sổ sẽ xuất hiện. Sau đây là nơi mà bạn đặt hoặc các nhóm người dùng có thể truy cập thư mục này được chia sẻ qua mạng. Trong trường hợp này, tôi chỉ cho phép Alice để truy cập vào thư mục này với sự cho phép đọc. Nhấp OK ở cuối cùng.
Lưu ý: Alice phải đăng nhập bằng cách sử dụng tên người dùng Alice Alice và mật khẩu của cô khi cố gắng truy cập vào thư mục này từ máy tính khác mà chạy Windows 2000/XP. Cô cũng cần phải đăng nhập Windows 95/98/ME trên máy vi tính khác với cùng một tên người dùng và mật khẩu mà đặt trên máy tính này để truy cập mà thư mục được chia sẻ. Lưu ý: Lưu thông tin để loại bỏ tất cả mọi người từ các truy cập vào thư mục này, trừ khi nó thực sự cần thiết.
network-share-permissions.jpg

6) Ok .. Quay trở lại thư mục được chia sẻ tài sản của bạn, chọn thẻ tab và an ninh ở đây bạn có thể thiết lập các quyền cho phép cho những người dùng và các nhóm để truy cập vào thư mục này từ máy tính này. Ở đây tôi chỉ cho phép quản trị viên, tên người dùng của tôi Benny, tạo chủ sở hữu và Alice (chỉ cho phép đọc) để truy cập vào thư mục này. Nhấp OK ở cuối Lưu ý: Bạn chỉ có thể thiết lập các quyền địa phương trên máy tính nếu bạn đang sử dụng hệ thống tập tin NTFS. Đây là tính năng an ninh địa phương có sẵn trên tất cả các thư mục và tập tin, ngay cả bạn không chia sẻ chúng.
ntfs-permissions.jpg

Lưu ý: Xin vui lòng lưu ý rằng các thư mục có thể chia sẻ quyền truy cập kế thừa từ thư mục cha / mẹ. Click vào nút nâng cao và bỏ thư mục di sản thừa kế, sau đó bạn chỉ có thể loại bỏ những người có quyền truy cập kế thừa từ thư mục cha / mẹ. Kiểm tra đây để tìm hiểu thêm về thư mục di sản thừa kế (
disable-folder-inheritance.jpg
).

7) Một khi bạn đã chia sẻ thư mục, bạn sẽ thấy có một bàn tay của bạn hỗ trợ thư mục. Bạn đã thành công thư mục được chia sẻ của bạn. Cuối cùng, bạn có thể chia sẻ các tập tin bằng cách đặt trong thư mục này.
shared-folder.jpg
-----------------------------------------------------------------------------------------
Thử sửa cái dbOpenTable -> dbOpenSnapshot xem sao. Nghĩa là đừng mở nó theo dạng table mà mở theo dạng recordset mà thôi.

Bạn sửa trực tiếp vô đoạn mã thêm mới ở trên dùm mình luôn, cám ơn nhiều!
-----------------------------------------------------------------------------------------
Đã làm được dbopentable thay bằng dbopensnapshot.

Cám ơn bạn phatnq2002 nhiều!
 
Sửa lần cuối:
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Ứng dụng client - server trong access không đầy đủ ý nghĩ lắm. Chẳng qua đó là share file thôi. Nếu đúng nghĩa là client server thì phải là SQL server hoặc Oracle.
Hiện nay access vừa làm database vừa làm interface thì chỉ ứng dụng nhỏ thôi. Vì access có một lỗi rất lớn là mỗi lần truy xuất nhiều vào database thì nó sẽ 'phìn' to dung lượng file.
Giải quyết dứt điểm thì SQL server good rồi. Vì khi thay đổi phần phần cứng đối với SQL server thì các client cũng gần như không cần phải làm gì.
 
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Khi bạn chạy bằng share thì nó là share. Khi chạy server thì nó là server.
Việc Access phình to là ưu điểm hay là "lỗi"? Chưa chắc.
Hiển nhiên dùng SQL server thì nó có sẵn các công cụ để Grant. Bởi vì SQL server được viết cho "chỉ dùng làm server".
Làm với Access thì bạn phải từ bỏ thói quen viết cho máy đơn. Bạn cần tách rời data và giao diện.
 
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Không thể gọi việc 'phìn' đó là ưu điểm được. Việc ứng dụng access thì chỉ client xử lý (các đoạn code nằm trong interface), server kô xử lý gì cả, server chỉ là nơi chứa dữ liệu.
Còn nếu ứng dụng SQL server thì đúng nghĩa là client - server, vì client chỉ là interface, còn server lúc này sẽ xử lý dữ liệu (các store, function...).
 
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Làm thế nào để chia sẻ tệp với các Group và Quyền người này trong Windows XP

Đôi khi bạn có thể tìm hiểu không có nhóm cho phép người sử dụng và kiểm soát khi bạn chia sẻ tập tin hoặc thư mục trong Windows XP.

Bạn có biết tại sao?
Đó là bởi vì bạn sử dụng mặc định đơn giản, chia sẻ tập tin, như vậy bạn không có quyền truy cập người dùng hoặc một nhóm kiểm soát.

Dưới đây là từng bước hướng dẫn trên cho thấy bạn làm thế nào để chia sẻ tập tin và thư mục với các nhóm và cho phép người sử dụng trong mạng. Xin lưu ý nó chỉ áp dụng cho Windows XP Professional Edition, bạn sẽ không thể áp dụng theo các bước sau nếu bạn đang sử dụng Windows XP Home Edition. XP của nhà người sử dụng ấn bản chỉ có thể sử dụng đơn giản, chia sẻ tập tin. Lưu ý: Hãy chắc chắn rằng bạn đã kích hoạt Chia sẻ file và máy in cho Microsoft Networks trên card mạng của tài sản, nếu không bạn sẽ không thể để chia sẻ tập tin hoặc máy in.
enable-file-printer-sharing.jpg

1) Mở thư mục mà bạn đã lập kế hoạch để chia sẻ, hãy vào công cụ và nhấp vào Tùy chọn Thư mục.
folder-options.jpg


2) Thư mục Tùy chọn sẽ xuất hiện cửa sổ. Xem bấm vào thẻ tab, di chuyển xuống trong phần nâng cao cài đặt và bỏ chọn sử dụng đơn giản, chia sẻ tập tin. Nhấp OK ở cuối cùng. Lưu ý: đơn giản là chia sẻ tập tin kích hoạt theo mặc định trong Windows XP của máy tính mà không phải là một phần của Active Directory. Nó sẽ không làm việc cho những người sử dụng Active Directory hoặc máy tính.
disable-simple-file-sharing.jpg


3) Bây giờ phải bấm vào thư mục và bấm vào Chia sẻ và Bảo mật. 4) của bạn thư mục tài sản của cửa sổ sẽ xuất hiện. Chia sẻ Click vào thư mục này và tiếp tục để thay đổi số lượng người sử dụng mà cho phép kết nối đến thư mục này được chia sẻ cùng một lúc. Bạn cũng có thể thay đổi tên thư mục được chia sẻ. Sau đó bấm vào nút Quyền.
folder-shared-with-permissions.jpg


5) Thư mục Quyền cửa sổ sẽ xuất hiện. Sau đây là nơi mà bạn đặt hoặc các nhóm người dùng có thể truy cập thư mục này được chia sẻ qua mạng. Trong trường hợp này, tôi chỉ cho phép Alice để truy cập vào thư mục này với sự cho phép đọc. Nhấp OK ở cuối cùng.
Lưu ý: Alice phải đăng nhập bằng cách sử dụng tên người dùng Alice Alice và mật khẩu của cô khi cố gắng truy cập vào thư mục này từ máy tính khác mà chạy Windows 2000/XP. Cô cũng cần phải đăng nhập Windows 95/98/ME trên máy vi tính khác với cùng một tên người dùng và mật khẩu mà đặt trên máy tính này để truy cập mà thư mục được chia sẻ. Lưu ý: Lưu thông tin để loại bỏ tất cả mọi người từ các truy cập vào thư mục này, trừ khi nó thực sự cần thiết.
network-share-permissions.jpg

6) Ok .. Quay trở lại thư mục được chia sẻ tài sản của bạn, chọn thẻ tab và an ninh ở đây bạn có thể thiết lập các quyền cho phép cho những người dùng và các nhóm để truy cập vào thư mục này từ máy tính này. Ở đây tôi chỉ cho phép quản trị viên, tên người dùng của tôi Benny, tạo chủ sở hữu và Alice (chỉ cho phép đọc) để truy cập vào thư mục này. Nhấp OK ở cuối Lưu ý: Bạn chỉ có thể thiết lập các quyền địa phương trên máy tính nếu bạn đang sử dụng hệ thống tập tin NTFS. Đây là tính năng an ninh địa phương có sẵn trên tất cả các thư mục và tập tin, ngay cả bạn không chia sẻ chúng.
ntfs-permissions.jpg

Lưu ý: Xin vui lòng lưu ý rằng các thư mục có thể chia sẻ quyền truy cập kế thừa từ thư mục cha / mẹ. Click vào nút nâng cao và bỏ thư mục di sản thừa kế, sau đó bạn chỉ có thể loại bỏ những người có quyền truy cập kế thừa từ thư mục cha / mẹ. Kiểm tra đây để tìm hiểu thêm về thư mục di sản thừa kế (
disable-folder-inheritance.jpg
).

7) Một khi bạn đã chia sẻ thư mục, bạn sẽ thấy có một bàn tay của bạn hỗ trợ thư mục. Bạn đã thành công thư mục được chia sẻ của bạn. Cuối cùng, bạn có thể chia sẻ các tập tin bằng cách đặt trong thư mục này.
shared-folder.jpg

Mong giúp đở từ mục 3 trở đi, mò mà không ra. Cám ơn!
 
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Không thể gọi việc 'phìn' đó là ưu điểm được.
Theo bạn thì tại sao nó lại phình?


Việc ứng dụng access thì chỉ client xử lý (các đoạn code nằm trong interface), server kô xử lý gì cả, server chỉ là nơi chứa dữ liệu.
Còn nếu ứng dụng SQL server thì đúng nghĩa là client - server, vì client chỉ là interface, còn server lúc này sẽ xử lý dữ liệu (các store, function...).

Cái đó là do bạn làm thế chứ Access đâu có bắt phải làm thế.
Vì bạn cài giao diện trên client và share data. Sao không thử làm ngược lại?
 
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Không thể gọi việc 'phìn' đó là ưu điểm được. Việc ứng dụng access thì chỉ client xử lý (các đoạn code nằm trong interface), server kô xử lý gì cả, server chỉ là nơi chứa dữ liệu.
Còn nếu ứng dụng SQL server thì đúng nghĩa là client - server, vì client chỉ là interface, còn server lúc này sẽ xử lý dữ liệu (các store, function...).

Thế nếu ai đó không biết gì về SQL SERVER hoặc chưa có điều kiện để biết về SQL SERVER mà muốn làm một ứng dụng client-server thì phải bó chiếu à?

Client - server chỉ là một khái niệm, đừng quá cứng nhắc trong việc định thế nào là client, thế nào là server.
 
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Diễn Nôm: Ở thư mục bạn muốn share bấm phải chuột và chọn "Sharing and Security..."

Vừa xem lại cái máy cài FAT32 nên không thực hiện được, nó thiếu đi 1 tab sercurity trong share folder. hic

Giờ ôm máy đi Cày lại và chuyển qua NTFS, vì chuyển xong nó điếc luôn HĐH WinXP Pro.
 
Sửa lần cuối:
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Dùng FAT cũng không ảnh hưởng gì.
Vì ta vẫn set permissions cho từng người được mà.
 
Ðề: Tạo ứng dụng Client - Server đơn giản trong Access

Dùng FAT cũng không ảnh hưởng gì.
Vì ta vẫn set permissions cho từng người được mà.

Đã thực hiện được vụ share phân quyền, cám ơn mọi người nhiều!
 
Sửa lần cuối:

CẨM NANG KẾ TOÁN TRƯỞNG


Liên hệ: 090.6969.247

KÊNH YOUTUBE DKT

Cách làm file Excel quản lý lãi vay

Đăng ký kênh nhé cả nhà

SÁCH QUYẾT TOÁN THUẾ


Liên hệ: 090.6969.247

Top