1. Делаем макет дня и шапки календаря примерно такой:
2. Выводим календарь:
НачалоМесяца = НачалоМесяца(Дата);
НачалоМесяцаСлед = ДобавитьМесяц(НачалоМесяца, 1);
Макет = ПолучитьМакет("Макет");
Шапка = Макет.ПолучитьОбласть("Шапка");
ОблДень = Макет.ПолучитьОбласть("Неделя|ДеньНедели");
ОблДень1 = Макет.ПолучитьОбласть("Неделя|ДеньНеделиВнеМесяца");
ТД.Очистить();
Шапка.Параметры.Месяц = Формат(Дата, "ДФ='ММММ гггг'");
ТД.Вывести(Шапка);
Начало = ДеньНедели(НачалоМесяца);
День = НачалоМесяца;
Строка = Новый ТабличныйДокумент;
Если Начало<>1 Тогда
Для Ном = 1 по Начало - 1 Цикл
ОблДень1.Параметры.День = День(НачалоМесяца - (Начало - 1)*24*60*60);
Строка.Присоединить(ОблДень1);
КонецЦикла;
КонецЕсли;
НД_ТД = НачалоДня(ТекущаяДата());
ЖирнаяЛиния = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 2);
ОбчнаяЛиния = Новый Линия(ТипЛинииЯчейкиТабличногоДокумента.Сплошная, 1);
Пока День < НачалоМесяцаСлед Цикл
ОблДень.Параметры.День = День(День);
Если День = НД_ТД Тогда
мОблДень = ОблДень.Область(1,1, 5,2);
мОблДень.ЦветФона = WebЦвета.СветлоКоралловый;
//ЗаполнитьДень(ОблДень, ДанныеЗаполнения, День);
Строка.Присоединить(ОблДень);
мОблДень.ЦветФона = Новый Цвет;
Иначе
//ЗаполнитьДень(ОблДень, ДанныеЗаполнения, День);
Строка.Присоединить(ОблДень);
КонецЕсли;
ДеньНедели = ДеньНедели(День);
Если ДеньНедели = 7 Тогда
ТД.Вывести(Строка);
Строка = Новый ТабличныйДокумент;
КонецЕсли;
День = День + 24*60*60;
КонецЦикла;
Если ДеньНедели <> 7 Тогда
Для Ном = ДеньНедели+1 по 7 Цикл
ОблДень1.Параметры.День = День(День);
Строка.Присоединить(ОблДень1);
День = День + 24*60*60;
КонецЦикла;
ТД.Вывести(Строка);
КонецЕсли;
3. Добавляем кнопки управления для не управляемых форм:
Попытка
Кнопка = ЭлементыФормы.Добавить(Тип("Кнопка"),"ПредМесяц",,ТД);
Кнопка.Заголовок = "<<";
Шрифт = Новый Шрифт(Кнопка.Шрифт,,10,Истина);
Кнопка.Шрифт = Шрифт;
Кнопка.УстановитьДействие("Нажатие", Новый Действие("ПредМесяц"));
Исключение
Кнопка = ЭлементыФормы.ПредМесяц;
КонецПопытки;
Кнопка.Расположить(ТД.Область(3,2,3,2));
Попытка
Кнопка = ЭлементыФормы.Добавить(Тип("Кнопка"),"СледМесяц",,ТД);
Кнопка.Заголовок = ">>";
Кнопка.Шрифт = Шрифт;
Кнопка.УстановитьДействие("Нажатие", Новый Действие("СледМесяц"));
Исключение
Кнопка = ЭлементыФормы.СледМесяц;
КонецПопытки;
Кнопка.Расположить(ТД.Область(3,4,3,4));
Попытка
Кнопка = ЭлементыФормы.Добавить(Тип("Кнопка"),"ТекМесяц",,ТД);
Кнопка.Заголовок = "Тек. месяц";
Кнопка.Шрифт = Шрифт;
Кнопка.УстановитьДействие("Нажатие", Новый Действие("ТекМесяц"));
Исключение
Кнопка = ЭлементыФормы.ТекМесяц;
КонецПопытки;
Кнопка.Расположить(ТД.Область(2,3,2,3));
Для управляемых форм надо делать гиперссылки и использовать обработку расшифровки, это несложно.
Получаем календарь, с которым можно строить взаимодействие, используя расшифровки.