以生产订单更新为已开始为例子说明如何覆写标准的功能
1,对Class:ProdUpdRelease的声明实例方法construct创建post事件
class VYA_ProdUpdReleaseEventHandler { } public static void constructPostHandler(XppPrePostArgs _args) { ProdUpdRelease prodUpdRelease; ; prodUpdRelease = _args.getReturnValue(); prodUpdRelease = new VYA_ProdUpdReleaseExtension(); _args.setReturnValue(prodUpdRelease); }
2,创建Class: VYA_ProdUpdReleaseExtension继承ProdUpdRelease
public class VYA_ProdUpdReleaseExtension extends ProdUpdRelease { }
3,添加需要覆写的方法
void updateProdBOM() { ProdBOM prodBOM; while select forupdate prodBOM where prodBOM.ProdId == prodParmRelease.ProdId { if (prodBOM.Reservation == ProdReservation::Release) { InventMovement::construct(prodBOM).updateReservation(); } // 添加客制化的逻辑代码 /* info("test"); */ if (prodBOM.mandatoryWMSOrder()) { prodBOM.createWMSOrder(); } } }