public class getChangenum extends DefaultDataUtility { public Object getDataValue(String arg0, Object arg1, ModelContext arg2) throws WTException { //WTPart pt=(WTPart) arg1; WTDocument doc=(WTDocument) arg1; String ptnum=doc.getNumber().toString(); WTPart pt=null; PromotionTarget pro=null; ChangeRecord2 cr=null; WTChangeActivity2 ca=null; IncludedIn2 co=null; String authNum=null; QuerySpec qs=new QuerySpec(WTPart.class); SearchCondition sc= new SearchCondition(WTPart.class, WTPart.NUMBER, SearchCondition.EQUAL, ptnum); qs.appendWhere(sc, new int[] {0}); QueryResult qr= PersistenceHelper.manager.find((StatementSpec)qs); while (qr.hasMoreElements()){ pt=(WTPart) qr.nextElement(); WTPart latest = (WTPart) VersionControlHelper.service.allVersionsOf(pt.getMaster()).nextElement(); String version = wt.vc.VersionControlHelper.getVersionIdentifier(pt).getValue(); String versionLatest=VersionControlHelper.getVersionIdentifier(latest).getValue(); if (version.equals(versionLatest)){ System.out.println(pt.getName()+"\t" +pt.getNumber()+ "\t"+ pt.getIterationDisplayIdentifier()); String oid=pt.toString(); String oid1=oid.substring(oid.lastIndexOf(":")+1); long lg=Long.parseLong(oid1); //System.out.println(lg); QuerySpec qs1=new QuerySpec(PromotionTarget.class); SearchCondition sc1=new SearchCondition(PromotionTarget.class, "roleBObjectRef.key.id", SearchCondition.EQUAL, lg ); qs1.appendWhere(sc1, new int[]{0}); QueryResult qr1= PersistenceHelper.manager.find((StatementSpec)qs1); while (qr1.hasMoreElements()){ pro=(PromotionTarget)qr1.nextElement(); //System.out.println("this is PR" + pro.getPromotionNotice().getNumber()); authNum=pro.getPromotionNotice().getNumber(); } QuerySpec qs2= new QuerySpec(ChangeRecord2.class); SearchCondition sc2=new SearchCondition(ChangeRecord2.class, "roleBObjectRef.key.id", SearchCondition.EQUAL, lg); qs2.appendWhere(sc2, new int[]{0}); QueryResult qr2= PersistenceHelper.manager.find((StatementSpec)qs2); while (qr2.hasMoreElements()){ cr=(ChangeRecord2)qr2.nextElement(); //System.out.println(cr.getChangeActivity2()); String oid2=cr.getChangeActivity2().toString(); String oid3=oid2.substring(oid2.lastIndexOf(":")+1); //System.out.println(oid3); long lg1=Long.parseLong(oid3); QuerySpec qs3= new QuerySpec(WTChangeActivity2.class); SearchCondition sc3=new SearchCondition(WTChangeActivity2.class, "thePersistInfo.theObjectIdentifier.id", SearchCondition.EQUAL, lg1); qs3.appendWhere(sc3, new int[]{0}); QueryResult qr3= PersistenceHelper.manager.find((StatementSpec)qs3); while (qr3.hasMoreElements()){ ca=(WTChangeActivity2)qr3.nextElement(); //System.out.println(ca.getBranchIdentifier()); QuerySpec qs4= new QuerySpec(IncludedIn2.class); SearchCondition sc4=new SearchCondition(IncludedIn2.class, "roleBObjectRef.key.branchId", SearchCondition.EQUAL, ca.getBranchIdentifier()); qs4.appendWhere(sc4, new int[]{0}); QueryResult qr4= PersistenceHelper.manager.find((StatementSpec)qs4); while (qr4.hasMoreElements()){ co=(IncludedIn2)qr4.nextElement(); // System.out.println(co.getChangeOrder2().getNumber()); authNum=co.getChangeOrder2().getNumber(); } } } } } return authNum; } }