Табличные части плана обмена. Для внутреннего использования.
// Для внутреннего использования.
//
Функция ТабличныеЧастиПланаОбмена(Знач ИмяПланаОбмена, Знач ВерсияКорреспондента = "", Знач ИдентификаторНастройки = "") Экспорт
ТаблицыОбщие = Новый Массив;
ТаблицыЭтойБазы = Новый Массив;
ВсеТаблицыЭтойБазы = Новый Массив;
ОбщиеДанныеУзлов = ОбменДаннымиСервер.ОбщиеДанныеУзлов(ИмяПланаОбмена, ВерсияКорреспондента, ИдентификаторНастройки);
ТабличныеЧасти = ОбменДаннымиСобытия.ТабличныеЧастиОбъекта(Метаданные.ПланыОбмена[ИмяПланаОбмена]);
Если Не ПустаяСтрока(ОбщиеДанныеУзлов) Тогда
Для Каждого ТабличнаяЧасть Из ТабличныеЧасти Цикл
Если СтрНайти(ОбщиеДанныеУзлов, ТабличнаяЧасть) <> 0 Тогда
ТаблицыОбщие.Добавить(ТабличнаяЧасть);
КонецЕсли;
КонецЦикла;
КонецЕсли;
НастройкиЭтойБазы = ОбменДаннымиСервер.НастройкаОтборовНаУзле(ИмяПланаОбмена, ВерсияКорреспондента, ИдентификаторНастройки);
НастройкиЭтойБазы = ОбменДаннымиСобытия.КлючиСтруктурыВСтроку(НастройкиЭтойБазы);
Если ПустаяСтрока(ОбщиеДанныеУзлов) Тогда
Для Каждого ТабличнаяЧасть Из ТабличныеЧасти Цикл
ВсеТаблицыЭтойБазы.Добавить(ТабличнаяЧасть);
Если СтрНайти(НастройкиЭтойБазы, ТабличнаяЧасть) <> 0 Тогда
ТаблицыЭтойБазы.Добавить(ТабличнаяЧасть);
КонецЕсли;
КонецЦикла;
Иначе
Для Каждого ТабличнаяЧасть Из ТабличныеЧасти Цикл
ВсеТаблицыЭтойБазы.Добавить(ТабличнаяЧасть);
Если СтрНайти(НастройкиЭтойБазы, ТабличнаяЧасть) <> 0 Тогда
Если СтрНайти(ОбщиеДанныеУзлов, ТабличнаяЧасть) = 0 Тогда
ТаблицыЭтойБазы.Добавить(ТабличнаяЧасть);
КонецЕсли;
КонецЕсли;
КонецЦикла;
КонецЕсли;
Результат = Новый Структура;
Результат.Вставить("ТаблицыОбщие", ТаблицыОбщие);
Результат.Вставить("ТаблицыЭтойБазы", ТаблицыЭтойБазы);
Результат.Вставить("ВсеТаблицыЭтойБазы", ВсеТаблицыЭтойБазы);
Возврат Результат;
КонецФункции
///////////////////////////////////////////////////////////////////////////////////////////////////////
// Copyright (c) 2019, ООО 1С-Софт
// Все права защищены. Эта программа и сопроводительные материалы предоставляются
// в соответствии с условиями лицензии Attribution 4.0 International (CC BY 4.0)
// Текст лицензии доступен по ссылке:
// https://creativecommons.org/licenses/by/4.0/legalcode
///////////////////////////////////////////////////////////////////////////////////////////////////////
СкопироватьСтрокиВБуферОбмена (БСП)
МетаданныеТабличнойЧасти (БСП)
Расчет суммы в строке табличной части
Как загрузить в табличную часть одного документа табличную часть другого документа?
Канал FastCode 1C в Телеграм! Шаблоны кода, статьи, полезные советы, курсы по 1С (8К участников)