Skip to content

Доставка товаров

ОтразитьСостояниеДоставки

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

Пример вызова

ДоставкаТоваров.ОтразитьСостояниеДоставки(РаспоряженияСсылки, Отказ, УдалениеПроведения);

ПолучитьСписокПеревозчиковВФоне

Описание, пример вызова
// Получает список перевозчиков и помещает их во временное хранилище.
//
// Параметры:
// ПараметрыЗадания - Массив - содержит параметрвы вызова
// АдресХранилища - Строка - адрес временного хранилища, по которому будет помещен результат выполнения.
//
Процедура ПолучитьСписокПеревозчиковВФоне(ПараметрыЗадания, АдресХранилища) Экспорт

Пример вызова

ДоставкаТоваров.ПолучитьСписокПеревозчиковВФоне(ПараметрыЗадания, АдресХранилища)

ПриЧтенииСозданииРаспоряженийНаСервере

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

Пример вызова

Результат = ДоставкаТоваров.ПриЧтенииСозданииРаспоряженийНаСервере(ЭлементыФормы, );

УстановитьДоступностьАдресовДоставки

Описание, пример вызова
// В зависимости от ФО РедактироватьАдресаДоставкиТолькоВДиалоге для элементов-адресов доставки
// устанавливается признак РедактированиеТекста.
//
// Параметры:
// ЭлементыФормы - ВсеЭлементыФормы - элементы формы, для которых осуществляется изменение свойств.
//
Процедура УстановитьДоступностьАдресовДоставки(ЭлементыФормы) Экспорт

Пример вызова

ДоставкаТоваров.УстановитьДоступностьАдресовДоставки(ЭлементыФормы)

УстановитьДоступностьАдресовЗаполнитьСпискиВремени

Описание, пример вызова
// В зависимости от ФО РедактироватьАдресаДоставкиТолькоВДиалоге для элементов-адресов доставки
// устанавливается признак РедактированиеТекста и заполняется список выбора.
//
// Параметры:
// ЭлементыФормы - ВсеЭлементыФормы - элементы формы, для которых осуществляется изменение свойств.
//
Процедура УстановитьДоступностьАдресовЗаполнитьСпискиВремени(ЭлементыФормы) Экспорт

Пример вызова

ДоставкаТоваров.УстановитьДоступностьАдресовЗаполнитьСпискиВремени(ЭлементыФормы)

ПараметрыЗаполненияРеквизитов

Описание, пример вызова
// Возвращает параметры заполнения реквизитов доставки
//
// Возвращаемое значение:
// Структура - с ключом:
// * ИсточникСтатистики - ДокументМенеджер - менеджеры документов,
// из которых будет извлекаться статистика для заполнения реквизитов доставки.
//
Функция ПараметрыЗаполненияРеквизитов() Экспорт

Пример вызова

Результат = ДоставкаТоваров.ПараметрыЗаполненияРеквизитов()

ЗаполнитьРеквизитыДоставки

Описание, пример вызова
// Заполняет реквизиты доставки в зависимости от элемента формы, в котором производятся изменения.
//
// Параметры:
// ЭлементыФормы - ВсеЭлементыФормы - все элементы формы, в которых производятся изменения,
// ИмяЭлементаФормы - Строка - имя элемента формы, в котором произошли изменения,
// ДокОбъект - ДанныеФормыСтруктура - объект, реквизиты которого используются при заполнении,
// ПараметрыЗаполнения - см. ПараметрыЗаполненияРеквизитов
//
Процедура ЗаполнитьРеквизитыДоставки(ЭлементыФормы, ИмяЭлементаФормы, ДокОбъект, ПараметрыЗаполнения = Неопределено) Экспорт

Пример вызова

ДоставкаТоваров.ЗаполнитьРеквизитыДоставки(ЭлементыФормы, ИмяЭлементаФормы, ДокОбъект, ПараметрыЗаполнения);

ПриИзмененииСпособаДоставки

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

Пример вызова

ДоставкаТоваров.ПриИзмененииСпособаДоставки(ЭлементыФормы, ДокОбъект)

ПриИзмененииПолучателяОтправителя

