通路美科技
公司簡介|最新消息|技術與服務| 解決方案 | 資訊區 | 聯絡我們|菁英招募|網站導覽| 回首頁
資訊區

產品新訊
訓練課程
活動&其他
技術論壇
成功案例


ACUXML ® - 使COBOL程式能處裡標準XML文件

無標題文件

從The extend®6 family版本開始, 由ACUCOBOL-GT®所編寫的應用程式將可存取XML 文件。Acucorp® 設想以兩種方式來存取XML, 第一, 6.0 版本將提供一套選擇性的工具用來讀取有效的(valid) XML 文件以及產生適合在ACUCOBOL-GT®中的FD檔,能使您在新的或既有ACUCOBOL-GT® 應用程式中存取XML 資料。第二, 將另外提供駐存在使用者電腦類似Acu4GL®的檔案系統介面,這個介面能讀取有效的(valid )或完美格式(well- formed )的XML 資料以及對COBOL的序列檔案作透通轉換的處理,或必要的話它將能轉換COBOL所輸出的資料成為XML格式,經由使用延伸檔案描述(XFDs),XFD 如同我們所知道的資料辭典(data dictionaries),提供一組虛擬對應(virtual map)將資料由某一個資料類型變成另一總資料類型。

XML-to-FD 轉換工具

為了提供COBOL程式能使用XML文件所需的準,首先必須決定資料在文件當中的性質與標籤使用的意圖。extend® 6.0版將提供特別轉換工具以讀取有效的(valid) XML 文件 (那就是, 用來連結DTDs 或 輪廓(schemas)) 以及產生適合COBOL程式的檔案描述(FD),由於有效文件的結構是非常特別而且有清楚的定義,FD 檔案工具能夠直譯 XML 的資料以及產生FD。(不過well-formed文件無法達到這種需求)。

ACUCOBOL-GT® and XML

以特別工具產生的FD將擁有和XML檔案相同的資料結構,所有資料元件會以父/子系關聯性表現,涵蓋其陣列定義,對資料類型的定義,假如檔案中包括了輪廓( schema),資料類型的定義將具有非常準確的程度,假如檔案包含了DTD ,這套工具會分析文件內容並能對資料的類別作出具有智慧性的判斷(例如., 數字型態的資料會被指定為NUMBER 類型,等等)。一旦產生出FD檔後,程式開發人員必須把它放在COBOL程式當中。

XML介面

XML介面非常密切在包含 XML FD檔的ACUCOBOL-GT®應用程式與XML文件本身,類似 Acu4GL®, 此介面在程式編譯期間動態的讀取和使用資料字典(data dictionaries) 產生企業標準的XML,當ACUCOBOL-GT® runtime 模組執行 COBOL 應用程式時,這個介面會在後台執行必要作業以符合程式與資料的需要,使用者完全不需要知道 XML如何使用這個系統介面。藉助這個系統介面,ACUCOBOL-GT® 程式將可以讀取任一種使用者指出的 XML檔案 (必須是valid或well-formed) 並且加資料儲存在序列檔案中,這些檔案都可以被應用程式處理然後傳回要求的檔案格式。同樣的, ACUCOBOL-GT® 程式能夠開啟任何使用者所必須的索引、關聯或者序列的檔案,讀取與處理資料,並輸出XML格式的序列檔案,使用者可以指定將哪些檔案輸出成XML文件並且決定要不要在輸出中加入DTD,依據這樣的情況, XML文件在眼前會被考量---資料傳輸的機制比儲存機制更重要。請注意在讀取XML檔案時並且寫成像XML一樣的資料時並不需要產生同一個檔案,資訊是會相同的,但標籤架框(markup)或是包裹(wrappers)卻很可能會相同。使用XML介面必需使用延伸檔案描述(XFDs),也就是一所稱之資料字典檔,為了轉換XML檔案中的資料成為COBOL與vice versa,XFD檔會在編譯時產生,目前被使用於Acu4GL®介面的XFDs檔結構將會被加強以符合XML豐富的檔案結構。

資料字典檔

Acucorp®的 XML 介面依據資料字典對應 COBOL 的紀錄(Record)與XML資料類型,這些字典檔案也稱為延伸檔案描述(XFD) 因為它們是以標準的COBOL的檔案描述格式(FD)為基本作為描述。為了產生XFD,必須在編譯COBOL原始碼時在指令行上指定 "-Fxa" , (有時可能在先前已經為了利用Acu4GL®來存取關聯式資料庫而以此方式產生過XFD檔) 當使用 "-Fxa" 選項時,XFD檔可透過每一個在程式中的索引檔、關聯檔或是循序檔案而產生。起始自6.0新版 6.0,XFD 將和SQL資料類型一樣包含關於豐富結構的XML資訊文件,它們會再COBOL程式所使用的檔案及程式所接收延伸資料檔案(在這裡指的是XML文件)之間提供一份對應地圖(map)。藉由XFD與新的XML介面,COBOL程式將可以開啟XML文件並且透過COBOL的檔案I/O語法來讀取及寫入。

處理方式:

