1
0
mirror of https://github.com/netology-code/1c-homeworks.git synced 2024-11-24 08:02:20 +02:00
1c-homeworks/homework-2-5.md
2023-05-24 16:25:56 +05:00

7.7 KiB

Задание к занятию "Условия"

Примерное время выполнения: 60 минут

Все задачи обязательны к выполнению. Пожалуйста, присылайте на проверку все задачи сразу.

Любые вопросы по решению задач задавайте в чате учебной группы.

Цель задания

  1. Закрепить на практике приемы разработки алгоритмов с ветвлениями

Решение задания научит вас создавать ветвящиеся алгоритмы. Это базовый навык, необходимый для решения домашних заданий в будущем и разработки реальных приложений.

Чеклист готовности к домашнему заданию

Инструкция к заданию

  1. Решите описанные задачи в конфигураторе.
  2. Протестируйте решение в пользовательском режиме.
  3. Отправьте на проверку в личном кабинете Нетологии файл выгрузки информационной базы (.dt) с конфигурацией, содержащей решение по задачам 1 и 2. Файлы прикрепите в раздел "решение" в практическом задании.

Задача 1 "Анализ времени запуска"

Описание задачи

Вы хотите, чтобы при запуске программа сообщала пользователю рабочее сейчас время или нет с детальной информацией.

Требования к результату

Выгрузка информационной базы (.dt), при запуске информирующая пользователя выводом сообщения о том, рабочее сейчас время или нет. Сообщение должно содержать информацию о текущем дне недели, является он будним или нет. Если день будний, то должно быть указано рабочее время еще не началось, рабочее время идет или рабочее время уже закончилось. Текст сообщения необходимо собирать с помощью функции СтрШаблон().

Процесс выполнения

  1. Используйте произвольную конфигурацию.
  2. В модуле приложения создайте обработчик ПриНачалеРаботыСистемы, если его еще нет.
  3. В обработчике:
  • Сохраните текущую дату в локальную переменную.
  • Проверьте условиями текущий день недели (будний или выходной).
  • Если это выходной день, то выведите сообщение Сегодня [ИмяДняНедели], выходной день.
  • Если это будний день, то выведите сообщение Сегодня [ИмяДняНедели], будний день. Рабочее время [СостояниеРабочегоВремени].
    • Если сейчас раньше 9:00, то состояние рабочего времени - еще не началось.
    • Если сейчас с 9:00 до 18:00, то состояние рабочего времени - идет.
    • Если сейчас позднее 18:00, то состояние рабочего времени - завершилось.
  • Сообщение выводить вызовом Сообщить().
  1. Для отладки решения задайте явно значение локальной переменной, например: ТекущаяДата = '20220101100000';

Задача 2 "Проверка введенных данных"

Описание задачи

Вы хотите снизить вероятность ошибки при заполнении реквизитов ИНН и КПП в справочнике Контрагенты, проверяя длину строк.

Требования к результату

Выгрузка информационной базы (.dt) с конфигурацией, в которой есть справочник Контрагенты с ИНН, КПП и видом контрагента ("Юридическое лицо", "Физическое лицо"). Перед записью контрагента должна выполняться проверка на заполненность и длину ИНН и КПП в зависимости от вида контрагента.

Процесс выполнения

  1. Используйте конфигурацию УправлениеИТФирмой со справочником Контрагенты.
  2. В модуле объекта создайте обработчик события ОбработкаПроверкиЗаполнения, в коде которого реализуйте проверку на заполненность и длину ИНН и КПП в зависимости от вида контрагента:
  • Для юридического лица ИНН и КПП должны быть заполнены; ИНН должен быть длиной 10 знаков, КПП - 9 знаков.
  • Для физического лица ИНН должен быть длиной 12 знаков, КПП - не заполнен.
  • Контрольную сумму ИНН и наличие только цифр в ИНН и КПП проверять пока не нужно.
  • При выявлении ошибок устанавливайте параметр обработчика Отказ в Истина и выводите разумное сообщение вызовом Сообщить().

Критерии оценки

Задание считается выполненным при соблюдении следующих условий:

  1. Решение включает выгрузку в формате dt с конфигурацией УправлениеИТФирмой;
  2. В конфигурации УправлениеИТФирмой при старте выводится сообщение с информацией о сегодняшнем дне;
  3. В конфигурации УправлениеИТФирмой при записи справочника контрагенты проверяется длина строк в реквизитах ИНН и КПП.

Подсказка:

Чтобы вам было проще понять, что в итоге должно получиться, мы подготовили подсказки: анимационные изображения в формате gif или картинки. Чтобы их увидеть, кликните по ссылке