- 相關推薦
PowerBuilder和MapInfo的集成開發技術
PowerBuilder和MapInfo的集成開發技術
摘要: 本文介紹了客戶/服務器開發工具PowerBuilder和桌面地圖信息系統MapInfo集成開發的基本方法。重點討論了集成開發中的一些關鍵技術的實現方法。
關鍵詞:PowerBuilder,MapInfo,MapBasic,系統集成,OLE自動化,回調
0 引言
PowerBuilder 是一個面向對象的用于構造基于客戶/服務器(Client/Server)數據庫應用系統的開發工具,它通過ODBC可同時支持Sysbase、Oracle、Informix、SQL Server等多種關系數據庫,具有強大的數據庫應用程序開發功能,尤其是它提供的如數據窗口(Data Window)等工具,使其能夠更加方便有效地訪問與操縱數據庫。
MapInfo是由美國MapInfo公司推出的地理信息系統開發平臺,其核心包括MapInfo Professional和MapBasic兩個部件。通過MapInfo平臺,能把大量信息直觀地與地理圖形有機聯系起來,使枯燥的表格數據可視化,從而極大地方便了數據分析和輔助決策。
利用PowerBuilder強大的數據訪問與操縱能力和MapInfo的地圖信息管理功能,結合Integrated Mapping技術、OLE自動化技術等,將MapInfo地圖集成到PowerBuilder的應用中,可以迅速地開發出具有強大地圖處理能力的應用程序,使數據庫中繁雜抽象的數據快速、準確、靈活地顯示于電子地圖之上,將數據可視化,實現空間數據和屬性數據的有機結合。
1 開發框架
使用PowerBuilder和MapInfo集成開發技術所開發的應用程序,稱為集成的地圖應用程序(Integrated Mapping Application)。在集成的地圖應用程序中,以客戶/服務器的開發模式,使用PowerBuilder開發的應用程序稱為客戶程序?蛻舫绦蜻\行在前臺,通過OLE調用在后臺運行的作為OLE自動化服務器的Mapinfo。
在集成的地圖應用程序中,根據MapInfo提供的Integrated Mapping接口,在PowerBuilder客戶程序中使用Outbound OLE Automation(輸出OLE自動化)技術,將MapInfo的地圖窗口集成到客戶程序中,從而使客戶程序具備地圖處理能力?蛻舫绦蚴褂肕apInfo OLE自動化對象、MapBasic OLE自動化對象的有關屬性和方法,通過MapInfo OLE自動化服務器對集成的地圖窗口進行控制。圖1給出了客戶程序和服務器程序間的關系。
圖1 PowerBuilder客戶程序和MapInfo服務器的關系
2.建立PowerBuilder客戶程序和MapInfo OLE服務器的連接
建立PowerBuilder客戶程序和MapInfo OLE服務器的連接在原理上是:在PowerBuilder開發的客戶程序中,通過使用Outbound OLE Automation技術實現客戶程序和MapInfo服務器的連接,借助OLE調用MapInfo服務器。具體實現上是:在包含地圖窗口的框架窗口的Open事件中添加代碼,創建一個新的OLEObject,而將MapInfo作為這個新的OLEObject的OLE服務器。要調用MapInfo服務,則需調用ConnectToNewObject()函數并傳遞OLE Programmable Object的程序標識,即“MapInfo.Application”:
//OLEObject對象的實例
OLEObject MapInfo
//接收錯誤代碼
Integer ErrCode
//創建一個與MapInfo進行通信的OLE自動化對象
MapInfo = Create OLEObject
//連接OLE自動化對象到MapInfo服務器
ErrCode = MapInfo.ConnectToNewObject("MapInfo.Application")
If ErrCode
【PowerBuilder和MapInfo的集成開發技術】相關文章:
Mapinfo在退耕還林中應用技術研究――Mapinfo軟件實用技術03-03
自動分標組合技術的研究和開發12-02
淺析集成制造系統的技術構成03-17
CAD/CAM 技術和知識庫技術在汽車開發中的應用03-29
音樂噴泉計算機集成控制的應用與開發03-18
在PowerBuilder中利用自動化技術調用Excel處理與打印表格03-19
軟件的復用技術及開發方法03-29
現代集成制造系統的技術構成及發展策略研究03-19