Монитор руководителя в 1С Монитор руководителя в 1С Монитор руководителя в 1С

1С 8.3 УТ

Необходимо сделать монитор руководителя для оценки работы предприятия.

При запуске программы выводится на рабочий стол, позволяя моментально оценить основные показатели работы.

ТехЗадание:

1-й монитор состоит из 3-х таблиц:

1 таблица "Отгрузка":

Сделать сравнение продаж текущего месяца и периода с начала года с таким же периодом прошлого года, вывести данные о продажах, рассчитать и вывести относительное изменение.

2-я таблица "Оплачено":

Сделать сравнение оплаты текущего месяца и периода с начала года с таким же периодом прошлого года, вывести данные об оплате, рассчитать и вывести относительное изменение.

3-я таблица "Оборотные средства":

Вывести данные о дебиторской заложенности за периоды: сегодня, вчера, месяц назад. Рассчитать и вывести относительное изменение задолженности.

Показать данные стоимости остатков готовой продукции и материалов на складах за периоды: сегодня, вчера, месяц назад. Рассчитать и вывести относительное изменение.

При нажатии на строку монитора об остатках материалов и готовой продукции выводить отчет расшифровку в разрезе номенклатуры.

Выполнение:

Монитором можно сделать любой отчет, имеющий форму.

1 Итак, сделаем отчет с формой. Процесс создания отчета описывать не буду.

отчет 1с

2 Теперь вытащим его на рабочий стол. Для этого произведем такие действия:

1С монитор руководителя

  1. На корне конфигурации кликнем правой кнопкой мыши;
  2. Выберем "Открыть рабочую область начальной страницы";
  3. В появившемся окне нажмем значок "+" и выберем форму нашего отчета;
  4. Чтобы монитор появлялся только у пользователя с полными правами нажмем на "Различная" в поле "Видимость";
  5. Выберем "полные права"

3 В данном мониторе при нажатии на значения 3-й таблицы происходит расшифровка. Делается это так:

Вначале создается отчет-расшифровка. Я его сделал с помощью СКД. Процесс разработки тут приводить не буду. Вот такие параметры он использует. Мы их передадим из монитора.

Использование отчета расшифровки в 1С

В мониторе используем событие "Выбор" для 3-й таблицы

Услуги 1с программиста для создания монитора

и на это событие вешаем такую процедуру:

&НаКлиенте

	Процедура Таблица3Выбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка) // при нажатии на запись таблицы 3
// запустить отчет при нажатии на продукцию
если (элементы.таблица3.ТекущиеДанные.Реквизит1="Готовая продукция")  тогда
	//параметры отчета
	парам=получитьПараметры("продукция");
	видНпродукция=неопределено;
	ценаПродукция=неопределено;
	парам.Свойство("видНпродукция",видНпродукция);
	парам.свойство("ценаПродукция",ценаПродукция);	
	//	
	ИмяОтчета = "продукция";
	ПараметрыФормы = Новый Структура;
	ПараметрыФормы.Вставить("СформироватьПриОткрытии",Истина);
	ПараметрыФормы.Вставить("ПользовательскиеНастройки",ЗаполнитьПользовательскиеНастройкиОтчета(ИмяОтчета,"Основной",ценаПродукция,видНпродукция));
	ОткрытьФорму("Отчет." + ИмяОтчета + ".Форма", ПараметрыФормы);
	конецЕсли;
	
// запустить отчет при нажатии на материалы
если (элементы.таблица3.ТекущиеДанные.Реквизит1="Материалы")  тогда
	//параметры отчета
	парам=получитьПараметры("материалы");
	видНматериалы=неопределено;
	ценаМатериалы=неопределено;
	парам.Свойство("видНматериалы",видНматериалы);
	парам.свойство("ценаМатериалы",ценаМатериалы);	
	//	
	ИмяОтчета = "продукция";
	ПараметрыФормы = Новый Структура;
	ПараметрыФормы.Вставить("СформироватьПриОткрытии",Истина);
	ПараметрыФормы.Вставить("ПользовательскиеНастройки",ЗаполнитьПользовательскиеНастройкиОтчета(ИмяОтчета,"Основной",ценаМатериалы,видНматериалы));
	ОткрытьФорму("Отчет." + ИмяОтчета + ".Форма", ПараметрыФормы);
	конецЕсли;

	
	
КонецПроцедуры

Функция ЗаполнитьПользовательскиеНастройкиОтчета(ИмяОтчета,ИмяВарианта,ВидЦен,ВидНоменклатуры) Экспорт	
	ОтчетОбъект=Отчеты[ИмяОтчета].Создать();
	КомпоновщикНастроек = ОтчетОбъект.КомпоновщикНастроек;	
	Если ИмяВарианта<>"" Тогда
		Варианты=ОтчетОбъект.СхемаКомпоновкиДанных.ВариантыНастроек;
		НайденныйВариант=Варианты.Найти(ИмяВарианта);
		Если НайденныйВариант<>Неопределено Тогда
			Настройки=НайденныйВариант.Настройки; 			
			// Передаем параметры
				Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("датаН",КонецДня(ТекущаяДата()));
				Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("видНоменклатуры",ВидНоменклатуры);
				Настройки.ПараметрыДанных.УстановитьЗначениеПараметра("видЦены",ВидЦен);
			//
		КонецЕсли; 		
	Иначе			
		Настройки = КомпоновщикНастроек.ПолучитьНастройки();		
	КонецЕсли; 
	
	КомпоновщикНастроек.ЗагрузитьНастройки(Настройки);
	
	Возврат КомпоновщикНастроек.ПользовательскиеНастройки;
	
КонецФункции


Функция нужна для заполнения параметров вызываемого отчета "Продукция".
В итоге при нажатии на строку "Материалы" 3-й таблицы монитора открывается отчет расшифровка

отчет расшифровка 1с. Услуги 1С программиста