/// <summary> /// Show a dialog to import the spreadsheet, then import/update the data into the database. /// </summary> /// <param name="importController">Controller.SpreadsheetImport</param> private void executeImportSpreadsheetController(Controller.SpreadsheetImport importController) { // TODO: split this to catch different exception types (database error, file error) try { // execute it importController.openSpreadsheet(); importController.importUpdate(); } catch (Exception ex) { // it failed // tell the user and the logger string importDataErrorMessage = "Error importing " + importController.importType + " data: " + ex.Message; System.Windows.Forms.MessageBox.Show(importDataErrorMessage, "Retail POS", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Error); logger.Error(ex, importDataErrorMessage); logger.Error("Stack trace: " + ex.StackTrace); return; } // at this point, it succeeded // tell the user and the logger string importDataSuccessMessage = "Successfully imported data"; System.Windows.Forms.MessageBox.Show(importDataSuccessMessage, "Retail POS", System.Windows.Forms.MessageBoxButtons.OK, System.Windows.Forms.MessageBoxIcon.Information); logger.Debug(importDataSuccessMessage); }
private void productsToolStripMenuItem2_Click(object sender, EventArgs e) { // create an instance of the Controller Controller.SpreadsheetImport spreadsheetImportController = spreadsheetImportFactory.getImportSpreadsheetController("Product"); // execute it executeImportSpreadsheetController(spreadsheetImportController); }