Продажи / Модуль менеджера

файл
#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда

#Область ПрограммныйИнтерфейс

#Область КомандыПодменюОтчеты

// Добавляет команду отчета в список команд.
// 
// Параметры:
//   КомандыОтчетов - см. ВариантыОтчетовПереопределяемый.ПередДобавлениемКомандОтчетов.КомандыОтчетов
// Возвращаемое значение:
// 	СтрокаТаблицыЗначений
Функция ДобавитьКомандуПродажи(КомандыОтчетов) Экспорт

	Если ПравоДоступа("Просмотр", Метаданные.Отчеты.ВыручкаИСебестоимостьПродаж) Тогда
		
		КомандаОтчет = КомандыОтчетов.Добавить();
		
		КомандаОтчет.Менеджер = Метаданные.Отчеты.ВыручкаИСебестоимостьПродаж.ПолноеИмя();
		КомандаОтчет.Представление = НСтр("ru = 'Продажи'");
		
		КомандаОтчет.МножественныйВыбор = Истина;
		КомандаОтчет.Важность = "СмТакже";
		КомандаОтчет.ФункциональныеОпции = "ИспользоватьДанныеПартнераКлиентаКонтекст";
		КомандаОтчет.ДополнительныеПараметры.Вставить("ИмяКоманды", "Продажи");
		КомандаОтчет.КлючВарианта = "ДинамикаПродажКонтекст";
		
		Возврат КомандаОтчет;
		
	КонецЕсли;

	Возврат Неопределено;

КонецФункции

// Добавляет команду отчета в список команд.
// 
// Параметры:
//   КомандыОтчетов - см. ВариантыОтчетовПереопределяемый.ПередДобавлениемКомандОтчетов.КомандыОтчетов
// Возвращаемое значение:
// 	СтрокаТаблицыЗначений
Функция ДобавитьКомандуПродажиПоЗаказу(КомандыОтчетов) Экспорт

	Если ПравоДоступа("Просмотр", Метаданные.Отчеты.ВыручкаИСебестоимостьПродаж) Тогда
		
		КомандаОтчет = КомандыОтчетов.Добавить();
		
		КомандаОтчет.Менеджер = Метаданные.Отчеты.ВыручкаИСебестоимостьПродаж.ПолноеИмя();
		КомандаОтчет.Представление = НСтр("ru = 'Продажи по заказу'");
		
		КомандаОтчет.МножественныйВыбор = Ложь;
		КомандаОтчет.Важность = "Важное";
		КомандаОтчет.ДополнительныеПараметры.Вставить("ИмяКоманды", "ПродажиПоЗаказу");
		КомандаОтчет.КлючВарианта = "ПродажиПоЗаказуКонтекст";
		
		Возврат КомандаОтчет;
		
	КонецЕсли;

	Возврат Неопределено;

КонецФункции

// Добавляет команду отчета в список команд.
// 
// Параметры:
//   КомандыОтчетов - см. ВариантыОтчетовПереопределяемый.ПередДобавлениемКомандОтчетов.КомандыОтчетов
// Возвращаемое значение:
// 	СтрокаТаблицыЗначений
Функция ДобавитьКомандуПродажиПоСегменту(КомандыОтчетов) Экспорт

	Если ПравоДоступа("Просмотр", Метаданные.Отчеты.ВыручкаИСебестоимостьПродаж) Тогда
		
		КомандаОтчет = КомандыОтчетов.Добавить();
		
		КомандаОтчет.Менеджер = Метаданные.Отчеты.ВыручкаИСебестоимостьПродаж.ПолноеИмя();
		КомандаОтчет.Представление = НСтр("ru = 'Продажи по сегменту'");
		
		КомандаОтчет.МножественныйВыбор = Истина;
		КомандаОтчет.Важность = "СмТакже";
		КомандаОтчет.ДополнительныеПараметры.Вставить("ИмяКоманды", "ПродажиПоСегменту");
		КомандаОтчет.КлючВарианта = "ДинамикаПродажКонтекст";
		
		Возврат КомандаОтчет;
		
	КонецЕсли;

	Возврат Неопределено;

КонецФункции

// Добавляет команду отчета в список команд.
// 
// Параметры:
//   КомандыОтчетов - см. ВариантыОтчетовПереопределяемый.ПередДобавлениемКомандОтчетов.КомандыОтчетов
// Возвращаемое значение:
// 	СтрокаТаблицыЗначений
Функция ДобавитьКомандуПродажиПоНоменклатуре(КомандыОтчетов) Экспорт
	
	Если ПравоДоступа("Просмотр", Метаданные.Отчеты.ВыручкаИСебестоимостьПродаж) Тогда
		
		КомандаОтчет = КомандыОтчетов.Добавить();
		
		КомандаОтчет.Менеджер = Метаданные.Отчеты.ВыручкаИСебестоимостьПродаж.ПолноеИмя();
		КомандаОтчет.Представление = НСтр("ru= 'Продажи номенклатуры'");
		
		
		КомандаОтчет.Важность = "Обычное";
		КомандаОтчет.МножественныйВыбор = Ложь;
		
		КомандаОтчет.ДополнительныеПараметры.Вставить("ИмяКоманды", "ПродажиПоНоменклатуре");
		
		КомандаОтчет.КлючВарианта = "ПоНоменклатуреКонтекст";
		
		Возврат КомандаОтчет;
		
	КонецЕсли;
	
	Возврат Неопределено;
	
