2009年12月29日 星期二
2009年12月28日 星期一
MDA vs UML
會寫程式沒什麼了不起,畢竟程式語言越來越高階,API 越來越多,開發工具越來越好用,寫程式的門檻自然就大大地降低了。想要開發出有價值的中大型系統,軟體工程就很重要。
這麼比喻好了,你可以隨便找一兩個工人用磚或木材來蓋一棟矮房,但是如果想蓋一百多層樓的紐約世貿雙星大樓,你非得有良好的工程規劃不可。軟體不也是如此?程式員名片上的頭銜都是工程師,雖然和建築工程師、機械工程師 ... 一樣都被稱為工程師,但比較起來,軟體產業的工程師卻是最不工程導向的。
何謂軟體工程方法?軟體開發的結構化方法包括有系統模型、代表符號、規則、設計建議以及程序指引等模型描述: 應該產生圖形化的模型描述規則: 套用至系統模型的限制建議: 良好的設計實務的建議程序指引: 依循哪些活動
因此, 沒有 MDA 的 UML 稱為有規矩的單兵作戰有 MDA 的 UML 稱為 有規矩的集團作戰。
-- Albert Chen
這麼比喻好了,你可以隨便找一兩個工人用磚或木材來蓋一棟矮房,但是如果想蓋一百多層樓的紐約世貿雙星大樓,你非得有良好的工程規劃不可。軟體不也是如此?程式員名片上的頭銜都是工程師,雖然和建築工程師、機械工程師 ... 一樣都被稱為工程師,但比較起來,軟體產業的工程師卻是最不工程導向的。
何謂軟體工程方法?軟體開發的結構化方法包括有系統模型、代表符號、規則、設計建議以及程序指引等模型描述: 應該產生圖形化的模型描述規則: 套用至系統模型的限制建議: 良好的設計實務的建議程序指引: 依循哪些活動
因此, 沒有 MDA 的 UML 稱為有規矩的單兵作戰有 MDA 的 UML 稱為 有規矩的集團作戰。
-- Albert Chen
MDA 實作二: Purchase Order 新增欄位
此次實作, 要在 Purchase Order 新增一個 Field, 而這個 Field 的欄位未在 Purchase 的 Table 存在, 所以, 要先於 Table 新增 Column。再回頭於 PO 的Window 把欄位放進去。
Step 1, 找出 Purchase Order 的 Table。於 Window, Tab & Field 的 Table 欄位, 按右鍵, Zoom 出 Table and Column 的畫面。


Step 2, 新增一 Column, 記錄 Document 的 Version。從 DocumentNo 來複製新欄位 (Copy Record, Shift-F2)。要記得 Synchronize Column, 如此, 才會在 Table 真正的新增欄位。

Step 3, 在上述作業中, 系統會提示 System Element 要唯一值, 所以也要新增一 System Element 給 DocumentNo_Ver 使用, 同樣透過 Zoom 的方式新增(不再贅述)。
Step 4, Table 的 Column 新增後, 要在 Window 的 Tab - Purchase Order 新增 Field - DocumentNo_Ver, 如此, 才可以在 PO 畫面看到這個欄位。
Step 1, 找出 Purchase Order 的 Table。於 Window, Tab & Field 的 Table 欄位, 按右鍵, Zoom 出 Table and Column 的畫面。


Step 2, 新增一 Column, 記錄 Document 的 Version。從 DocumentNo 來複製新欄位 (Copy Record, Shift-F2)。要記得 Synchronize Column, 如此, 才會在 Table 真正的新增欄位。

Step 3, 在上述作業中, 系統會提示 System Element 要唯一值, 所以也要新增一 System Element 給 DocumentNo_Ver 使用, 同樣透過 Zoom 的方式新增(不再贅述)。
Step 4, Table 的 Column 新增後, 要在 Window 的 Tab - Purchase Order 新增 Field - DocumentNo_Ver, 如此, 才可以在 PO 畫面看到這個欄位。
MDA 實作一: Purchase Order 減少欄位
以 Purchase Order 為例, 包括 Purchase order Header, PO Line, Matching, Requisition Lines, Order Tax等五個Tab。
Step 1, Purchase Order 是在這裡定義的: [Window, Tab & Field], 可以看到 Tab 裡面, 有 PO 的五筆 Tab 資料



Step 2, 再到 Purchase Order 的 Field 可以看到呈現的 Field, 我們將 Description 的欄位隱藏, 將 Displayed 的勾勾拿掉。


Step 3, 再回頭看 Purchase Order 的呈現結果, 原本在 Document No 底下的Description 不見了。
Step 1, Purchase Order 是在這裡定義的: [Window, Tab & Field], 可以看到 Tab 裡面, 有 PO 的五筆 Tab 資料



Step 2, 再到 Purchase Order 的 Field 可以看到呈現的 Field, 我們將 Description 的欄位隱藏, 將 Displayed 的勾勾拿掉。


