diff --git a/public/bsp-zagruzka-iz-faila/1.png b/public/bsp-zagruzka-iz-faila/1.png
new file mode 100644
index 0000000..28eebc1
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/1.png differ
diff --git a/public/bsp-zagruzka-iz-faila/10.png b/public/bsp-zagruzka-iz-faila/10.png
new file mode 100644
index 0000000..a81b673
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/10.png differ
diff --git a/public/bsp-zagruzka-iz-faila/11.png b/public/bsp-zagruzka-iz-faila/11.png
new file mode 100644
index 0000000..a92ad43
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/11.png differ
diff --git a/public/bsp-zagruzka-iz-faila/12.png b/public/bsp-zagruzka-iz-faila/12.png
new file mode 100644
index 0000000..5c647e1
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/12.png differ
diff --git a/public/bsp-zagruzka-iz-faila/13.png b/public/bsp-zagruzka-iz-faila/13.png
new file mode 100644
index 0000000..23e2e73
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/13.png differ
diff --git a/public/bsp-zagruzka-iz-faila/14.png b/public/bsp-zagruzka-iz-faila/14.png
new file mode 100644
index 0000000..56ecd60
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/14.png differ
diff --git a/public/bsp-zagruzka-iz-faila/15.png b/public/bsp-zagruzka-iz-faila/15.png
new file mode 100644
index 0000000..1753682
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/15.png differ
diff --git a/public/bsp-zagruzka-iz-faila/16.png b/public/bsp-zagruzka-iz-faila/16.png
new file mode 100644
index 0000000..5074709
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/16.png differ
diff --git a/public/bsp-zagruzka-iz-faila/17.png b/public/bsp-zagruzka-iz-faila/17.png
new file mode 100644
index 0000000..bf3116a
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/17.png differ
diff --git a/public/bsp-zagruzka-iz-faila/18.png b/public/bsp-zagruzka-iz-faila/18.png
new file mode 100644
index 0000000..d8a7071
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/18.png differ
diff --git a/public/bsp-zagruzka-iz-faila/2.png b/public/bsp-zagruzka-iz-faila/2.png
new file mode 100644
index 0000000..cf85f77
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/2.png differ
diff --git a/public/bsp-zagruzka-iz-faila/3.png b/public/bsp-zagruzka-iz-faila/3.png
new file mode 100644
index 0000000..cb41324
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/3.png differ
diff --git a/public/bsp-zagruzka-iz-faila/4.png b/public/bsp-zagruzka-iz-faila/4.png
new file mode 100644
index 0000000..fda224b
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/4.png differ
diff --git a/public/bsp-zagruzka-iz-faila/5.png b/public/bsp-zagruzka-iz-faila/5.png
new file mode 100644
index 0000000..2cafe2c
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/5.png differ
diff --git a/public/bsp-zagruzka-iz-faila/6.png b/public/bsp-zagruzka-iz-faila/6.png
new file mode 100644
index 0000000..200d10e
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/6.png differ
diff --git a/public/bsp-zagruzka-iz-faila/7.png b/public/bsp-zagruzka-iz-faila/7.png
new file mode 100644
index 0000000..7910e2f
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/7.png differ
diff --git a/public/bsp-zagruzka-iz-faila/8.png b/public/bsp-zagruzka-iz-faila/8.png
new file mode 100644
index 0000000..c20d089
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/8.png differ
diff --git a/public/bsp-zagruzka-iz-faila/9.png b/public/bsp-zagruzka-iz-faila/9.png
new file mode 100644
index 0000000..dc11eb3
Binary files /dev/null and b/public/bsp-zagruzka-iz-faila/9.png differ
diff --git a/src/content/docs/knowledge-base/Общие/(БСП) Стандартные подсистемы/Загрузка данных из файла/Настраиваемые алгоритмы загрузки в справочники.md b/src/content/docs/knowledge-base/Общие/(БСП) Стандартные подсистемы/Загрузка данных из файла/Настраиваемые алгоритмы загрузки в справочники.md
new file mode 100644
index 0000000..08c7e57
--- /dev/null
+++ b/src/content/docs/knowledge-base/Общие/(БСП) Стандартные подсистемы/Загрузка данных из файла/Настраиваемые алгоритмы загрузки в справочники.md
@@ -0,0 +1,254 @@
+---
+title: Настраиваемые алгоритмы загрузки в справочники
+slug: общие-бсп-стандартные-подсистемы-загрузка-данных-из-файла/настраиваемые-алгоритмы-загрузки-в-справочники
+---
+
+Т.к. справочники, имеющие реквизиты типа `ХранилищеЗначения` не отображаются в обработке `Загрузка данных из файла` по умолчанию, их при необходимости можно подключить самостоятельно. Также можно отключить какой-нибудь справочник и сделать его недоступным для использования в обработке.
+
+В общем модуле `ЗагрузкаДанныхИзФайлаПереопределяемый` в процедуре `ПриОпределенииСправочниковДляЗагрузкиДанных` определяем состав справочников для загрузки данных
+
+## Определение справочников для загрузки
+```bsl
+Процедура ПриОпределенииСправочниковДляЗагрузкиДанных(ЗагружаемыеСправочники) Экспорт
+
+ // Стандартный алгоритм загрузки. Для случаев, когда есть реквизит ХранилищеЗначения
+ // и устраивает стандартный механизм загрузки
+ ИмяСправочника = "ТестовыйСправочник";
+ Если ЗагружаемыеСправочники.Найти(Метаданные.Справочники[ИмяСправочника].ПолноеИмя(), "ПолноеИмя") = Неопределено Тогда
+ Сведения = ЗагружаемыеСправочники.Добавить();
+ Сведения.ПолноеИмя = Метаданные.Справочники[ИмяСправочника].ПолноеИмя();
+ Сведения.Представление = Метаданные.Справочники[ИмяСправочника].Представление();
+ Сведения.ПрикладнаяЗагрузка = Ложь;
+ КонецЕсли;
+
+ // Собственный алгоритм загрузки в справочник
+ ИмяСправочника = "ТестовыйСправочник1";
+
+ СтрокаТаблицы = ЗагружаемыеСправочники.Найти(Метаданные.Справочники[ИмяСправочника].ПолноеИмя(), "ПолноеИмя");
+ Если СтрокаТаблицы = Неопределено Тогда
+ Сведения = ЗагружаемыеСправочники.Добавить();
+ Сведения.ПолноеИмя = Метаданные.Справочники[ИмяСправочника].ПолноеИмя();
+ Сведения.Представление = Метаданные.Справочники[ИмяСправочника].Представление();
+ Сведения.ПрикладнаяЗагрузка = Истина;
+ Иначе
+ СтрокаТаблицы.ПрикладнаяЗагрузка = Истина;
+ КонецЕсли;
+
+ // Запрет загрузки
+ ИмяСправочника = "ТестовыйСправочник2";
+ СтрокаТаблицы = ЗагружаемыеСправочники.Найти(Метаданные.Справочники[ИмяСправочника].ПолноеИмя(), "ПолноеИмя");
+ Если СтрокаТаблицы <> Неопределено Тогда
+ ЗагружаемыеСправочники.Удалить(СтрокаТаблицы);
+ КонецЕсли;
+
+КонецПроцедуры
+```
+
+## Реализация собственных механизмов загрузки и сопоставления
+
+Если в процедуре `ЗагрузкаДанныхИзФайлаПереопределяемый.ПриОпределенииСправочниковДляЗагрузкиДанных` для справочника указать `Сведения.ПрикладнаяЗагрузка = Истина;`, то необходимо:
+- Создать макет табличного документа для загруки
+- в модуле менеджера реализовать несколько методов служебного программного интерфейса
+
+## Создание макета
+Макет создается на уровне объекта и должен **обязательно иметь имя `ЗагрузкаИзФайла`**. В нем настраиваем вид шапки таблицы **именя ячеек которой должны соответствовать именам реквизитов объекта**.
+> В пользовательском режиме полужирным будут выделены обязательные реквизиты (`ПроверкаЗаполнения = ВыдаватьОшибку`) и те реквизиты, которые будут добавлены в массив `Параметры.ОбязательныеКолонки` метода `ОпределитьПараметрыЗагрузкиДанныхИзФайла` (см. [главу ОпределитьПараметрыЗагрузкиДанныхИзФайла](#ОпределитьПараметрыЗагрузкиДанныхИзФайла))
+
+
+
+Если справочник подключен к подсистемам `Свойства` и/или `Контактная информация`, то в макете нужно создавать колонки с заголовком `<Дополнительные реквизиты>` и `<Контактная информация>` (именно с треугольными скобками). Для таких колонок `Имя` не имеет значения - они заполняются автоматически
+
+
+
+
+## Реализация методов программного интерфейса
+В модуле менеджера необходимо реализовать 3 экспортных процедуры:
+- `Процедура ОпределитьПараметрыЗагрузкиДанныхИзФайла(Параметры) Экспорт`, в котором нужно определить параметры создания таблицы `ЗагружаемыеДанные`, используемой далее
+
+
+Подробнее
+
+
+
+
+
+- `Процедура СопоставитьЗагружаемыеДанныеИзФайла(ЗагружаемыеДанные) Экспорт`, в котором нужно заполнить служебный реквизиты `ОбъектСопоставления` - ссылка на найденный по требуемым правилам элемент справочника.
+- `Процедура ЗагрузитьИзФайла(ЗагружаемыеДанные, ПараметрыЗагрузки, Отказ) Экспорт`, в котором осуществляется непосредственная загрузка данных в ИБ
+
+### ОпределитьПараметрыЗагрузкиДанныхИзФайла
+В этом методе нужно настроить параметры перед загрузкой данных.
+Одним из ключевых параметров - `ТипДанныхКолонки`, который определяет, в какие типы система будет пытаться преобразовать введенное значение в колонках таб.док при формировании таблицы значений `ЗагружаемыеДанные`, используемой далее в методе `СопоставитьЗагружаемыеДанныеИзФайла`
+
+Подробнее
+
+
+
+
+
+
+Пример с датой
+
+
+
+
+
+```bsl
+Процедура ОпределитьПараметрыЗагрузкиДанныхИзФайла(Параметры) Экспорт
+
+// Структура:
+// * Заголовок - Строка - представление в списке вариантов загрузки и в заголовке окна.
+// * ТипДанныхКолонки - Соответствие из КлючИЗначение:
+// ** Ключ - Строка - имя колонки таблицы.
+// ** Значение - ОписаниеТипов - описание типа данных колонки.
+// * ОбязательныеКолонки - Массив из Строка - содержит список обязательных полей для заполнения.
+// * ПолноеИмяОбъекта - Строка - полное имя объекта, как в метаданных. Например Справочник.Партнеры.
+// * ПредставлениеОбъекта - Строка - представление объекта в таблице сопоставления данных. Например, "Клиент".
+// * ТипЗагрузки - Строка - варианты загрузки данных (служебный).
+
+ Параметры.ОбязательныеКолонки.Добавить("КолонкаСТипомДата");
+ Параметры.ТипДанныхКолонки.Вставить("КолонкаСТипомБулево", Новый ОписаниеТипов("Булево"));
+ Параметры.ТипДанныхКолонки.Вставить("КолонкаСТипомДата", ОбщегоНазначения.ОписаниеТипаДата(ЧастиДаты.Дата));
+
+КонецПроцедуры
+```
+> ВАЖНО! Если предполагается сопоставлять элементы справочника по строковым реквизитам, то обязательно в процедуре `ОпределитьПараметрыЗагрузкиДанныхИзФайла` нужно их описать с указанием длины. Без этого в запросе дальше не получится их использовать, т.к. длина по умолчанию устанавливается неограниченная
+
+### СопоставитьЗагружаемыеДанныеИзФайла
+По стандартному сценарию колонки для сопоставления указываются пользователем вручную:
+
+В случае реализации собственных механизмов загрузки это поле отсутствует,
+
+поэтому в этом методе необходимо определить алгоритм и заполнить колонку `ОбъектСопоставления` таблицы `ЗагружаемыеДанные` подобранными элементами справочника
+
+```bsl
+// Производит сопоставление загружаемых данных с данными в ИБ.
+// Состав и тип колонок таблицы соответствует реквизитам справочника или макету "ЗагрузкаИзФайла".
+//
+// Параметры:
+// ЗагружаемыеДанные - см. ЗагрузкаДанныхИзФайла.ТаблицаСопоставления
+//
+Процедура СопоставитьЗагружаемыеДанныеИзФайла(ЗагружаемыеДанные) Экспорт
+
+ // примитивный пример сопоставления
+
+ Запрос = Новый Запрос;
+ Запрос.Текст =
+ "ВЫБРАТЬ
+ | ЗагружаемыеДанные.Идентификатор КАК Идентификатор,
+ | ЗагружаемыеДанные.Наименование КАК Наименование
+ |ПОМЕСТИТЬ ВТЗагружаемыеДанные
+ |ИЗ
+ | &ЗагружаемыеДанные КАК ЗагружаемыеДанные
+ |;
+ |
+ |////////////////////////////////////////////////////////////////////////////////
+ |ВЫБРАТЬ
+ | ТестовыйСправочник.Ссылка КАК Ссылка,
+ | ВТЗагружаемыеДанные.Идентификатор КАК Идентификатор
+ |ИЗ
+ | ВТЗагружаемыеДанные КАК ВТЗагружаемыеДанные
+ | ВНУТРЕННЕЕ СОЕДИНЕНИЕ Справочник.ТестовыйСправочник КАК ТестовыйСправочник
+ | ПО ВТЗагружаемыеДанные.Наименование = ТестовыйСправочник.Наименование";
+ Запрос.УстановитьПараметр("ЗагружаемыеДанные", ЗагружаемыеДанные);
+
+ Выборка = Запрос.Выполнить().Выбрать();
+
+ Пока Выборка.Следующий() Цикл
+
+ СтрокаТаблицы = ЗагружаемыеДанные.Найти(Выборка.Идентификатор, "Идентификатор");
+ Если СтрокаТаблицы <> Неопределено Тогда
+ СтрокаТаблицы.ОбъектСопоставления = Выборка.Ссылка;
+ КонецЕсли;
+
+ КонецЦикла;
+
+КонецПроцедуры
+```
+
+
+### ЗагрузитьИзФайла
+В этом методе по данным ТЗ `ЗагружаемыеДанные` и структуры `ПараметрыЗагрузки` необходимо реализовать создание/обновление элементов справочников.
+В структуре `ПараметрыЗагрузки` указаны значения этих параметров
+
+|Свойство|Тип|Значение|
+|-|-|-|
+|`ОбновлятьСуществующие`|Число|1, если обновлять сопоставленные элементы, 0, если не обновлять|
+|`СоздаватьНовые`|Число|1, если создавать новые несопоставленные элементы, 0, если пропускать|
+
+Пример
+```bsl
+// Загрузка данных из файла.
+//
+// Параметры:
+// ЗагружаемыеДанные - см. ЗагрузкаДанныхИзФайла.ОписаниеЗагружаемыхДанныхДляСправочников
+// ПараметрыЗагрузки - см. ЗагрузкаДанныхИзФайла.НастройкиЗагрузкиДанных
+// Отказ - Булево - отмена загрузки. Например, если данные некорректные.
+//
+Процедура ЗагрузитьИзФайла(ЗагружаемыеДанные, ПараметрыЗагрузки, Отказ) Экспорт
+
+ Для Каждого СтрокаТаблицы Из ЗагружаемыеДанные Цикл
+
+ ОбъектСопоставленияЗаполнен = ЗначениеЗаполнено(СтрокаТаблицы.ОбъектСопоставления);
+
+ Если (ОбъектСопоставленияЗаполнен И ПараметрыЗагрузки.ОбновлятьСуществующие = 0)
+ Или (Не ОбъектСопоставленияЗаполнен И ПараметрыЗагрузки.СоздаватьНовые = 0) Тогда
+
+ СтрокаТаблицы.РезультатСопоставленияСтроки = "Пропущен";
+
+ Продолжить;
+
+ КонецЕсли;
+
+ НачатьТранзакцию();
+
+ Попытка
+ Если ОбъектСопоставленияЗаполнен Тогда
+
+ Блокировка = Новый БлокировкаДанных;
+ ЭлементБлокировки = Блокировка.Добавить("Справочник.ТестовыйСправочник");
+ ЭлементБлокировки.УстановитьЗначение("Ссылка", СтрокаТаблицы.ОбъектСопоставления);
+ Блокировка.Заблокировать();
+
+ ЭлементСправочника = СтрокаТаблицы.ОбъектСопоставления.ПолучитьОбъект();
+
+ Если ЭлементСправочника = Неопределено Тогда
+ ВызватьИсключение СтроковыеФункцииКлиентСервер.ПодставитьПараметрыВСтроку(
+ НСтр("ru = 'Номенклатура с артикулом %1 не существует.'"), СтрокаТаблицы.Артикул);
+ КонецЕсли;
+ СтрокаТаблицы.РезультатСопоставленияСтроки = "Обновлен";
+
+ Иначе
+
+ ЭлементСправочника = СоздатьЭлемент();
+ СтрокаТаблицы.РезультатСопоставленияСтроки = "Создан";
+
+ КонецЕсли;
+
+ ЭлементСправочника.Наименование = СтрокаТаблицы.Наименование;
+
+ Если Не ЭлементСправочника.ПроверитьЗаполнение() Тогда
+
+ СтрокаТаблицы.РезультатСопоставленияСтроки = "Пропущен";
+ ОтменитьТранзакцию();
+
+ Иначе
+ ЭлементСправочника.Записать();
+ СтрокаТаблицы.ОбъектСопоставления = ЭлементСправочника.Ссылка;
+
+ // Для записи данных из колонки <Дополнительные реквизиты>
+ ЗагрузкаДанныхИзФайла.ЗаписатьСвойстваОбъекта(ЭлементСправочника.Ссылка, СтрокаТаблицы);
+
+ ЗафиксироватьТранзакцию();
+
+ КонецЕсли;
+ Исключение
+ ОтменитьТранзакцию();
+ УправлениеДоступом.ОтключитьОбновлениеКлючейДоступа(Ложь, Ложь);
+ Причина = ОбработкаОшибок.КраткоеПредставлениеОшибки(ИнформацияОбОшибке());
+ СтрокаТаблицы.РезультатСопоставленияСтроки = "Пропущен";
+ СтрокаТаблицы.ОписаниеОшибки = НСтр("ru = 'Невозможна запись данных по причине:'") + Символы.ПС + Причина;
+ КонецПопытки;
+ КонецЦикла;
+
+КонецПроцедуры
+```
\ No newline at end of file
diff --git a/src/content/docs/knowledge-base/Общие/(БСП) Стандартные подсистемы/Загрузка данных из файла/Обработка Загрузка данных из файла.md b/src/content/docs/knowledge-base/Общие/(БСП) Стандартные подсистемы/Загрузка данных из файла/Обработка Загрузка данных из файла.md
new file mode 100644
index 0000000..3c409d3
--- /dev/null
+++ b/src/content/docs/knowledge-base/Общие/(БСП) Стандартные подсистемы/Загрузка данных из файла/Обработка Загрузка данных из файла.md
@@ -0,0 +1,23 @@
+---
+title: Обработка Загрузка данных из файла
+slug: общие-бсп-стандартные-подсистемы-загрузка-данных-из-файла/обработка-загрузка-данных-из-файла
+---
+
+Для загрузки данных используется обработка `Загрузка данных из файла`. По умолчанию она скрыта, найти можно в функциях для технического специалиста.
+
+
+
+При открытии обработки открывается список со всеми справочниками **без реквизитов типа `ХранилищеЗначения`** - такие справочники нужно подключать отдельно.
+
+После выбора справочника открывается окно с табличным документом, где автоматически создаются колонки с реквизитами выбраного справочника. **Полужирным** выделяются реквизиты **обязательные для заполнения**
+
+
+Порядок колонок можно изменять - для этого внизу нужно нажать на кнопку `Изменить бланк`
+
+После нажатия на кнопку `Далее` на форме будет отображена табличная часть с заполненными данными из табличного документа. По умолчанию система **не сопоставляет** полученные данные, для поиска и сопоставления нужно указать **колонки для сопоставления**
+
+
+
+После нажатия на кнопку `Загрузить данные` откроется форма отчета
+
+
\ No newline at end of file
diff --git a/src/content/docs/knowledge-base/Общие/(БСП) Стандартные подсистемы/Файлы/Программный интерфейс/Сервер/КоличествоПрисоединенныхФайлов.md b/src/content/docs/knowledge-base/Общие/(БСП) Стандартные подсистемы/Файлы/Программный интерфейс/Сервер/КоличествоПрисоединенныхФайлов.md
index 616484a..0c7ea5f 100644
--- a/src/content/docs/knowledge-base/Общие/(БСП) Стандартные подсистемы/Файлы/Программный интерфейс/Сервер/КоличествоПрисоединенныхФайлов.md
+++ b/src/content/docs/knowledge-base/Общие/(БСП) Стандартные подсистемы/Файлы/Программный интерфейс/Сервер/КоличествоПрисоединенныхФайлов.md
@@ -1,3 +1,7 @@
+---
+title: КоличествоПрисоединенныхФайлов
+slug: общие-бсп-стандартные-подсистемы-файлы-программный-интерфейс-сервер/количествоприсоединенныхфайлов
+---
```bsl
Количество = РаботаСФайламиСлужебныйВызовСервера.КоличествоПрисоединенныхФайлов(ВладелецПрисоединенныхФайлов)
```
\ No newline at end of file