如题:
供应链架构本来设计的就复杂,再加上单据中很多方法都定义成私有的,大大增加了二次开发的难度。
比如:
1.常量定义不应该是private,
[code] private static final String[] CURRENCYPRECISIONTAB = { "discountAmount", "amount", "tax", "taxAmount", "totalInvoicedAmount", "totalPaidAmount", "totalInvoiceAmt", "prepayment", "preReceived", "unPrereceivedAm", "totalPrePayAmt", "totalReqPayAmt" };
private static final String[] BASECURRENCYPRECISIONTAB = { "totalExpense", "localTax", "localTaxAmount", "localAmount" };
private static final String[] EXPENSECURRENCYPRECISIONTAB = { "expenseAmount", "tax", "unitExpense" };
private static final String[] PRICEPRECISIONTAB = { "price", "taxPrice", "actualTaxPrice", "actualPrice" };
private static final String[] QTYPRECISIONFROMUNITTAB = { "qty", "totalReceiveQty", "totalReceiptQty", "totalReturnedQty", "totalInvoicedQty", "planReceiveQty", "totalCancelledStockQty", "totalSupplyStockQty" };
private static final String[] QTYPRECISIONFROMBASEUNITTAB = { "baseQty" };[/code]2.对物料值改变的处理,也不应该定义成private
3.单据中UIHelper更不能定义成私有变量
以上情况多了去了,这些东西都定义成私有的,使用CTEx类进行功能扩展时原有的逻辑根本无法修改原逻辑。如果要实现基本上要反编译原逻辑代码重写一遍。
推荐阅读