// CircularlyAccessibleValueObject
  public static void runChangeVOAry(SuperVO[] souVos, SuperVO[] tarVos, String chanclassname)
      throws Exception {
    IchangeVO change = null;
    try {
      change = getChangeClass(chanclassname);
    } catch (Exception e) { // 可能存在类型转换异常 此处要求
      // changeClassName类需要继承VOConversion
      e.printStackTrace();
      throw new BusinessException(e);
    }

    if (!(change instanceof VOConversion)) {
      throw new BusinessException("数据转换组件异常," + change.toString());
    }
    AggregatedValueObject preBillVo = getTmpBIllVo1();
    AggregatedValueObject tarBillVo = getTmpBIllVo2();
    int index = 0;
    for (SuperVO souVo : souVos) {
      preBillVo.setParentVO(souVo);
      tarBillVo.setParentVO(tarVos[index]);
      AbstractConversion achange = (AbstractConversion) change;
      achange.retChangeBusiVO(preBillVo, tarBillVo);
      index++;
    }
  }
  private static void runChangeVOAry(
      AggregatedValueObject souVos, SuperVO[] tarVos, String chanclassname)
      throws BusinessException {
    IchangeVO change = null;
    try {
      change = getChangeClass(chanclassname);
    } catch (Exception e) { // 可能存在类型转换异常 此处要求
      // changeClassName类需要继承VOConversion
      e.printStackTrace();
      throw new BusinessException(e);
    }

    if (!(change instanceof VOConversion)) {
      throw new BusinessException("数据转换组件异常," + change.toString());
    }
    AggregatedValueObject preBillVo = souVos;

    AggregatedValueObject tarBillVo = getTmpBIllVo22();
    tarBillVo.setChildrenVO(tarVos);
    AbstractConversion achange = (AbstractConversion) change;
    achange.retChangeBusiVO(preBillVo, tarBillVo);
  }