/// <summary> /// Оброботчик события клика кнопки отправить /// </summary> /// <param name="sender">Объект, инициировавший событие</param> /// <param name="e">данные события</param> private void btnSend_onClick(object sender, EventArgs e) { ReportEMailNSS rep = new ReportEMailNSS(); TepCommon.HandlerDbTaskCalculate.KEY_VALUES key; DateTime dtValues = DateTime.MinValue; IEnumerable <HandlerDbTaskCalculate.PUT_PARAMETER> putParameters; string e_mail = string.Empty; key = new TepCommon.HandlerDbTaskCalculate.KEY_VALUES() { TypeCalculate = TepCommon.HandlerDbTaskCalculate.TaskCalculate.TYPE.OUT_VALUES , TypeState = HandlerDbValues.STATE_VALUE.EDIT }; dtValues = (Controls.Find(PanelManagementAutobookMonthValues.INDEX_CONTROL.CALENDAR_EMAIL.ToString(), true)[0] as DateTimePicker).Value.Date; putParameters = HandlerDb.GetPutParameters("191"); e_mail = (Controls.Find(PanelManagementAutobookMonthValues.INDEX_CONTROL.TXTBX_EMAIL.ToString(), true)[0] as TextBox).Text; if (HandlerDb.Values.ContainsKey(key) == true) { rep.SendMailToNSS(putParameters , (from value in HandlerDb.Values[key] where (value.stamp_value == ((HandlerDb.ModeDataDatetime == HandlerDbTaskCalculate.MODE_DATA_DATETIME.Begined) ? dtValues.AddDays(1).Add(-Session.m_curOffsetUTC) // в случае, если данные сохраняются с меткой "начало интервала" : ((HandlerDb.ModeDataDatetime == HandlerDbTaskCalculate.MODE_DATA_DATETIME.Ended) ? dtValues.Add(-Session.m_curOffsetUTC) // в случае, если данные сохраняются с меткой "окончание интервала" : DateTime.MinValue))) && (putParameters.Select(putPar => putPar.m_Id).Contains(value.m_IdPut)) select value) , HandlerDb.GetValueAsRatio , dtValues , e_mail); } else { Logging.Logg().Error(string.Format(@"PanelTaskAutobookMonthValues::btnSend_onClick () - нет данных для отправления по e-mail..."), Logging.INDEX_MESSAGE.NOT_SET); } }