1
0
mirror of https://github.com/netology-code/1c-homeworks.git synced 2024-11-24 08:02:20 +02:00

Update homework-5-8.md

This commit is contained in:
EleShvili 2023-02-02 16:59:01 +03:00 committed by GitHub
parent 4930770c58
commit fa2e92fe76
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,18 +1,18 @@
# Задание к занятию "Табличные и текстовые документы"
# Задание к занятию «Табличные и текстовые документы»
Результат выполнения двух задач вышлите одним файлом (.dt)
Результат выполнения двух задач вышлите одним файлом (.dt).
## Задача 1 Создать команду печати прайс-листа в справочнике Номенклатура в табличный документ.
## Задача 1. Создать команду печати прайс-листа в справочнике «Номенклатура» в табличный документ.
### Описание задачи
Добавить возможность формирования прайс-листа в справочнике Номенклатура.
Добавить возможность формирования прайс-листа в справочнике «Номенклатура».
### Требования к результату
Выгрузка информационной базы (.dt) с конфигурацией из предыдущих заданий, имеет возможность формировать прайс листа из формы списка номенклатуры.
Выгрузка информационной базы (.dt) с конфигурацией из предыдущих заданий имеет возможность формировать прайс-лист из формы списка номенклатуры.
Прайс формируется на основе выделенных строк в форме списка Номенклатура.
Прайс формируется на основе выделенных строк в форме списка «Номенклатура».
Цена номенклатуры определяется на текущую дату.
@ -20,16 +20,16 @@
### Процесс выполнения
1. Добавим общий макет "МакетПрайсЛист" с типом Табличный документ.
1. Добавим общий макет «МакетПрайсЛист» с типом Табличный документ.
Создадим в нем области:
- "ШапкаПрайса" с полем Дата;
- "ТабличнаяЧастьЗаголовок" с именами колонок, которые будут выводится на печать;
- "ТабличнаяЧастьСтрока" с полями Товар и Цена.
Создадим в нём области:
- «ШапкаПрайса» с полем «Дата»;
- «ТабличнаяЧастьЗаголовок» с именами колонок, которые будут выводится на печать;
- «ТабличнаяЧастьСтрока» с полями «Товар» и «Цена».
2. В форму списка номенклатуры добавим команду "Прайс лист".
2. В форму списка номенклатуры добавим команду «Прайс-лист».
3. Для печати добавим на клиенте процедуру на клиенте.
3. Для печати добавим процедуру на клиенте:
```bsl
&НаКлиенте
Процедура КомандаПрайсЛист(Команда)
@ -80,40 +80,40 @@
КонецФункции
```
5. Получим срез последних по регистру сведений Цены номенклатуры для заполнения цены и вставим в соответствующий параметр.
5. Получим срез последних по регистру сведений «Цены номенклатуры» для заполнения цены и вставим в соответствующий параметр.
Примерный внешний вид печатной формы, которая должна получится:
Примерный внешний вид печатной формы, которая должна получиться:
![Пример печатной формы](img/homework-5-8-1.png)
## Задача 2 Создать обработку для загрузки прайса из файла Excel (*.xlsx)
## Задача 2. Создать обработку для загрузки прайса из файла Excel (*.xlsx)
### Описание задачи
Создадим обработку для загрузки цен из файла xlsx.
Обработка создает новый документ Цены номенклатуры, в табличной части заполняет данные из файла.
Обработка создаёт новый документ «Цены номенклатуры» в табличной части заполняет данные из файла.
### Требования к результату
Выгрузка информационной базы (.dt)
Выгрузка информационной базы (.dt).
Файл для тестирования загрузки: [homework-5-8-price](reference-data/homework-5-8-price.xlsx)
Файл для тестирования загрузки: [homework-5-8-price](reference-data/homework-5-8-price.xlsx).
Возможность выбора файла с фильтром *.xlsx, обработка файла должна выполняться на сервере.
Возможность загрузить и создать документ Цены номенклатуры.
Возможность загрузить и создать документ «Цены номенклатуры».
Поиск номенклатуры по наименованию
Если не найдена, вывести сообщение вида
"Номенклатура: " + НаименованиеНоменклатуры + " не найдена"
«Номенклатура: « + НаименованиеНоменклатуры + » не найдена».
### Процесс выполнения
Создать новую обработку "Загрузка прайса из файла xlsx"
Создать новую обработку «Загрузка прайса из файла xlsx».
Добавим команду Загрузить, вынесем в командную панель формы и назначим кнопкой по умолчанию
Добавим команду «Загрузить», вынесем в командную панель формы и назначим кнопкой по умолчанию.
Назначим обработчик команды со следующим алгоритмом:
```bsl
ПараметрыПомещенияФайла = Новый ПараметрыДиалогаПомещенияФайлов;
@ -131,9 +131,9 @@
ВыполнитьЗагрузкуНаСервере(ОписаниеФайла.Адрес);
```
Так как в обработчике используется ключевое слово Ждать перед словом Процедура добавим **Асинх**
Так как в обработчике используется ключевое слово «Ждать», перед словом «Процедура» добавим **Асинх**.
Далее на сервере сохраним данные во временный файл, прочитаем и обработаем данные с помощью табличного документа
Далее на сервере сохраним данные во временный файл, прочитаем и обработаем данные с помощью табличного документа:
```bsl
&НаСервере
Процедура ВыполнитьЗагрузкуНаСервере(Адрес)
@ -179,4 +179,4 @@
Реализуем в процедуре ВыполнитьЗагрузкуНаСервере алгоритм по созданию, заполнению и записи документа на основании данных табличного документа.
### Подсказка: [результат выполнения домашнего задания](Examples/homework-5-8-example.md)
### Подсказка: [результат выполнения домашнего задания](Examples/homework-5-8-example.md).