Описание, пример вызова
// Перезаполняет реквизиты доставки при изменении реквизиты формы.
//
// Параметры:
// ЭлементыФормы - ВсеЭлементыФормы - все элементы формы, в которой производятся изменения,
// ДокОбъект - ДанныеФормыСтруктура, СправочникОбъект - объект, реквизиты которого используются при заполнении,
// ПараметрыЗаполнения - Структура, Неопределено - параметры заполнения реквизитов доставки.
// См. ПараметрыЗаполненияРеквизитов.
//
Процедура ПриИзмененииПолучателяОтправителя(ЭлементыФормы, ДокОбъект, ПараметрыЗаполнения = Неопределено) Экспорт

Пример вызова

ДоставкаТоваров.ПриИзмененииПолучателяОтправителя(ЭлементыФормы, ДокОбъект, ПараметрыЗаполнения);

ДополнитьРеквизитамиДоставкиДанныеЗаполнения

Описание, пример вызова
// Добавляет в структуру РеквизитыШапки реквизиты доставки в зависимости от способа доставки,
// используется при вводе Реализации товаров и услуг на основании Заказов клиента.
//
// Параметры:
// РеквизитыШапки - Структура - структура, в которую добавляются реквизиты, связанные с доставкой;
// ВыборкаРеквизитыШапки - ВыборкаИзРезультатаЗапроса - выборка из результатов запроса, в которой содержатся
// данные по доставке.
//
Процедура ДополнитьРеквизитамиДоставкиДанныеЗаполнения(РеквизитыШапки,ВыборкаРеквизитыШапки) Экспорт

Пример вызова

ДоставкаТоваров.ДополнитьРеквизитамиДоставкиДанныеЗаполнения(РеквизитыШапки, ВыборкаРеквизитыШапки)

ПриИзмененииФлагаПоЗаказам

Описание, пример вызова
// При изменении флага "По заказам" в накладной меняет видимость элементов управления доставкой, меняет способ доставки.
//
// Параметры:
// ЭлементыФормы - ЭлементыФормы - все элементы формы;
// ДокОбъект - ДокументОбъект - документ, в котором осуществляются изменения;
// НакладнаяПоЗаказам - Булево - Истина - документ является накладной по заказам.
//
Процедура ПриИзмененииФлагаПоЗаказам(ЭлементыФормы, ДокОбъект, НакладнаяПоЗаказам) Экспорт

Пример вызова

ДоставкаТоваров.ПриИзмененииФлагаПоЗаказам(ЭлементыФормы, ДокОбъект, НакладнаяПоЗаказам)

ПоследниеРеквизитыДоставкиИзЗаданий

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

Пример вызова

Результат = ДоставкаТоваров.ПоследниеРеквизитыДоставкиИзЗаданий(ПолучательОтправитель, Перевозчик);

ПорядокДоставкиВЗаданииНаПеревозку

Описание, пример вызова
// Возвращает порядок доставки по получателю из задания на перевозку.
// Если получатель упоминается несколько раз - берется номер первого пункта,
// если получателя нет в задании, вместо пункта пишется ?
//
// Параметры:
// ЗаданиеНаПеревозку - ДокументСсылка.ЗаданиеНаПеревозку - ссылка на документ задания на перевозку;
// Получатель - ОпределяемыйТип.ОтправительПолучательДоставки - получатель груза.
//
// Возвращаемое значение:
// Строка - порядок доставки в формате "%НомерПункта% из %КоличествоПунктов%".
//
Функция ПорядокДоставкиВЗаданииНаПеревозку(ЗаданиеНаПеревозку, Получатель) Экспорт

Пример вызова

Результат = ДоставкаТоваров.ПорядокДоставкиВЗаданииНаПеревозку(ЗаданиеНаПеревозку, Получатель)

ЕстьДоставкаПоСкладскойОперации

Описание, пример вызова
// Проверяет, что для переданной складской операции предусмотрена доставка.
//
// Параметры:
// СкладскаяОперация - ПеречислениеСсылка.СкладскиеОперации - складская операция.
//
// Возвращаемое значение:
// Булево - Истина - предусмотрена доставка для переданной складской операции.
//
Функция ЕстьДоставкаПоСкладскойОперации(СкладскаяОперация) Экспорт

