#Если Сервер Или ТолстыйКлиентОбычноеПриложение Или ВнешнееСоединение Тогда
#Область ПрограммныйИнтерфейс
#Область ДляВызоваИзДругихПодсистем
Процедура ЗаполнитьКонтакты(Контакты) Экспорт
Взаимодействия.ЗаполнитьКонтактыДляВстречи(Контакты, Участники);
КонецПроцедуры
Процедура ЗаполнитьНаборыЗначенийДоступа(Таблица) Экспорт
ВзаимодействияСобытия.ЗаполнитьНаборыЗначенийДоступа(ЭтотОбъект, Таблица);
КонецПроцедуры
#КонецОбласти
#КонецОбласти
#Область ОбработчикиСобытий
Процедура ОбработкаЗаполнения(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка)
УстановитьДатыПоУмолчанию();
Взаимодействия.ЗаполнитьРеквизитыПоУмолчанию(ЭтотОбъект, ДанныеЗаполнения);
КонецПроцедуры
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Взаимодействия.СформироватьСписокУчастников(ЭтотОбъект);
КонецПроцедуры
Процедура ПриКопировании(ОбъектКопирования)
УстановитьДатыПоУмолчанию();
Ответственный = Пользователи.ТекущийПользователь();
Автор = Пользователи.ТекущийПользователь();
КонецПроцедуры
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
Если ДатаОкончания < ДатаНачала Тогда
ОбщегоНазначения.СообщитьПользователю(
НСтр("ru = 'Дата окончания не может быть меньше даты начала.'"),
,
"ДатаОкончания",
,
Отказ);
КонецЕсли;
КонецПроцедуры
Процедура ПриЗаписи(Отказ)
Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;
Взаимодействия.ПриЗаписиДокумента(ЭтотОбъект);
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Процедура УстановитьДатыПоУмолчанию()
ДатаНачала = ТекущаяДатаСеанса();
ДатаНачала = НачалоЧаса(ДатаНачала) + ?(Минута(ДатаНачала) < 30, 1800, 3600);
ДатаОкончания = ДатаНачала + 1800;
КонецПроцедуры
#КонецОбласти
#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
#КонецЕсли