.println("\"CallType\";\"Date\";\"Time\";\"Number\";\"Route\";\"Port\";\"Duration\";\"Name\";\"Address\";\"City\"");
.println("\"CallType\";\"Date\";\"Time\";\"Number\";\"Route\";\"Port\";\"Duration\";\"Name\";\"Address\";\"City\";\"CallByCall\"");
	public void saveToCSVFile(String filename, boolean wholeCallerList) {		Debug.msg("Saving to csv file " + filename);		FileOutputStream fos;		try {			fos = new FileOutputStream(filename);			PrintWriter pw = new PrintWriter(fos);			pw					.println("\"CallType\";\"Date\";\"Time\";\"Number\";\"Route\";\"Port\";\"Duration\";\"Name\";\"Address\";\"City\"");			int rows[] = null;			if (jfritz != null && jfritz.getJframe() != null) {				rows = jfritz.getJframe().getCallerTable().getSelectedRows();			}			if (!wholeCallerList && rows != null && rows.length > 0) {				for (int i = 0; i < rows.length; i++) {					Call currentCall = (Call) filteredCallerData							.elementAt(rows[i]);					pw.println(currentCall.toCSV());				}			} else if (wholeCallerList) { // Export ALL UNFILTERED Calls				Enumeration en = getUnfilteredCallVector().elements();				while (en.hasMoreElements()) {					Call call = (Call) en.nextElement();					pw.println(call.toCSV());				}			} else { // Export ALL FILTERED Calls				Enumeration en = getFilteredCallVector().elements();				while (en.hasMoreElements()) {					Call call = (Call) en.nextElement();					pw.println(call.toCSV());				}			}			pw.close();		} catch (FileNotFoundException e) {			Debug.err("Could not write " + filename + "!");		}	}