Пример вызова

Результат = ДоставкаТоваров.ЕстьДоставкаПоСкладскойОперации(СкладскаяОперация)

КоэффициентПересчетаВТонны

Описание, пример вызова
// Возвращает значение коэффициента из константы, проверяет и выдает сообщение при незаполненности.
//
// Возвращаемое значение:
// Число - значение коэффициента.
//
Функция КоэффициентПересчетаВТонны() Экспорт

Пример вызова

Результат = ДоставкаТоваров.КоэффициентПересчетаВТонны()

КоэффициентПересчетаВКубическиеМетры

Описание, пример вызова
// Возвращает значение коэффициента из константы, проверяет и выдает сообщение при незаполненности.
// Возвращаемое значение:
// Число
//
Функция КоэффициентПересчетаВКубическиеМетры() Экспорт

Пример вызова

Результат = ДоставкаТоваров.КоэффициентПересчетаВКубическиеМетры()

ОбновитьСписокРаспоряженийНаДоставку

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

Пример вызова

ДоставкаТоваров.ОбновитьСписокРаспоряженийНаДоставку(Форма, ОбновляемыеРаспоряжения);

ЗаполнитьПризнакиОформленияРаспоряжений

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

Пример вызова

ДоставкаТоваров.ЗаполнитьПризнакиОформленияРаспоряжений(РаспоряженияНаДоставку, ЗонаГруппаИлиПустая)

ПерезаполнитьЗаданиеНаПеревозкуПоРасходнымОрдерам

Описание, пример вызова
// Перезаполняет задание на перевозку в соответствии со связанными расходными ордерами на товары.
//
// Параметры:
// ЗаданиеОбъект - ДокументОбъект.ЗаданиеНаПеревозку - документ задания на перевозку;
// ТоварыКДоставке - ДанныеФормыКоллекция, Неопределено - коллекция с данными по доставляемым товарам.
//
// Возвращаемое значение:
// Булево - признак корректного перезаполнения.
//
Функция ПерезаполнитьЗаданиеНаПеревозкуПоРасходнымОрдерам(ЗаданиеОбъект, ТоварыКДоставке = Неопределено) Экспорт

Пример вызова

Результат = ДоставкаТоваров.ПерезаполнитьЗаданиеНаПеревозкуПоРасходнымОрдерам(ЗаданиеОбъект, ТоварыКДоставке);

ДобавитьИзменитьПунктПоРеквизитамДоставки

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

Пример вызова

Результат = ДоставкаТоваров.ДобавитьИзменитьПунктПоРеквизитамДоставки(КоллекцияМаршрут, РеквизитыДоставки, ДатаВремяРейсаПланС)

МаксимальноеВремяПо

Описание, пример вызова
// Рассчитывает и возвращает максимальное время планируемого окончания доставки по пунктам.
//
// Параметры:
// Объект - ДокументОбъект.ЗаданиеНаПеревозку, ДанныеФормыСтруктура - документ задания на перевозку.
//
// Возвращаемое значение:
// Дата - время окончания доставки по пунктам.
//
Функция МаксимальноеВремяПо(Объект) Экспорт

Пример вызова

Результат = ДоставкаТоваров.МаксимальноеВремяПо(Объект)

СкопироватьКолонкиКоллекции

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

Пример вызова

Результат = ДоставкаТоваров.СкопироватьКолонкиКоллекции(Коллекция, ИменаКолонок)

ЗаписатьТоварыКДоставке

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

Пример вызова

ДоставкаТоваров.ЗаписатьТоварыКДоставке(ТоварыРаспоряжений, ТЧРаспоряжения, ЗаданиеНаПеревозку)

ЗаполнитьПризнакДоставляетсяПолностью

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

Пример вызова

ДоставкаТоваров.ЗаполнитьПризнакДоставляетсяПолностью(ТоварыРаспоряжений, );

ПроверитьЗаполнениеРеквизитовДоставки

