mirror of
https://github.com/netology-code/1c-homeworks.git
synced 2024-11-24 08:02:20 +02:00
62 lines
5.1 KiB
Markdown
62 lines
5.1 KiB
Markdown
# Формы, их реквизиты и данные
|
|
|
|
## Задание 1
|
|
|
|
### Описание задачи
|
|
|
|
Создать форму внешней обработки "Приглашение на вечеринку"
|
|
|
|
### Требование к результату
|
|
|
|
Форма внешней обработки, позволяющая ввести имя гостя и такие параметры его размещения как: "Буду с ночевкой", "Что ест", "Что пьет". При нажатии команды "Сохранить" выдается предупреждение вида "<Имя> принял приглашение. Ест <Что ест>, пьет <что пьет>. Спальное место <потребуется/не потребуется>"
|
|
|
|
### Процесс выполнения
|
|
|
|
1. Создайте внешнюю обработку и добавьте в нее реквизиты:
|
|
|
|
* Имя (строка)
|
|
* Что ест (строка)
|
|
* Что пьет (строка)
|
|
* БудетСНочевкой (булево)
|
|
|
|
2. Создайте основную форму внешней обработки и разместите на ней реквизиты обработки.
|
|
3. Создайте в форме команду "Сохранить" и в обработчике команды создайте вывод текста в виде предупреждения, использовав обращение к данным формы вида "Объект.<Имя реквизита обработки>"
|
|
|
|
## Задание 2
|
|
|
|
### Описание задачи
|
|
|
|
Развитие обработки "Приглашение на вечеринку"
|
|
|
|
### Требование к результату
|
|
|
|
Поля "Имя", "Что ест", "Что пьет" должны быть обязательны для заполнения и подчеркиваться волнистой линией, если они не заполнены. В случае, если нажата кнопка "Сохранить", а одно из обязательных полей не заполнено - должно выдаваться окно с указанием незаполненного реквизита.
|
|
|
|
Результат выполнения должен быть сохранен в отдельной обработке с именем "Задание 2.epf"
|
|
|
|
### Процесс выполнения
|
|
|
|
1. Скопируйте обработку, являющуюся результатом выполнения задания 1. Назовите ее "Задание 2"
|
|
2. Укажите для полей "Имя", "Что ест", "Что пьет", что свойство "Проверка заполнения" имеет значение "Выдавать ошибку"
|
|
3. В процедуре обработчике команды "Сохранить" вызовите метод ПроверитьЗаполнение и выводите окно "Принял приглашение" только в том случае если проверка пройдена
|
|
|
|
# Задание 3
|
|
|
|
### Описание задачи
|
|
|
|
Работа с данными формы и преобразование в прикладные объекты. Закрепление знаний о различии между данными формы и общими объектами
|
|
|
|
### Требование к результату
|
|
|
|
Внешняя обработка с табличным полем, имеющим колонки "Товар" и "Сумма". При нажатии кнопки "Объединить строки" должна происходить свертка (группировка) таблицы по одинаковым значениям поля "Товар"
|
|
|
|
### Порядок выполнения
|
|
|
|
1. Создайте новую внешнюю обработку
|
|
2. Создайте основную форму внешней обработки
|
|
3. В реквизитах формы создайте новый реквизит "Товары" с типом ТаблицаЗначений. Добавьте в него колонки "Товар" (строка) и "Сумма" (число 18.2)
|
|
4. Добавьте на форму команду "Объединить строки" и обработчик команды
|
|
5. Добавьте в модуль формы процедуру с директивой &НаСервере с именем "СверткаСтрок"
|
|
6. Конвертируйте таблицу "Товары" (`ДанныеФормы`) в универсальную коллекцию `ТаблицаЗначений`
|
|
7. Воспользуйтесь штатным методом "Свернуть" таблицы значений, чтобы выполнить свертку одинаковых товаров и сложение сумм по ним. Воспользуйтесь синтакс-помощником для корректного применения метода "ТаблицаЗначений.Свернуть"
|
|
8. Конвертируйте полученную таблицу обратно в данные формы |