Step 3, 再回頭看 Purchase Order 的呈現結果, 原本在 Document No 底下的Description 不見了。
2009年12月27日 星期日
動態預設值
何謂動態預設值?
如果選台灣, 預設值是台北; 如果選廣東, 預設值則為廣州。 城市為台北或廣州, 依據上一個省份的選項而有不同, 此即為動態預設值。
SAP 無法作到, Janus 可以修改達成。問題是: 誰會有這個需求?
如果選台灣, 預設值是台北; 如果選廣東, 預設值則為廣州。 城市為台北或廣州, 依據上一個省份的選項而有不同, 此即為動態預設值。
SAP 無法作到, Janus 可以修改達成。問題是: 誰會有這個需求?
MDA 實作
MDA 是用宣告的方式來產生畫面, 可以很方便的 Real Time Form Generator. 有了 MDA 的架構, 顧問將可以更專心於業務流程。不管是一個操作畫面的增減欄位, 增減 Button, 或新增一個操作畫面, 都可以用定義的方式產生, 而不用寫程式。
提供 KIWI 連結: Model-driven architecture
較白話文的說明: (叡揚資訊對其開發工具的介紹)
MDA 的開發工具
觀念一樣, 但 Adempiere 是ERP 的MDA. 將可以更快速的完成 ERP 所要求的工作。
實作一: Purchase Order 減少欄位
實作二: Purchase Order 新增欄位
實作三: 新增操作畫面程式
以上, 都可以用定義的方式產生, 所以, MDA 不是一個操作畫面對應一支程式。
Janus 是MDA, SAP 也是, Oracle 的 Quality Management 有點像是, 但 Oracle ERP 並不是。
MDA 更大的好處是: USER 可以看到完成的操作畫面, Acceptance 不用簽的提心吊膽。
提供 KIWI 連結: Model-driven architecture
較白話文的說明: (叡揚資訊對其開發工具的介紹)
MDA 的開發工具
觀念一樣, 但 Adempiere 是ERP 的MDA. 將可以更快速的完成 ERP 所要求的工作。
實作一: Purchase Order 減少欄位
實作二: Purchase Order 新增欄位
實作三: 新增操作畫面程式
以上, 都可以用定義的方式產生, 所以, MDA 不是一個操作畫面對應一支程式。
Janus 是MDA, SAP 也是, Oracle 的 Quality Management 有點像是, 但 Oracle ERP 並不是。
MDA 更大的好處是: USER 可以看到完成的操作畫面, Acceptance 不用簽的提心吊膽。
資工人的 ERP?
2009年12月26日 星期六
Right Click
Adempiere ERP 安裝
先決定版本: Compiere? Adempiere? OpenBravo? 系出同門。我喜歡 Adempiere 的介面。就 Adempiere 了。
AP: Adempiere 3.5.4a
DB: Oracle 10g R2
JAVA: jdk-6u16-windows-i586.exe
Albert 給了一個快速的方法, 只要事先裝好 DB, 把 Adempiere & Java Copy 到 C: 下就可以執行了。
或按照官方的安裝文件, 一下就裝好了。再不行的, 可以參考這裡的 Flash DEMO。
最後, 全新的 DB, 也可以 Import Sample Data, 前提是 Run_Setup 要指到新的 DB:
c:\adempiere\utils\RUN_ImportAdempiere.bat
看到這個畫面就令人感動了!
AP: Adempiere 3.5.4a
DB: Oracle 10g R2
JAVA: jdk-6u16-windows-i586.exe
Albert 給了一個快速的方法, 只要事先裝好 DB, 把 Adempiere & Java Copy 到 C: 下就可以執行了。
或按照官方的安裝文件, 一下就裝好了。再不行的, 可以參考這裡的 Flash DEMO。
最後, 全新的 DB, 也可以 Import Sample Data, 前提是 Run_Setup 要指到新的 DB:
c:\adempiere\utils\RUN_ImportAdempiere.bat
看到這個畫面就令人感動了!
Janus ERP 縁起
這是關於 Open Source - Adempiere ERP 的學習筆記。 Adempiere ERP 提供了很好的開發工具/ Framework,想用 Adempiere 記錄我在 ERP 的經驗。以我的技術能力,怎能勝任這樣的工作? 所以,就必須要有技術 -- Albert Chen 的協助。Albert Chen 是原始開發團隊之一 (Albertschen)
http://adempiere.org/home/ ...掛在 China 底下 :(
這裡所有的修改,都不代表 Adempiere。那, 就自己來取個響亮的名字吧!
JANUS is the Roman god with the two faces, one looking forward and one back.
這段時間的努力,將會完整的記錄在這裡。
http://adempiere.org/home/ ...掛在 China 底下 :(
這裡所有的修改,都不代表 Adempiere。那, 就自己來取個響亮的名字吧!
JANUS is the Roman god with the two faces, one looking forward and one back.
這段時間的努力,將會完整的記錄在這裡。
訂閱:
意見 (Atom)