以下的基本步驟是可使ACUCOBOL-GT®程式介接到XML的資料檔案:

  1. 程式開發人員接收到如預期般這樣的有效XML文件,而文件必須涉及到文件類型定義(DTD)或者輪廓(schema)。
  2. 程式開發人員經由extend® 6.0版所提供的XM-to-FD的轉換工具將有效的XML文件轉換及產生適合COBOL程式檔案描述(FD)。
  3. 程式開發人員將新的FD置入COBOL程式中(新的或是以存在的)。
  4. 利用ACUCOBOL-GT® 6.0版,程式開發人員指定以"-Fxa"編譯旗標來編譯COBOL原始碼,這樣做的意義主要是告訴編譯器將每一個COBOL的資料檔案各產生相對應的XFD。
  5. 使用者在其電腦上安裝最新的編譯目的碼與執行器(runtime),並將XML 介面、COBOL資料檔案、資料字典檔放置在一起。
  6. 使用者從商業夥伴或其他來源並存放在他們的電腦設備上。
  7. 執行期間,使用者指定XML資料檔/文件的存放位置,執行器則會按該位置自動將XML資料轉換成COBOL的格式並作後續處理。
  8. 執行期間,程式開啟使用者所要求的包括索引檔、關聯檔或者循序檔然後以XML的格式寫入輸出檔案。

*注意:當ACUCOBOL-GT® 執行器(runtime)欲處理遠端資料時,是經由AcuServer®作檔案存取的處理。

限制事項

當ACUCOBOL-GT®程式存取XML文件時可能會有一些限制事項,舉例來說,在6.0 版本中, 程式可以INPUT 或 OUTPUT來開啟檔案,但很可能不能以 IO 或 EXTEND。另外,XML檔案系統介面的原始執行方案只能寫入循序的XML檔案,由於Acucorp®把XML存取作業方案視為一種資料傳遞的機制而不是資料儲存的機制,不過這並不是最大限制因素。XML-to-FD轉換工具只能讀取''有效的(valid)" XML文件,這是唯一的方法以使轉換工具能確定檔案的內容。

如何使用XML

Acucorp® 為了支援XML的資料交換而設計了XML資料結構介面,不過這樣的優點也可運用到其他方面,以下是一些可能運用:

  • 商業間的資料交換-想像我們的客戶在網際網路上經由廣域網路運用Acucorp®的XML技術進行有效率商業間的資料交換,商業夥伴例如製造工廠與元件供應商、醫院與保險公司、購買者與銷售者等等均能透過XML的共同介面來交換重要的商業資料。

為了將兩部分的資料作交換,這兩部份都必須清楚且同意在文件中標籤與資料的意義,舉一個採購狀況的案例,購買者和銷售者兩方都必需遵循<STATUS>在發貨文件中所代表的意義。

  • 應用程式整合-假如目標之一是為了整合商業間的處理作業而合併各種從不同來源的資料,那麼可以經由Acucorp®的XML技術獲得幫助,將COBOL資料以XML格式相互轉換,企業間可利用這種技術將重要資料作最快速的交換,只要彼此對資料的定義都同樣地具有非常明確的了解,那麼來自於其他企業的資料也能被您的COBOL程式所讀取並加以處理,假如企業間選擇以XML作為共同傳輸機制,那麼應用程式整合將得以實現。

  • 企業資源規劃 (ERP)- ERP軟體藉由中央集權式處理功能以避免組織中多餘的處理作業來允諾可為企業節省金錢,已經使用ERP系統的企業可以選擇XML當作集權式系統的資料格式,Acucorp®的XML技術能被運用以整合COBOL程式存取XML資料。
  • 網際網路部署-XML很快的即將取代HTML成為新一代的在網際網路上的網頁出版顯示機制,假如欲將COBOL-based的XML文件顯示網站或者使用者的瀏覽器上,是很輕易可以做到的,配合額外程式開發,COBOL程式同樣能夠經由網際網路來開發XML的前端介面。

還有其他使用XML的可能?只有一些? 其實XML的運用能力可以是非常廣泛的,只要您選擇使用XML,那麼ACUCOBOL-GT®程式就可以處理XML資料。

運用XML技術需有哪些準備工作

倘若您對XML技術感到興趣,有許多的事項是您可以準備的,首先,你應該考慮誰是您想使用XML共同資料傳輸機制的對象-商業夥伴、終端用戶或是其他的公司內部的部門,下一步,您必需與其他的夥伴或企業計劃者取得一致的方法因為他們也一樣,必需有一個方法讀取或輸出XML,假如這些您都還沒準備,那麼您應該將您對XML優點的研究,分享這些資訊給其他的夥伴來加入。一旦您的XML共同傳輸機制取得了一致方式,那麼您可以開始對資料交換與了解XML標籤、DTD、schemas的意義作分析,假如已經有XML文件及DTD和schemas的樣本文件,如此當6.0版發行時,你可以評估XML-to-FD的轉換工具,修改您的ACUCOBOL-GT®程式並且執行測試。

Acucorp® 對於延伸傳統的COBOL應用軟體提供更寬廣及更有用開發方案,藉由支援新興的電腦語言例如Java和XML以及新技術例如網際網路,Acucorp®保障傳統COBOL用戶在測試時間、關鍵任務的應用程式上的投資。Acucorp®即將在新版The extend®6 family of solutions對XML提供支援,提供客戶在不需放棄現有的核心商業應用系統而能以新技術與其他新興的電腦語言相互聯繫。