---
title: Упаковочные листы сервер
slug: erp-uh/упаковочные-листы-сервер
---


## ПриЧтенииСозданииФормыСУпаковочнымиЛистами
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Вызывается для инициализации элементов и реквизитов формы, в которой используются упаковочные листы с иерархией.
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий,
//	ТЧТовары - ДанныеФормыКоллекция - табличная часть, в которой отображаются товары и упаковочные листы,
//	ЗаголовокНачальногоУровня - Строка - начало навигационной надписи, используемой для перехода между
//		разными уровнями вложенности упаковочных листов,
//	РежимПросмотраПоТоварам - Булево - признак режима отображения табличной части с упаковочными листами,
//		Истина - "По товарам", Ложь - "По товарным местам", по умолчанию Неопределено,
//	УпаковочныйЛистРодитель - ДокументСсылка.УпаковочныйЛист - в каком упаковочном листе сейчас находимся,
//		по умолчанию Неопределено.
//
Процедура ПриЧтенииСозданииФормыСУпаковочнымиЛистами(Форма, Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.ПриЧтенииСозданииФормыСУпаковочнымиЛистами(Форма, );
```
</details>

## НоменклатураУпаковочныйЛистПриИзменении
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Вызывается при изменении номенклатуры или упаковочного листа
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий,
//	ТЧТовары - ДанныеФормыКоллекция - табличная часть, в которой отображаются товары и упаковочные листы,
//	ИмяПоля - Строка - "ТоварыУпаковочныйЛист" или "ТоварыНоменклатура",
//	КэшированныеЗначения - Структура - закешированные значения реквизитов формы,
//	СтруктураДействийСТекущейСтрокой - Структура - действия для обработки,
//	СтруктураДействийСДобавляемымиСтроками - Структура - для обработки новых строк, подчиненных упаковочному листу,
//		по умолчанию Неопределено,
//	ДополнятьСтрокамиПоУпЛистам - Булево - признак необходимости дополнить ТЧ строками,
//		которые подчинены упаковочному листу (при изменении упаковочного листа).
//
Процедура НоменклатураУпаковочныйЛистПриИзменении(Форма, ТЧТовары, ИмяПоля, КэшированныеЗначения, Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.НоменклатураУпаковочныйЛистПриИзменении(Форма, ТЧТовары, ИмяПоля, КэшированныеЗначения, );
```
</details>

## РежимПросмотраПриИзменении
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Вызывается для инициализации элементов и реквизитов формы, в которой используются упаковочные листы с иерархией.
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий,
//	ТЧТовары - ДанныеФормыКоллекция - табличная часть, в которой отображаются товары и упаковочные листы,
//	ЗаголовокНачальногоУровня - Строка - начало навигационной надписи, используемой для перехода между
//		разными уровнями вложенности упаковочных листов,
//	РежимПросмотраПоТоварам - Булево - признак режима отображения табличной части с упаковочными листами,
//		Истина - "По товарам", Ложь - "По товарным местам", по умолчанию Неопределено.
//
Процедура РежимПросмотраПриИзменении(Форма, ТЧТовары, ЗаголовокНачальногоУровня, РежимПросмотраПоТоварам = Неопределено) Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.РежимПросмотраПриИзменении(Форма, ТЧТовары, ЗаголовокНачальногоУровня, РежимПросмотраПоТоварам);
```
</details>

## РаспаковатьУпаковочныйЛист
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Вместо строки-упаковочного листа в ТЧ будет отображен состав этого упаковочного листа,
//		вложенные упаковочные листы не разворачиваются.
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий:
// 		* Объект - ДанныеФормыСтруктура -:
// 			** Серии - ДанныеФормыКоллекция -
//
Процедура РаспаковатьУпаковочныйЛист(Форма) Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.РаспаковатьУпаковочныйЛист(Форма) 
```
</details>

## УпаковатьСервер
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выделенные строки включаются в новый упаковочный лист, в ТЧ отображаются в виде строки-упаковочного листа.
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий:
// 		* Объект - ДанныеФормыСтруктура -:
// 			** Серии - ДанныеФормыКоллекция -
//
// Возвращаемое значение:
//   - ДокументСсылка.УпаковочныйЛист - ссылка на созданный упаковочный лист.
//
Функция УпаковатьСервер(Форма) Экспорт
```

Пример вызова
```bsl
Результат = УпаковочныеЛистыСервер.УпаковатьСервер(Форма) 
```
</details>

## УстановитьУсловноеОформлениеСУчетомУпаковочныхЛистов
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Условное оформление для ТЧ с упаковочными листами.
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий,
//	ИмяТЧ - Строка - имя проверяемой табличной части, по умолчанию "Товары".
//
Процедура УстановитьУсловноеОформлениеСУчетомУпаковочныхЛистов(Форма, ИмяТЧ = "Товары") Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.УстановитьУсловноеОформлениеСУчетомУпаковочныхЛистов(Форма, ИмяТЧ);
```
</details>

## ПроверитьЗаполнениеТЧСУпаковочнымиЛистами
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Проверка заполнения с учетом особенностей ТЧ с упаковочными листами
// Параметры:
//	Объект	- ФормаКлиентскогоПриложения - форма, содержит в том числе:
//				* Ссылка - ДокументСсылка - проверяемый документ
//			- ДокументОбъект - проверяемый документ
//	ПроверяемыеРеквизиты - Массив - имена реквизитов, требующих проверки,
//	МассивНепроверяемыхРеквизитов - Массив - имена реквизитов, которые нужно исключить из платформенной проверки,
//	Отказ - Булево - признак ошибки проверки,
//	ИмяТЧ - Строка - имя проверяемой табличной части, по умолчанию "Товары".
//
Процедура ПроверитьЗаполнениеТЧСУпаковочнымиЛистами(Объект, ПроверяемыеРеквизиты, МассивНепроверяемыхРеквизитов, Отказ, ИмяТЧ = "Товары") Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.ПроверитьЗаполнениеТЧСУпаковочнымиЛистами(Объект, ПроверяемыеРеквизиты, МассивНепроверяемыхРеквизитов, Отказ, ИмяТЧ);
```
</details>

## СинхронизироватьУпаковочныеЛистыСРасходнымОрдером
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Определяет упаковочные листы, у которых закешированный в ордере состав не совпадает с содержимым,
//	сохраненным в упаковочном листе, синхронизирует такие упаковочные листы с ордером.
// Параметры:
//	ОрдерСсылка - ДокументСсылка.РасходныйОрдерНаТовары - ордер для синхронизации,
//	ИспользоватьАдресноеХранение - Булево - признак использования адресного хранения на складе или в помещении.
//
// Возвращаемое значение:
//   - Массив - ссылки на упаковочные листы, ТЧ которых потребовалось синхронизировать.
//
Функция СинхронизироватьУпаковочныеЛистыСРасходнымОрдером(ОрдерСсылка, ИспользоватьАдресноеХранение) Экспорт
```

Пример вызова
```bsl
Результат = УпаковочныеЛистыСервер.СинхронизироватьУпаковочныеЛистыСРасходнымОрдером(ОрдерСсылка, ИспользоватьАдресноеХранение) 
```
</details>

## ДополнитьСтрокамиПоУпаковочнымЛистам
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Дополняет ТЧТовары строками упаковочного листа, вызывается при изменении номенклатуры или упаковочного листа,
//		проверяет повторное включение упаковочных листов в ТЧТовары.
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий,
//	ТЧТовары - ДанныеФормыКоллекция - табличная часть, в которой отображаются товары и упаковочные листы,
//	СтрокиДляОбработкиОбъединяемые - Массив - обрабатываемые строки ТЧТовары,
//		также в этот массив собираются строки ТЧ, дополненные из упаковочного листа,
//	ЕстьОшибки - Булево - признак наличия ошибок при выполнении процедуры, по умолчанию Ложь,
//	ОшибкиВЖурналРегистрации - Булево - признак того, что ошибки нужно записать в журнал регистрации,
//		по умолчанию ложь,
//	ИсключитьИзПроверкиПервыйУпЛист - Булево - признак того, что первый упаковочный лист из СтрокиДляОбработкиОбъединяемые,
//		нужно исключить из проверки, по умолчанию ложь.
//
Процедура ДополнитьСтрокамиПоУпаковочнымЛистам(Форма, Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.ДополнитьСтрокамиПоУпаковочнымЛистам(Форма, );
```
</details>

## РекурсивноОбойтиПодчиненныеСтроки
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Рекурсивно обходит строки упаковочного листа, используется для получения или удаления всех строк в иерархии
// Параметры:
//	ТЧТовары - ДанныеФормыКоллекция - табличная часть, в которой отображаются товары и упаковочные листы,
//	УпаковочныйЛист - ДокументСсылка.УпаковочныйЛист - упаковочный лист для обхода строк,
//	ТЧСерии - ДанныеФормыКоллекция - табличная часть с сериями товаров, по умолчанию Неопределено,
//	СтрокиОбъединяемые - Массив - состоит из элементов ДанныеФормыЭлементКоллекции, куда собираются строки ТЧ,
//		подчиненные упаковочному листу, по умолчанию Неопределено,
//	Действие - Строка - "Объединить" или "Удалить", по умолчанию "Объединить".
//
Процедура РекурсивноОбойтиПодчиненныеСтроки(ТЧТовары, Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.РекурсивноОбойтиПодчиненныеСтроки(ТЧТовары, );
```
</details>

## ЗаполнитьСлужебныеРеквизиты
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Заполняет служебные реквизиты.
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий,
//	ТЧТовары - ДанныеФормыКоллекция - табличная часть, в которой отображаются товары и упаковочные листы,
//	СтруктураДействий - Структура - действия, которые нужно произвести,
//	СтрокиЗаполнения - Массив - строки ТЧТовары, в которых нужно заполнить служебные реквизиты,
//		по умолчанию Неопределено,
//	Перенумеровать - Булево - признак того, что после заполнения ТЧ нужно пронумеровать,
//	КэшированныеЗначения - Структура - кэш для заполнения реквизитов.
//
Процедура ЗаполнитьСлужебныеРеквизиты(Форма, Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.ЗаполнитьСлужебныеРеквизиты(Форма, );
```
</details>

## ПеренумероватьСтроки
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Нумерует строки в ТЧ, где нумерация по умолчанию не совпадает с отображаемым порядком строк,
//		используется для ТЧ с упаковочными листами
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий,
//	ТЧТовары - ДанныеФормыКоллекция - табличная часть, в которой отображаются товары и упаковочные листы,
//	НачинаяСНомера - Число - номер строки (отображаемый), с которого следует начать нумерацию, по умолчанию 1.
//
Процедура ПеренумероватьСтроки(Форма, ТЧТовары, НачинаяСНомера = 1) Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.ПеренумероватьСтроки(Форма, ТЧТовары, НачинаяСНомера);
```
</details>

## ПересчитатьКоличествоМест
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Заполняет реквизит формы Объект.ВсегоМест.
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий,
//	ТЧТовары - ДанныеФормыКоллекция - табличная часть, в которой отображаются товары и упаковочные листы.
//
Процедура ПересчитатьКоличествоМест(Форма, ТЧТовары) Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.ПересчитатьКоличествоМест(Форма, ТЧТовары) 
```
</details>

## КоличествоМестВТЧ
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Рассчитывает товарных количество мест в ТЧ
//
// Параметры:
//  ТЧ	 - ДанныеФормыКоллекция - табличная часть, для которой рассчитывается количество мест.
//
// Возвращаемое значение:
//   - Число - количество товарных мест в ТЧ.
//
Функция КоличествоМестВТЧ(ТЧ) Экспорт
```

Пример вызова
```bsl
Результат = УпаковочныеЛистыСервер.КоличествоМестВТЧ(ТЧ) 
```
</details>

## ПриПереходеНаДругойУровень
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выполняет действия при переходе по уровням вложенности упаковочных листов.
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий,
//	ТЧТовары - ДанныеФормыКоллекция - табличная часть, в которой отображаются товары и упаковочные листы
//	НавигационнаяСсылка - ДокументСсылка.УпаковочныйЛист, Строка, УникальныйИдентификатор -
//		указатель уровня, на который нужно перейти
//	ЗаголовокНачальногоУровня - Строка - начало навигационной надписи, используемой для перехода между
//		разными уровнями вложенности упаковочных листов,
//	ОтображатьГиперссылки - Булево - признак того, что навигационная панель отображается в виде гиперссылок,
//		по умолчанию Истина.
//
Процедура ПриПереходеНаДругойУровень(Форма, Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.ПриПереходеНаДругойУровень(Форма, );
```
</details>

## СформироватьНавигационнуюНадпись
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Формирует надпись для навигации по уровням вложенности упаковочных листов.
// Параметры:
//	Форма - ФормаКлиентскогоПриложения - форма для выполнения действий,
//	ЗаголовокНачальногоУровня - Строка - начало навигационной надписи, используемой для перехода между
//		разными уровнями вложенности упаковочных листов,
//	ОтображатьГиперссылки - Булево - признак того, что навигационная панель отображается в виде гиперссылок,
//		по умолчанию Истина.
//
Процедура СформироватьНавигационнуюНадпись(Форма, ЗаголовокНачальногоУровня, ОтображатьГиперссылки = Истина) Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.СформироватьНавигационнуюНадпись(Форма, ЗаголовокНачальногоУровня, ОтображатьГиперссылки);
```
</details>

## ПослеУдаленияВТЧСУпаковочнымиЛистами
<details style="margin: 1em 0; padding: 0.5em; border: 1px solid #ccc; border-radius: 6px;">

<summary style="font-weight: bold; cursor: pointer;">Описание, пример вызова</summary>

```bsl

// Выполняет действия после удаления строки в ТЧ с упаковочными листами.
//
// Параметры:
//  Форма					 - ФормаКлиентскогоПриложения - форма для выполнения действий,
//  ТЧТовары				 - ДанныеФормыКоллекция - табличная часть с упаковочными листами,
//  РежимПросмотраПоТоварам	 - Булево - признак режима отображения табличной части с упаковочными листами,
//		Истина - "По товарам", Ложь - "По товарным местам".
//
Процедура ПослеУдаленияВТЧСУпаковочнымиЛистами(Форма, ТЧТовары, РежимПросмотраПоТоварам) Экспорт
```

Пример вызова
```bsl
УпаковочныеЛистыСервер.ПослеУдаленияВТЧСУпаковочнымиЛистами(Форма, ТЧТовары, РежимПросмотраПоТоварам) 
```
</details>

---

© 2024, **ООО 1С-Софт**  
Все права защищены. Эта программа и сопроводительные материалы предоставляются  
в соответствии с условиями лицензии [Attribution 4.0 International (CC BY 4.0)](https://creativecommons.org/licenses/by/4.0/legalcode).

---
