ÉÏÒ»·â ÏÂÒ»·â ¿ª·¢
1.1¹ØÓÚ²ÎÕÕ
1.1.1ϵͳ²ÎÕÕ
µ±Òª´«Èë´øÌõ¼þµÄSQLÓï¾äʱ¾Í±ØÐëÐÞ¸ÄϵͳµÄ²ÎÕÕ,Èç:²ÎÕÕ¡°´æ»õ¹ÜÀíµµ°¸¡±£¬
Ö»²ÎÕÕ²ÎÊý¡°²úÆ·¶ÔÓ¦µÄ¶¥¼¶´æ»õ·ÖÀࡱËù¶¨ÒåµÄ´æ»õ·ÖÀ༰ÆäÏÂÊô·ÖÀàµÄ´æ»õµµ°¸¡£Èç¸Ã²ÎÊýΪ¿Õ£¬Ôò²ÎÕÕËùÓдæ»õµµ°¸¡£
ÔÚUIÖеÄsetDefaultDataÀàÖÐÌí¼Ó¶Ô²ÎÕÕ´«ÈëÌõ¼þµÄÐÞ¸Ä,Èç: // ²ÎÕÕ²éѯÌõ¼þÖØÐ´
// »ñµÃÒªÐ޸ĵıí¸ñÏîÄ¿,´Ë´¦ÎªÒªÐ޸ıíÍ·µÄ²úÆ·±àÂë
UIRefPane pane = (UIRefPane) getBillCardPanel().getHeadItem(
HpCostcardVO.PK_INVMANDOC).getComponent();
// »ñµÃ¸Ã²ÎÕյĸ¸Àà,ÒÔ±ãÐÞ¸ÄgetClassWherePart·½·¨
AbstractRefGridTreeModel model = (AbstractRefGridTreeModel) pane.getRefModel();
// »ñµÃ¸ÃÏîÄ¿µÄPKÖµ
if (SysInitBO_Client.getPkValue(this._getCorp().getPk_corp(), \) != null) {
// ͨ¹ý
PÖµ²éѯÐèÒªµÄÄÚÈÝK
String sPkValue = SysInitBO_Client.getPkValue(this._getCorp().getPk_corp(), \); String sWhere = model.getClassWherePart(); if (!sPkValue.equals(\)) { // ²éѯ³ö´óÀàµÄ±àÂë
SuperVO vo = HYPubBO_Client.queryByPrimaryKey(InvclVO.class,sPkValue);
}
}
sWhere = sWhere + \
+ vo.getAttributeValue(\).toString()+ \;
// ½«ÐµÄWHEREÌõ¼þ´«ÈësetClassWherePart·½·¨
model.setClassWherePart(sWhere);
1.1.2×Ô¶¨Òå²ÎÕÕ
µ±ÏµÍ³ÌṩµÄ²ÎÕÕ²»ÄÜÂú×ãÐèÇóµÄʱºò¾ÍÐèÒª½øÐÐ×Ô¶¨Òå²ÎÕÕ. ×Ô¶¨Òå²ÎÕÕÒ»°ã·ÖΪÏêÇé¼û×Ô¶¨Òå²ÎÕÕÎļþ¼ÐÏ¡£
2. ²éѯÎÊÌâ
2.1 ²éѯģ°æÖеÄ×Ô¶¨ÒåÏî
Èç¹ûÔÚ²éѯģ°æÖÐÌí¼ÓÁËһЩ×Ô¶¨ÒåÏî,µ«ÊǸõ¥¾ÝµÄÖ÷±í»òÕß×Ó±íÖж¼Ã»ÓиÃÏî¶ÔÓ¦µÄ×Ö¶Îʱ,¾ÍÐèÒªÐ޸IJéѯģ°æµÄ²éѯ·½·¨.
ÔÚMyDelegator.javaÖÐÐÞ¸ÄqueryByCondition()·½·¨£¬Éæ¼°µ½¶à±í£¬ËùÒÔÒª¼ÓÌõ
¼þ¡°dr¡±¸ÄΪ¡°±íÃû+dr¡±ÈçÏ£º
public SuperVO[] queryByCondition(Class voClass, String strWhere)
throws Exception {
strWhere = strWhere.replace(\, \); strWhere = strWhere + \ +ClientEnvironment.getInstance().getCorporation().getPk_corp()
+ \;SuperVO[] queryVos = nc.ui.hp.pub.ServiceFactory.getIHPPubService()
.queryCostgather(strWhere);
// return super.queryByCondition(voClass, strWhere);
return queryVos; }
Èç¹ûÔÚÌõ¼þÖÐÐèÒª¼ÓÈëÆäËûµÄÌõ¼þ£¬±ÈÈç¼ÓÈë±¾¹«Ë¾£¬ÐèÒªÔÚMyEventHandler.javaÖÐÖØÔØonBoQuery()·½·¨
protected void onBoQuery() throws Exception { }
StringBuffer strWhere = new StringBuffer(); if (askForQueryCondition(strWhere) == false)
return;// Óû§·ÅÆúÁ˲éѯ
// SuperVO[] queryVos = queryHeadVOs(strWhere.toString()); getBufferData().clear(); // Ôö¼ÓÊý¾Ýµ½Buffer // addDataToBuffer(queryVos);
strWhere.append(\ + strWhere + \
+ getUI()._getCorp().getPk_corp() + \);
doBodyQuery(strWhere.toString()); updateBuffer();
getUI().getBillCardPanel().setEnabled(true);
ͬʱ½«²éѯģ°æÖеÄËùÓÐÏîÄ¿¶¼¸ÄΪ£º±íÃû+ÏîÄ¿Ãû¡£ È磺½«pk_costcardÐÞ¸ÄΪhp_costcard. pk_costcard¡£
2.2 ±£´æºóË¢ÐÂ×Ô¶¨ÒåÏî
Èç¹ûÌí¼ÓÒ³ÃæÉÏÓÐ×Ô¶¨ÒåµÄÏîÄ¿£¬±£´æÊ±²»±£´æµ½Êý¾Ý¿â£¬ÄÇô±£´æÍê³ÉºóĬÈÏÊDz»¼ÓÔØÕâЩÏîµÄ£¬ÏëÒª¼ÓÔØ¾Í±ØÐëÖØÔØAbstractMyDelegator()·½·¨
/**
* ¸ù¾ÝÌõ¼þ½øÐÐÊý¾Ý²éѯ(ÖØÐ´) ÕŽ¨»Ô
*/
public SuperVO[] queryHeadAllData(Class headClass, String strBillType,
String strWhere) throws Exception {
BilltypeVO billVo = PfUIDataCache.getBillType(strBillType); if (billVo.getWherestring() != null }
&& billVo.getWherestring().length() != 0) {
if (strWhere != null)
strWhere = strWhere + \ + billVo.getWherestring() + \;
else
strWhere = billVo.getWherestring();
SuperVO[] vo = HYPubBO_Client.queryByCondition(headClass, strWhere); // ´Ë´¦µÄvo¶ÔÏóÊÇϵͳ°´ÕÕ±í²éѯ³öÀ´µÄvo, ÐèÒª½«´Ëvo½øÐд¦Àí£¬ // GetcostcardotherÊÇ´¦Àí´ËvoµÄ·½·¨
vo = nc.ui.hp.pub.ServiceFactory.getIHPPubService()
.Getcostcardother(vo);
return vo; }
²¢ÔÚMyEventHandler.javaÖÐÖØÔØonBoSave()·½·¨£¬ÔÚÀïÃæµÄ×îºó¼ÓÉÏÏÂÃæÒ»¾ä»°
super.onBoRefresh();
Getcostcardother(vo)´úÂë²Î¿¼CostCardDAO.java¡£
×¢£ºUIÖв»ÔÊÐíÖ±½ÓÒýÓÃBS¶ÎµÄÀ࣬ÐèÒª½¨Á¢½Ó¿Ú´Ó¶ø½øÐÐÒýÓá£
3. ±£´æÎÊÌâ
3.1 ±£´æÊ±±¨µ¥¾ÝÀàÐÍ´íÎó
Ïà¹ØÍÆ¼ö£º