mirror of
https://github.com/netology-code/1c-homeworks.git
synced 2024-11-24 08:02:20 +02:00
d7bb46f31b
Правки от редактора по ДЗ 3.1-3.4 и по Курсовой работе.
71 lines
8.1 KiB
Markdown
71 lines
8.1 KiB
Markdown
# Элементы управления
|
|
|
|
## Задание 1
|
|
|
|
### Описание задачи
|
|
|
|
Создать форму с полями ввода различных типов.
|
|
|
|
### Требование к результату
|
|
|
|
Форма внешней обработки с полями ввода, привязанными к разным типам элементов управления.
|
|
|
|
### Процесс выполнения
|
|
|
|
1. Создайте внешнюю обработку, добавьте в неё основную форму.
|
|
2. На форме разместите реквизиты с типом: «Строка», «Булево», «Дата», «Число».
|
|
3. Строковый реквизит отобразите на форме в виде поля надписи без заголовка (только значение), установив свойство «Положение заголовка» в «Нет».
|
|
4. Строковый реквизит также отобразите на форме в виде поля ввода.
|
|
5. Реквизит типа «Булево» отобразите на форме в виде флажка.
|
|
6. Реквизит типа «Булево» также отобразите на форме в виде элемента «Поле ввода» с позициями «Так точно» и «Никак нет», соответствующими значениям Истина и Ложь. Воспользуйтесь для этого свойством «Список выбора» элемента управления «Поле ввода». Обратите внимание на различное поведение поля при установленном и снятом флажке «Режим выбора из списка». Выберите наиболее подходящий задаче вариант значения флажка «Режим выбора из списка».
|
|
7. Реквизит типа «Число» отобразите на форме без кнопки «Калькулятор» (кнопка выбора). Также задайте свойство «Формат» так, чтобы число отображалось без группировки разрядов и с отделением дробной части числа дефисом. Пример: 25520-71.
|
|
8. Реквизит типа «Дата» отобразите в виде обязательного поля ввода. Используйте для этого признак «Автоотметка незаполненного».
|
|
|
|
## Задание 2
|
|
|
|
### Описание задачи
|
|
|
|
Обработчики событий поля ввода. Механика выбора значений.
|
|
|
|
### Требование к результату
|
|
|
|
Внешняя обработка с двумя формами. Из поля ввода первой формы по кнопке выбора должна открываться вторая форма. В ней пользователь может ввести новый текст. Выбранное значение должно попасть в поле ввода первой формы.
|
|
|
|
### Процесс выполнения
|
|
|
|
1. Создайте внешнюю обработку. Добавьте в неё основную форму. Назовите её «ПерваяФорма».
|
|
2. Добавьте в обработку ещё одну форму, при создании укажите тип «Произвольная форма». Назовите её «ВтораяФорма».
|
|
3. В первой форме разместите строковый реквизит «ВажныеДанные» и добавьте его на форму в виде элемента управления «Поле ввода».
|
|
4. Установите свойство «Кнопка выбора» для этого поля в значение «Да», а флаг «Редактирование текста» снимите.
|
|
5. Добавьте полю ввода обработчик события «НачалоВыбора».
|
|
6. Во второй форме добавьте параметр «ТекущееЗначение» строкового типа. Укажите, что форма должна блокировать окно владельца.
|
|
7. Во второй форме добавьте текстовое поле «НовоеЗначение» и команду «Применить». Текстовому полю установите признак «Многострочное».
|
|
8. Во второй форме создайте обработчик «ПриСозданииНаСервере», в котором обеспечьте присваивание полю «НовоеЗначение» значение параметра «ТекущееЗначение».
|
|
9. Также во второй форме создайте обработчик команды «Применить», в котором с помощью метода «ОповеститьОВыборе» передайте в первую форму значение, указанное в поле «НовоеЗначение».
|
|
10. Сделайте так, чтобы команда «Применить» выдавала ошибку, если поле «НовоеЗначение» не заполнено.
|
|
11. В обработчике события укажите *СтандартнаяОбработка = Ложь*, после добавьте вызов метода *ОткрытьФорму*, открывающий вторую форму и передающий в неё в качестве владельца сам элемент управления, событие которого мы обрабатывам (параметр `Элемент` обработчика события) и текущее значение поля «ВажныеДанные».
|
|
12. Добавьте полю ввода «ВажныеДанные» обработчик события «ОбработкаВыбора». В обработчике присвойте полю «ВажныеДанные» значение входящего параметра «ВыбранноеЗначение».
|
|
|
|
## Задание 3
|
|
|
|
### Описание задачи
|
|
|
|
Изучение табличного поля.
|
|
|
|
### Требование к результату
|
|
|
|
Форма с табличным полем, колонки которого расположены в нестандартной группировке.
|
|
|
|
### Порядок выполнения
|
|
|
|
1. Создайте новую внешнюю обработку.
|
|
2. Создайте основную форму внешней обработки.
|
|
3. В реквизитах формы создайте новый реквизит «Товары» с типом *ТаблицаЗначений*. Добавьте в него колонки:
|
|
* Товар (строка).
|
|
* Количество (число 18.2).
|
|
* Сумма (число 18.2).
|
|
* СуммаНДС (число 18.2).
|
|
5. Добавьте таблицу на форму.
|
|
6. Добавьте с помощью кнопки (+) в колонки таблицы группу колонок с группировкой «Вертикальная».
|
|
7. Сделайте так, чтобы в форме поля «Количество» и «Сумма» находились друг под другом, поместив их в группу колонок.
|
|
8. Добавьте обработчик события «ПередОкончаниемРедактирования» табличного поля «Товары». В обработчике напишите алгоритм вычисления суммы НДС (20% от суммы). Сумма НДС должна попасть в поле «СуммаНДС» при окончании редактирования строки. Для получения редактируемой строки используйте свойство «ТекущиеДанные» элемента управления таблицы. |