private void ИзменитьУровеньИстории(bool следующийУровень) { if (this.ОписаниеТекущегоУровня != null) { this.СохранениеНастроек(); this.КурсорОжидания(); try { if (следующийУровень) { int dataSourceRowIndex = this.данныеТаблицыИстории.GetDataSourceRowIndex(this.данныеТаблицыИстории.FocusedRowHandle); ОписаниеУровняПросмотраИсторииСборки сборки = this.ОписаниеТекущегоУровня.ПолучитьОписаниеПоЭлементу(dataSourceRowIndex); if ((сборки != null) && сборки.ПостроитьОписание()) { this.ОписаниеТекущегоУровня = сборки; } else { Сообщение.Показать("История сборки для данной строки отсутствует."); } } else if (this.ОписаниеТекущегоУровня.одитель != null) { this.ОписаниеТекущегоУровня = this.ОписаниеТекущегоУровня.одитель; } } finally { this.таблицаИстории.RefreshDataSource(); this.ОбычныйКурсор(); } this.кнопкаНазад.Enabled = this.ОписаниеТекущегоУровня.одитель != null; } }
private void ЗагрузкаЭлементовОписания(ОписаниеУровняПросмотраИсторииСборки описание, object дополнительно) { if ((дополнительно != null) && (дополнительно is ЭлементПросмотраЗаписиИсторииСборки)) { this.индикаторПроцесса.СледующийШаг((дополнительно as ЭлементПросмотраЗаписиИсторииСборки).Учреждение); Application.DoEvents(); } }
private void ПередЗагрузкойЭлементовОписания(ОписаниеУровняПросмотраИсторииСборки описание, object дополнительно) { if (this.индикаторПроцесса == null) { this.индикаторПроцесса = new ФормаИндикаторПроцесса(); } this.индикаторПроцесса.Минимум = 0; this.индикаторПроцесса.Максимум = описание.История.Count; this.индикаторПроцесса.Позиция = 0; this.индикаторПроцесса.Шаг = 1; this.индикаторПроцесса.Показать(); }
public bool Загрузить(ОтчетнаяФормаДанных отчетнаяФорма, string таблица, string строка, string строкаСтарая) { if (!(((отчетнаяФорма != null) && !string.IsNullOrEmpty(таблица)) && отчетнаяФорма.Данные.СодержитТаблицу(таблица))) { return(false); } if ((this.типПостроения == ТипПостроенияИсторииСборки.ПоСтолбцу) && string.IsNullOrEmpty(this.столбецПостроения)) { Сообщение.ПоказатьПредупреждение("Не указан столбец отображения."); return(false); } bool flag = false; this.КурсорОжидания(); try { try { Guid guid = ХранилищеДанныхФорм.ПолучитьИдентификаторХранимыхДанных(отчетнаяФорма.Данные.Идентификатор); string str = отчетнаяФорма.Метаструктура.Наименование; string str2 = отчетнаяФорма.НаименованиеУчреждения; this.списокСтолбцов = отчетнаяФорма.Метаструктура.Таблицы[таблица].Столбцы; ОписаниеУровняПросмотраИсторииСборки сборки = new ОписаниеУровняПросмотраИсторииСборки(guid, str, str2, таблица, строка, строкаСтарая); сборки.СтолбецПостроения = this.СтолбецПостроения; сборки.ТипПостроения = this.ТипПостроенияИстории; сборки.КэшТаблицИсточников = this.кэшТаблицИсточников; сборки.КэшПодчиненныхОписаний = this.кэшПодчиненныхОписаний; сборки.ПередФормированиемЭлементов += new СобытиеОписанияУровняИстории(this.ПередЗагрузкойЭлементовОписания); сборки.ФормированиеЭлементов += new СобытиеОписанияУровняИстории(this.ЗагрузкаЭлементовОписания); сборки.ПослеФормированияЭлементов += new СобытиеОписанияУровняИстории(this.ПослеЗагрузкиЭлементовОписания); if (!сборки.ПостроитьОписание()) { сборки.Очистить(); } else { this.ОписаниеТекущегоУровня = сборки; flag = true; } } catch (Exception exception) { Сообщение.ПоказатьИсключительнуюСитуацию("Ошибка загрузки данных.", exception); flag = false; } } finally { this.ОбычныйКурсор(); } return(flag); }
public ОписаниеУровняПросмотраИсторииСборки(Guid идентификаторДанных, string форма, string учреждение, string кодТаблицы, string кодСтроки, string кодСтрокиСтарый) { this.родитель = null; this.кэшТаблицИсточников = null; this.кэшПодчиненныхОписаний = null; this.столбецПостроения = string.Empty; this.типПостроения = ТипПостроенияИсторииСборки.ПоСтолбцу; this.списокЭлементов = null; this.история = ИсторияСборкиИтоговыхОтчетов.ЗагрузитьИсторию(идентификаторДанных, кодТаблицы, кодСтроки, true, true); if (!((this.история.Count != 0) || string.IsNullOrEmpty(кодСтрокиСтарый))) { this.история = ИсторияСборкиИтоговыхОтчетов.ЗагрузитьИсторию(идентификаторДанных, кодТаблицы, кодСтрокиСтарый, true, true); } this.история.НаименованиеФормыПриемника = форма; this.история.НаименованиеУчрежденияПриемника = учреждение; this.кодУчреждения = this.история.КодУчрежденияПриемника; }
public ОписаниеУровняПросмотраИсторииСборки ПолучитьОписаниеПоЭлементу(ЭлементПросмотраЗаписиИсторииСборки элемент) { if ((!this.ОписаниеЗагружено || (элемент == null)) || (this.кэшПодчиненныхОписаний == null)) { return(null); } ЗаписьИсторииСборкиИтоговыхОтчетов отчетов = элемент.ЗаписьИстории; Guid guid1 = отчетов.ИдентификаторДанныхИсточника; if (отчетов.ИдентификаторДанныхИсточника == Guid.Empty) { return(null); } if (this.кэшПодчиненныхОписаний.ContainsKey(отчетов.КлючИсточникаСтрокой)) { return(this.кэшПодчиненныхОписаний[отчетов.КлючИсточникаСтрокой]); } ОписаниеУровняПросмотраИсторииСборки сборки = new ОписаниеУровняПросмотраИсторииСборки(отчетов); if (!сборки.ИсторияЗагружена) { сборки.Очистить(); сборки = null; } else { сборки.ТипПостроения = this.типПостроения; сборки.СтолбецПостроения = this.СтолбецПостроения; сборки.КэшТаблицИсточников = this.КэшТаблицИсточников; сборки.КэшПодчиненныхОписаний = this.КэшПодчиненныхОписаний; сборки.одитель = this; if (!сборки.ПостроитьОписание()) { сборки.Очистить(); сборки = null; } } this.кэшПодчиненныхОписаний.Add(отчетов.КлючИсточникаСтрокой, сборки); return(сборки); }
private void ПослеЗагрузкиЭлементовОписания(ОписаниеУровняПросмотраИсторииСборки описание, object дополнительно) { this.индикаторПроцесса.Закрыть(); }