КонецФункции

#КонецОбласти

#Область ДляВызоваИзДругихПодсистем

// Задает расширенные настройки отчета
//
// Параметры:
//   Настройки - см. ВариантыОтчетовПереопределяемый.НастроитьВариантыОтчетов.Настройки
//   ИспользоватьНесколькоВидовНоменклатуры - Булево -
//
Процедура НастроитьВариантыОтчета(Настройки, ИспользоватьНесколькоВидовНоменклатуры) Экспорт
	
	ОписаниеОтчета = ВариантыОтчетов.ОписаниеОтчета(Настройки, Метаданные.Отчеты.ВыручкаИСебестоимостьПродаж);
	ОписаниеОтчета.ОпределитьНастройкиФормы = Истина;
	
	// Общие.
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "");
	ОписаниеВарианта.Описание = НСтр("ru= 'Финансовый анализ продаж по аналитикам организации, клиенты, менеджеры, 
		|склады, номенклатура и другим.'");
	ВариантыОтчетовУТПереопределяемый.УстановитьВажностьВариантаОтчета(ОписаниеВарианта, "Важный");
	
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ДинамикаПродаж");
	ОписаниеВарианта.Описание = НСтр("ru = 'Помесячные объемы продаж за выбранный период по видам номенклатуры.
									 |Возможен анализ по периодам - квартал, месяц, неделя, день.'");
	ОписаниеВарианта.Наименование = НСтр("ru='Динамика продаж по видам номенклатуры'");
	ОписаниеВарианта.ФункциональныеОпции.Добавить("ИспользоватьНесколькоВидовНоменклатуры");
	
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ДинамикаПродажБизнесРегионы");
	ОписаниеВарианта.Описание = ?(ИспользоватьНесколькоВидовНоменклатуры, 
									НСтр("ru = 'Помесячные объемы продаж за выбранный период по бизнес-регионам и видам номенклатуры.
										 |Возможен анализ по периодам - квартал, месяц, неделя, день.'"),
									НСтр("ru = 'Помесячные объемы продаж за выбранный период по бизнес-регионам.
										 |Возможен анализ по периодам - квартал, месяц, неделя, день.'"));
	ОписаниеВарианта.Наименование = ?(ИспользоватьНесколькоВидовНоменклатуры, 
										НСтр("ru='Динамика продаж по бизнес-регионам и видам номенклатуры'"),
										НСтр("ru='Динамика продаж по бизнес-регионам'"));
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.Продажи.Подсистема.ОптовыеПродажи");
	ОписаниеВарианта.Размещение.Вставить(Подсистема);
	ОписаниеВарианта.ФункциональныеОпции.Добавить("ИспользоватьБизнесРегионы");
	
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ПродажиПоПартнерамБазовая");
	ОписаниеВарианта.Описание = НСтр("ru= 'По каким клиентам получена наибольшая валовая прибыль?'");
	ОписаниеВарианта.ФункциональныеОпции.Добавить("БазоваяВерсия");
	
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ПродажиПоПоставщикам");
	ОписаниеВарианта.Описание = НСтр("ru= 'По товарам от каких поставщиков получена наибольшая валовая прибыль?'");
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.ФинансовыйРезультатИКонтроллинг.Подсистема.ФинансовыйРезультат");
	ОписаниеВарианта.Размещение.Удалить(Подсистема);
	
	// По предприятию.
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ПродажиСводно");
	ОписаниеВарианта.Описание = НСтр("ru= 'Сводный анализ продаж по подразделениям (магазинам), 
		|менеджерам и номенклатуре.'");
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.Продажи.Подсистема.ОптовыеПродажи");
	ОписаниеВарианта.Размещение.Вставить(Подсистема, "Важный");
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.ФинансовыйРезультатИКонтроллинг.Подсистема.ФинансовыйРезультат");
	ОписаниеВарианта.Размещение.Вставить(Подсистема);
	ОписаниеВарианта.ФункциональныеОпции.Добавить("НеБазоваяВерсия");
	ОписаниеВарианта.ФункциональныеОпции.Добавить("ИспользоватьПередачиТоваровМеждуОрганизациями");
	
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ПродажиСводноБазовая");
	ОписаниеВарианта.Описание = НСтр("ru= 'Сводный анализ продаж по организациям, подразделениям (магазинам), 
		|менеджерам и номенклатуре.'");
	ОписаниеВарианта.ФункциональныеОпции.Добавить("БазоваяВерсия");
	ВариантыОтчетовУТПереопределяемый.ОтключитьВариантОтчета(Настройки, ОписаниеОтчета, "ДинамикаПродажКонтекст");
	ВариантыОтчетовУТПереопределяемый.ОтключитьВариантОтчета(Настройки, ОписаниеОтчета, "ПоНоменклатуреКонтекст");
	ВариантыОтчетовУТПереопределяемый.ОтключитьВариантОтчета(Настройки, ОписаниеОтчета, "ПродажиПоЗаказуКонтекст");
	
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ПродажиПоСделкамПоПредприятию");
	ОписаниеВарианта.Описание = НСтр("ru= 'По каким видам сделок и сделкам больше всего продаж клиентам по предприятию?'");
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.Продажи.Подсистема.ОптовыеПродажи");
	ОписаниеВарианта.Размещение.Удалить(Подсистема);
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.ФинансовыйРезультатИКонтроллинг.Подсистема.ФинансовыйРезультат");
	ОписаниеВарианта.Размещение.Удалить(Подсистема);
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.CRMИМаркетинг.Подсистема.ПроведениеСделокОтчеты");
	ОписаниеВарианта.Размещение.Вставить(Подсистема);
	ОписаниеВарианта.ФункциональныеОпции.Добавить("ИспользоватьСделкиСКлиентами");
	ОписаниеВарианта.ФункциональныеОпции.Добавить("ИспользоватьПередачиТоваровМеждуОрганизациями");
	ОписаниеВарианта.ВидимостьПоУмолчанию = Истина;
	
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ПродажиПоПартнерамПоПредприятию");
	ОписаниеВарианта.Описание = НСтр("ru= 'По каким клиентам получена наибольшая валовая прибыль по предприятию?'");
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.ФинансовыйРезультатИКонтроллинг.Подсистема.ФинансовыйРезультат");
	ОписаниеВарианта.Размещение.Удалить(Подсистема);
	ОписаниеВарианта.ФункциональныеОпции.Добавить("НеБазоваяВерсия");
	ОписаниеВарианта.ФункциональныеОпции.Добавить("ИспользоватьПередачиТоваровМеждуОрганизациями");
	
	// По организациям.
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ПродажиОрганизаций");
	ОписаниеВарианта.Описание = НСтр("ru= 'Сводный анализ продаж по организациям, подразделениям (магазинам), 
		|менеджерам и номенклатуре.'");
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.ФинансовыйРезультатИКонтроллинг.Подсистема.ФинансовыйРезультат");
	ОписаниеВарианта.Размещение.Вставить(Подсистема);
	ОписаниеВарианта.ФункциональныеОпции.Добавить("НеБазоваяВерсия");
	
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ПродажиПоСделкамПоОрганизациям");
	ОписаниеВарианта.Описание = НСтр("ru= 'По каким видам сделок и сделкам больше всего продаж клиентам по организациям?'");
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.Продажи.Подсистема.ОптовыеПродажи");
	ОписаниеВарианта.Размещение.Удалить(Подсистема);
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.ФинансовыйРезультатИКонтроллинг.Подсистема.ФинансовыйРезультат");
	ОписаниеВарианта.Размещение.Удалить(Подсистема);
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.CRMИМаркетинг.Подсистема.ПроведениеСделокОтчеты");
	ОписаниеВарианта.Размещение.Вставить(Подсистема);
	ОписаниеВарианта.ФункциональныеОпции.Добавить("ИспользоватьСделкиСКлиентами");
	ОписаниеВарианта.ВидимостьПоУмолчанию = Истина;
	
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ПродажиПоПартнерамПоОрганизациям");
	ОписаниеВарианта.Описание = НСтр("ru= 'По каким клиентам получена наибольшая валовая прибыль по организациям?'");
	Подсистема = Метаданные.НайтиПоПолномуИмени("Подсистема.ФинансовыйРезультатИКонтроллинг.Подсистема.ФинансовыйРезультат");
	ОписаниеВарианта.Размещение.Удалить(Подсистема);
	ОписаниеВарианта.ФункциональныеОпции.Добавить("НеБазоваяВерсия");
	
	ОписаниеВарианта = ВариантыОтчетов.ОписаниеВарианта(Настройки, ОписаниеОтчета, "ПродажиСводноМобильныйКлиент");
	ОписаниеВарианта.Описание = НСтр("ru= 'Сводный анализ продаж по подразделениям (магазинам), 
		|менеджерам и номенклатуре.'");
	ОписаниеВарианта.Наименование = НСтр("ru='Валовая прибыль предприятия (моб.)'");
	ОписаниеВарианта.ВидимостьПоУмолчанию = Истина;
	ОписаниеВарианта.Назначение = Перечисления.НазначенияВариантовОтчетов.ДляСмартфонов;
	
КонецПроцедуры

#КонецОбласти

#КонецОбласти

#КонецЕсли

Связанные материалы