} // end removeOne_Click private void onSelectedIndexChanged(object sender, EventArgs e) { StringBuilder sb = new StringBuilder(); allReportsArray ara = new allReportsArray(); // pull all reports for the group and display in available reports string selectedGroup = reportGroups.SelectedItem.ToString(); if (selectedGroup.Substring(1, 1) == "-") { selectedGroup = selectedGroup.Remove(1); } else if (selectedGroup.Substring(2, 1) == "-") { selectedGroup = selectedGroup.Remove(2); } else if (selectedGroup.Substring(3, 1) == "-") { selectedGroup = selectedGroup.Remove(3); } // display selected group reports if (selectedGroup == "") { // have user select a group if it gets to here MessageBox.Show("Please select a Report Group", "INFORMATION", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } // endif selectedGroup if (selectedGroup == "R") { additionalData.Enabled = false; regionList.Enabled = true; availableReports.Items.Clear(); return; } // endif selectedGroup is regional reports List <ReportsDO> allReports = bslyr.GetReports(); availableReports.Items.Clear(); if (selectedGroup == "L") { // just log level reports -- the only report group with a one character category name string[] logReptNum = new string[4] { "L1", "L2", "L8", "L10" }; string[] logReptTitle = new string[4] { "Log Grade File", "Log Stock Table - MBF", "Log Stock Table - Board and Cubic", "Log Counts and Volume by Length and Species" }; for (int j = 0; j < 4; j++) { sb.Clear(); sb.Append(logReptNum[j]); sb.Append("--"); sb.Append(logReptTitle[j]); availableReports.Items.Add(sb.ToString()); } // end for j loop return; } // endif group is log level reports for (int k = 0; k < ara.reportsArray.GetLength(0); k++) { if (ara.reportsArray[k, 0].StartsWith(selectedGroup)) { sb.Clear(); sb.Append(ara.reportsArray[k, 0]); sb.Append("--"); sb.Append(ara.reportsArray[k, 1]); availableReports.Items.Add(sb.ToString()); } // endif } // end for k loop additionalData.Enabled = false; regionList.Enabled = false; // turn on additional data button for specific report groups if (selectedGroup == "EX") { regionList.Enabled = false; additionalData.Enabled = true; } // endif return; } // end onSelectedIndexChanged
public void setupDialog() { // are there any graph reports selected reportList = bslyr.GetReports(); List <ReportsDO> justGraphs = reportList.FindAll( delegate(ReportsDO r) { return(r.ReportID.Substring(0, 2) == "GR"); }); // if these reports are not in the list, add them and make all the check boxes false if (justGraphs.Count == 0) { addGraphReports(); GR01check.Checked = false; GR02check.Checked = false; GR03check.Checked = false; GR04check.Checked = false; GR05check.Checked = false; GR06check.Checked = false; GR07check.Checked = false; GR08check.Checked = false; GR09check.Checked = false; GR10check.Checked = false; GR11check.Checked = false; } else if (justGraphs.Count > 0) { foreach (ReportsDO jg in justGraphs) { switch (jg.ReportID) { case "GR01": if (jg.Selected) { GR01check.Checked = true; } break; case "GR02": if (jg.Selected) { GR02check.Checked = true; } break; case "GR03": if (jg.Selected) { GR03check.Checked = true; } break; case "GR04": if (jg.Selected) { GR04check.Checked = true; } break; case "GR05": if (jg.Selected) { GR05check.Checked = true; } break; case "GR06": if (jg.Selected) { GR06check.Checked = true; } break; case "GR07": if (jg.Selected) { GR07check.Checked = true; } break; case "GR08": if (jg.Selected) { GR08check.Checked = true; } break; case "GR09": if (jg.Selected) { GR09check.Checked = true; } break; case "GR10": if (jg.Selected) { GR10check.Checked = true; } break; case "GR11": if (jg.Selected) { GR11check.Checked = true; } break; } // end switch } // end foreach loop } // endif return; } // end setupDialog
} // end onFile private void onButton1Click(object sender, EventArgs e) { CPbusinessLayer bslyr = new CPbusinessLayer(); bslyr.DAL = DAL; if (this.DAL_V3 != null) { bslyr.DAL_V3 = this.DAL_V3; }//end if if (whichProcess == 1) // equations { VolumeEquations volEqObj = new VolumeEquations(); volEqObj.bslyr.fileName = fileName; volEqObj.bslyr.DAL = DAL; if (this.DAL_V3 != null) { volEqObj.bslyr.DAL_V3 = DAL_V3; }//end if if (templateFlag == 0) { int nResult = volEqObj.setupDialog(); if (nResult != -1) { volEqObj.ShowDialog(); } } else if (templateFlag == 1) { int nResult = volEqObj.setupTemplateDialog(); if (nResult == 1) { volEqObj.templateFlag = templateFlag; volEqObj.ShowDialog(); } // endif } // endif } else if (whichProcess == 2) // reports { // calls routine to add standard and regional reports List <ReportsDO> currentReports = new List <ReportsDO>(); if (templateFlag == 1) { bslyr.fileName = newTemplateFile; bslyr.DAL = new DAL(newTemplateFile); } else { bslyr.fileName = fileName; } // get all reports currentReports = bslyr.GetReports(); // and get the all reports array allReportsArray ara = new allReportsArray(); // then check for various conditions to know what to do with the reports list if (currentReports.Count == 0) { currentReports = ReportMethods.fillReportsList(); bslyr.SaveReports(currentReports); if (DAL_V3 != null) { bslyr.insertReportsV3(); } }//end if else if (currentReports.Count < ara.reportsArray.GetLength(0)) { // old or new list? Check title if (currentReports[0].Title == "" || currentReports[0].Title == null) { // old reports -- update list currentReports = ReportMethods.updateReportsList(currentReports, ara); bslyr.SaveReports(currentReports); } else { // new reports -- just add currentReports = ReportMethods.addReports(currentReports, ara); bslyr.SaveReports(currentReports); } // endif //if the reports are out of sync delete and refresh V3. if (DAL_V3 != null) { bslyr.insertReportsV3(); } } // endif // now get reports selected currentReports = ReportMethods.deleteReports(currentReports, bslyr); currentReports = bslyr.GetSelectedReports(); // Get selected reports ReportsDialog rd = new ReportsDialog(); rd.fileName = fileName; rd.bslyr.fileName = bslyr.fileName; rd.bslyr.DAL = bslyr.DAL; //add version 3 ref for saving back. rd.bslyr.DAL_V3 = bslyr.DAL_V3; rd.reportList = currentReports; rd.templateFlag = templateFlag; rd.setupDialog(); rd.ShowDialog(); } else if (whichProcess == 4) // output { // Pull reports selected bslyr.fileName = fileName; // See if volume has been calculated (sum expansion factor since those are calculated before volume) // July 2014 -- However it looks like expansion factors could be present but volume is not // need to pull calculated values as well and sum net volumes List <TreeDO> tList = bslyr.getTrees(); double summedEF = tList.Sum(t => t.ExpansionFactor); List <TreeCalculatedValuesDO> tcvList = bslyr.getTreeCalculatedValues(); double summedNetBDFT = tcvList.Sum(tc => tc.NetBDFTPP); double summedNetCUFT = tcvList.Sum(tc => tc.NetCUFTPP); if (summedEF == 0 && summedNetBDFT == 0 && summedNetCUFT == 0) { MessageBox.Show("Looks like volume has not been calculated.\nReports cannot be produced without calculated volume.\nPlease calculate volume before continuing.", "INFORMATION", MessageBoxButtons.OK, MessageBoxIcon.Information); return; } // endif no volume for reports List <ReportsDO> selectedReports = bslyr.GetSelectedReports(); // no reports? let user know to go back and select reports if (selectedReports.Count == 0) { MessageBox.Show("No reports selected.\nReturn to Reports section and select reports.", "ERROR", MessageBoxButtons.OK, MessageBoxIcon.Error); return; } // endif no reports // Show dialog creating text file TextFileOutput tfo = new TextFileOutput(); tfo.selectedReports = selectedReports; tfo.fileName = fileName; tfo.currRegion = currentRegion; tfo.bslyr = bslyr; tfo.setupDialog(); tfo.ShowDialog(); string outFile = tfo.outFile; int retrnState = tfo.retrnState; // Let user know the file is complete // This shows only when the Finished button is clicked // X-button click just closes the window if (retrnState == 0) { StringBuilder message = new StringBuilder(); message.Append("Text output file is complete and can be found at:\n"); message.Append(outFile); MessageBox.Show(message.ToString(), "INFORMATION", MessageBoxButtons.OK, MessageBoxIcon.Information); processButton2.Enabled = true; processButton3.Enabled = true; processButton4.Enabled = true; processButton5.Enabled = true; processButton6.Enabled = true; return; } // endif } // endif whichProcess } // endif onButton1Click