На первом этапе получаем массив выгружаемых данных. В моем случае это простенький запрос. 
 
	Запрос = Новый Запрос;
	Запрос.Текст = 
		"ВЫБРАТЬ
		|	Номенклатура.Представление КАК Представление
		|ИЗ
		|	Справочник.Номенклатура КАК Номенклатура
		|ГДЕ
		|	Номенклатура.СтавкаНДС <> ЗНАЧЕНИЕ(Справочник.СтавкиНДС.БезНДС)
		|	И Номенклатура.СтавкаНДС <> ЗНАЧЕНИЕ(Справочник.СтавкиНДС.ПустаяСсылка)"; 
	
	Результат = Запрос.Выполнить(); 
	
	Если Результат.Пустой() Тогда
		Возврат;
	КонецЕсли; 
	
	МассивНоменклатуры = Результат.Выгрузить().ВыгрузитьКолонку("Представление");
Затем нам эти данные необходимо разделить, так как при отправке слишком длинного сообщения в телеграмм мы получаем ошибку "timed out".
Для этого применяем следующий алгоритм:
 
        РазмерПорции = 20;
	Результат = Новый Массив;
	Счетчик = 0; 
	СчетчикПорции = 0; 
	
	Пока Истина Цикл    
		Если РазмерПорции >= МассивНоменклатуры.Количество() Тогда   
			Если Результат.Количество() <> 0 Тогда
				ОтправитьВтелеграм(Результат);        
			КонецЕсли;
			ОтправитьВтелеграм(МассивНоменклатуры);
			Прервать; 
		КонецЕсли;
		Если СчетчикПорции = РазмерПорции Тогда
			СчетчикПорции = 0;  
			ОтправитьВтелеграм(Результат);
			Результат.Очистить(); 
			
		КонецЕсли;                        
		Результат.Добавить(МассивНоменклатуры[0]);  
		
		МассивНоменклатуры.Удалить(0);
		СчетчикПорции = СчетчикПорции + 1;
	КонецЦикла;         
То есть, мы создаем вечный цикл, условием выхода из которого возможность отправить все оставшиеся номенклатурные позиции одной порцией (размер порции может быть любым, в данном примере было решено взять 20 элементов). И затем последовательно добавляем элементы из основного массива в массив порции, пока не раздуем его до размера самой порции. Параллельно происходит удаление элементов из основного массива, это необходимо для корректной проверки условия выхода из цикла. И на последней итерации, когда размер исходного массива становится равен размеру порции, отправляем его и также, при необходимости, отправляем массив-порцию (так как если число элементов в исходном массиве не кратно порции, то этот массив будет не пустой, и мы потеряем часть выгружаемых данных).
С радостью жду более оптимальных решений данной задачи и обратной связи!
Вступайте в нашу телеграмм-группу Инфостарт
