При настройке правил обмена в конфигурации «Конвертация данных 2.1» для переноса информации из базы 1С 7.7 в 1С:Управление торговлей 11 часто возникает необходимость протестировать выгрузку на небольшом объеме данных. Выгружать весь справочник номенклатуры, который может содержать десятки тысяч позиций, долго и неудобно. Рассмотрим подробнее, как ограничить количество выгружаемых объектов до 5–100 элементов как с помощью интерактивных настроек обработки выгрузки, так и программными методами.
Разберем по шагам наиболее простой способ ограничения данных, не требующий изменения кода в «Конвертации данных».
V77EXP.ERT и загрузим сформированные правила обмена.Родитель) и укажем конкретную папку номенклатуры, содержащую небольшое количество позиций для теста. Наряду с этим можно настроить интервал кодов (от начального до конечного значения).Проанализируем ситуацию, когда необходимо жестко лимитировать количество выгружаемых записей (например, выгрузить строго первые 10 или 100 элементов), независимо от структуры папок справочника.
Вариант 1. Использование параметра-счетчика в событии «Перед выгрузкой»
Для реализации этого метода выполним следующие действия:
СчетчикВыгруженных со числовым типом и начальным значением 0.
Параметры.СчетчикВыгруженных = Параметры.СчетчикВыгруженных + 1;
Если Параметры.СчетчикВыгруженных > 100 Тогда
Отказ = 1;
КонецЕсли;
При достижении лимита переменной Отказ присваивается значение 1. Все последующие элементы справочника пропускаются и не попадают в итоговый XML-файл.
Вариант 2. Произвольный алгоритм выборки в ПВД
Посмотрим на пример с использованием произвольной выборки:
Спр = СоздатьОбъект("Справочник.Номенклатура");
Спр.ВыбратьЭлементы();
Счетчик = 0;
Пока Спр.ПолучитьЭлемент() = 1 Цикл
Если Спр.ЭтоГруппа() = 1 Тогда
Продолжить;
КонецЕсли;
ВыгрузитьПоПравилу(Спр.ТекущийЭлемент(),,, "Номенклатура");
Счетчик = Счетчик + 1;
Если Счетчик >= 10 Тогда
Прервать;
КонецЕсли;
КонецЦикла;
Выясним важные нюансы, которые необходимо учитывать при тестировании обмена между 1С 7.7 и УТ 11:
ПЕРВЫЕ N (как в 1С 8) или TOP N (как в SQL). Поэтому ограничение выборки реализуется только условием с отменой выгрузки или прерыванием цикла.Если нет желания менять правила в Конвертации данных, можно применить проверенную на практике методику:
_Тест_Выгрузки).V77EXP.ERT настраиваем обычный фильтр по этой временной папке.