private String generateFirstScan()
	{
		String tmp = new String();
		for(int i = 0; i != lstInfoSchemaPair.size(); i++)
		{
			String name = lstInfoSchemaPair.get(i).getFirst();
			String type = lstInfoSchemaPair.get(i).getSecond();
			String typeGetMethod = type.substring(0, 1).toUpperCase() + type.substring(1);
			tmp = tmp + "\t\t\t\t" + type + " " + name + "Tmp" + " = rs.get" + typeGetMethod + "(\""
					+ name + "\");\n";
		}
		//Follow code is to print all data. SELECT * FROM <TABLE>
		//tmp = this.myPrintAll(lstInfoSchemaPair, tmp);
		
		for(int i = 0; i != this.mfstructOrig.num_Grouping_Vari; i++)
		{
			tmp += "\t\t\t\t//#" + new Integer(i+1) + " Selection Conditions.\n";
			tmp += "\t\t\t\tif(" + this.mySCVConverter.lstJavaCodeConditions.get(i).getSecond() + ")\n";
			tmp += "\t\t\t\t{\n";
			tmp += "\t\t\t\t\tif(lstMFStruct.size() == 0)\n";
			tmp += "\t\t\t\t\t{\n";
			tmp += "\t\t\t\t\t\tMFStruct mfStructTmp = new MFStruct();\n";
			tmp += "\t\t\t\t\t\tmfStructTmp.initialization_" + new Integer(i+1) + "(";
			tmp += this.genMFStructcode.getInitFunctionString();
			tmp += "\t\t\t\t\t\tlstMFStruct.add(mfStructTmp);\n";
//			tmp += "//\t\t\t\t\t\tcontinue;\n";
			tmp += "\t\t\t\t\t}\n";
			
			tmp += "\t\t\t\t\telse\n";
			tmp += "\t\t\t\t\t{\n";
			
			tmp += "\t\t\t\t\t\tfor(int i = 0; i != lstMFStruct.size(); i++)\n";
			tmp += "\t\t\t\t\t\t{\n";
			tmp += "\t\t\t\t\t\t\tif(lstMFStruct.get(i).equals(";
			for(int i0 = 0; i0 != this.genMFStructcode.getGroupingTypeNameList().size(); i0++)
			{
				tmp += this.genMFStructcode.getGroupingTypeNameList().get(i0).getSecond() + "Tmp";
				if(i0 != this.genMFStructcode.getGroupingTypeNameList().size() - 1)
				{
					tmp += ",";
				}
			}
			tmp += ") == true)\n";
			tmp += "\t\t\t\t\t\t\t{\n";
			//Add count_* functions
			tmp += "\t\t\t\t\t\t\t\tlstMFStruct.get(i).set_count_" + new Integer(i+1)+ "();\n";
			
			ArrayList<Pair<Integer, String>> tmpList = new ArrayList<Pair<Integer, String>>(
					this.genMFStructcode.getFuncitonList());
			for(int j = 0; j != tmpList.size(); j++)
			{
				if(tmpList.get(j).getFirst().equals(i+1))
				{
					tmp += "\t\t\t\t\t\t\t\tlstMFStruct.get(i).";
					tmp += tmpList.get(j).getSecond() + "(" + 
					this.myInitSubString(tmpList.get(j).getSecond()) + "Tmp" + ");\n";
				}
			}
			tmp += "\t\t\t\t\t\t\t\tbreak;\n";
			tmp += "\t\t\t\t\t\t\t}\n";
			
			tmp += "\t\t\t\t\t\t\tif(i == lstMFStruct.size() - 1)\n";
			tmp += "\t\t\t\t\t\t\t{\n";
			tmp += "\t\t\t\t\t\t\t\tMFStruct mfStructTmp = new MFStruct();\n";
			tmp += "\t\t\t\t\t\t\t\tmfStructTmp.initialization_" + new Integer(i+1) + "("
						+ this.genMFStructcode.getInitFunctionString();
			tmp += "\t\t\t\t\t\t\t\tlstMFStruct.add(mfStructTmp);\n";
			tmp += "\t\t\t\t\t\t\t\tbreak;\n";
			tmp += "\t\t\t\t\t\t\t}\n";
			tmp += "\t\t\t\t\t\t}\n";
			tmp += "\t\t\t\t\t}\n";
			tmp += "\t\t\t\t}\n";
		}
		tmp += "\t\t\t}\n";
		return tmp;
	}