Чтобы сделать такой выпадающий список, нужно добавить реквизит с типом значения - "Дата"
Но на форму не добавляйте его при помощи визарда, так как он добавит вам "Поле ввода", а просто сами вручную добавьте на форму элемент - "Поле выбора".
...и привяжите его к вашему реквизиту.
Сам список мы будем заполнять при открытии формы, а вот реализацю смены года будем делать в момент обработки выбора.
Итак, событие мы привязали к процедуре в модуле формы. Сам список формируется следующей процедурой:
Процедура СформироватьСписокВыбораМесяца(Знач Год)
Год = Число(Год);
СписокВыбора = ЭлементыФормы.Месяц.СписокВыбора;
СписокВыбора.Очистить();
//Формирование СЗ
СписокВыбора.Добавить(Формат(Год-1, "ЧГ=0"), Формат(Год-1, "ЧГ=0"));
Для М = 1 По 12 Цикл
СформДата = Дата(Год, М, 1);
Наим = Формат(СформДата, "ДФ='ММММ гггг""г.""'");
СписокВыбора.Добавить(СформДата, Наим);
КонецЦикла;
СписокВыбора.Добавить(Формат(Год+1, "ЧГ=0"), Формат(Год+1, "ЧГ=0"));
КонецПроцедуры
Формирование списка мы будем вызывать из процедуры "При открытии", чтобы список сразу был заполнен, и текущий месяц был уже выбран..
Процедура ПриОткрытии()
СформироватьСписокВыбораМесяца(Год(ТекущаяДата()));
Месяц = ЭлементыФормы.Месяц.СписокВыбора[Месяц(ТекущаяДата())].Значение;
КонецПроцедуры
И так-же будем формировать список заного каждый раз, когда переходим на другой год в момент выбора
Процедура МесяцОбработкаВыбора(Элемент, ВыбранноеЗначение, СтандартнаяОбработка)
Пока СтрДлина(ВыбранноеЗначение) = 4 Цикл
СформироватьСписокВыбораМесяца(?(ТипЗнч(ВыбранноеЗначение) = Тип("ЭлементСпискаЗначений"),ВыбранноеЗначение.Представление,ВыбранноеЗначение));
ВыбранноеЗначение = ЭтаФорма.ВыбратьИзСписка(Элемент.СписокВыбора, Элемент);
КонецЦикла;
ВыбранноеЗначение = ?(ТипЗнч(ВыбранноеЗначение) = Тип("ЭлементСпискаЗначений"),ВыбранноеЗначение.Значение,ВыбранноеЗначение);
КонецПроцедуры
Не нужно больше ничего выдумывать, в реквизите - "Месяц" у нас уже хранится дата начала выбранного месяца :)
Ну в общем-то и всё :) Надеюсь не сильно утомил.. Может, кому-нибудь, да помогу ^_______^