2011-08-19 35 views
0

我試圖從URL打開表單。這個ms訪問數據庫將被託管在網絡中的一個共享文件夾中,並且客戶問我是否可以打開一個數據庫表單(我將不得不傳遞一個ID)。MS Access - 從URL打開數據庫表格

如果這是在網絡環境中,我會這樣做沒有任何問題,但誠實地在MS訪問我不知道如何做到這一點。

有人可以幫助我嗎?

+0

你能更具體嗎? 「從網址打開表單」是什麼意思?有人點擊瀏覽器中的鏈接並打開訪問表單? – Jacob

+0

您至少可以指定打開Access數據庫(然後可以打開表單)時運行的默認宏,但我不知道該makro是否會接受命令行參數。 – Filburt

回答

2

看看Register protocolRegistering an Application to a URL Protocol。他們對如何註冊協議的示例註冊表文件:

REGEDIT4 

[HKEY_CLASSES_ROOT\foo] 
@="URL:foo Protocol" 
"URL Protocol"="" 

[HKEY_CLASSES_ROOT\foo\shell] 

[HKEY_CLASSES_ROOT\foo\shell\open] 

[HKEY_CLASSES_ROOT\foo\shell\open\command] 
@="\"C:\\Program Files\\Application\\program.exe\" \"%1\"" 

您可以將最後一行更改爲類似:

@="\"C:\\Program Files\\Office\\access.exe\" \"C:\\path\\to\\your\\db.mdb\" /cmd \"%1\"" 

如果URL是foo:241245,下面的命令被稱爲:

0:
"C:\Program Files\Office\access.exe" "C:\path\to\your\db.mdb" /cmd "241245" 

在Access中,命令行參數由Command函數返回

在直接窗口:

?Command 
241245 
+0

謝謝你cularis,我會檢查並嘗試它。 –

-1

數據庫可以從一個網址打開像任何其他文件:

file://server/share/path/database.mdb 

如果在數據庫中有用戶級安全性,雖然這是行不通的。我只有通過使用Windows快捷方式才能做到這一點。

如果您沒有使用用戶級別的安全性並且URL可以正常工作,您可以通過轉到Access Options屏幕和Current Database選項卡,然後從顯示錶格下拉列表。

糟糕 - 我只是注意到,你說你需要通過一個ID。我不知道是否可以使用URL。

+0

是的,我需要傳遞參數。 –

0
  1. 打開從網絡位置Access數據庫(即使用UNC路徑,而不是從一個驅動器號或本地)。

  2. 導航,以便您可以看到數據庫中列出的窗體。

  3. 將表單拖到桌面上。直接到表單的快捷方式將在那裏創建。

雖然,我不認爲這是一個好主意。它是Access應用程序中用戶界面的替代品。此外,您對問題的描述聽起來像是您打算讓多個人打開相同的數據庫文件。這是一個非常糟糕的做法 - 最佳做法是將數據庫拆分(僅在服務器上使用數據表後端,以及在每個用戶的工作站上使用表單/報表等單獨複製前端)等等。比一個用戶不應該同時打開相同的前端。