Program: 115324
Project: 115324
Buggy source:
public NewCRFBean toNewCRF(javax.sql.DataSource ds,ResourceBundle resPageMsg) throws IOException, CRFReadingException {
  String dbName=SQLInitServlet.getDBName();
  NewCRFBean ncrf=new NewCRFBean(ds,crfId);
  ncrf.setCrfId(crfId);
  StringBuffer buf=new StringBuffer();
  HSSFWorkbook wb=new HSSFWorkbook(fs);
  int numSheets=wb.getNumberOfSheets();
  ArrayList queries=new ArrayList();
  ArrayList errors=new ArrayList();
  ArrayList repeats=new ArrayList();
  HashMap tableNames=new HashMap();
  HashMap items=new HashMap();
  String pVersion="String_Node_Str";
  String pVerDesc="String_Node_Str";
  int parentId=0;
  int dataTypeId=5;
  HashMap itemCheck=ncrf.getItemNames();
  HashMap GroupCheck=ncrf.getItemGroupNames();
  HashMap openQueries=new LinkedHashMap();
  HashMap backupItemQueries=new LinkedHashMap();
  ArrayList secNames=new ArrayList();
  ArrayList<String> itemGroupOids=new ArrayList<String>();
  ArrayList<String> itemOids=new ArrayList<String>();
  CRFDAO cdao=new CRFDAO(ds);
  CRFBean crf=(CRFBean)cdao.findByPK(crfId);
  ItemDataDAO iddao=new ItemDataDAO(ds);
  ItemDAO idao=new ItemDAO(ds);
  CRFVersionDAO cvdao=new CRFVersionDAO(ds);
  ItemGroupDAO itemGroupDao=new ItemGroupDAO(ds);
  HashMap<String,String> allItems=new HashMap<String,String>();
  Map<String,String[]> parentValues=new HashMap<String,String[]>();
  int validSheetNum=0;
  for (int j=0; j < numSheets; j++) {
    HSSFSheet sheet=wb.getSheetAt(j);
    String sheetName=wb.getSheetName(j);
    if (sheetName.equalsIgnoreCase("String_Node_Str") || sheetName.equalsIgnoreCase("String_Node_Str") || sheetName.equalsIgnoreCase("String_Node_Str")) {
      validSheetNum++;
    }
  }
  if (validSheetNum != 3) {
    errors.add("String_Node_Str" + "String_Node_Str");
  }
  HSSFSheet sheet=wb.getSheetAt(4);
  HSSFCell insCell=sheet.getRow(1).getCell((short)0);
  String versionNo=insCell.toString();
  for (int j=0; j < numSheets; j++) {
    sheet=wb.getSheetAt(j);
    String sheetName=wb.getSheetName(j);
    if (sheetName.equalsIgnoreCase("String_Node_Str")) {
    }
 else {
      int numRows=sheet.getPhysicalNumberOfRows();
      int lastNumRow=sheet.getLastRowNum();
      String secName="String_Node_Str";
      String page="String_Node_Str";
      ArrayList resPairs=new ArrayList();
      ArrayList resNames=new ArrayList();
      HashMap htmlErrors=new HashMap();
      int blankRowCount=0;
      if (sheetName.equalsIgnoreCase("String_Node_Str")) {
        logger.info("String_Node_Str" + sheetName);
        Map labelWithOptions=new HashMap();
        Map labelWithValues=new HashMap();
        Map labelWithType=new HashMap<String,String>();
        logger.debug("String_Node_Str" + getValue(sheet.getRow(0).getCell((short)20)));
        boolean hasWDColumn="String_Node_Str".equalsIgnoreCase(getValue(sheet.getRow(0).getCell((short)20))) ? true : false;
        HashMap itemNames=new HashMap();
        for (int k=1; k < numRows; k++) {
          HSSFCell cell=sheet.getRow(k).getCell((short)0);
          String itemName=getValue(cell);
          itemName=itemName.replaceAll("String_Node_Str","String_Node_Str");
          itemNames.put(k,itemName);
        }
        for (int k=1; k < numRows; k++) {
          if (blankRowCount == 5) {
            logger.info("String_Node_Str");
            break;
          }
          if (sheet.getRow(k) == null) {
            blankRowCount++;
            continue;
          }
          int cellIndex=0;
          HSSFCell cell=sheet.getRow(k).getCell((short)0);
          String itemName=getValue(cell);
          itemName=itemName.replaceAll("String_Node_Str","String_Node_Str");
          if (!Utils.isMatchingRegexp(itemName,"String_Node_Str")) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (StringUtil.isBlank(itemName)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (itemName != null && itemName.length() > 255) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          if (repeats.contains(itemName)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ itemName+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          repeats.add(itemName);
          cell=sheet.getRow(k).getCell((short)1);
          String descLabel=getValue(cell);
          descLabel=descLabel.replaceAll("String_Node_Str","String_Node_Str");
          if (StringUtil.isBlank(descLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (descLabel != null && descLabel.length() > 4000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)2);
          String leftItemText=getValue(cell);
          if (leftItemText != null && leftItemText.length() > 4000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)3);
          String unit=getValue(cell).trim();
          if (unit != null && unit.length() > 0) {
            String muSql="String_Node_Str";
            if (this.existingUnits.size() > 0) {
            }
 else {
              this.existingUnits=this.measurementUnitDao.findAllNamesInUpperCase();
              if (this.existingUnits == null) {
                this.existingUnits=new TreeSet<String>();
              }
            }
            if (this.existingOIDs.size() > 0) {
            }
 else {
              this.existingOIDs=this.measurementUnitDao.findAllOIDs();
              if (this.existingOIDs == null) {
                this.existingOIDs=new TreeSet<String>();
              }
            }
            if (this.existingUnits.contains(unit.toUpperCase())) {
              this.logger.error("String_Node_Str" + unit + "String_Node_Str");
            }
 else {
              String oid="String_Node_Str";
              try {
                oid=new MeasurementUnitOidGenerator().generateOidNoValidation(unit);
              }
 catch (              Exception e) {
                throw new RuntimeException("String_Node_Str");
              }
              if (this.existingOIDs.contains(oid)) {
                if (oid.length() > 40) {
                  oid=oid.substring(0,35);
                }
                oid=new MeasurementUnitOidGenerator().randomizeOid(oid);
              }
              this.existingOIDs.add(oid);
              this.existingUnits.add(unit.toUpperCase());
              muSql=this.getMUInsertSql(oid,unit,ub.getId(),dbName);
              queries.add(muSql);
            }
          }
          cell=sheet.getRow(k).getCell((short)4);
          String rightItemText=getValue(cell);
          if (rightItemText != null && rightItemText.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)5);
          if (cell != null) {
            secName=getValue(cell);
            secName=secName.replaceAll("String_Node_Str","String_Node_Str");
          }
          if (secName != null && secName.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          if (!secNames.contains(secName)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)6);
          String groupLabel=getValue(cell);
          groupLabel=groupLabel.replaceAll("String_Node_Str","String_Node_Str");
          if (itemName.length() > 0) {
            if (!StringUtil.isBlank(groupLabel)) {
              allItems.put(itemName,groupLabel);
            }
 else {
              allItems.put(itemName,"String_Node_Str");
            }
          }
          cell=sheet.getRow(k).getCell((short)7);
          String header=getValue(cell);
          if (header != null && header.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)8);
          String subHeader=getValue(cell);
          if (subHeader != null && subHeader.length() > 240) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)9);
          String parentItem=getValue(cell);
          parentItem=parentItem.replaceAll("String_Node_Str","String_Node_Str");
          if (!StringUtil.isBlank(parentItem)) {
            if (!itemNames.containsValue(parentItem)) {
              errors.add("String_Node_Str" + k + "String_Node_Str");
            }
          }
          if (itemName != null && itemName.equalsIgnoreCase(parentItem)) {
            parentItem="String_Node_Str";
          }
          cell=sheet.getRow(k).getCell((short)10);
          int columnNum=0;
          String column=getValue(cell);
          if (!StringUtil.isBlank(column)) {
            try {
              columnNum=Integer.parseInt(column);
            }
 catch (            NumberFormatException ne) {
              columnNum=0;
            }
          }
          cell=sheet.getRow(k).getCell((short)11);
          if (cell != null) {
            page=getValue(cell);
          }
          cell=sheet.getRow(k).getCell((short)12);
          String questionNum=getValue(cell);
          cell=sheet.getRow(k).getCell((short)13);
          String responseType=getValue(cell);
          int responseTypeId=1;
          if (StringUtil.isBlank(responseType)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
 else {
            if (!ResponseType.findByName(responseType.toLowerCase())) {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
 else {
              responseTypeId=ResponseType.getByName(responseType.toLowerCase()).getId();
            }
            if (responseTypeId == 5) {
              cell=sheet.getRow(k).getCell((short)18);
              String def=getValue(cell);
              if (!StringUtil.isBlank(def)) {
                errors.add(resPageMsg.getString("String_Node_Str") + itemNames.get(k) + resPageMsg.getString("String_Node_Str"));
              }
            }
          }
          cell=sheet.getRow(k).getCell((short)14);
          String responseLabel=getValue(cell);
          if (StringUtil.isBlank(responseLabel) && responseTypeId != ResponseType.TEXT.getId() && responseTypeId != ResponseType.TEXTAREA.getId()) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
 else           if ("String_Node_Str".equalsIgnoreCase(responseType) && !"String_Node_Str".equalsIgnoreCase(responseLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)15);
          String resOptions=getValue(cell);
          if (responseTypeId == ResponseType.TEXT.getId()) {
            responseLabel="String_Node_Str";
          }
 else           if (responseTypeId == ResponseType.TEXTAREA.getId()) {
            responseLabel="String_Node_Str";
          }
          if (responseLabel.equalsIgnoreCase("String_Node_Str") || responseLabel.equalsIgnoreCase("String_Node_Str")) {
            resOptions="String_Node_Str";
          }
          if ("String_Node_Str".equalsIgnoreCase(responseType)) {
            resOptions="String_Node_Str";
          }
          int numberOfOptions=0;
          if (!resNames.contains(responseLabel) && StringUtil.isBlank(resOptions) && responseTypeId != ResponseType.TEXT.getId() && responseTypeId != ResponseType.TEXTAREA.getId()) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (!resNames.contains(responseLabel) && !StringUtil.isBlank(resOptions)) {
            if (responseTypeId == 8 || responseTypeId == 9) {
              numberOfOptions=1;
            }
 else {
              String text1=resOptions.replaceAll("String_Node_Str","String_Node_Str");
              String[] resArray=text1.split("String_Node_Str");
              numberOfOptions=resArray.length;
            }
          }
          String[] mapResArray=(String[])labelWithOptions.get(responseLabel);
          String text1=resOptions.replaceAll("String_Node_Str","String_Node_Str");
          String[] resArray=text1.split("String_Node_Str");
          if (labelWithOptions.containsKey(responseLabel)) {
            if (!StringUtil.isBlank(resOptions)) {
              for (int i=0; i < resArray.length; i++) {
                if (!resArray[i].equals(mapResArray[i])) {
                  errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
                  break;
                }
              }
            }
          }
 else {
            labelWithOptions.put(responseLabel,resArray);
          }
          cell=sheet.getRow(k).getCell((short)16);
          String resValues=getValue(cell);
          if (responseLabel.equalsIgnoreCase("String_Node_Str") || responseLabel.equalsIgnoreCase("String_Node_Str")) {
            resValues="String_Node_Str";
          }
          if ("String_Node_Str".equalsIgnoreCase(responseType)) {
            resValues="String_Node_Str";
          }
          if (!resNames.contains(responseLabel) && StringUtil.isBlank(resValues) && responseTypeId != ResponseType.TEXT.getId() && responseTypeId != ResponseType.TEXTAREA.getId()) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (responseTypeId == 8 || responseTypeId == 9) {
            if (resValues.contains("String_Node_Str")) {
              String[] s=resValues.split("String_Node_Str");
              if (!"String_Node_Str".equalsIgnoreCase(s[0].trim())) {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
              }
            }
            String exp=resValues;
            exp=exp.replace("String_Node_Str","String_Node_Str");
            exp=exp.replace("String_Node_Str","String_Node_Str");
            exp=exp.replace("String_Node_Str","String_Node_Str");
            resValues=exp;
            if (exp.startsWith("String_Node_Str")) {
              exp=exp.substring(5).trim();
            }
            exp=exp.replace("String_Node_Str","String_Node_Str");
            StringBuffer err=new StringBuffer();
            ArrayList<String> variables=new ArrayList<String>();
            ScoreValidator scoreValidator=new ScoreValidator(locale);
            if (!scoreValidator.isValidExpression(exp,err,variables)) {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ err);
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
            if (exp.startsWith("String_Node_Str") || exp.startsWith("String_Node_Str")) {
            }
 else {
              String group=groupLabel.length() > 0 ? groupLabel : "String_Node_Str";
              for (              String v : variables) {
                if (!allItems.containsKey(v)) {
                  errors.add("String_Node_Str" + v + "String_Node_Str"+ itemName+ "String_Node_Str"+ k+ "String_Node_Str");
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str","String_Node_Str");
                }
 else {
                  if (responseTypeId == 8 && !allItems.get(v).equalsIgnoreCase(group)) {
                    errors.add("String_Node_Str" + v + "String_Node_Str"+ itemName+ "String_Node_Str"+ k+ "String_Node_Str");
                    htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str","String_Node_Str");
                  }
 else                   if (responseTypeId == 9) {
                    String g=allItems.get(v);
                    if (!g.equalsIgnoreCase("String_Node_Str") && g.equalsIgnoreCase(group)) {
                      errors.add("String_Node_Str" + v + "String_Node_Str"+ itemName+ "String_Node_Str"+ k+ "String_Node_Str");
                      htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str","String_Node_Str");
                    }
                  }
                }
              }
            }
          }
 else           if (numberOfOptions > 0) {
            String value1=resValues.replaceAll("String_Node_Str","String_Node_Str");
            String[] resValArray=value1.split("String_Node_Str");
            if (resValArray.length != numberOfOptions) {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
          }
          String[] mapValArray=(String[])labelWithValues.get(responseLabel);
          String value1=resValues.replaceAll("String_Node_Str","String_Node_Str");
          String[] resValArray=value1.split("String_Node_Str");
          parentValues.put(secName + "String_Node_Str" + itemName,resValArray);
          if (labelWithValues.containsKey(responseLabel)) {
            if (!StringUtil.isBlank(resValues)) {
              for (int i=0; i < resValArray.length; i++) {
                if (!resValArray[i].equals(mapValArray[i])) {
                  errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
                  break;
                }
              }
            }
          }
 else {
            labelWithValues.put(responseLabel,resValArray);
          }
          cell=sheet.getRow(k).getCell((short)17);
          String responseLayout=getValue(cell);
          responseLayout=responseLayout.replaceAll("String_Node_Str","String_Node_Str");
          cell=sheet.getRow(k).getCell((short)19);
          String dataType=getValue(cell);
          dataType=dataType.replaceAll("String_Node_Str","String_Node_Str");
          String dataTypeIdString="String_Node_Str";
          if (StringUtil.isBlank(dataType)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
 else {
            if (!ItemDataType.findByName(dataType.toLowerCase())) {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
 else {
              if ("String_Node_Str".equalsIgnoreCase(responseType) && !"String_Node_Str".equalsIgnoreCase(dataType)) {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
              }
              dataTypeIdString="String_Node_Str" + dataType.toUpperCase() + "String_Node_Str";
            }
          }
          if (responseTypeId == 3 || responseTypeId == 5 || responseTypeId == 6 || responseTypeId == 7) {
            if (labelWithType.containsKey(responseLabel)) {
              if (!dataType.equalsIgnoreCase(labelWithType.get(responseLabel).toString())) {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
              }
            }
 else {
              labelWithType.put(responseLabel,dataType);
              if (resValArray.length > 0) {
                boolean wrongType=false;
                if ("String_Node_Str".equalsIgnoreCase(dataType)) {
                  for (                  String s : resValArray) {
                    String st=s != null && s.length() > 0 ? s.trim() : "String_Node_Str";
                    if (st.length() > 0) {
                      try {
                        Integer I=Integer.parseInt(st);
                        if (!I.toString().equals(st)) {
                          wrongType=true;
                        }
                      }
 catch (                      Exception e) {
                        wrongType=true;
                      }
                    }
                  }
                  if (wrongType) {
                    wrongType=false;
                    errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                    htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
                  }
                }
 else                 if ("String_Node_Str".equalsIgnoreCase(dataType)) {
                  for (                  String s : resValArray) {
                    String st=s != null && s.length() > 0 ? s.trim() : "String_Node_Str";
                    if (st.length() > 0) {
                      try {
                        Double I=Double.parseDouble(st);
                      }
 catch (                      Exception e) {
                        wrongType=true;
                      }
                    }
                  }
                  if (wrongType) {
                    errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                    htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
                  }
                }
              }
            }
          }
          cell=sheet.getRow(k).getCell((short)18);
          String default_value=getValue(cell);
          default_value=default_value.replaceAll("String_Node_Str","String_Node_Str");
          if ("String_Node_Str".equalsIgnoreCase(dataType) && !"String_Node_Str".equals(default_value)) {
            try {
              default_value=new SimpleDateFormat(ApplicationConstants.getDateFormatInItemData()).format(cell.getDateCellValue());
            }
 catch (            Exception e) {
              default_value=getValue(cell);
            }
          }
          if (default_value.length() > 0 && (responseTypeId == 8 || responseTypeId == 9)) {
            errors.add(resPageMsg.getString("String_Node_Str") + k + "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          cellIndex=19;
          String widthDecimal="String_Node_Str";
          logger.debug("String_Node_Str" + hasWDColumn);
          if (hasWDColumn) {
            ++cellIndex;
            cell=sheet.getRow(k).getCell((short)cellIndex);
            widthDecimal=getValue(cell);
            if (StringUtil.isBlank(widthDecimal)) {
              widthDecimal="String_Node_Str";
            }
 else {
              if ("String_Node_Str".equalsIgnoreCase(responseType) || "String_Node_Str".equalsIgnoreCase(responseType) || "String_Node_Str".equalsIgnoreCase(responseType)|| "String_Node_Str".equalsIgnoreCase(responseType)) {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
              }
 else {
                StringBuffer message=new StringBuffer();
                boolean isCalc=responseTypeId == 8 || responseTypeId == 9 ? true : false;
                message=Validator.validateWidthDecimalSetting(widthDecimal,dataType,isCalc,this.locale);
                if (message.length() > 0) {
                  errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ "String_Node_Str"+ message);
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
                }
              }
            }
          }
          ++cellIndex;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String regexp=getValue(cell);
          String regexp1="String_Node_Str";
          if (!StringUtil.isBlank(regexp)) {
            regexp1=regexp.trim();
            if (regexp1.startsWith("String_Node_Str")) {
              String finalRegexp=regexp1.substring(7).trim();
              if (finalRegexp.contains("String_Node_Str")) {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
              }
 else {
                if (finalRegexp.startsWith("String_Node_Str") && finalRegexp.endsWith("String_Node_Str")) {
                  finalRegexp=finalRegexp.substring(1,finalRegexp.length() - 1);
                  try {
                    Pattern p=Pattern.compile(finalRegexp);
                    char[] chars=regexp1.toCharArray();
                    regexp1="String_Node_Str";
                    for (                    char c : chars) {
                      if (c == '\\' && !dbName.equals("String_Node_Str")) {
                        regexp1+=c + "String_Node_Str";
                      }
 else {
                        regexp1+=c;
                      }
                    }
                  }
 catch (                  PatternSyntaxException pse) {
                    errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                    htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
                  }
                }
 else {
                  errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
                }
              }
            }
 else             if (regexp1.startsWith("String_Node_Str")) {
              boolean isProperFunction=false;
              try {
                Validator.processCRFValidationFunction(regexp1);
                isProperFunction=true;
              }
 catch (              Exception e) {
                errors.add(e.getMessage() + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
              }
            }
 else {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
            }
          }
          ++cellIndex;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String regexpError=getValue(cell);
          regexpError=regexpError.replaceAll("String_Node_Str","String_Node_Str");
          if (!StringUtil.isBlank(regexp) && StringUtil.isBlank(regexpError)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
          }
          if (regexpError != null && regexpError.length() > 255) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          ++cellIndex;
          boolean phiBoolean=false;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String phi=getValue(cell);
          if (StringUtil.isBlank(phi)) {
            phi="String_Node_Str";
          }
 else           if (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {
            double dphi=cell.getNumericCellValue();
            if ((dphi - (int)dphi) * 1000 == 0) {
              phi=(int)dphi + "String_Node_Str";
            }
          }
          if (!"String_Node_Str".equals(phi) && !"String_Node_Str".equals(phi)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
          }
 else {
            phiBoolean="String_Node_Str".equals(phi) ? true : false;
          }
          ++cellIndex;
          boolean isRequired=false;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String required=getValue(cell);
          if (StringUtil.isBlank(required)) {
            required="String_Node_Str";
          }
 else           if (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {
            double dr=cell.getNumericCellValue();
            if ((dr - (int)dr) * 1000 == 0) {
              required=(int)dr + "String_Node_Str";
            }
          }
          if (!"String_Node_Str".equals(required) && !"String_Node_Str".equals(required)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
          }
 else {
            isRequired="String_Node_Str".equals(required) ? true : false;
          }
          ++cellIndex;
          boolean isShowItem=true;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String showItem=getValue(cell);
          if (!StringUtil.isBlank(showItem)) {
            isShowItem="String_Node_Str".equals(showItem) ? false : true;
            isShowItem="String_Node_Str".equals(showItem) ? false : true;
          }
          ++cellIndex;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String display=getValue(cell);
          if (!StringUtil.isBlank(display)) {
            if (isShowItem != false) {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ (cellIndex - 1),resPageMsg.getString("String_Node_Str"));
            }
            String pvKey=secName + "String_Node_Str";
            String d=display.replaceAll("String_Node_Str","String_Node_Str");
            String[] par=d.split("String_Node_Str");
            if (par.length == 3) {
              String p0=par[0].trim();
              String p1=par[1].trim();
              String p2=par[2].trim();
              if (p0.length() > 0 && p1.length() > 0 && p2.length() > 0) {
                if (repeats.contains(p0)) {
                  pvKey+=p0;
                  if (parentValues.containsKey(pvKey)) {
                    String[] pvs=parentValues.get(pvKey);
                    boolean existing=false;
                    for (                    String s : pvs) {
                      if (s.trim().equals(p1)) {
                        existing=true;
                        break;
                      }
                    }
                    if (!existing) {
                      errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ p1.replace("String_Node_Str","String_Node_Str"));
                      htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
                    }
                  }
                }
 else {
                  errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ p0);
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
                }
              }
 else {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
              }
            }
 else {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
            }
          }
          String itemOid=idao.getValidOid(new ItemBean(),crfName,itemName,itemOids);
          itemOids.add(itemOid);
          String vlSql="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            vlSql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(itemName) + "String_Node_Str"+ stripQuotes(descLabel)+ "String_Node_Str"+ stripQuotes(unit)+ "String_Node_Str"+ (phiBoolean == true ? 1 : 0)+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ "String_Node_Str"+ itemOid+ "String_Node_Str";
          }
 else {
            vlSql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(itemName) + "String_Node_Str"+ stripQuotes(descLabel)+ "String_Node_Str"+ stripQuotes(unit)+ "String_Node_Str"+ phiBoolean+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ "String_Node_Str"+ itemOid+ "String_Node_Str";
          }
          backupItemQueries.put(itemName,vlSql);
          ItemBean ib=new ItemBean();
          ib.setName(itemName);
          ib.setUnits(unit);
          ib.setPhiStatus(phiBoolean);
          ib.setDescription(descLabel);
          ib.setDataType(ItemDataType.getByName(dataType.toLowerCase()));
          ResponseSetBean rsb=new ResponseSetBean();
          String resOptions1=resOptions.replaceAll("String_Node_Str","String_Node_Str");
          String resValues1=resValues.replaceAll("String_Node_Str","String_Node_Str");
          rsb.setOptions(stripQuotes(resOptions1),stripQuotes(resValues1));
          ItemFormMetadataBean ifmb=new ItemFormMetadataBean();
          ifmb.setResponseSet(rsb);
          ifmb.setShowItem(isShowItem);
          ib.setItemMeta(ifmb);
          items.put(itemName,ib);
          int ownerId=ub.getId();
          if (!itemCheck.containsKey(itemName)) {
            openQueries.put(itemName,vlSql);
          }
 else {
            ItemBean oldItem=(ItemBean)idao.findByNameAndCRFId(itemName,crfId);
            if (oldItem.getOwnerId() == ub.getId()) {
              if (!cvdao.hasItemData(oldItem.getId())) {
                String upSql="String_Node_Str";
                if (dbName.equals("String_Node_Str")) {
                  upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ "String_Node_Str"+ stripQuotes(unit)+ "String_Node_Str"+ "String_Node_Str"+ (phiBoolean ? 1 : 0)+ "String_Node_Str"+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId;
                }
 else {
                  upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ "String_Node_Str"+ stripQuotes(unit)+ "String_Node_Str"+ "String_Node_Str"+ phiBoolean+ "String_Node_Str"+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId;
                }
                openQueries.put(itemName,upSql);
              }
 else {
                String upSql="String_Node_Str";
                if ((oldItem.getDataType() == oldItem.getDataType().DATE) && (ib.getDataType() == ib.getDataType().PDATE)) {
                  if (dbName.equals("String_Node_Str")) {
                    upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ (phiBoolean ? 1 : 0)+ "String_Node_Str"+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId;
                  }
 else {
                    upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ phiBoolean+ "String_Node_Str"+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId;
                  }
                }
 else {
                  if (dbName.equals("String_Node_Str")) {
                    upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ "String_Node_Str"+ (phiBoolean ? 1 : 0)+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId;
                  }
 else {
                    upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ "String_Node_Str"+ phiBoolean+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId;
                  }
                }
                openQueries.put(itemName,upSql);
              }
            }
 else {
              ownerId=oldItem.getOwner().getId();
            }
          }
          String sql="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(responseLabel) + "String_Node_Str"+ stripQuotes(resOptions.replaceAll("String_Node_Str","String_Node_Str"))+ "String_Node_Str"+ stripQuotes(resValues.replace("String_Node_Str","String_Node_Str"))+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(responseType.toLowerCase())+ "String_Node_Str"+ versionIdString+ "String_Node_Str";
          }
 else {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(responseLabel) + "String_Node_Str"+ stripQuotes(resOptions)+ "String_Node_Str"+ stripQuotes(resValues)+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(responseType.toLowerCase())+ "String_Node_Str"+ versionIdString+ "String_Node_Str";
          }
          if (!resPairs.contains(responseLabel.toString().toLowerCase() + "String_Node_Str" + responseType.toString().toLowerCase())) {
            if (!resNames.contains(responseLabel)) {
              queries.add(sql);
              resNames.add(responseLabel);
            }
 else {
              errors.add("String_Node_Str" + (k + 1) + "String_Node_Str"+ responseLabel+ "String_Node_Str"+ responseType+ "String_Node_Str");
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str","String_Node_Str");
            }
            resPairs.add(responseLabel.toString().toLowerCase() + "String_Node_Str" + responseType.toString().toLowerCase());
          }
          String parentItemString="String_Node_Str";
          if (!StringUtil.isBlank(parentItem)) {
            if (dbName.equals("String_Node_Str")) {
              parentItemString="String_Node_Str" + stripQuotes(parentItem) + "String_Node_Str"+ ownerId+ "String_Node_Str";
            }
 else {
              parentItemString="String_Node_Str" + stripQuotes(parentItem) + "String_Node_Str"+ ownerId+ "String_Node_Str";
            }
          }
          String selectCorrectItemQueryPostgres="String_Node_Str" + "String_Node_Str" + itemName + "String_Node_Str"+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ itemName+ "String_Node_Str"+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ crfId+ "String_Node_Str"+ "String_Node_Str";
          String selectCorrectItemQueryOracle="String_Node_Str" + "String_Node_Str" + itemName + "String_Node_Str"+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ itemName+ "String_Node_Str"+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ crfId+ "String_Node_Str";
          String sql2="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            sql2="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + versionIdString + "String_Node_Str"+ stripQuotes(responseLabel)+ "String_Node_Str"+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ selectCorrectItemQueryOracle+ "String_Node_Str"+ stripQuotes(subHeader)+ "String_Node_Str"+ stripQuotes(header)+ "String_Node_Str"+ stripQuotes(leftItemText)+ "String_Node_Str"+ stripQuotes(rightItemText)+ "String_Node_Str"+ parentItemString+ "String_Node_Str"+ secName+ "String_Node_Str"+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ k+ "String_Node_Str"+ parentItem+ "String_Node_Str"+ columnNum+ "String_Node_Str"+ stripQuotes(page)+ "String_Node_Str"+ stripQuotes(questionNum)+ "String_Node_Str"+ stripQuotes(regexp1)+ "String_Node_Str"+ stripQuotes(regexpError)+ "String_Node_Str"+ (isRequired ? 1 : 0)+ "String_Node_Str"+ stripQuotes(default_value)+ "String_Node_Str"+ stripQuotes(responseLayout)+ "String_Node_Str"+ widthDecimal+ "String_Node_Str"+ isShowItem+ "String_Node_Str"+ stripQuotes(display)+ "String_Node_Str";
            logger.warn(sql2);
          }
 else {
            sql2="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + versionIdString + "String_Node_Str"+ stripQuotes(responseLabel)+ "String_Node_Str"+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ selectCorrectItemQueryPostgres+ "String_Node_Str"+ stripQuotes(subHeader)+ "String_Node_Str"+ stripQuotes(header)+ "String_Node_Str"+ stripQuotes(leftItemText)+ "String_Node_Str"+ stripQuotes(rightItemText)+ "String_Node_Str"+ parentItemString+ "String_Node_Str"+ secName+ "String_Node_Str"+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ k+ "String_Node_Str"+ parentItem+ "String_Node_Str"+ columnNum+ "String_Node_Str"+ stripQuotes(page)+ "String_Node_Str"+ stripQuotes(questionNum)+ "String_Node_Str"+ stripQuotes(regexp1)+ "String_Node_Str"+ stripQuotes(regexpError)+ "String_Node_Str"+ isRequired+ "String_Node_Str"+ stripQuotes(default_value)+ "String_Node_Str"+ stripQuotes(responseLayout)+ "String_Node_Str"+ widthDecimal+ "String_Node_Str"+ isShowItem+ "String_Node_Str"+ stripQuotes(display)+ "String_Node_Str";
          }
          queries.add(sql2);
          String sql3="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            sql3="String_Node_Str" + versionIdString + "String_Node_Str"+ selectCorrectItemQueryOracle+ "String_Node_Str";
          }
 else {
            sql3="String_Node_Str" + versionIdString + "String_Node_Str"+ selectCorrectItemQueryPostgres+ "String_Node_Str";
          }
          queries.add(sql3);
          if (!StringUtil.isBlank(groupLabel)) {
            ItemGroupBean itemGroup;
            ItemGroupMetadataBean igMeta;
            igMeta=new ItemGroupMetadataBean();
            itemGroup=new ItemGroupBean();
            try {
              logger.info("String_Node_Str" + groupLabel);
              itemGroup=(ItemGroupBean)itemGroups.get(groupLabel);
              logger.info("String_Node_Str" + groupLabel + "String_Node_Str"+ itemGroup.getName());
              igMeta=itemGroup.getMeta();
              if (igMeta == null) {
                igMeta=new ItemGroupMetadataBean();
              }
              String sqlGroupLabel="String_Node_Str";
              if (dbName.equals("String_Node_Str")) {
                sqlGroupLabel="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + itemGroup.getName() + "String_Node_Str"+ crfId+ "String_Node_Str"+ igMeta.getHeader()+ "String_Node_Str"+ igMeta.getSubheader()+ "String_Node_Str"+ igMeta.getLayout()+ "String_Node_Str"+ igMeta.getRepeatNum()+ "String_Node_Str"+ igMeta.getRepeatMax()+ "String_Node_Str"+ igMeta.getRepeatArray()+ "String_Node_Str"+ igMeta.getRowStartNumber()+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ "String_Node_Str"+ itemName+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId+ "String_Node_Str"+ k+ "String_Node_Str"+ igMeta.isShowGroup()+ "String_Node_Str"+ igMeta.isRepeatingGroup()+ "String_Node_Str";
              }
 else {
                sqlGroupLabel="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + itemGroup.getName() + "String_Node_Str"+ crfId+ "String_Node_Str"+ igMeta.getHeader()+ "String_Node_Str"+ igMeta.getSubheader()+ "String_Node_Str"+ igMeta.getLayout()+ "String_Node_Str"+ igMeta.getRepeatNum()+ "String_Node_Str"+ igMeta.getRepeatMax()+ "String_Node_Str"+ igMeta.getRepeatArray()+ "String_Node_Str"+ igMeta.getRowStartNumber()+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ "String_Node_Str"+ itemName+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId+ "String_Node_Str"+ k+ "String_Node_Str"+ igMeta.isShowGroup()+ "String_Node_Str"+ igMeta.isRepeatingGroup()+ "String_Node_Str";
              }
              queries.add(sqlGroupLabel);
            }
 catch (            NullPointerException e) {
              e.printStackTrace();
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + (k + 1)+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ groupLabel+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
          }
 else {
            String sqlGroupLabel="String_Node_Str";
            if (dbName.equals("String_Node_Str")) {
              sqlGroupLabel="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + crfId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ 1+ "String_Node_Str"+ 1+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ selectCorrectItemQueryOracle+ "String_Node_Str"+ k+ "String_Node_Str";
            }
 else {
              sqlGroupLabel="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + crfId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ 1+ "String_Node_Str"+ 1+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ selectCorrectItemQueryPostgres+ "String_Node_Str"+ k+ "String_Node_Str";
            }
            queries.add(sqlGroupLabel);
          }
        }
      }
 else       if (sheetName.equalsIgnoreCase("String_Node_Str")) {
        logger.info("String_Node_Str");
        ArrayList groupNames=new ArrayList();
        ItemGroupBean defaultGroup=new ItemGroupBean();
        defaultGroup.setName("String_Node_Str");
        defaultGroup.setCrfId(crfId);
        defaultGroup.setStatus(Status.AVAILABLE);
        String defaultGroupOid=itemGroupDao.getValidOid(defaultGroup,crfName,defaultGroup.getName(),itemGroupOids);
        itemGroupOids.add(defaultGroupOid);
        String defaultSql="String_Node_Str";
        if (dbName.equals("String_Node_Str")) {
          defaultSql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + defaultGroup.getName() + "String_Node_Str"+ defaultGroup.getCrfId()+ "String_Node_Str"+ defaultGroup.getStatus().getId()+ "String_Node_Str"+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ defaultGroupOid+ "String_Node_Str";
        }
 else {
          defaultSql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + defaultGroup.getName() + "String_Node_Str"+ defaultGroup.getCrfId()+ "String_Node_Str"+ defaultGroup.getStatus().getId()+ "String_Node_Str"+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ defaultGroupOid+ "String_Node_Str";
        }
        if (!GroupCheck.containsKey("String_Node_Str")) {
          queries.add(defaultSql);
        }
        for (int gk=1; gk < numRows; gk++) {
          if (blankRowCount == 5) {
            logger.info("String_Node_Str");
            break;
          }
          if (sheet.getRow(gk) == null) {
            blankRowCount++;
            continue;
          }
          HSSFCell cell=sheet.getRow(gk).getCell((short)0);
          String groupLabel=getValue(cell);
          groupLabel=groupLabel.replaceAll("String_Node_Str","String_Node_Str");
          if (StringUtil.isBlank(groupLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ gk+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + gk+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (groupLabel != null && groupLabel.length() > 255) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          if (groupNames.contains(groupLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ groupLabel+ resPageMsg.getString("String_Node_Str")+ gk+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + gk+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
 else {
            groupNames.add(groupLabel);
          }
          boolean isRepeatingGroup=true;
          boolean newVersionCrf=false;
          int cellNo=0;
          if (!(versionNo.equalsIgnoreCase("String_Node_Str") || versionNo.equalsIgnoreCase("String_Node_Str") || versionNo.equalsIgnoreCase("String_Node_Str"))) {
            cellNo=1;
            cell=sheet.getRow(gk).getCell((short)cellNo);
            try {
              isRepeatingGroup=cell.getBooleanCellValue();
              newVersionCrf=true;
            }
 catch (            Exception eee) {
              errors.add(resPageMsg.getString("String_Node_Str"));
            }
          }
          cell=sheet.getRow(gk).getCell((short)++cellNo);
          String groupHeader=getValue(cell);
          groupHeader=org.akaza.openclinica.core.form.StringUtil.escapeSingleQuote(groupHeader);
          if (groupHeader != null && groupHeader.length() > 255) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(gk).getCell((short)++cellNo);
          String groupRepeatNumber=getValue(cell);
          if (newVersionCrf && !isRepeatingGroup && !StringUtil.isBlank(groupRepeatNumber)) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
 else           if (!isRepeatingGroup && StringUtil.isBlank(groupRepeatNumber)) {
            groupRepeatNumber="String_Node_Str";
          }
 else {
            if (StringUtil.isBlank(groupRepeatNumber)) {
              groupRepeatNumber="String_Node_Str";
            }
 else             if (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {
              double dr=cell.getNumericCellValue();
              if ((dr - (int)dr) * 1000 == 0) {
                groupRepeatNumber=(int)dr + "String_Node_Str";
              }
            }
 else {
              logger.info("String_Node_Str");
            }
          }
          cell=sheet.getRow(gk).getCell((short)++cellNo);
          String groupRepeatMax=getValue(cell);
          if (newVersionCrf && !isRepeatingGroup && !StringUtil.isBlank(groupRepeatMax)) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
 else           if (!isRepeatingGroup && StringUtil.isBlank(groupRepeatMax)) {
            groupRepeatMax="String_Node_Str";
          }
 else {
            if (StringUtil.isBlank(groupRepeatMax)) {
              groupRepeatMax="String_Node_Str";
            }
 else             if (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {
              double dr=cell.getNumericCellValue();
              if ((dr - (int)dr) * 1000 == 0) {
                groupRepeatMax=(int)dr + "String_Node_Str";
                try {
                  int repeatMaxInt=Integer.parseInt(groupRepeatMax);
                  if (repeatMaxInt < 1) {
                    groupRepeatMax="String_Node_Str";
                  }
                }
 catch (                NumberFormatException nfe) {
                  groupRepeatMax="String_Node_Str";
                }
              }
            }
 else {
              logger.info("String_Node_Str");
            }
          }
          cell=sheet.getRow(gk).getCell((short)++cellNo);
          String showGroup=getValue(cell);
          boolean isShowGroup=true;
          if (!StringUtil.isBlank(showGroup)) {
            try {
              isShowGroup="String_Node_Str".equals(showGroup) ? false : true;
              isShowGroup="String_Node_Str".equals(showGroup) ? false : true;
            }
 catch (            Exception eee) {
              logger.debug("String_Node_Str");
            }
          }
          ItemGroupBean fgb=new ItemGroupBean();
          fgb.setName(groupLabel);
          fgb.setCrfId(crfId);
          fgb.setStatus(Status.AVAILABLE);
          ItemGroupMetadataBean igMeta=new ItemGroupMetadataBean();
          igMeta.setHeader(groupHeader);
          igMeta.setRepeatingGroup(isRepeatingGroup);
          igMeta.setShowGroup(isShowGroup);
          try {
            igMeta.setRepeatMax(new Integer(Integer.parseInt(groupRepeatMax)));
          }
 catch (          NumberFormatException n2) {
            n2.printStackTrace();
            if ("String_Node_Str".equals(groupRepeatMax)) {
              igMeta.setRepeatMax(40);
            }
 else {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ groupRepeatMax+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ gk+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
              htmlErrors.put(j + "String_Node_Str" + gk+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
          }
          try {
            igMeta.setRepeatNum(new Integer(Integer.parseInt(groupRepeatNumber)));
          }
 catch (          NumberFormatException n3) {
            n3.printStackTrace();
            errors.add(resPageMsg.getString("String_Node_Str") + resPageMsg.getString("String_Node_Str") + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ groupRepeatNumber+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ gk+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + gk+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          fgb.setMeta(igMeta);
          String groupOid=itemGroupDao.getValidOid(fgb,crfName,fgb.getName(),itemGroupOids);
          itemGroupOids.add(groupOid);
          String gsql="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            gsql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + fgb.getName() + "String_Node_Str"+ fgb.getCrfId()+ "String_Node_Str"+ fgb.getStatus().getId()+ "String_Node_Str"+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ groupOid+ "String_Node_Str";
          }
 else {
            gsql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + fgb.getName() + "String_Node_Str"+ fgb.getCrfId()+ "String_Node_Str"+ fgb.getStatus().getId()+ "String_Node_Str"+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ groupOid+ "String_Node_Str";
          }
          itemGroups.put(fgb.getName(),fgb);
          if (!GroupCheck.containsKey(fgb.getName())) {
            queries.add(gsql);
          }
        }
      }
 else       if (sheetName.equalsIgnoreCase("String_Node_Str")) {
        logger.info("String_Node_Str");
        for (int k=1; k < numRows; k++) {
          if (blankRowCount == 5) {
            break;
          }
          if (sheet.getRow(k) == null) {
            blankRowCount++;
            continue;
          }
          HSSFCell cell=sheet.getRow(k).getCell((short)0);
          String secLabel=getValue(cell);
          secLabel=secLabel.replaceAll("String_Node_Str","String_Node_Str");
          if (StringUtil.isBlank(secLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (secLabel != null && secLabel.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          if (secNames.contains(secLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ secLabel+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          secNames.add(secLabel);
          cell=sheet.getRow(k).getCell((short)1);
          String title=getValue(cell);
          title=title.replaceAll("String_Node_Str","String_Node_Str");
          if (StringUtil.isBlank(title)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (title != null && title.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)2);
          String subtitle=getValue(cell);
          if (subtitle != null && subtitle.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)3);
          String instructions=getValue(cell);
          if (instructions != null && instructions.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)4);
          String pageNumber=getValue(cell);
          if (pageNumber != null && pageNumber.length() > 5) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)5);
          String parentSection=getValue(cell);
          parentSection=parentSection.replaceAll("String_Node_Str","String_Node_Str");
          if (!StringUtil.isBlank(parentSection)) {
            try {
              parentId=Integer.parseInt(parentSection);
            }
 catch (            NumberFormatException ne) {
              parentId=0;
            }
          }
          cell=sheet.getRow(k).getCell((short)6);
          String strBorder=getValue(cell);
          strBorder=strBorder.replaceAll("String_Node_Str","String_Node_Str");
          Integer intBorder=new Integer(0);
          try {
            intBorder=new Integer(strBorder);
          }
 catch (          NumberFormatException npe) {
          }
          String sql="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str" + versionIdString + "String_Node_Str"+ secLabel+ "String_Node_Str"+ stripQuotes(title)+ "String_Node_Str"+ stripQuotes(instructions)+ "String_Node_Str"+ stripQuotes(subtitle)+ "String_Node_Str"+ pageNumber+ "String_Node_Str"+ k+ "String_Node_Str"+ parentId+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ intBorder+ "String_Node_Str";
          }
 else {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str" + versionIdString + "String_Node_Str"+ secLabel+ "String_Node_Str"+ stripQuotes(title)+ "String_Node_Str"+ stripQuotes(instructions)+ "String_Node_Str"+ stripQuotes(subtitle)+ "String_Node_Str"+ pageNumber+ "String_Node_Str"+ k+ "String_Node_Str"+ parentId+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ intBorder+ "String_Node_Str";
          }
          queries.add(sql);
        }
      }
 else       if (sheetName.equalsIgnoreCase("String_Node_Str")) {
        logger.info("String_Node_Str");
        if (sheet == null || sheet.getRow(1) == null || sheet.getRow(1).getCell((short)0) == null) {
          throw new CRFReadingException("String_Node_Str");
        }
        HSSFCell cell=sheet.getRow(1).getCell((short)0);
        crfName=getValue(cell);
        crfName=crfName.replaceAll("String_Node_Str","String_Node_Str");
        if (StringUtil.isBlank(crfName)) {
          throw new CRFReadingException("String_Node_Str");
        }
        if (crfName.length() > 255) {
          errors.add(resPageMsg.getString("String_Node_Str"));
        }
        CRFBean existingCRFWithSameName=(CRFBean)cdao.findByName(crfName);
        if (this.getCrfId() == 0) {
          if (existingCRFWithSameName.getName() != null && existingCRFWithSameName.getName().equals(crfName)) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
        }
        cell=sheet.getRow(1).getCell((short)1);
        String version=getValue(cell);
        version=version.replaceAll("String_Node_Str","String_Node_Str");
        ncrf.setVersionName(version);
        if (version != null && version.length() > 255) {
          errors.add(resPageMsg.getString("String_Node_Str"));
        }
        cell=sheet.getRow(1).getCell((short)2);
        String versionDesc=getValue(cell);
        versionDesc=versionDesc.replaceAll("String_Node_Str","String_Node_Str");
        if (versionDesc != null && versionDesc.length() > 4000) {
          errors.add(resPageMsg.getString("String_Node_Str"));
        }
        cell=sheet.getRow(1).getCell((short)3);
        String revisionNotes=getValue(cell);
        revisionNotes=revisionNotes.replaceAll("String_Node_Str","String_Node_Str");
        if (revisionNotes != null && revisionNotes.length() > 255) {
          errors.add(resPageMsg.getString("String_Node_Str"));
        }
        if (StringUtil.isBlank(revisionNotes)) {
          errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
          htmlErrors.put(j + "String_Node_Str",resPageMsg.getString("String_Node_Str"));
        }
        Connection con=null;
        String crfOid=null;
        if (crfId == 0) {
          crfOid=cdao.getValidOid(new CRFBean(),crfName);
          int nextCRFId;
          try {
            con=ds.getConnection();
            ResultSet nextIdRs;
            if (dbName.equals("String_Node_Str")) {
              nextIdRs=con.createStatement().executeQuery("String_Node_Str");
            }
 else {
              nextIdRs=con.createStatement().executeQuery("String_Node_Str");
            }
            nextIdRs.next();
            nextCRFId=nextIdRs.getInt(1);
            crfId=nextCRFId;
            ncrf.setCrfId(crfId);
            String createCRFSql;
            if (dbName.equals("String_Node_Str")) {
              createCRFSql="String_Node_Str" + crfId + "String_Node_Str"+ stripQuotes(crfName)+ "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ "String_Node_Str"+ crfOid+ "String_Node_Str"+ studyId+ "String_Node_Str";
            }
 else {
              createCRFSql="String_Node_Str" + crfId + "String_Node_Str"+ stripQuotes(crfName)+ "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ "String_Node_Str"+ crfOid+ "String_Node_Str"+ studyId+ "String_Node_Str";
            }
            queries.add(createCRFSql);
          }
 catch (          SQLException e) {
            logger.warn("String_Node_Str" + e.getMessage());
          }
 finally {
            if (con != null) {
              try {
                con.close();
              }
 catch (              SQLException e) {
                logger.warn("String_Node_Str");
              }
            }
          }
        }
        HashMap checkCRFVersions=ncrf.getCrfVersions();
        boolean overwrite=false;
        if (checkCRFVersions.containsKey(version)) {
          logger.info("String_Node_Str" + version);
          errors.add(resPageMsg.getString("String_Node_Str"));
          htmlErrors.put(j + "String_Node_Str",resPageMsg.getString("String_Node_Str"));
        }
        String oid;
        if (crfOid != null) {
          oid=cvdao.getValidOid(new CRFVersionBean(),crfOid,version);
        }
 else {
          CRFBean crfBean=(CRFBean)cdao.findByName(crfName);
          oid=cvdao.getValidOid(new CRFVersionBean(),crfBean.getOid(),version);
        }
        String sql="String_Node_Str";
        if (dbName.equals("String_Node_Str")) {
          if (crfId == 0) {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(version) + "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ "String_Node_Str"+ crfName+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ stripQuotes(revisionNotes)+ "String_Node_Str"+ oid+ "String_Node_Str";
          }
 else {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + version + "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ crfId+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ stripQuotes(revisionNotes)+ "String_Node_Str"+ oid+ "String_Node_Str";
          }
        }
 else {
          if (crfId == 0) {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(version) + "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ "String_Node_Str"+ crfName+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ stripQuotes(revisionNotes)+ "String_Node_Str"+ oid+ "String_Node_Str";
          }
 else {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + version + "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ crfId+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ stripQuotes(revisionNotes)+ "String_Node_Str"+ oid+ "String_Node_Str";
          }
        }
        queries.add(sql);
        pVersion=version;
        pVerDesc=versionDesc;
      }
      versionIdString="String_Node_Str" + pVersion + "String_Node_Str"+ crfId+ "String_Node_Str";
      buf.append(sheetName + "String_Node_Str");
      buf.append("String_Node_Str");
      buf.append("String_Node_Str");
      buf.append("String_Node_Str");
      buf.append("String_Node_Str" + wb.getSheetName(j) + "String_Node_Str"+ "String_Node_Str");
      for (int i=0; i < numRows; i++) {
        buf.append("String_Node_Str");
        if (sheet.getRow(i) == null) {
          continue;
        }
        int numCells=sheet.getRow(i).getLastCellNum();
        for (int y=0; y < numCells; y++) {
          HSSFCell cell=sheet.getRow(i).getCell((short)y);
          int cellType=0;
          String error="String_Node_Str";
          String errorKey=j + "String_Node_Str" + i+ "String_Node_Str"+ y;
          if (htmlErrors.containsKey(errorKey)) {
            error="String_Node_Str" + htmlErrors.get(errorKey) + "String_Node_Str";
          }
          if (cell == null) {
            cellType=HSSFCell.CELL_TYPE_BLANK;
          }
 else {
            cellType=cell.getCellType();
          }
switch (cellType) {
case HSSFCell.CELL_TYPE_BLANK:
            buf.append("String_Node_Str" + error + "String_Node_Str");
          break;
case HSSFCell.CELL_TYPE_NUMERIC:
        buf.append("String_Node_Str" + cell.getNumericCellValue() + "String_Node_Str"+ error+ "String_Node_Str");
      break;
case HSSFCell.CELL_TYPE_STRING:
    buf.append("String_Node_Str" + cell.getStringCellValue() + "String_Node_Str"+ error+ "String_Node_Str");
  break;
default :
buf.append("String_Node_Str" + error + "String_Node_Str");
}
}
buf.append("String_Node_Str");
}
buf.append("String_Node_Str");
buf.append("String_Node_Str");
buf.append("String_Node_Str");
buf.append("String_Node_Str");
}
}
ncrf.setQueries(queries);
ncrf.setItemQueries(openQueries);
ncrf.setBackupItemQueries(backupItemQueries);
ncrf.setItems(items);
if (!errors.isEmpty()) {
ncrf.setErrors(errors);
}
ncrf.setHtmlTable(buf.toString());
return ncrf;
}

Fixed version (ground truth):
public NewCRFBean toNewCRF(javax.sql.DataSource ds,ResourceBundle resPageMsg) throws IOException, CRFReadingException {
  String dbName=SQLInitServlet.getDBName();
  NewCRFBean ncrf=new NewCRFBean(ds,crfId);
  ncrf.setCrfId(crfId);
  StringBuffer buf=new StringBuffer();
  HSSFWorkbook wb=new HSSFWorkbook(fs);
  int numSheets=wb.getNumberOfSheets();
  ArrayList queries=new ArrayList();
  ArrayList errors=new ArrayList();
  ArrayList repeats=new ArrayList();
  HashMap tableNames=new HashMap();
  HashMap items=new HashMap();
  String pVersion="String_Node_Str";
  String pVerDesc="String_Node_Str";
  int parentId=0;
  int dataTypeId=5;
  HashMap itemCheck=ncrf.getItemNames();
  HashMap GroupCheck=ncrf.getItemGroupNames();
  HashMap openQueries=new LinkedHashMap();
  HashMap backupItemQueries=new LinkedHashMap();
  ArrayList secNames=new ArrayList();
  ArrayList<String> itemGroupOids=new ArrayList<String>();
  ArrayList<String> itemOids=new ArrayList<String>();
  CRFDAO cdao=new CRFDAO(ds);
  CRFBean crf=(CRFBean)cdao.findByPK(crfId);
  ItemDataDAO iddao=new ItemDataDAO(ds);
  ItemDAO idao=new ItemDAO(ds);
  CRFVersionDAO cvdao=new CRFVersionDAO(ds);
  ItemGroupDAO itemGroupDao=new ItemGroupDAO(ds);
  HashMap<String,String> allItems=new HashMap<String,String>();
  Map<String,String[]> parentValues=new HashMap<String,String[]>();
  int validSheetNum=0;
  for (int j=0; j < numSheets; j++) {
    HSSFSheet sheet=wb.getSheetAt(j);
    String sheetName=wb.getSheetName(j);
    if (sheetName.equalsIgnoreCase("String_Node_Str") || sheetName.equalsIgnoreCase("String_Node_Str") || sheetName.equalsIgnoreCase("String_Node_Str")) {
      validSheetNum++;
    }
  }
  if (validSheetNum != 3) {
    errors.add("String_Node_Str" + "String_Node_Str");
  }
  HSSFSheet sheet=wb.getSheetAt(4);
  HSSFCell insCell=sheet.getRow(1).getCell((short)0);
  String versionNo=insCell.toString();
  for (int j=0; j < numSheets; j++) {
    sheet=wb.getSheetAt(j);
    String sheetName=wb.getSheetName(j);
    if (sheetName.equalsIgnoreCase("String_Node_Str")) {
    }
 else {
      int numRows=sheet.getPhysicalNumberOfRows();
      int lastNumRow=sheet.getLastRowNum();
      String secName="String_Node_Str";
      String page="String_Node_Str";
      ArrayList resPairs=new ArrayList();
      ArrayList resNames=new ArrayList();
      HashMap htmlErrors=new HashMap();
      int blankRowCount=0;
      if (sheetName.equalsIgnoreCase("String_Node_Str")) {
        logger.info("String_Node_Str" + sheetName);
        Map labelWithOptions=new HashMap();
        Map labelWithValues=new HashMap();
        Map labelWithType=new HashMap<String,String>();
        logger.debug("String_Node_Str" + getValue(sheet.getRow(0).getCell((short)20)));
        boolean hasWDColumn="String_Node_Str".equalsIgnoreCase(getValue(sheet.getRow(0).getCell((short)20))) ? true : false;
        HashMap itemNames=new HashMap();
        for (int k=1; k < numRows; k++) {
          HSSFCell cell=sheet.getRow(k).getCell((short)0);
          String itemName=getValue(cell);
          itemName=itemName.replaceAll("String_Node_Str","String_Node_Str");
          itemNames.put(k,itemName);
        }
        for (int k=1; k < numRows; k++) {
          if (blankRowCount == 5) {
            logger.info("String_Node_Str");
            break;
          }
          if (sheet.getRow(k) == null) {
            blankRowCount++;
            continue;
          }
          int cellIndex=0;
          HSSFCell cell=sheet.getRow(k).getCell((short)0);
          String itemName=getValue(cell);
          itemName=itemName.replaceAll("String_Node_Str","String_Node_Str");
          if (!Utils.isMatchingRegexp(itemName,"String_Node_Str")) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (StringUtil.isBlank(itemName)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (itemName != null && itemName.length() > 255) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          if (repeats.contains(itemName)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ itemName+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          repeats.add(itemName);
          cell=sheet.getRow(k).getCell((short)1);
          String descLabel=getValue(cell);
          descLabel=descLabel.replaceAll("String_Node_Str","String_Node_Str");
          if (StringUtil.isBlank(descLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (descLabel != null && descLabel.length() > 4000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)2);
          String leftItemText=getValue(cell);
          if (leftItemText != null && leftItemText.length() > 4000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)3);
          String unit=getValue(cell).trim();
          if (unit != null && unit.length() > 0) {
            String muSql="String_Node_Str";
            if (this.existingUnits.size() > 0) {
            }
 else {
              this.existingUnits=this.measurementUnitDao.findAllNamesInUpperCase();
              if (this.existingUnits == null) {
                this.existingUnits=new TreeSet<String>();
              }
            }
            if (this.existingOIDs.size() > 0) {
            }
 else {
              this.existingOIDs=this.measurementUnitDao.findAllOIDs();
              if (this.existingOIDs == null) {
                this.existingOIDs=new TreeSet<String>();
              }
            }
            if (this.existingUnits.contains(unit.toUpperCase())) {
              this.logger.error("String_Node_Str" + unit + "String_Node_Str");
            }
 else {
              String oid="String_Node_Str";
              try {
                oid=new MeasurementUnitOidGenerator().generateOidNoValidation(unit);
              }
 catch (              Exception e) {
                throw new RuntimeException("String_Node_Str");
              }
              if (this.existingOIDs.contains(oid)) {
                if (oid.length() > 40) {
                  oid=oid.substring(0,35);
                }
                oid=new MeasurementUnitOidGenerator().randomizeOid(oid);
              }
              this.existingOIDs.add(oid);
              this.existingUnits.add(unit.toUpperCase());
              muSql=this.getMUInsertSql(oid,unit,ub.getId(),dbName);
              queries.add(muSql);
            }
          }
          cell=sheet.getRow(k).getCell((short)4);
          String rightItemText=getValue(cell);
          if (rightItemText != null && rightItemText.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)5);
          if (cell != null) {
            secName=getValue(cell);
            secName=secName.replaceAll("String_Node_Str","String_Node_Str");
          }
          if (secName != null && secName.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          if (!secNames.contains(secName)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)6);
          String groupLabel=getValue(cell);
          groupLabel=groupLabel.replaceAll("String_Node_Str","String_Node_Str");
          if (itemName.length() > 0) {
            if (!StringUtil.isBlank(groupLabel)) {
              allItems.put(itemName,groupLabel);
            }
 else {
              allItems.put(itemName,"String_Node_Str");
            }
          }
          cell=sheet.getRow(k).getCell((short)7);
          String header=getValue(cell);
          if (header != null && header.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)8);
          String subHeader=getValue(cell);
          if (subHeader != null && subHeader.length() > 240) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)9);
          String parentItem=getValue(cell);
          parentItem=parentItem.replaceAll("String_Node_Str","String_Node_Str");
          if (!StringUtil.isBlank(parentItem)) {
            if (!itemNames.containsValue(parentItem)) {
              errors.add("String_Node_Str" + k + "String_Node_Str");
            }
          }
          if (itemName != null && itemName.equalsIgnoreCase(parentItem)) {
            parentItem="String_Node_Str";
          }
          cell=sheet.getRow(k).getCell((short)10);
          int columnNum=0;
          String column=getValue(cell);
          if (!StringUtil.isBlank(column)) {
            try {
              columnNum=Integer.parseInt(column);
            }
 catch (            NumberFormatException ne) {
              columnNum=0;
            }
          }
          cell=sheet.getRow(k).getCell((short)11);
          if (cell != null) {
            page=getValue(cell);
          }
          cell=sheet.getRow(k).getCell((short)12);
          String questionNum=getValue(cell);
          cell=sheet.getRow(k).getCell((short)13);
          String responseType=getValue(cell);
          int responseTypeId=1;
          if (StringUtil.isBlank(responseType)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
 else {
            if (!ResponseType.findByName(responseType.toLowerCase())) {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
 else {
              responseTypeId=ResponseType.getByName(responseType.toLowerCase()).getId();
            }
            if (responseTypeId == 5) {
              cell=sheet.getRow(k).getCell((short)18);
              String def=getValue(cell);
              if (!StringUtil.isBlank(def)) {
                errors.add(resPageMsg.getString("String_Node_Str") + itemNames.get(k) + resPageMsg.getString("String_Node_Str"));
              }
            }
          }
          cell=sheet.getRow(k).getCell((short)14);
          String responseLabel=getValue(cell);
          if (StringUtil.isBlank(responseLabel) && responseTypeId != ResponseType.TEXT.getId() && responseTypeId != ResponseType.TEXTAREA.getId()) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
 else           if ("String_Node_Str".equalsIgnoreCase(responseType) && !"String_Node_Str".equalsIgnoreCase(responseLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)15);
          String resOptions=getValue(cell);
          if (responseTypeId == ResponseType.TEXT.getId()) {
            responseLabel="String_Node_Str";
          }
 else           if (responseTypeId == ResponseType.TEXTAREA.getId()) {
            responseLabel="String_Node_Str";
          }
          if (responseLabel.equalsIgnoreCase("String_Node_Str") || responseLabel.equalsIgnoreCase("String_Node_Str")) {
            resOptions="String_Node_Str";
          }
          if ("String_Node_Str".equalsIgnoreCase(responseType)) {
            resOptions="String_Node_Str";
          }
          int numberOfOptions=0;
          if (!resNames.contains(responseLabel) && StringUtil.isBlank(resOptions) && responseTypeId != ResponseType.TEXT.getId() && responseTypeId != ResponseType.TEXTAREA.getId()) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (!resNames.contains(responseLabel) && !StringUtil.isBlank(resOptions)) {
            if (responseTypeId == 8 || responseTypeId == 9) {
              numberOfOptions=1;
            }
 else {
              String text1=resOptions.replaceAll("String_Node_Str","String_Node_Str");
              String[] resArray=text1.split("String_Node_Str");
              numberOfOptions=resArray.length;
            }
          }
          String[] mapResArray=(String[])labelWithOptions.get(responseLabel);
          String text1=resOptions.replaceAll("String_Node_Str","String_Node_Str");
          String[] resArray=text1.split("String_Node_Str");
          if (labelWithOptions.containsKey(responseLabel)) {
            if (!StringUtil.isBlank(resOptions)) {
              for (int i=0; i < resArray.length; i++) {
                if (!resArray[i].equals(mapResArray[i])) {
                  errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
                  break;
                }
              }
            }
          }
 else {
            labelWithOptions.put(responseLabel,resArray);
          }
          cell=sheet.getRow(k).getCell((short)16);
          String resValues=getValue(cell);
          if (responseLabel.equalsIgnoreCase("String_Node_Str") || responseLabel.equalsIgnoreCase("String_Node_Str")) {
            resValues="String_Node_Str";
          }
          if ("String_Node_Str".equalsIgnoreCase(responseType)) {
            resValues="String_Node_Str";
          }
          if (!resNames.contains(responseLabel) && StringUtil.isBlank(resValues) && responseTypeId != ResponseType.TEXT.getId() && responseTypeId != ResponseType.TEXTAREA.getId()) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (responseTypeId == 8 || responseTypeId == 9) {
            if (resValues.contains("String_Node_Str")) {
              String[] s=resValues.split("String_Node_Str");
              if (!"String_Node_Str".equalsIgnoreCase(s[0].trim())) {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
              }
            }
            String exp=resValues;
            exp=exp.replace("String_Node_Str","String_Node_Str");
            exp=exp.replace("String_Node_Str","String_Node_Str");
            exp=exp.replace("String_Node_Str","String_Node_Str");
            resValues=exp;
            if (exp.startsWith("String_Node_Str")) {
              exp=exp.substring(5).trim();
            }
            exp=exp.replace("String_Node_Str","String_Node_Str");
            StringBuffer err=new StringBuffer();
            ArrayList<String> variables=new ArrayList<String>();
            ScoreValidator scoreValidator=new ScoreValidator(locale);
            if (!scoreValidator.isValidExpression(exp,err,variables)) {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ err);
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
            if (exp.startsWith("String_Node_Str") || exp.startsWith("String_Node_Str")) {
            }
 else {
              String group=groupLabel.length() > 0 ? groupLabel : "String_Node_Str";
              for (              String v : variables) {
                if (!allItems.containsKey(v)) {
                  errors.add("String_Node_Str" + v + "String_Node_Str"+ itemName+ "String_Node_Str"+ k+ "String_Node_Str");
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str","String_Node_Str");
                }
 else {
                  if (responseTypeId == 8 && !allItems.get(v).equalsIgnoreCase(group)) {
                    errors.add("String_Node_Str" + v + "String_Node_Str"+ itemName+ "String_Node_Str"+ k+ "String_Node_Str");
                    htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str","String_Node_Str");
                  }
 else                   if (responseTypeId == 9) {
                    String g=allItems.get(v);
                    if (!g.equalsIgnoreCase("String_Node_Str") && g.equalsIgnoreCase(group)) {
                      errors.add("String_Node_Str" + v + "String_Node_Str"+ itemName+ "String_Node_Str"+ k+ "String_Node_Str");
                      htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str","String_Node_Str");
                    }
                  }
                }
              }
            }
          }
 else           if (numberOfOptions > 0) {
            String value1=resValues.replaceAll("String_Node_Str","String_Node_Str");
            String[] resValArray=value1.split("String_Node_Str");
            if (resValArray.length != numberOfOptions) {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
          }
          String[] mapValArray=(String[])labelWithValues.get(responseLabel);
          String value1=resValues.replaceAll("String_Node_Str","String_Node_Str");
          String[] resValArray=value1.split("String_Node_Str");
          parentValues.put(secName + "String_Node_Str" + itemName,resValArray);
          if (labelWithValues.containsKey(responseLabel)) {
            if (!StringUtil.isBlank(resValues)) {
              for (int i=0; i < resValArray.length; i++) {
                if (!resValArray[i].equals(mapValArray[i])) {
                  errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
                  break;
                }
              }
            }
          }
 else {
            labelWithValues.put(responseLabel,resValArray);
          }
          cell=sheet.getRow(k).getCell((short)17);
          String responseLayout=getValue(cell);
          responseLayout=responseLayout.replaceAll("String_Node_Str","String_Node_Str");
          cell=sheet.getRow(k).getCell((short)19);
          String dataType=getValue(cell);
          dataType=dataType.replaceAll("String_Node_Str","String_Node_Str");
          String dataTypeIdString="String_Node_Str";
          if (StringUtil.isBlank(dataType)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
 else {
            if (!ItemDataType.findByName(dataType.toLowerCase())) {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
 else {
              if ("String_Node_Str".equalsIgnoreCase(responseType) && !"String_Node_Str".equalsIgnoreCase(dataType)) {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
              }
              dataTypeIdString="String_Node_Str" + dataType.toUpperCase() + "String_Node_Str";
            }
          }
          if (responseTypeId == 3 || responseTypeId == 5 || responseTypeId == 6 || responseTypeId == 7) {
            if (labelWithType.containsKey(responseLabel)) {
              if (!dataType.equalsIgnoreCase(labelWithType.get(responseLabel).toString())) {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
              }
            }
 else {
              labelWithType.put(responseLabel,dataType);
              if (resValArray.length > 0) {
                boolean wrongType=false;
                if ("String_Node_Str".equalsIgnoreCase(dataType)) {
                  for (                  String s : resValArray) {
                    String st=s != null && s.length() > 0 ? s.trim() : "String_Node_Str";
                    if (st.length() > 0) {
                      try {
                        Integer I=Integer.parseInt(st);
                        if (!I.toString().equals(st)) {
                          wrongType=true;
                        }
                      }
 catch (                      Exception e) {
                        wrongType=true;
                      }
                    }
                  }
                  if (wrongType) {
                    wrongType=false;
                    errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                    htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
                  }
                }
 else                 if ("String_Node_Str".equalsIgnoreCase(dataType)) {
                  for (                  String s : resValArray) {
                    String st=s != null && s.length() > 0 ? s.trim() : "String_Node_Str";
                    if (st.length() > 0) {
                      try {
                        Double I=Double.parseDouble(st);
                      }
 catch (                      Exception e) {
                        wrongType=true;
                      }
                    }
                  }
                  if (wrongType) {
                    errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                    htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
                  }
                }
              }
            }
          }
          cell=sheet.getRow(k).getCell((short)18);
          String default_value=getValue(cell);
          default_value=default_value.replaceAll("String_Node_Str","String_Node_Str");
          if ("String_Node_Str".equalsIgnoreCase(dataType) && !"String_Node_Str".equals(default_value)) {
            try {
              default_value=new SimpleDateFormat(ApplicationConstants.getDateFormatInItemData()).format(cell.getDateCellValue());
            }
 catch (            Exception e) {
              default_value=getValue(cell);
            }
          }
          if (default_value.length() > 0 && (responseTypeId == 8 || responseTypeId == 9)) {
            errors.add(resPageMsg.getString("String_Node_Str") + k + "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          cellIndex=19;
          String widthDecimal="String_Node_Str";
          logger.debug("String_Node_Str" + hasWDColumn);
          if (hasWDColumn) {
            ++cellIndex;
            cell=sheet.getRow(k).getCell((short)cellIndex);
            widthDecimal=getValue(cell);
            if (StringUtil.isBlank(widthDecimal)) {
              widthDecimal="String_Node_Str";
            }
 else {
              if ("String_Node_Str".equalsIgnoreCase(responseType) || "String_Node_Str".equalsIgnoreCase(responseType) || "String_Node_Str".equalsIgnoreCase(responseType)|| "String_Node_Str".equalsIgnoreCase(responseType)) {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
              }
 else {
                StringBuffer message=new StringBuffer();
                boolean isCalc=responseTypeId == 8 || responseTypeId == 9 ? true : false;
                message=Validator.validateWidthDecimalSetting(widthDecimal,dataType,isCalc,this.locale);
                if (message.length() > 0) {
                  errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ "String_Node_Str"+ message);
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
                }
              }
            }
          }
          ++cellIndex;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String regexp=getValue(cell);
          String regexp1="String_Node_Str";
          if (!StringUtil.isBlank(regexp)) {
            regexp1=regexp.trim();
            if (regexp1.startsWith("String_Node_Str")) {
              String finalRegexp=regexp1.substring(7).trim();
              if (finalRegexp.contains("String_Node_Str")) {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
              }
 else {
                if (finalRegexp.startsWith("String_Node_Str") && finalRegexp.endsWith("String_Node_Str")) {
                  finalRegexp=finalRegexp.substring(1,finalRegexp.length() - 1);
                  try {
                    Pattern p=Pattern.compile(finalRegexp);
                    char[] chars=regexp1.toCharArray();
                    regexp1="String_Node_Str";
                    for (                    char c : chars) {
                      if (c == '\\' && !dbName.equals("String_Node_Str")) {
                        regexp1+=c + "String_Node_Str";
                      }
 else {
                        regexp1+=c;
                      }
                    }
                  }
 catch (                  PatternSyntaxException pse) {
                    errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                    htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
                  }
                }
 else {
                  errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
                }
              }
            }
 else             if (regexp1.startsWith("String_Node_Str")) {
              boolean isProperFunction=false;
              try {
                Validator.processCRFValidationFunction(regexp1);
                isProperFunction=true;
              }
 catch (              Exception e) {
                errors.add(e.getMessage() + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
              }
            }
 else {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
            }
          }
          ++cellIndex;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String regexpError=getValue(cell);
          regexpError=regexpError.replaceAll("String_Node_Str","String_Node_Str");
          if (!StringUtil.isBlank(regexp) && StringUtil.isBlank(regexpError)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
          }
          if (regexpError != null && regexpError.length() > 255) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          ++cellIndex;
          boolean phiBoolean=false;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String phi=getValue(cell);
          if (StringUtil.isBlank(phi)) {
            phi="String_Node_Str";
          }
 else           if (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {
            double dphi=cell.getNumericCellValue();
            if ((dphi - (int)dphi) * 1000 == 0) {
              phi=(int)dphi + "String_Node_Str";
            }
          }
          if (!"String_Node_Str".equals(phi) && !"String_Node_Str".equals(phi)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
          }
 else {
            phiBoolean="String_Node_Str".equals(phi) ? true : false;
          }
          ++cellIndex;
          boolean isRequired=false;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String required=getValue(cell);
          if (StringUtil.isBlank(required)) {
            required="String_Node_Str";
          }
 else           if (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {
            double dr=cell.getNumericCellValue();
            if ((dr - (int)dr) * 1000 == 0) {
              required=(int)dr + "String_Node_Str";
            }
          }
          if (!"String_Node_Str".equals(required) && !"String_Node_Str".equals(required)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str"));
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
          }
 else {
            isRequired="String_Node_Str".equals(required) ? true : false;
          }
          ++cellIndex;
          boolean isShowItem=true;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String showItem=getValue(cell);
          if (!StringUtil.isBlank(showItem)) {
            isShowItem="String_Node_Str".equals(showItem) ? false : true;
            isShowItem="String_Node_Str".equals(showItem) ? false : true;
          }
          ++cellIndex;
          cell=sheet.getRow(k).getCell((short)cellIndex);
          String display=getValue(cell);
          if (!StringUtil.isBlank(display)) {
            if (isShowItem != false) {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ (cellIndex - 1),resPageMsg.getString("String_Node_Str"));
            }
            String pvKey=secName + "String_Node_Str";
            String d=display.replaceAll("String_Node_Str","String_Node_Str");
            String[] par=d.split("String_Node_Str");
            if (par.length == 3) {
              String p0=par[0].trim();
              String p1=par[1].trim();
              String p2=par[2].trim();
              if (p0.length() > 0 && p1.length() > 0 && p2.length() > 0) {
                if (repeats.contains(p0)) {
                  pvKey+=p0;
                  if (parentValues.containsKey(pvKey)) {
                    String[] pvs=parentValues.get(pvKey);
                    boolean existing=false;
                    for (                    String s : pvs) {
                      if (s.trim().equals(p1)) {
                        existing=true;
                        break;
                      }
                    }
                    if (!existing) {
                      errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ p1.replace("String_Node_Str","String_Node_Str"));
                      htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
                    }
                  }
                }
 else {
                  errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ p0);
                  htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
                }
              }
 else {
                errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
                htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
              }
            }
 else {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str"+ cellIndex,resPageMsg.getString("String_Node_Str"));
            }
          }
          String itemOid=idao.getValidOid(new ItemBean(),crfName,itemName,itemOids);
          itemOids.add(itemOid);
          String vlSql="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            vlSql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(itemName) + "String_Node_Str"+ stripQuotes(descLabel)+ "String_Node_Str"+ stripQuotes(unit)+ "String_Node_Str"+ (phiBoolean == true ? 1 : 0)+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ "String_Node_Str"+ itemOid+ "String_Node_Str";
          }
 else {
            vlSql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(itemName) + "String_Node_Str"+ stripQuotes(descLabel)+ "String_Node_Str"+ stripQuotes(unit)+ "String_Node_Str"+ phiBoolean+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ "String_Node_Str"+ itemOid+ "String_Node_Str";
          }
          backupItemQueries.put(itemName,vlSql);
          ItemBean ib=new ItemBean();
          ib.setName(itemName);
          ib.setUnits(unit);
          ib.setPhiStatus(phiBoolean);
          ib.setDescription(descLabel);
          ib.setDataType(ItemDataType.getByName(dataType.toLowerCase()));
          ResponseSetBean rsb=new ResponseSetBean();
          String resOptions1=resOptions.replaceAll("String_Node_Str","String_Node_Str");
          String resValues1=resValues.replaceAll("String_Node_Str","String_Node_Str");
          rsb.setOptions(stripQuotes(resOptions1),stripQuotes(resValues1));
          ItemFormMetadataBean ifmb=new ItemFormMetadataBean();
          ifmb.setResponseSet(rsb);
          ifmb.setShowItem(isShowItem);
          ib.setItemMeta(ifmb);
          items.put(itemName,ib);
          int ownerId=ub.getId();
          if (!itemCheck.containsKey(itemName)) {
            openQueries.put(itemName,vlSql);
          }
 else {
            ItemBean oldItem=(ItemBean)idao.findByNameAndCRFId(itemName,crfId);
            if (oldItem.getOwnerId() == ub.getId()) {
              if (!cvdao.hasItemData(oldItem.getId())) {
                String upSql="String_Node_Str";
                if (dbName.equals("String_Node_Str")) {
                  upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ "String_Node_Str"+ stripQuotes(unit)+ "String_Node_Str"+ "String_Node_Str"+ (phiBoolean ? 1 : 0)+ "String_Node_Str"+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId;
                }
 else {
                  upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ "String_Node_Str"+ stripQuotes(unit)+ "String_Node_Str"+ "String_Node_Str"+ phiBoolean+ "String_Node_Str"+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId;
                }
                openQueries.put(itemName,upSql);
              }
 else {
                String upSql="String_Node_Str";
                if ((oldItem.getDataType() == oldItem.getDataType().DATE) && (ib.getDataType() == ib.getDataType().PDATE)) {
                  if (dbName.equals("String_Node_Str")) {
                    upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ (phiBoolean ? 1 : 0)+ "String_Node_Str"+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId;
                  }
 else {
                    upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ phiBoolean+ "String_Node_Str"+ "String_Node_Str"+ dataTypeIdString+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId;
                  }
                }
 else {
                  if (dbName.equals("String_Node_Str")) {
                    upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ "String_Node_Str"+ (phiBoolean ? 1 : 0)+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId;
                  }
 else {
                    upSql="String_Node_Str" + stripQuotes(descLabel) + "String_Node_Str"+ "String_Node_Str"+ phiBoolean+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId;
                  }
                }
                openQueries.put(itemName,upSql);
              }
            }
 else {
              ownerId=oldItem.getOwner().getId();
            }
          }
          String sql="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(responseLabel) + "String_Node_Str"+ stripQuotes(resOptions.replaceAll("String_Node_Str","String_Node_Str"))+ "String_Node_Str"+ stripQuotes(resValues.replace("String_Node_Str","String_Node_Str"))+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(responseType.toLowerCase())+ "String_Node_Str"+ versionIdString+ "String_Node_Str";
          }
 else {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(responseLabel) + "String_Node_Str"+ stripQuotes(resOptions)+ "String_Node_Str"+ stripQuotes(resValues)+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(responseType.toLowerCase())+ "String_Node_Str"+ versionIdString+ "String_Node_Str";
          }
          if (!resPairs.contains(responseLabel.toString().toLowerCase() + "String_Node_Str" + responseType.toString().toLowerCase())) {
            if (!resNames.contains(responseLabel)) {
              queries.add(sql);
              resNames.add(responseLabel);
            }
 else {
              errors.add("String_Node_Str" + (k + 1) + "String_Node_Str"+ responseLabel+ "String_Node_Str"+ responseType+ "String_Node_Str");
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str","String_Node_Str");
            }
            resPairs.add(responseLabel.toString().toLowerCase() + "String_Node_Str" + responseType.toString().toLowerCase());
          }
          String parentItemString="String_Node_Str";
          if (!StringUtil.isBlank(parentItem)) {
            if (dbName.equals("String_Node_Str")) {
              parentItemString="String_Node_Str" + stripQuotes(parentItem) + "String_Node_Str"+ ownerId+ "String_Node_Str";
            }
 else {
              parentItemString="String_Node_Str" + stripQuotes(parentItem) + "String_Node_Str"+ ownerId+ "String_Node_Str";
            }
          }
          String selectCorrectItemQueryPostgres="String_Node_Str" + "String_Node_Str" + itemName + "String_Node_Str"+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ itemName+ "String_Node_Str"+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ crfId+ "String_Node_Str"+ "String_Node_Str";
          String selectCorrectItemQueryOracle="String_Node_Str" + "String_Node_Str" + itemName + "String_Node_Str"+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ itemName+ "String_Node_Str"+ "String_Node_Str"+ ownerId+ "String_Node_Str"+ crfId+ "String_Node_Str";
          String sql2="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            sql2="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + versionIdString + "String_Node_Str"+ stripQuotes(responseLabel)+ "String_Node_Str"+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ selectCorrectItemQueryOracle+ "String_Node_Str"+ stripQuotes(subHeader)+ "String_Node_Str"+ stripQuotes(header)+ "String_Node_Str"+ stripQuotes(leftItemText)+ "String_Node_Str"+ stripQuotes(rightItemText)+ "String_Node_Str"+ parentItemString+ "String_Node_Str"+ secName+ "String_Node_Str"+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ k+ "String_Node_Str"+ parentItem+ "String_Node_Str"+ columnNum+ "String_Node_Str"+ stripQuotes(page)+ "String_Node_Str"+ stripQuotes(questionNum)+ "String_Node_Str"+ stripQuotes(regexp1)+ "String_Node_Str"+ stripQuotes(regexpError)+ "String_Node_Str"+ (isRequired ? 1 : 0)+ "String_Node_Str"+ stripQuotes(default_value)+ "String_Node_Str"+ stripQuotes(responseLayout)+ "String_Node_Str"+ widthDecimal+ "String_Node_Str"+ (isShowItem ? 1 : 0)+ "String_Node_Str"+ stripQuotes(display)+ "String_Node_Str";
            logger.warn(sql2);
          }
 else {
            sql2="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + versionIdString + "String_Node_Str"+ stripQuotes(responseLabel)+ "String_Node_Str"+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ selectCorrectItemQueryPostgres+ "String_Node_Str"+ stripQuotes(subHeader)+ "String_Node_Str"+ stripQuotes(header)+ "String_Node_Str"+ stripQuotes(leftItemText)+ "String_Node_Str"+ stripQuotes(rightItemText)+ "String_Node_Str"+ parentItemString+ "String_Node_Str"+ secName+ "String_Node_Str"+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ k+ "String_Node_Str"+ parentItem+ "String_Node_Str"+ columnNum+ "String_Node_Str"+ stripQuotes(page)+ "String_Node_Str"+ stripQuotes(questionNum)+ "String_Node_Str"+ stripQuotes(regexp1)+ "String_Node_Str"+ stripQuotes(regexpError)+ "String_Node_Str"+ isRequired+ "String_Node_Str"+ stripQuotes(default_value)+ "String_Node_Str"+ stripQuotes(responseLayout)+ "String_Node_Str"+ widthDecimal+ "String_Node_Str"+ isShowItem+ "String_Node_Str"+ stripQuotes(display)+ "String_Node_Str";
          }
          queries.add(sql2);
          String sql3="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            sql3="String_Node_Str" + versionIdString + "String_Node_Str"+ selectCorrectItemQueryOracle+ "String_Node_Str";
          }
 else {
            sql3="String_Node_Str" + versionIdString + "String_Node_Str"+ selectCorrectItemQueryPostgres+ "String_Node_Str";
          }
          queries.add(sql3);
          if (!StringUtil.isBlank(groupLabel)) {
            ItemGroupBean itemGroup;
            ItemGroupMetadataBean igMeta;
            igMeta=new ItemGroupMetadataBean();
            itemGroup=new ItemGroupBean();
            try {
              logger.info("String_Node_Str" + groupLabel);
              itemGroup=(ItemGroupBean)itemGroups.get(groupLabel);
              logger.info("String_Node_Str" + groupLabel + "String_Node_Str"+ itemGroup.getName());
              igMeta=itemGroup.getMeta();
              if (igMeta == null) {
                igMeta=new ItemGroupMetadataBean();
              }
              String sqlGroupLabel="String_Node_Str";
              if (dbName.equals("String_Node_Str")) {
                sqlGroupLabel="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + stripQuotes(itemGroup.getName()) + "String_Node_Str"+ crfId+ "String_Node_Str"+ stripQuotes(igMeta.getHeader())+ "String_Node_Str"+ stripQuotes(igMeta.getSubheader())+ "String_Node_Str"+ igMeta.getLayout()+ "String_Node_Str"+ igMeta.getRepeatNum()+ "String_Node_Str"+ igMeta.getRepeatMax()+ "String_Node_Str"+ igMeta.getRepeatArray()+ "String_Node_Str"+ igMeta.getRowStartNumber()+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ "String_Node_Str"+ stripQuotes(itemName)+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId+ "String_Node_Str"+ k+ "String_Node_Str"+ (igMeta.isShowGroup() ? 1 : 0)+ "String_Node_Str"+ (igMeta.isRepeatingGroup() ? 1 : 0)+ "String_Node_Str";
              }
 else {
                sqlGroupLabel="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + itemGroup.getName() + "String_Node_Str"+ crfId+ "String_Node_Str"+ igMeta.getHeader()+ "String_Node_Str"+ igMeta.getSubheader()+ "String_Node_Str"+ igMeta.getLayout()+ "String_Node_Str"+ igMeta.getRepeatNum()+ "String_Node_Str"+ igMeta.getRepeatMax()+ "String_Node_Str"+ igMeta.getRepeatArray()+ "String_Node_Str"+ igMeta.getRowStartNumber()+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ "String_Node_Str"+ itemName+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ crfId+ "String_Node_Str"+ k+ "String_Node_Str"+ igMeta.isShowGroup()+ "String_Node_Str"+ igMeta.isRepeatingGroup()+ "String_Node_Str";
              }
              queries.add(sqlGroupLabel);
            }
 catch (            NullPointerException e) {
              e.printStackTrace();
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + (k + 1)+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ groupLabel+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
              htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
          }
 else {
            String sqlGroupLabel="String_Node_Str";
            if (dbName.equals("String_Node_Str")) {
              sqlGroupLabel="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + crfId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ 1+ "String_Node_Str"+ 1+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ selectCorrectItemQueryOracle+ "String_Node_Str"+ k+ "String_Node_Str";
            }
 else {
              sqlGroupLabel="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str" + crfId + "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ "String_Node_Str"+ 1+ "String_Node_Str"+ 1+ "String_Node_Str"+ versionIdString+ "String_Node_Str"+ selectCorrectItemQueryPostgres+ "String_Node_Str"+ k+ "String_Node_Str";
            }
            queries.add(sqlGroupLabel);
          }
        }
      }
 else       if (sheetName.equalsIgnoreCase("String_Node_Str")) {
        logger.info("String_Node_Str");
        ArrayList groupNames=new ArrayList();
        ItemGroupBean defaultGroup=new ItemGroupBean();
        defaultGroup.setName("String_Node_Str");
        defaultGroup.setCrfId(crfId);
        defaultGroup.setStatus(Status.AVAILABLE);
        String defaultGroupOid=itemGroupDao.getValidOid(defaultGroup,crfName,defaultGroup.getName(),itemGroupOids);
        itemGroupOids.add(defaultGroupOid);
        String defaultSql="String_Node_Str";
        if (dbName.equals("String_Node_Str")) {
          defaultSql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + defaultGroup.getName() + "String_Node_Str"+ defaultGroup.getCrfId()+ "String_Node_Str"+ defaultGroup.getStatus().getId()+ "String_Node_Str"+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ defaultGroupOid+ "String_Node_Str";
        }
 else {
          defaultSql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + defaultGroup.getName() + "String_Node_Str"+ defaultGroup.getCrfId()+ "String_Node_Str"+ defaultGroup.getStatus().getId()+ "String_Node_Str"+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ defaultGroupOid+ "String_Node_Str";
        }
        if (!GroupCheck.containsKey("String_Node_Str")) {
          queries.add(defaultSql);
        }
        for (int gk=1; gk < numRows; gk++) {
          if (blankRowCount == 5) {
            logger.info("String_Node_Str");
            break;
          }
          if (sheet.getRow(gk) == null) {
            blankRowCount++;
            continue;
          }
          HSSFCell cell=sheet.getRow(gk).getCell((short)0);
          String groupLabel=getValue(cell);
          groupLabel=groupLabel.replaceAll("String_Node_Str","String_Node_Str");
          if (StringUtil.isBlank(groupLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ gk+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + gk+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (groupLabel != null && groupLabel.length() > 255) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          if (groupNames.contains(groupLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ groupLabel+ resPageMsg.getString("String_Node_Str")+ gk+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + gk+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
 else {
            groupNames.add(groupLabel);
          }
          boolean isRepeatingGroup=true;
          boolean newVersionCrf=false;
          int cellNo=0;
          if (!(versionNo.equalsIgnoreCase("String_Node_Str") || versionNo.equalsIgnoreCase("String_Node_Str") || versionNo.equalsIgnoreCase("String_Node_Str"))) {
            cellNo=1;
            cell=sheet.getRow(gk).getCell((short)cellNo);
            try {
              isRepeatingGroup=cell.getBooleanCellValue();
              newVersionCrf=true;
            }
 catch (            Exception eee) {
              errors.add(resPageMsg.getString("String_Node_Str"));
            }
          }
          cell=sheet.getRow(gk).getCell((short)++cellNo);
          String groupHeader=getValue(cell);
          groupHeader=org.akaza.openclinica.core.form.StringUtil.escapeSingleQuote(groupHeader);
          if (groupHeader != null && groupHeader.length() > 255) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(gk).getCell((short)++cellNo);
          String groupRepeatNumber=getValue(cell);
          if (newVersionCrf && !isRepeatingGroup && !StringUtil.isBlank(groupRepeatNumber)) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
 else           if (!isRepeatingGroup && StringUtil.isBlank(groupRepeatNumber)) {
            groupRepeatNumber="String_Node_Str";
          }
 else {
            if (StringUtil.isBlank(groupRepeatNumber)) {
              groupRepeatNumber="String_Node_Str";
            }
 else             if (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {
              double dr=cell.getNumericCellValue();
              if ((dr - (int)dr) * 1000 == 0) {
                groupRepeatNumber=(int)dr + "String_Node_Str";
              }
            }
 else {
              logger.info("String_Node_Str");
            }
          }
          cell=sheet.getRow(gk).getCell((short)++cellNo);
          String groupRepeatMax=getValue(cell);
          if (newVersionCrf && !isRepeatingGroup && !StringUtil.isBlank(groupRepeatMax)) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
 else           if (!isRepeatingGroup && StringUtil.isBlank(groupRepeatMax)) {
            groupRepeatMax="String_Node_Str";
          }
 else {
            if (StringUtil.isBlank(groupRepeatMax)) {
              groupRepeatMax="String_Node_Str";
            }
 else             if (cell.getCellType() == HSSFCell.CELL_TYPE_NUMERIC) {
              double dr=cell.getNumericCellValue();
              if ((dr - (int)dr) * 1000 == 0) {
                groupRepeatMax=(int)dr + "String_Node_Str";
                try {
                  int repeatMaxInt=Integer.parseInt(groupRepeatMax);
                  if (repeatMaxInt < 1) {
                    groupRepeatMax="String_Node_Str";
                  }
                }
 catch (                NumberFormatException nfe) {
                  groupRepeatMax="String_Node_Str";
                }
              }
            }
 else {
              logger.info("String_Node_Str");
            }
          }
          cell=sheet.getRow(gk).getCell((short)++cellNo);
          String showGroup=getValue(cell);
          boolean isShowGroup=true;
          if (!StringUtil.isBlank(showGroup)) {
            try {
              isShowGroup="String_Node_Str".equals(showGroup) ? false : true;
              isShowGroup="String_Node_Str".equals(showGroup) ? false : true;
            }
 catch (            Exception eee) {
              logger.debug("String_Node_Str");
            }
          }
          ItemGroupBean fgb=new ItemGroupBean();
          fgb.setName(groupLabel);
          fgb.setCrfId(crfId);
          fgb.setStatus(Status.AVAILABLE);
          ItemGroupMetadataBean igMeta=new ItemGroupMetadataBean();
          igMeta.setHeader(groupHeader);
          igMeta.setRepeatingGroup(isRepeatingGroup);
          igMeta.setShowGroup(isShowGroup);
          try {
            igMeta.setRepeatMax(new Integer(Integer.parseInt(groupRepeatMax)));
          }
 catch (          NumberFormatException n2) {
            n2.printStackTrace();
            if ("String_Node_Str".equals(groupRepeatMax)) {
              igMeta.setRepeatMax(40);
            }
 else {
              errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ groupRepeatMax+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ gk+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
              htmlErrors.put(j + "String_Node_Str" + gk+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
            }
          }
          try {
            igMeta.setRepeatNum(new Integer(Integer.parseInt(groupRepeatNumber)));
          }
 catch (          NumberFormatException n3) {
            n3.printStackTrace();
            errors.add(resPageMsg.getString("String_Node_Str") + resPageMsg.getString("String_Node_Str") + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ groupRepeatNumber+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ gk+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + gk+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          fgb.setMeta(igMeta);
          String groupOid=itemGroupDao.getValidOid(fgb,crfName,fgb.getName(),itemGroupOids);
          itemGroupOids.add(groupOid);
          String gsql="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            gsql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + fgb.getName() + "String_Node_Str"+ fgb.getCrfId()+ "String_Node_Str"+ fgb.getStatus().getId()+ "String_Node_Str"+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ groupOid+ "String_Node_Str";
          }
 else {
            gsql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + fgb.getName() + "String_Node_Str"+ fgb.getCrfId()+ "String_Node_Str"+ fgb.getStatus().getId()+ "String_Node_Str"+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ groupOid+ "String_Node_Str";
          }
          itemGroups.put(fgb.getName(),fgb);
          if (!GroupCheck.containsKey(fgb.getName())) {
            queries.add(gsql);
          }
        }
      }
 else       if (sheetName.equalsIgnoreCase("String_Node_Str")) {
        logger.info("String_Node_Str");
        for (int k=1; k < numRows; k++) {
          if (blankRowCount == 5) {
            break;
          }
          if (sheet.getRow(k) == null) {
            blankRowCount++;
            continue;
          }
          HSSFCell cell=sheet.getRow(k).getCell((short)0);
          String secLabel=getValue(cell);
          secLabel=secLabel.replaceAll("String_Node_Str","String_Node_Str");
          if (StringUtil.isBlank(secLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ k+ "String_Node_Str"+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (secLabel != null && secLabel.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          if (secNames.contains(secLabel)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ resPageMsg.getString("String_Node_Str")+ secLabel+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          secNames.add(secLabel);
          cell=sheet.getRow(k).getCell((short)1);
          String title=getValue(cell);
          title=title.replaceAll("String_Node_Str","String_Node_Str");
          if (StringUtil.isBlank(title)) {
            errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ k+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str")+ "String_Node_Str");
            htmlErrors.put(j + "String_Node_Str" + k+ "String_Node_Str",resPageMsg.getString("String_Node_Str"));
          }
          if (title != null && title.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)2);
          String subtitle=getValue(cell);
          if (subtitle != null && subtitle.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)3);
          String instructions=getValue(cell);
          if (instructions != null && instructions.length() > 2000) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)4);
          String pageNumber=getValue(cell);
          if (pageNumber != null && pageNumber.length() > 5) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
          cell=sheet.getRow(k).getCell((short)5);
          String parentSection=getValue(cell);
          parentSection=parentSection.replaceAll("String_Node_Str","String_Node_Str");
          if (!StringUtil.isBlank(parentSection)) {
            try {
              parentId=Integer.parseInt(parentSection);
            }
 catch (            NumberFormatException ne) {
              parentId=0;
            }
          }
          cell=sheet.getRow(k).getCell((short)6);
          String strBorder=getValue(cell);
          strBorder=strBorder.replaceAll("String_Node_Str","String_Node_Str");
          Integer intBorder=new Integer(0);
          try {
            intBorder=new Integer(strBorder);
          }
 catch (          NumberFormatException npe) {
          }
          String sql="String_Node_Str";
          if (dbName.equals("String_Node_Str")) {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str" + versionIdString + "String_Node_Str"+ secLabel+ "String_Node_Str"+ stripQuotes(title)+ "String_Node_Str"+ stripQuotes(instructions)+ "String_Node_Str"+ stripQuotes(subtitle)+ "String_Node_Str"+ pageNumber+ "String_Node_Str"+ k+ "String_Node_Str"+ parentId+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ intBorder+ "String_Node_Str";
          }
 else {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str"+ "String_Node_Str" + versionIdString + "String_Node_Str"+ secLabel+ "String_Node_Str"+ stripQuotes(title)+ "String_Node_Str"+ stripQuotes(instructions)+ "String_Node_Str"+ stripQuotes(subtitle)+ "String_Node_Str"+ pageNumber+ "String_Node_Str"+ k+ "String_Node_Str"+ parentId+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ intBorder+ "String_Node_Str";
          }
          queries.add(sql);
        }
      }
 else       if (sheetName.equalsIgnoreCase("String_Node_Str")) {
        logger.info("String_Node_Str");
        if (sheet == null || sheet.getRow(1) == null || sheet.getRow(1).getCell((short)0) == null) {
          throw new CRFReadingException("String_Node_Str");
        }
        HSSFCell cell=sheet.getRow(1).getCell((short)0);
        crfName=getValue(cell);
        crfName=crfName.replaceAll("String_Node_Str","String_Node_Str");
        if (StringUtil.isBlank(crfName)) {
          throw new CRFReadingException("String_Node_Str");
        }
        if (crfName.length() > 255) {
          errors.add(resPageMsg.getString("String_Node_Str"));
        }
        CRFBean existingCRFWithSameName=(CRFBean)cdao.findByName(crfName);
        if (this.getCrfId() == 0) {
          if (existingCRFWithSameName.getName() != null && existingCRFWithSameName.getName().equals(crfName)) {
            errors.add(resPageMsg.getString("String_Node_Str"));
          }
        }
        cell=sheet.getRow(1).getCell((short)1);
        String version=getValue(cell);
        version=version.replaceAll("String_Node_Str","String_Node_Str");
        ncrf.setVersionName(version);
        if (version != null && version.length() > 255) {
          errors.add(resPageMsg.getString("String_Node_Str"));
        }
        cell=sheet.getRow(1).getCell((short)2);
        String versionDesc=getValue(cell);
        versionDesc=versionDesc.replaceAll("String_Node_Str","String_Node_Str");
        if (versionDesc != null && versionDesc.length() > 4000) {
          errors.add(resPageMsg.getString("String_Node_Str"));
        }
        cell=sheet.getRow(1).getCell((short)3);
        String revisionNotes=getValue(cell);
        revisionNotes=revisionNotes.replaceAll("String_Node_Str","String_Node_Str");
        if (revisionNotes != null && revisionNotes.length() > 255) {
          errors.add(resPageMsg.getString("String_Node_Str"));
        }
        if (StringUtil.isBlank(revisionNotes)) {
          errors.add(resPageMsg.getString("String_Node_Str") + "String_Node_Str" + resPageMsg.getString("String_Node_Str")+ "String_Node_Str"+ resPageMsg.getString("String_Node_Str"));
          htmlErrors.put(j + "String_Node_Str",resPageMsg.getString("String_Node_Str"));
        }
        Connection con=null;
        String crfOid=null;
        if (crfId == 0) {
          crfOid=cdao.getValidOid(new CRFBean(),crfName);
          int nextCRFId;
          try {
            con=ds.getConnection();
            ResultSet nextIdRs;
            if (dbName.equals("String_Node_Str")) {
              nextIdRs=con.createStatement().executeQuery("String_Node_Str");
            }
 else {
              nextIdRs=con.createStatement().executeQuery("String_Node_Str");
            }
            nextIdRs.next();
            nextCRFId=nextIdRs.getInt(1);
            crfId=nextCRFId;
            ncrf.setCrfId(crfId);
            String createCRFSql;
            if (dbName.equals("String_Node_Str")) {
              createCRFSql="String_Node_Str" + crfId + "String_Node_Str"+ stripQuotes(crfName)+ "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ "String_Node_Str"+ crfOid+ "String_Node_Str"+ studyId+ "String_Node_Str";
            }
 else {
              createCRFSql="String_Node_Str" + crfId + "String_Node_Str"+ stripQuotes(crfName)+ "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ "String_Node_Str"+ crfOid+ "String_Node_Str"+ studyId+ "String_Node_Str";
            }
            queries.add(createCRFSql);
          }
 catch (          SQLException e) {
            logger.warn("String_Node_Str" + e.getMessage());
          }
 finally {
            if (con != null) {
              try {
                con.close();
              }
 catch (              SQLException e) {
                logger.warn("String_Node_Str");
              }
            }
          }
        }
        HashMap checkCRFVersions=ncrf.getCrfVersions();
        boolean overwrite=false;
        if (checkCRFVersions.containsKey(version)) {
          logger.info("String_Node_Str" + version);
          errors.add(resPageMsg.getString("String_Node_Str"));
          htmlErrors.put(j + "String_Node_Str",resPageMsg.getString("String_Node_Str"));
        }
        String oid;
        if (crfOid != null) {
          oid=cvdao.getValidOid(new CRFVersionBean(),crfOid,version);
        }
 else {
          CRFBean crfBean=(CRFBean)cdao.findByName(crfName);
          oid=cvdao.getValidOid(new CRFVersionBean(),crfBean.getOid(),version);
        }
        String sql="String_Node_Str";
        if (dbName.equals("String_Node_Str")) {
          if (crfId == 0) {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(version) + "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ "String_Node_Str"+ crfName+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ stripQuotes(revisionNotes)+ "String_Node_Str"+ oid+ "String_Node_Str";
          }
 else {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + version + "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ crfId+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ stripQuotes(revisionNotes)+ "String_Node_Str"+ oid+ "String_Node_Str";
          }
        }
 else {
          if (crfId == 0) {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + stripQuotes(version) + "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ "String_Node_Str"+ crfName+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ stripQuotes(revisionNotes)+ "String_Node_Str"+ oid+ "String_Node_Str";
          }
 else {
            sql="String_Node_Str" + "String_Node_Str" + "String_Node_Str" + version + "String_Node_Str"+ stripQuotes(versionDesc)+ "String_Node_Str"+ crfId+ "String_Node_Str"+ ub.getId()+ "String_Node_Str"+ stripQuotes(revisionNotes)+ "String_Node_Str"+ oid+ "String_Node_Str";
          }
        }
        queries.add(sql);
        pVersion=version;
        pVerDesc=versionDesc;
      }
      versionIdString="String_Node_Str" + pVersion + "String_Node_Str"+ crfId+ "String_Node_Str";
      buf.append(sheetName + "String_Node_Str");
      buf.append("String_Node_Str");
      buf.append("String_Node_Str");
      buf.append("String_Node_Str");
      buf.append("String_Node_Str" + wb.getSheetName(j) + "String_Node_Str"+ "String_Node_Str");
      for (int i=0; i < numRows; i++) {
        buf.append("String_Node_Str");
        if (sheet.getRow(i) == null) {
          continue;
        }
        int numCells=sheet.getRow(i).getLastCellNum();
        for (int y=0; y < numCells; y++) {
          HSSFCell cell=sheet.getRow(i).getCell((short)y);
          int cellType=0;
          String error="String_Node_Str";
          String errorKey=j + "String_Node_Str" + i+ "String_Node_Str"+ y;
          if (htmlErrors.containsKey(errorKey)) {
            error="String_Node_Str" + htmlErrors.get(errorKey) + "String_Node_Str";
          }
          if (cell == null) {
            cellType=HSSFCell.CELL_TYPE_BLANK;
          }
 else {
            cellType=cell.getCellType();
          }
switch (cellType) {
case HSSFCell.CELL_TYPE_BLANK:
            buf.append("String_Node_Str" + error + "String_Node_Str");
          break;
case HSSFCell.CELL_TYPE_NUMERIC:
        buf.append("String_Node_Str" + cell.getNumericCellValue() + "String_Node_Str"+ error+ "String_Node_Str");
      break;
case HSSFCell.CELL_TYPE_STRING:
    buf.append("String_Node_Str" + cell.getStringCellValue() + "String_Node_Str"+ error+ "String_Node_Str");
  break;
default :
buf.append("String_Node_Str" + error + "String_Node_Str");
}
}
buf.append("String_Node_Str");
}
buf.append("String_Node_Str");
buf.append("String_Node_Str");
buf.append("String_Node_Str");
buf.append("String_Node_Str");
}
}
ncrf.setQueries(queries);
ncrf.setItemQueries(openQueries);
ncrf.setBackupItemQueries(backupItemQueries);
ncrf.setItems(items);
if (!errors.isEmpty()) {
ncrf.setErrors(errors);
}
ncrf.setHtmlTable(buf.toString());
return ncrf;
}