private void buttonComando_Click(object sender, RoutedEventArgs e) { checkdatecorreto = false; //controllo selezione clienti if (cmbClienti.SelectedIndex == -1) { MessageBox.Show("selezionare un cliente"); return; } MasterFile mf = MasterFile.Create(); Utilities u = new Utilities(); int IDCliente = Convert.ToInt32(htClienti[cmbClienti.SelectedIndex].ToString()); IDPianificazioniVigilanza = App.MasterFile_NewID; try { IDPianificazioniVigilanza = Convert.ToInt32(htDate[cmbData.SelectedIndex].ToString()); } catch (Exception ex) { cBusinessObjects.logger.Error(ex, "wSchedaPianificazioneVigilanza.buttonComando_Click1 exception"); string log = ex.Message; } if (TipologiaAttivita == App.TipoAttivitaScheda.Delete && IDPianificazioniVigilanza == -1) { MessageBox.Show("selezionare una sessione"); return; } App.TipoAttivitaScheda oldTipo = TipologiaAttivita; if (TipologiaAttivita == App.TipoAttivitaScheda.New) { stackPanel1.IsEnabled = false; //tabControl1.IsEnabled = false; // gridButtons.IsEnabled = false; loading.Visibility = Visibility; Application.Current.Dispatcher.Invoke(DispatcherPriority.Background, new Action(delegate { })); //cBusinessObjects.show_workinprogress("Prima creazione dell'albero in corso..."); } switch (TipologiaAttivita) { //Nuovo e salva case App.TipoAttivitaScheda.New: case App.TipoAttivitaScheda.Edit: //convalida dati //Campi Obbligatorio if (!u.ConvalidaDatiInterfaccia(dtpDataInizio, "Data Inizio periodo mancante.")) { cBusinessObjects.hide_workinprogress(); return; } if (!u.ConvalidaDatiInterfaccia(dtpDataFine, "Data Fine periodo mancante.")) { cBusinessObjects.hide_workinprogress(); return; } DateTime dtinizio = new DateTime(); DateTime dtfine = new DateTime(); try { dtinizio = Convert.ToDateTime(dtpDataInizio.SelectedDate.Value.ToShortDateString()); } catch (Exception ex) { cBusinessObjects.logger.Error(ex, "wSchedaPianificazioneVigilanza.buttonComando_Click2 exception"); string log = ex.Message; cBusinessObjects.hide_workinprogress(); MessageBox.Show("Attenzione data inizio inserita non valida"); return; } try { dtfine = Convert.ToDateTime(dtpDataFine.SelectedDate.Value.ToShortDateString()); } catch (Exception ex) { cBusinessObjects.logger.Error(ex, "wSchedaPianificazioneVigilanza.buttonComando_Click3 exception"); string log = ex.Message; cBusinessObjects.hide_workinprogress(); MessageBox.Show("Attenzione data fine inserita non valida"); return; } if (dtinizio.CompareTo(dtfine) > 0) { cBusinessObjects.hide_workinprogress(); MessageBox.Show("Attenzione data fine precedente a data inizio"); return; } //Controllo che questa data non sia già stata presa if (!mf.CheckDoppio_PianificazioniVigilanza(IDPianificazioniVigilanza, IDCliente, dtpDataInizio.SelectedDate.Value.ToShortDateString(), dtpDataFine.SelectedDate.Value.ToShortDateString())) { cBusinessObjects.hide_workinprogress(); MessageBox.Show("Data già pianificata"); return; } Hashtable htSelected = mf.GetPianificazioniVigilanza(IDPianificazioniVigilanza.ToString()); if (htSelected.Count != 0) { XmlDataProviderManager x = new XmlDataProviderManager(App.AppDataDataFolder + "\\" + htSelected["FileData"].ToString()); string firstdata = ""; string lastData = ""; DataTable datiTestata = cBusinessObjects.GetData(100003, typeof(PianificazioneVerificheTestata), IDCliente, IDPianificazioniVigilanza, 27); foreach (DataRow item in datiTestata.Rows) { DateTime datehere = new DateTime(); try { datehere = Convert.ToDateTime(item["Data"].ToString()); } catch (Exception ex) { cBusinessObjects.logger.Error(ex, "wSchedaPianificazioneVerifica.buttonComando_Click4 exception"); string log = ex.Message; continue; } if (firstdata == "") { firstdata = item["Data"].ToString(); } if (lastData == "") { lastData = item["Data"].ToString(); } if (datehere.CompareTo(Convert.ToDateTime(firstdata)) < 0) { firstdata = item["Data"].ToString(); } if (datehere.CompareTo(Convert.ToDateTime(lastData)) > 0) { lastData = item["Data"].ToString(); } } if (firstdata != "") { if (dtinizio.CompareTo(Convert.ToDateTime(firstdata)) > 0) { cBusinessObjects.hide_workinprogress(); MessageBox.Show("Attenzione data inizio successiva alla prima data pianificata."); return; } if (dtfine.CompareTo(Convert.ToDateTime(lastData)) < 0) { cBusinessObjects.hide_workinprogress(); MessageBox.Show("Attenzione data fine precedente all ultima data pianificata"); return; } } } checkdatecorreto = true; //setto dati Hashtable ht = new Hashtable(); ht.Add("Cliente", IDCliente); ht.Add("DataInizio", dtpDataInizio.SelectedDate.Value.ToShortDateString()); ht.Add("DataFine", ((dtpDataFine.SelectedDate != null) ? dtpDataFine.SelectedDate.Value.ToShortDateString() : dtpDataInizio.SelectedDate.Value.ToShortDateString())); IDPianificazioniVigilanza = mf.SetPianificazioniVigilanza(ht, IDPianificazioniVigilanza, IDCliente); RegistrazioneEffettuata = true; if (TipologiaAttivita == App.TipoAttivitaScheda.New) { if (IDClienteImport != "-1") { cBusinessObjects.hide_workinprogress(); this.Close(); } //Process wait - START //ProgressWindow pw = new ProgressWindow(); cBusinessObjects.SessioneIsNew = true; TipologiaAttivita = App.TipoAttivitaScheda.Edit; mf.SetAnafraficaStato(Convert.ToInt32(IDCliente), App.TipoAnagraficaStato.Disponibile); ConfiguraMaschera(); foreach (DictionaryEntry item in htClienti) { if (Convert.ToInt32(item.Value.ToString()) == IDCliente) { cmbClienti.SelectedIndex = Convert.ToInt32(item.Key.ToString()); } } functionCmbClientiChanged(cmbClienti); cmbData.IsEnabled = true; foreach (DictionaryEntry item in htDate) { if (Convert.ToInt32(item.Value.ToString()) == IDPianificazioniVigilanza) { cmbData.SelectedIndex = Convert.ToInt32(item.Key.ToString()); } } functionCmbDataChanged(cmbData); cBusinessObjects.AddSessione("PianificazioniVigilanza", cmbData.SelectedValue.ToString(), IDPianificazioniVigilanza, IDCliente); //Process wait - STOP //pw.Close(); } _DatiCambiati = false; break; case App.TipoAttivitaScheda.Delete: //richiesta conferma if (MessageBoxResult.No == u.ConfermaCancellazione()) { return; } //cancellazione mf.DeletePianificazioniVigilanza(IDPianificazioniVigilanza, IDCliente.ToString()); RegistrazioneEffettuata = true; base.Close(); break; case App.TipoAttivitaScheda.Export: break; } //apro tree appena creato if (oldTipo == App.TipoAttivitaScheda.New) { //MessageBox.Show("apro tree appena creato"); AccediVigilanza_Click(IDPianificazioniVigilanza.ToString(), false); } //chiudo maschera if (TipologiaAttivita != App.TipoAttivitaScheda.Edit) { base.Close(); } }
private void buttonComando_Click(object sender, RoutedEventArgs e) { //controllo selezione clienti if (cmbClienti.SelectedIndex == -1) { MessageBox.Show("selezionare un cliente"); return; } MasterFile mf = MasterFile.Create(); Utilities u = new Utilities(); int IDCliente = Convert.ToInt32(htClienti[cmbClienti.SelectedIndex].ToString()); IDPianificazioniVigilanza = App.MasterFile_NewID; try { IDPianificazioniVigilanza = Convert.ToInt32(htDate[cmbData.SelectedIndex].ToString()); } catch (Exception ex) { cBusinessObjects.logger.Error(ex, "wSchedaPianificazioneVigilanzaOLD.buttonComando_Click exception"); string log = ex.Message; } if (TipologiaAttivita == App.TipoAttivitaScheda.Delete && IDPianificazioniVigilanza == -1) { MessageBox.Show("selezionare una sessione"); return; } App.TipoAttivitaScheda oldTipo = TipologiaAttivita; switch (TipologiaAttivita) { //Nuovo e salva case App.TipoAttivitaScheda.New: case App.TipoAttivitaScheda.Edit: //convalida dati //Campi Obbligatorio if (!u.ConvalidaDatiInterfaccia(dtpDataInizio, "Data Inizio periodo mancante.")) { return; } if (!u.ConvalidaDatiInterfaccia(dtpDataFine, "Data Fine periodo mancante.")) { return; } //Controllo che questa data non sia già stata presa if (!mf.CheckDoppio_PianificazioniVigilanza(IDPianificazioniVigilanza, IDCliente, dtpDataInizio.SelectedDate.Value.ToShortDateString(), dtpDataFine.SelectedDate.Value.ToShortDateString())) { MessageBox.Show("Data già pianificata"); return; } //setto dati Hashtable ht = new Hashtable(); ht.Add("Cliente", IDCliente); ht.Add("DataInizio", dtpDataInizio.SelectedDate.Value.ToShortDateString()); ht.Add("DataFine", ((dtpDataFine.SelectedDate != null) ? dtpDataFine.SelectedDate.Value.ToShortDateString() : dtpDataInizio.SelectedDate.Value.ToShortDateString())); IDPianificazioniVigilanza = mf.SetPianificazioniVigilanza(ht, IDPianificazioniVigilanza, IDCliente); RegistrazioneEffettuata = true; if (TipologiaAttivita == App.TipoAttivitaScheda.New) { if (IDClienteImport != "-1") { this.Close(); } cBusinessObjects.SessioneIsNew = true; TipologiaAttivita = App.TipoAttivitaScheda.Edit; mf.SetAnafraficaStato(Convert.ToInt32(IDCliente), App.TipoAnagraficaStato.Disponibile); ConfiguraMaschera(); foreach (DictionaryEntry item in htClienti) { if (Convert.ToInt32(item.Value.ToString()) == IDCliente) { cmbClienti.SelectedIndex = Convert.ToInt32(item.Key.ToString()); } } functionCmbClientiChanged(cmbClienti); cmbData.IsEnabled = true; foreach (DictionaryEntry item in htDate) { if (Convert.ToInt32(item.Value.ToString()) == IDPianificazioniVigilanza) { cmbData.SelectedIndex = Convert.ToInt32(item.Key.ToString()); } } functionCmbDataChanged(cmbData); cBusinessObjects.AddSessione("PianificazioniVigilanza", cmbData.SelectedValue.ToString(), IDPianificazioniVigilanza, IDCliente); } _DatiCambiati = false; break; case App.TipoAttivitaScheda.Delete: //richiesta conferma if (MessageBoxResult.No == u.ConfermaCancellazione()) { return; } //cancellazione mf.DeletePianificazioniVigilanza(IDPianificazioniVigilanza, IDCliente.ToString()); RegistrazioneEffettuata = true; base.Close(); break; case App.TipoAttivitaScheda.Export: break; } //apro tree appena creato if (oldTipo == App.TipoAttivitaScheda.New) { //MessageBox.Show("apro tree appena creato"); AccediVigilanza_Click(IDPianificazioniVigilanza.ToString(), false); } //chiudo maschera if (TipologiaAttivita != App.TipoAttivitaScheda.Edit) { base.Close(); } }