/// <summary> /// returns confidential indicator for pollutant releases. If not calculated yet, it will be calculated and stored in viewstate /// </summary> /// <returns></returns> protected bool getPollutantReleaseConfidentialityAffected() { if (PollutantReleaseConfidentialityAffected == null) { PollutantReleaseConfidentialityAffected = AreaOverview.IsPollutantReleaseAffectedByConfidentiality(SearchFilter); } return((bool)PollutantReleaseConfidentialityAffected); }
public void DoSaveCSV(object sender, EventArgs e) { CultureInfo csvCulture = CultureResolver.ResolveCsvCulture(Request); CSVFormatter csvformat = new CSVFormatter(csvCulture); // Create Header var filter = SearchFilter; int pollutantGroupID = getPollutantGroupID(); List <string> pollutantCodes = getOrderedPollutantCodes(); MediumFilter.Medium medium = this.ucMediumSelector.SelectedMedium; bool isConfidentialityAffected = AreaOverview.IsPollutantReleaseAffectedByConfidentiality(filter, medium, pollutantGroupID); Dictionary <string, string> header = EPRTR.HeaderBuilders.CsvHeaderBuilder.GetAreaoverviewPollutantReleaseSearchHeader(filter, pollutantGroupID, medium, isConfidentialityAffected); // Create Body List <AreaOverview.AOPollutantTreeListRow> rows = AreaOverview.GetPollutantReleaseActivityTree(filter, medium, pollutantGroupID, pollutantCodes).ToList(); sortData(rows); // dump to file string topheader = csvformat.CreateHeader(header); string pollutantinfoHeader = csvformat.GetAreaOverviewPollutantInfoHeader(getOrderedPollutants(filter, medium, pollutantGroupID)); string rowHeader = csvformat.GetAreaOverviewPollutantDataHeader(getOrderedPollutants(filter, medium, pollutantGroupID)); Response.WriteUtf8FileHeader("EPRTR_Areaoverview_PollutantReleases_List"); Response.Write(topheader + pollutantinfoHeader + rowHeader); foreach (var item in rows) { string row = csvformat.GetAreaOverviewPollutantsRow(item); if (AreaOverview.AOPollutantTreeListRow.CODE_TOTAL.Equals(item.Code)) { Response.Write(rowHeader); } Response.Write(row); } Response.End(); }