1
0
mirror of https://github.com/netology-code/1c-homeworks.git synced 2025-02-10 18:10:35 +02:00

Update homework-5-8.md

This commit is contained in:
StepanShipitsyn 2020-06-24 15:24:25 +08:00 committed by GitHub
parent 71beb6764c
commit 89ee4ca5b7
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -4,25 +4,29 @@
### Описание задачи
Сформируем прайс лист
Добавим возможность формировать прайс-лист в справочнике Номенклатура.
Выведем актуальную цену номенклатуры
В прайс выведем актуальную цену номенклатуры.
Создадим общий макет Прайс лист
Добавим возможность вывода на печать в Номенклатуре прайс-листа
Формирование прайса реализуем через печатную форму и общий макет.
### Требования к результату
Текстовый документ содержит информацию о прайс листе на текущую дату - цену и номенклатуру
Общий макет имеет тип Текстовый документ.
Есть возможность вывести на печать
Содержит структуру для формирования прайс листа - цену и номенклатуру.
Прайс формируется на основе выделенных строк в форме списка Номенклатура
Цена номенклатуры определяется на текущую дату.
Есть возможность вывести на печать из формы списка номенклатуры, не открывая форму элемента.
Прайс формируется на основе выделенных строк в форме списка Номенклатура.
Можно выделить одну или несколько строк для формирования печатной формы.
### Процесс выполнения
Добавим общий макет "МакетПрайсЛист" с типом Текстовый документ
1. Добавим общий макет "МакетПрайсЛист" с типом Текстовый документ
Пример текста
```
@ -45,9 +49,9 @@
---------------------------------
[Номенклатура ]|[Цена ]
```
В форму списка номенклатуры добавим команду "Прайс лист"
2. В форму списка номенклатуры добавим команду "Прайс лист".
Для печати добавим на клиенте процедуру
3. Для печати добавим на клиенте процедуру на клиенте.
```bsl
&НаКлиенте
Процедура КомандаПрайсЛист(Команда)
@ -59,17 +63,16 @@
МассивСтрок.Добавить(Элементы.СписокРасширенныйПоискНоменклатура.ДанныеСтроки(НомерСтроки));
КонецЦикла;
//отправим выделенные строки номенклатуры на печать
ПечатнаяФорма = СформироватьПечатнуюФормуПрайсЛист(МассивСтрок);
ПечатнаяФорма = ПечатнаяФормуПрайсЛист(МассивСтрок);
ПечатнаяФорма.Показать("Прайс-лист");
КонецПроцедуры
```
Формируем печатную форму на сервере и возращаем на клиент для печати
4. На сервере формируем печатную форму и возращаем на клиент для печати
```bsl
&НаСервере
Функция СформироватьПечатнуюФормуПрайсЛист(МассивСтрок)
Функция ПечатнаяФормуПрайсЛист(МассивСтрок)
ПечатнаяФорма = Новый ТекстовыйДокумент;
@ -101,4 +104,4 @@
КонецФункции
```
Получим срез последних по регистру сведений Цены номенклатуры для заполнения цены и вставим в соответствующий параметр
5. Получим срез последних по регистру сведений Цены номенклатуры для заполнения цены и вставим в соответствующий параметр