Описание, пример вызова
// Заполняет массив непроверяемых реквизитов распоряжения на доставку в зависимости от способа доставки.
//
// Параметры:
// ДокументОбъект - ДокументОбъект - распоряжение, в котором проверяется заполнение реквизитов;
// МассивНепроверяемыхРеквизитов - Массив - массив реквизитов, заполнение которых не обязательно;
// Отказ - Булево - Истина - признак отказа выполнения заполнения реквизитов;
// НакладнаяПоЗаказам - Булево - Истина - ДокументОбъект является накладной по заказу.
//
Процедура ПроверитьЗаполнениеРеквизитовДоставки(ДокументОбъект, МассивНепроверяемыхРеквизитов, Отказ, НакладнаяПоЗаказам = Ложь) Экспорт

Пример вызова

ДоставкаТоваров.ПроверитьЗаполнениеРеквизитовДоставки(ДокументОбъект, МассивНепроверяемыхРеквизитов, Отказ, НакладнаяПоЗаказам);

ОсобыеУсловияПеревозкиПриИзменении

Описание, пример вызова
// Выполняет действия при изменении реквизита "Особые условия перевозки".
//
// Параметры:
// ЭлементыФормы - ВсеЭлементыФормы - элементы формы, в которых осуществляется изменение свойств;
// ДокОбъект - ДанныеФормыСтруктура - объект, реквизиты которого используются при изменении
// значения реквизита "Особые условия перевозки".
//
Процедура ОсобыеУсловияПеревозкиПриИзменении(ЭлементыФормы, ДокОбъект) Экспорт

Пример вызова

ДоставкаТоваров.ОсобыеУсловияПеревозкиПриИзменении(ЭлементыФормы, ДокОбъект)

ДополнитьИнформациюПоДоставкеКонтактами

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

Пример вызова

ДоставкаТоваров.ДополнитьИнформациюПоДоставкеКонтактами(Объект)

РеквизитыТС

Описание, пример вызова
// Получает реквизиты транспортного средства.
//
// Параметры:
// ТранспортноеСредство - СправочникСсылка.ТранспортныеСредства, СправочникСсылка.ТипыТранспортныхСредств - транспортное средство,
// реквизиты которого нужно получить.
//
// Возвращаемое значение:
// Структура - с полями:
// *ВместимостьПредставление - Строка - вместимость
// *ГрузоподъемностьВЕдПользователя - Число - грузоподъемность
// *ВместимостьВЕдПользователя - Число - вместимость в пользовательских единицах измерения
// *ГрузоподъемностьВТоннах - Число - грузоподъемность в тоннах
// *ВместимостьВКубическихМетрах - Число - вместимость в кубических метрах.
//
Функция РеквизитыТС(ТранспортноеСредство) Экспорт

Пример вызова

Результат = ДоставкаТоваров.РеквизитыТС(ТранспортноеСредство)

СформироватьСводнуюИнформациюПоДоставке

Описание, пример вызова
// Формирует текстовое представление реквизитов доставки для вывода на форму.
//
// Параметры:
// КонтейнерРеквизитовДоставки - СправочникСсылка.СоглашенияСПоставщиками, СправочникСсылка.ДоговорыКонтрагентов -
// договор или соглашение, содержащее информацию по реквизитам доставки.
//
// Возвращаемое значение:
// Строка - текстовое представление реквизитов доставки.
//
Функция СформироватьСводнуюИнформациюПоДоставке(КонтейнерРеквизитовДоставки) Экспорт

Пример вызова

Результат = ДоставкаТоваров.СформироватьСводнуюИнформациюПоДоставке(КонтейнерРеквизитовДоставки)

ПриПечати

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

Пример вызова

ДоставкаТоваров.ПриПечати(МассивОбъектов, ПараметрыПечати, КоллекцияПечатныхФорм, ОбъектыПечати, ПараметрыВывода)

ПолучитьУдалитьИзВременногоХранилища

Описание, пример вызова
Функция ПолучитьУдалитьИзВременногоХранилища(Адрес) Экспорт

Пример вызова

Результат = ДоставкаТоваров.ПолучитьУдалитьИзВременногоХранилища(Адрес)

© 2024, ООО 1С-Софт
Все права защищены. Эта программа и сопроводительные материалы предоставляются
в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0).