nc.impl.pubapp.pattern.database.DataAccessUtils 
  private void insertInfo(SaleOrderVO insertvo, List<List<Object>> datas) {
    IKeyValue keyValue = new VOKeyValue<SaleOrderVO>(insertvo);
    for (int i = 0; i < keyValue.getBodyCount(); i++) {
      List data = datas.get(i);
      data.set(0, keyValue.getBodyStringValue(i, SaleOrderBVO.CSALEORDERBID));
                                                                              
      data.set(1, keyValue.getHeadValue(SaleOrderHVO.CSALEORDERID));
    }
    DataAccessUtils dao = new DataAccessUtils(false);
    String sql = "insert into udh_saleorder_info(sbid,shid,udhbid,udhhid,pk_org)values(?,?,?,?,?)";
    JavaType[] types = new JavaType[] {
      JavaType.String, JavaType.String, JavaType.String, JavaType.String, JavaType.String
    };
    dao.update(sql, types, datas);
  }