private void button_save_Click(object sender, EventArgs e) { string err = ""; if (ctrlDateTimePicker_start.ReadTs() >= ctrlDateTimePicker_end.ReadTs()) { err += Properties.MessageLocalization.activity_ts_mismatch + System.Environment.NewLine; } DataSet.dsActivities.OverlappingActivitiesDataTable d_overlap = new DataSet.dsActivities.OverlappingActivitiesDataTable(); //new DataSet.dsActivitiesTableAdapters.OverlappingActivitiesTableAdapter().Fill( // d_overlap, // (int)comboBox_utente_.SelectedValue, -1, // Program.DateToInt(ctrlDateTimePicker_start.ReadTs()), // Program.HmsToInt(ctrlDateTimePicker_start.ReadTs()), // Program.DateToInt(ctrlDateTimePicker_end.ReadTs()), // Program.HmsToInt(ctrlDateTimePicker_end.ReadTs())); new DataSet.dsActivitiesTableAdapters.OverlappingActivitiesTableAdapter().Fill( d_overlap, (int)comboBox_utente_.SelectedValue, -1, ctrlDateTimePicker_start.ReadTs(), ctrlDateTimePicker_end.ReadTs()); if (d_overlap.Count > 0) { err += Properties.MessageLocalization.activity_overlap + System.Environment.NewLine; } if (ctrlDateTimePicker_start.ReadTs().Minute % 15 != 0 || ctrlDateTimePicker_end.ReadTs().Minute % 15 != 0) { err += Properties.MessageLocalization.activity_wrong_min_range + System.Environment.NewLine; } if (!string.IsNullOrEmpty(err)) { MessageBox.Show(err); return; } else { try { if (dbDataGridView_events.SelectedRows.Count > 0) { DataSet.dsEvents.EventiTestaRow ev_testa_row = (dbDataGridView_events.SelectedRows[0].DataBoundItem as DataRowView).Row as DataSet.dsEvents.EventiTestaRow; DataSet.dsEvents.EventiRigheDataTable eventi_righe = new DataSet.dsEvents.EventiRigheDataTable(); new DataSet.dsEventsTableAdapters.EventiRigheTableAdapter().Fill(eventi_righe, ev_testa_row.EventKey, Program.language_); DataSet.dsActivitiesTableAdapters.ActivitiesTableAdapter act_adapter = new DataSet.dsActivitiesTableAdapters.ActivitiesTableAdapter(); DataSet.dsActivitiesTableAdapters.Man_Act_EveTableAdapter act_evt_adapter = new DataSet.dsActivitiesTableAdapters.Man_Act_EveTableAdapter(); long tot_sec = (long)(ctrlDateTimePicker_end.ReadTs() - ctrlDateTimePicker_start.ReadTs()).TotalSeconds; DateTime dt_prg = ctrlDateTimePicker_start.ReadTs(); DataSet.dsActivities.MaxActEveGroupDataTable d_max = new DataSet.dsActivities.MaxActEveGroupDataTable(); new DataSet.dsActivitiesTableAdapters.MaxActEveGroupTableAdapter().Fill(d_max); int act_event_group_id = (d_max[0].IsMaxActEveGroupIdNull() ? 0 : d_max[0].MaxActEveGroupId) + 1; using (TransactionScope scp = new TransactionScope()) { foreach (DataSet.dsEvents.EventiRigheRow ev_righe_row in eventi_righe.Rows) { int?COMKey = null; int?SCM_1_Key = null; int?SCM_2_Key = null; int?SCM_3_Key = null; if (!ev_righe_row.IsCOMKeyNull()) { COMKey = ev_righe_row.COMKey; } if (!ev_righe_row.IsSCM_1KeyNull()) { SCM_1_Key = ev_righe_row.SCM_1Key; } if (!ev_righe_row.IsSCM_2KeyNull()) { SCM_2_Key = ev_righe_row.SCM_2Key; } if (!ev_righe_row.IsSCM_3KeyNull()) { SCM_3_Key = ev_righe_row.SCM_3Key; } DateTime dt_next = dt_prg.AddSeconds(tot_sec * ev_righe_row.DriverPerc / 100); int ActivityKey = (int)act_adapter.InsertActivity( Program.DateToInt(dt_prg), Program.DateToInt(dt_next), Program.HmsToInt(dt_prg), Program.HmsToInt(dt_next), (int)(dt_next - dt_prg).TotalSeconds, string.Empty, (int)comboBox_utente_.SelectedValue, ev_testa_row.TipoManKey, (int)comboBox_tipo_reparto_.SelectedValue, null, ev_righe_row.IMPKey, ev_righe_row.MACKey, COMKey, SCM_1_Key, SCM_2_Key, SCM_3_Key, Program.CurrentUser.Login, dt_prg, dt_next, (int)comboBox_tipo_ore.SelectedValue, null); dt_prg = dt_next; int ActEveKey = (int)act_evt_adapter.InsertQuery(ActivityKey, ev_testa_row.EventKey, act_event_group_id); act_adapter.UpdateActEveKey(ActEveKey, ActivityKey); } scp.Complete(); } } ActivitySubmitEventArgs ev = new ActivitySubmitEventArgs(ctrlDateTimePicker_start.ReadTs(), ctrlDateTimePicker_end.ReadTs()); InitializeMask(); Program.RefreshActNoReport(); SubmitEvent(this, ev); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } }
private void button_save_Click(object sender, EventArgs e) { string err = ""; if (ctrlDateTimePicker_start.ReadTs() >= ctrlDateTimePicker_end.ReadTs()) { err += Properties.MessageLocalization.activity_ts_mismatch + System.Environment.NewLine; } if (comboBox_tipo_man.SelectedValue == null) { err += Properties.MessageLocalization.activity_man_type_not_selected + System.Environment.NewLine; } if (ctrlDateTimePicker_start.ReadTs().Minute % 15 != 0 || ctrlDateTimePicker_end.ReadTs().Minute % 15 != 0) { err += Properties.MessageLocalization.activity_wrong_min_range + System.Environment.NewLine; } DataSet.dsActivities.OverlappingActivitiesDataTable d_overlap = new DataSet.dsActivities.OverlappingActivitiesDataTable(); //new DataSet.dsActivitiesTableAdapters.OverlappingActivitiesTableAdapter().Fill( // d_overlap, // (int)comboBox_utente_.SelectedValue, activity_key_, // Program.DateToInt(ctrlDateTimePicker_start.ReadTs()), // Program.HmsToInt(ctrlDateTimePicker_start.ReadTs()), // Program.DateToInt(ctrlDateTimePicker_end.ReadTs()), // Program.HmsToInt(ctrlDateTimePicker_end.ReadTs())); new DataSet.dsActivitiesTableAdapters.OverlappingActivitiesTableAdapter().Fill( d_overlap, (int)comboBox_utente_.SelectedValue, activity_key_, ctrlDateTimePicker_start.ReadTs(), ctrlDateTimePicker_end.ReadTs()); if (d_overlap.Count > 0) { err += Properties.MessageLocalization.activity_overlap + System.Environment.NewLine; } if (!string.IsNullOrEmpty(err)) { MessageBox.Show(err); return; } else { try { if (type_ == Type.INSERT) { int?id_ev = null; new DataSet.dsActivitiesTableAdapters.ActivitiesTableAdapter().InsertActivity( Program.DateToInt(ctrlDateTimePicker_start.ReadTs()), Program.DateToInt(ctrlDateTimePicker_end.ReadTs()), Program.HmsToInt(ctrlDateTimePicker_start.ReadTs()), Program.HmsToInt(ctrlDateTimePicker_end.ReadTs()), (int)(ctrlDateTimePicker_end.ReadTs() - ctrlDateTimePicker_start.ReadTs()).TotalSeconds, textBox_remark.Text, (int)comboBox_utente_.SelectedValue, (int)comboBox_tipo_man.SelectedValue, (int)comboBox_tipo_reparto_.SelectedValue, id_ev, ctrlPlantSelector.SelectedImpianto(), ctrlPlantSelector.SelectedMacchina(), ctrlPlantSelector.SelectedComponente(), ctrlPlantSelector.SelectedSCM_1(), ctrlPlantSelector.SelectedSCM_2(), ctrlPlantSelector.SelectedSCM_3(), Program.CurrentUser.Login, ctrlDateTimePicker_start.ReadTs(), ctrlDateTimePicker_end.ReadTs(), (int)comboBox_tip_ore.SelectedValue, comboBox_Capex.SelectedValue.ToString().Trim().Equals(string.Empty) ? null : comboBox_Capex.SelectedValue.ToString() ); Program.RefreshActNoReport(); } else if (type_ == Type.MODIFY) { new DataSet.dsActivitiesTableAdapters.ActivitiesTableAdapter().UpdateQuery( Program.DateToInt(ctrlDateTimePicker_start.ReadTs()), Program.DateToInt(ctrlDateTimePicker_end.ReadTs()), Program.HmsToInt(ctrlDateTimePicker_start.ReadTs()), Program.HmsToInt(ctrlDateTimePicker_end.ReadTs()), (int)(ctrlDateTimePicker_end.ReadTs() - ctrlDateTimePicker_start.ReadTs()).TotalSeconds, textBox_remark.Text, (int)comboBox_utente_.SelectedValue, (int)comboBox_tipo_man.SelectedValue, (int)comboBox_tipo_reparto_.SelectedValue, ctrlPlantSelector.SelectedImpianto(), ctrlPlantSelector.SelectedMacchina(), ctrlPlantSelector.SelectedComponente(), ctrlPlantSelector.SelectedSCM_1(), ctrlPlantSelector.SelectedSCM_2(), ctrlPlantSelector.SelectedSCM_3(), Program.CurrentUser.Login, ctrlDateTimePicker_start.ReadTs(), ctrlDateTimePicker_end.ReadTs(), (int)comboBox_tip_ore.SelectedValue, comboBox_Capex.SelectedValue.ToString().Trim().Equals(string.Empty) ? null : comboBox_Capex.SelectedValue.ToString(), activity_key_); } ActivitySubmitEventArgs ev = new ActivitySubmitEventArgs(ctrlDateTimePicker_start.ReadTs(), ctrlDateTimePicker_end.ReadTs()); InitializeMask(); SubmitEvent(this, ev); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } } }