單據模板開發的一些注意事項

[基本開發步驟]

1. 利用Powerdisingn建立數據庫表,生成SQL語句
    注意:主鍵,非空等不要忽略。
    高度注意:非String型字段,非自定義字段不要命名爲: vdef*, def*,zdy* 等,如果這樣命名
會導致保存時類型錯誤,且getChangedVOFromUI()也會奇怪的取不到改字段的值。
    因爲在Bitl   BillItem裏有如下的限制:

   if ((getKey().startsWith("vdef") || getKey().startsWith("def") || (getKey()
     .startsWith("zdy") && isIsDef()))
     && strValue != null)


2. 利用生成的SQL腳本生成數據庫,生成數據字典

3. 如果不是業務單據,可隨便取一個單據類型(超過兩位,避免和業務單據衝突)
    生成單據模板。並在二次開發-》模板設置裏註冊
    注意:如果需要單據類型,那麼需要新增業務類型。

4. 利用CodeSeed生成VO類

5. 利用UIFactory選擇你所需要的UI模板。生成UI,CTL,HANDLE三個類。
    【關於前臺校驗】 需要在單據類型管理裏註冊CHK類,所以如果簡單校驗可直接在
     Handle:onSave()裏寫。
    【關於後臺校驗】  後臺有兩個類:
     1) 從IUniqueFieldCheck 繼承的類,定義校驗規則
     2) 實現了IBDBusiCheck,IBDACTION接口,提供check()方法以供調用。
    【關於ComboBox的設置】:
     protected void initBasicDataRuleComBox()
    {
        String[] strName = IBasicDataMatchRule.STR_RULES;
        getBillCardWrapper().initHeadComboBox("pfxxrule", strName, true);
        getBillListWrapper().initHeadComboBox("pfxxrule", strName, true);
        getBillCardWrapper().initBodyComboBox("matchrule", strName, true);
        getBillListWrapper().initBodyComboBox("matchrule", strName, true);
    }

6. 建立查詢模板並在 二次開發-》模板設置裏註冊。

7. 待續

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章