День восьмой. Настройка выбора периода в управляемых формах 1С Предприятие 8

Аватар пользователя mykib.org

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

Процедура ВыбПериодНажатие(Элемент)
	НастройкаПериода = Новый НастройкаПериода;
	НастройкаПериода.УстановитьПериод(ДатаНач, ?(ДатаКон='0001-01-01', ДатаКон, КонецДня(ДатаКон)));
	НастройкаПериода.РедактироватьКакИнтервал = Истина;
	НастройкаПериода.РедактироватьКакПериод = Истина;
	НастройкаПериода.ВариантНастройки = ВариантНастройкиПериода.Период;
	Если НастройкаПериода.Редактировать() Тогда
		ДатаНач = НастройкаПериода.ПолучитьДатуНачала();
		ДатаКон = НастройкаПериода.ПолучитьДатуОкончания();
	КонецЕсли;
КонецПроцедуры

Вместо этого в управляемых формах необходимо использовать

Новый СтандартныйПериод и Новый ДиалогРедактированияСтандартногоПериода. Пример ниже:
&НаКлиенте
Процедура КомандаВыборПериода(Команда)
	ВыбранныйПериод = Новый СтандартныйПериод;
	ВыбранныйПериод.ДатаНачала = ДатаНач;
	ВыбранныйПериод.ДатаОкончания = ДатаКон;
	Диалог = Новый ДиалогРедактированияСтандартногоПериода();
	Диалог.Период = ВыбранныйПериод;
		Если Диалог.Редактировать() Тогда 
		    ВыбранныйПериод = Диалог.Период;
			ДатаНач = ВыбранныйПериод.ДатаНачала;
			ДатаКон = ВыбранныйПериод.ДатаОкончания;
		КонецЕсли;
КонецПроцедуры

Ключевые фразы: