6.1 KiB
Задание к занятию "Виды клиентов и режимы работы"
Примерное время выполнения: 45 минут
Все задачи обязательны к выполнению. Пожалуйста, присылайте на проверку все задачи сразу.
Любые вопросы по решению задач задавайте в чате учебной группы.
Цель задания
Выполнив это задание, вы научитесь определять, где выполняется программный код и работают обработчики нескольких событий платформы
Чеклист готовности к домашнему заданию
- Установить платформа версии 8.3.25 или выше
- Развернуть информационная база с конфигурацией УправлениеИТФирмой, полученная по итогу выполнения домашнего задания к занятию Дерево метаданных.
Описание задания
В рамках этого домашнего задания нужно:
- Реализовать универсальный механизм, позволяющий узнать, в каком контексте работает программный код (на клиенте или на сервере)
- Выяснить, где работают обработчики “ПриНачалеРаботыСистемы” модуля приложения, “УстановкаПараметровСеанса” модуля сеанса и “ОбработкаПроверкиЗаполнения” модуля объекта
Инструкция к выполнению
Используйте для работы базу, получившуюся в результате выполнения предыдущего домашнего задания
Задача 1. "Механизм для определения контекста"
Процесс выполнения
- Создайте общий модуль “КонтекстВыполненияКлиентСервер”
- В свойствах модуля установите флажки “Клиент”, “Сервер”, “Внешнее соединение”
- Разместите в нем функцию:
Функция ТекущийКонтекст() Экспорт
#Если Сервер Тогда
Возврат "Сервер";
#ИначеЕсли ТонкийКлиент Тогда
Возврат "Тонкий клиент";
#ИначеЕсли ВебКлиент Тогда
Возврат "Веб-клиент";
#ИначеЕсли МобильныйКлиент Тогда
Возврат "Мобильный клиент";
#ИначеЕсли ТолстыйКлиентОбычноеПриложение Тогда
Возврат "Толстый клиент (Обычное приложение)";
#ИначеЕсли ТолстыйКлиентУправляемоеПриложение Тогда
Возврат "Толстый клиент (Обычное приложение)";
#Иначе
Возврат "Неизвестный контекст";
#КонецЕсли
КонецФункции
Задача 2 "Эксперимент с определением контекста"
Процесс выполнения
- Откройте модуль приложения (Правой кнопкой мыши на корень конфигурации / “Модуль приложения”) и добавьте туда код:
Процедура ПриНачалеРаботыСистемы()
Сообщить("При начале работы системы: " + КонтекстВыполненияКлиентСервер.ТекущийКонтекст());
КонецПроцедуры
- Откройте модуль сеанса (Правой кнопкой мыши на корень конфигурации / “Модуль сеанса” ) и добавьте туда код:
Процедура УстановкаПараметровСеанса(ТребуемыеПараметры)
Сообщить("Установка параметров сеанса: " + КонтекстВыполненияКлиентСервер.ТекущийКонтекст());
КонецПроцедуры
- Откройте модуль объекта справочника Контрагенты (правой кнопкой мыши на справочник / “Модуль объекта”) и добавьте туда код:
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
Сообщить("Обработка проверки заполнения: " + КонтекстВыполненияКлиентСервер.ТекущийКонтекст());
КонецПроцедуры
- Запустите приложение и убедитесь, что при старте вывелось 2 сообщения. Запишите любой элемент справочника “Контрагенты” и убедитесь, что вывелось сообщение
Обратите внимание
Это самостоятельное задание без проверки экспертом. Мы рекомендуем выполнить его, чтобы закрепить полученные знания
Формат сдачи
Загрузите выгрузку базы с внесенными изменениями в формате dt в поле «Ссылка на решение» и нажмите «Отправить на проверку». После загрузки решения вы получите пример решения задания от эксперта