• Có cách nào Link file Backend từ thư mục chia sẻ ẩn không?
  • Có cách nào Link file Backend từ thư mục chia sẻ ẩn không?

    tungthoi15 > 09-12-21, 05:32 PM

    Em đang muốn tránh các cặp mắt tò mò vào file Backend, em muốn chia sẻ thư muc "CHIASE$" ở dạng ẩn, khi mọi người dùng file Font End thì có cách nào Link table từ file Data.mdb nằm trong thư mục chia sẻ ẩn kia không ạ? Tức là người dùng không cần map ổ đĩa thì vẫn link được data ạ
  • RE: Có cách nào Link file Backend từ thư mục chia sẻ ẩn không?

    tungthoi15 > 09-12-21, 05:51 PM

    May quá, em vào diễn đàn của mình tìm được đoạn code của bạn Minh Hằng và sửa 1 chút nên chạy được rồi.
    https://thuthuataccess.com/forum/thread-9681.html
    Mã PHP:
    Function Linktable1()
        Dim dbs As DAO.Database
        Dim tdf 
    As DAO.TableDef
        
        MyPass 
    ""
        MyPath "\\MAYCHU\CHIASE$\"
        
        ' Delete links so there won't be any duplicates
        For Each tdf In CurrentDb.TableDefs
            If Left(tdf.Name, 4) <> "
    MSys" And Left(tdf.Name, 15) <> "*" And (tdf.Attributes And dbAttachedTable) = dbAttachedTable Then
                CurrentDb.TableDefs.Delete tdf.Name
                End If
                Next tdf
                Set tdf = Nothing
                
                ' Setup Links
                Set dbs = OpenDatabase(MyPath & "
    data.mdb", False, False, "MS Access;PWD=" & MyPass)
                
                For Each tdf In dbs.TableDefs
                If Left(tdf.Name, 4) <> "
    msys" Then
                TableName = tdf.Name
                Set tdf = CurrentDb.CreateTableDef(TableName)
                tdf.Connect = "
    ;PWD=" & MyPass & ";Database=" + MyPath + "data.mdb"
                tdf.SourceTableName = TableName
                CurrentDb.TableDefs.Append tdf
            End If
        Next
    End Function 
  • RE: Có cách nào Link file Backend từ thư mục chia sẻ ẩn không?

    ongke0711 > 09-12-21, 06:31 PM

    (09-12-21, 05:32 PM)tungthoi15 Đã viết: Em đang muốn tránh các cặp mắt tò mò vào file Backend, em muốn chia sẻ thư muc "CHIASE$" ở dạng ẩn, khi mọi người dùng file Font End thì có cách nào Link table từ file Data.mdb nằm trong thư mục chia sẻ ẩn kia không ạ? Tức là người dùng không cần map ổ đĩa thì vẫn link được data ạ

    Access nó không quan tâm Folder chứa file Back End dạng ẩn (thêm $ sau tên Folder) hoặc ẩn chính file BE.accdb, Access vẫn tiến hành link table bình thường, miễn là đúng đường dẫn.
    Bạn cũng có thể đổi đuôi (extension) file để tránh các cặp mắt tò mò như: BE.dat, BE.abc... miễn là trong chuỗi đường dẫn kết nối cũng phải dùng đúng cái tên BE đã đổi extension.
    Vd: "D:\Temp\BEdata.abc"

    Về vấn đề Map ổ đĩa thì không cần dùng Map vì có thể sẽ có sự thay đổi đường dẫn tới file BE, khi đó phải đi Map drive lại cho từng PC thì mất thời gian qúa. Dùng code tự động link table. Có nhiều bài viết về cách làm này. Bên dưới là cách tôi thường dùng.
    Link: Tự động Link Table nhiều Database và tăng tốc kết nối


    Ps: bạn có làm được việc tự động cập nhật BE trong mạng LAN chưa?
  • RE: Có cách nào Link file Backend từ thư mục chia sẻ ẩn không?

    Noname > 10-12-21, 08:45 AM

    (09-12-21, 06:31 PM)ongke0711 Đã viết:
    (09-12-21, 05:32 PM)tungthoi15 Đã viết: Em đang muốn tránh các cặp mắt tò mò vào file Backend, em muốn chia sẻ thư muc "CHIASE$" ở dạng ẩn, khi mọi người dùng file Font End thì có cách nào Link table từ file Data.mdb nằm trong thư mục chia sẻ ẩn kia không ạ? Tức là người dùng không cần map ổ đĩa thì vẫn link được data ạ

    Access nó không quan tâm Folder chứa file Back End dạng ẩn (thêm $ sau tên Folder) hoặc ẩn chính file BE.accdb, Access vẫn tiến hành link table bình thường, miễn là đúng đường dẫn.
    Bạn cũng có thể đổi đuôi (extension) file để tránh các cặp mắt tò mò như: BE.dat, BE.abc... miễn là trong chuỗi đường dẫn kết nối cũng phải dùng đúng cái tên BE đã đổi extension.
    Vd: "D:\Temp\BEdata.abc"

    Về vấn đề Map ổ đĩa thì không cần dùng Map vì có thể sẽ có sự thay đổi đường dẫn tới file BE, khi đó phải đi Map drive lại cho từng PC thì mất thời gian qúa. Dùng code tự động link table. Có nhiều bài viết về cách làm này. Bên dưới là cách tôi thường dùng.
    Link: Tự động Link Table nhiều Database và tăng tốc kết nối


    Ps: bạn có làm được việc tự động cập nhật BE trong mạng LAN chưa?

    Về vấn đề map drive mình nghĩ là ý kiến hay.
    Nếu hệ thống đang có Domain server thì việc map ổ đĩa được áp từ server bằng script nên khá đơn giản, hoặc là gán đoạn code để startup tự kiểm tra có map ổ đĩa chưa để map lại.
    Việc map ổ đĩa để link back- end sẽ có lợi khi ta kích hoạt server dự phòng (trong trường hợp server chính có sự cố), khi đó chỉ cần map lại ổ đĩa mà không cần sửa chữa gì chương trình cả.
    Cũng có lợi trong trường hợp ta muốn test chương trình, thì chỉ cần trỏ ổ đĩa mạng tới 1 ổ USB có cùng tên ổ là được mà không ảnh hưởng dữ liệu chính
  • RE: Có cách nào Link file Backend từ thư mục chia sẻ ẩn không?

    ongke0711 > 10-12-21, 11:08 AM

    (10-12-21, 08:45 AM)Noname Đã viết: Về vấn đề map drive mình nghĩ là ý kiến hay.
    Nếu hệ thống đang có Domain server thì việc map ổ đĩa được áp từ server bằng script nên khá đơn giản, hoặc là gán đoạn code để startup tự kiểm tra có map ổ đĩa chưa để map lại.
    Việc map ổ đĩa để link back- end sẽ có lợi khi ta kích hoạt server dự phòng (trong trường hợp server chính có sự cố), khi đó chỉ cần map lại ổ đĩa mà không cần sửa chữa gì chương trình cả.
    Cũng có lợi trong trường hợp ta muốn test chương trình, thì chỉ cần trỏ ổ đĩa mạng tới 1 ổ USB có cùng tên ổ là được mà không ảnh hưởng dữ liệu chính

    Theo tôi, nếu Map ổ đĩa thì không đáp ứng nhu cầu: ẩn ổ đĩa, Folder chứa file Back end.

    Khi thay đổi ổ đĩa, dùng net use thì có thể tuỳ chọn ký tự ổ đĩa để map nhưng đường dẫn chi tiết từ folder tới file BE cũng phải không đổi thì mới đảm bảo việc tự động link table thành công mà không cần phải khai báo lại đường dẫn mới.
  • RE: Có cách nào Link file Backend từ thư mục chia sẻ ẩn không?

    tungthoi15 > 16-12-21, 09:30 AM

    (09-12-21, 06:31 PM)ongke0711 Đã viết:
    (09-12-21, 05:32 PM)tungthoi15 Đã viết: Em đang muốn tránh các cặp mắt tò mò vào file Backend, em muốn chia sẻ thư muc "CHIASE$" ở dạng ẩn, khi mọi người dùng file Font End thì có cách nào Link table từ file Data.mdb nằm trong thư mục chia sẻ ẩn kia không ạ? Tức là người dùng không cần map ổ đĩa thì vẫn link được data ạ

    Access nó không quan tâm Folder chứa file Back End dạng ẩn (thêm $ sau tên Folder) hoặc ẩn chính file BE.accdb, Access vẫn tiến hành link table bình thường, miễn là đúng đường dẫn.
    Bạn cũng có thể đổi đuôi (extension) file để tránh các cặp mắt tò mò như: BE.dat, BE.abc... miễn là trong chuỗi đường dẫn kết nối cũng phải dùng đúng cái tên BE đã đổi extension.
    Vd: "D:\Temp\BEdata.abc"

    Về vấn đề Map ổ đĩa thì không cần dùng Map vì có thể sẽ có sự thay đổi đường dẫn tới file BE, khi đó phải đi Map drive lại cho từng PC thì mất thời gian qúa. Dùng code tự động link table. Có nhiều bài viết về cách làm này. Bên dưới là cách tôi thường dùng.
    Link: Tự động Link Table nhiều Database và tăng tốc kết nối


    Ps: bạn có làm được việc tự động cập nhật BE trong mạng LAN chưa?
    Dạ, em cám ơn anh,
    Vấn đề cập nhật BE thì em chưa làm tự động được. Em làm theo cái mẹo của anh thôi. Trong file FE có table Verssion rồi khi người dùng đăng nhập sẽ so sánh với 1 biến "mVer" trong modul. Nếu nó khác nhau thì sẽ hiện msgbox yêu cầu người dùng tự copy bản mới, nếu không copy thì sẽ thoát app ra thôi.