- •Содержание
- •Введение
- •1 Описание предметной области
- •2 Постановка задачи
- •3 Структура прикладного решения
- •3.1 Перечисления
- •3.2 Справочники
- •Описание параметров получения данных;
- •Описание макетов полей и группировок и др.
- •4 Анализ данных в 1с:Предприятие 8.2 на примере проведения кластерного анализа, общей статистики и поиска последовательностей
- •4.1 Кластерный анализ на платформе 1с:Предприятие 8.2
- •4.2 Общая статистика на платформе 1с:Предприятие 8.2
- •4.3 Поиск последовательностей на платформе 1с:Предприятие 8.2
- •5 Описание работы системы
- •Список использованных источников
- •Приложение а
- •Листинг программы Модуль отчета «Проекты сотрудника»
- •Модуль отчета «Затраты за период»
- •Модуль отчета «Динамика финансирования»
- •Модуль отчета «Кластерный анализ»
- •Модуль формы обработки «Приоритет ремонта»
- •Модуль формы обработки «Статистика домов»
- •Модуль формы обработки «Статистика ремонта»
- •Модуль формы обработки «Поиск последовательностей»
Модуль формы обработки «Приоритет ремонта»
Процедура КнопкаВыполнитьНажатие(Кнопка)
Анализ = Новый АнализДанных;
Анализ.ТипАнализа = Тип("АнализДанныхКластеризация");
///
Анализ.Параметры.типзаполнениятаблицы.значение=ТипЗаполненияТаблицыРезультатаАнализаДанных.ИспользуемыеПоля;
///
Анализ. ИсточникДанных = ЭлементыФормы.ТабличноеПоле1.Значение;
// выбор метрики
Анализ.Параметры.МераРасстояния.Значение = ТипМерыРасстоянияАнализаДанных.ЕвклидоваМетрикаВКвадрате;
// выбор метода кластеризации
Анализ.Параметры.МетодКластеризации.Значение = МетодКластеризации.КСредних;
//анализ
РезультатАнализа = Анализ.Выполнить();
//вывод в табл поле
кластеризация=РезультатАнализа.ТаблицаКластеризации;
кластеризация.Колонки.Удалить(1);
ЭлементыФормы.ТабличноеПоле2.Значение=кластеризация;
ЭлементыФормы.ТабличноеПоле2.СоздатьКолонки();
//
Построитель = Новый ПостроительОтчетаАнализаДанных();
Построитель.Макет = Неопределено;
Построитель.ТипАнализа = Тип("АнализДанныхКластеризация");
ТабДок = Новый ТабличныйДокумент; Построитель.Вывести(РезультатАнализа, ТабДок);
ТабДок.Показать();
КонецПроцедуры
Процедура Кнопка1Нажатие(Элемент)
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| СтатусПроектаСрезПоследних.НарядНаРемонт,
| СтатусПроектаСрезПоследних.НарядНаРемонт.Затраты - СтатусПроектаСрезПоследних.Финансирование КАК НедофинасированнаяСумма
|ИЗ
| РегистрСведений.СтатусПроекта.СрезПоследних(&текущ, ) КАК СтатусПроектаСрезПоследних
|ГДЕ
| СтатусПроектаСрезПоследних.НарядНаРемонт.Затраты - СтатусПроектаСрезПоследних.Финансирование > 0";
Запрос.УстановитьПараметр("текущ",ТекущаяДата());
//Запрос.УстановитьПараметр("Статус1",Перечисления.Статус.Заморожен);
//Запрос.УстановитьПараметр("Статус2",Перечисления.Статус.Не_обслужен);
Результат = Запрос.Выполнить();
ЭлементыФормы.ТабличноеПоле1.Значение=Результат.Выгрузить();
ЭлементыФормы.ТабличноеПоле1.СоздатьКолонки();
КонецПроцедуры
Процедура Кнопка2Нажатие(Элемент)
КонецПроцедуры
Модуль формы обработки «Статистика домов»
Процедура КнопкаВыполнитьНажатие(Кнопка)
МойАнализДанных = Новый АнализДанных;
МойАнализДанных.ТипАнализа=Тип ("АнализДанныхОбщаяСтатистика");
МойАнализДанных.ИсточникДанных = ЭлементыФормы.ТабличноеПоле1.Значение;
РезультатАнализаДанных = МойАнализДанных.Выполнить();
Построитель = Новый ПостроительОтчетаАнализаДанных();
Построитель.Макет = Неопределено;
Построитель.ТипАнализа = Тип ("АнализДанныхОбщаяСтатистика");
ТабДок = Новый ТабличныйДокумент;
Построитель.Вывести(РезультатАнализаДанных, ТабДок);
ТабДок.Показать();
КонецПроцедуры
Процедура Кнопка1Нажатие(Элемент)
Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ
| Наряд_на_ремонт.АдресДома,
| Наряд_на_ремонт.Затраты
|ИЗ
| Документ.Наряд_на_ремонт КАК Наряд_на_ремонт";
Результат = Запрос.Выполнить();
ЭлементыФормы.ТабличноеПоле1.Значение=Результат.Выгрузить();
ЭлементыФормы.ТабличноеПоле1.СоздатьКолонки();
КонецПроцедуры
