Microsoft Access + Embedded OpenLayer Map

时间:2015-05-19 16:29:56

标签: ms-access openlayers-3

我们有一个Microsoft Access应用程序,我们在检查属性时在现场使用。我们正在构建/添加一个使用OpenLayer的embedded.html文件,以显示显示当前地理位置和目的地的地图。完成检查后,我们在路线列表中选择下一个属性,并在地图上突出显示。

我们如何在不重新加载地图的情况下将所选属性传达给嵌入式地图?

样机:http://i.imgur.com/zOCIXpe.png

当前解决方案

目前,我们使用Access的网页控件嵌入地图。每次我们选择一条记录时,Access都会重新加载嵌入式地图,并通过附加到URL传递即将发布的属性。

伪代码网址:C:\Applications\Inspection App\map.html?highlight:address123

这非常缓慢,尤其是在我们使用细胞数据的道路上。

期望/潜在解决方案

我们的目标是每次选择新记录时都将新属性传递给嵌入式地图,而不重新加载地图。

我所知道的两个假设选项是:

  1. 设计.html文件并以不重新加载整页的方式传递URL。
  2. 使用Microsoft Access Visual Basic将消息传递给它可以使用的.html文件。

1 个答案:

答案 0 :(得分:0)

我的公司广泛使用MS-Access,并且在我们使用的几乎所有应用程序中都嵌入了OL3地图。

我用来与地图进行通信而不必刷新页面的方法是编写一个MS-Access随后执行的JavaScript函数,可以通过按下按钮,更改标签等来实现......

假设您的Web浏览器控件名为“WebBrowser”,则会触发指定的JavaScript函数。

Private Sub ExampleButton_Click()   
  WebBrowser.Object.Document.parentWindow.execScript "javascriptFunctionYouWishToExecute(" & Args & ")", "JavaScript"
End Sub

我还没有找到一个优雅的解决方案来实现反向工作,除了写入隐藏的HTML div并让MS-Access通过计时器读取。