Создание csv файла 2млн строк
Нужно сделать выгрузку в csv файл данных на 2 млн строк. Построчно выгружать нереально долго, за несколько часов около 250 тысяч строк выгрузилось. Есть какие-нибудь варианты как это можно быстрее сделать?
Пробовал самым простым способом, не подходит
Пробовал самым простым способом, не подходит
Текст="";
Инд = 0;
Пока ВыборкаРезультат.Следующий() Цикл
если Текст="" тогда
Текст="SL code|SKU code|Quantity|Year|Month|Day" + Символы.ПС;
КонецЕсли;
Текст = Текст + ВыборкаРезультат.СкладID + "|" + ВыборкаРезультат.НоменклатураID + "|" + Формат(ВыборкаРезультат.Остаток, "ЧГ=0") +
"|" + Формат(ВыборкаРезультат.ГОД, "ЧГ=0") + "|" + ВыборкаРезультат.МЕСЯЦ + "|" + ВыборкаРезультат.ДЕНЬ + Символы.ПС;
Инд = Инд + 1;
КонецЦикла;
ПоказатьОтветы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
Записывайте сразу в файл через объект ЗаписьТекста. Вместо Формат используйте XMLСтрока:
РезультатЗапроса = Запрос.Выполнить();
ИменаПолей = Новый Массив;
Для Каждого Колонка Из РезультатЗапроса.Колонки Цикл
ИменаПолей.Добавить(Колонка.Имя);
КонецЦикла;
ЗаписьТекста = Новый ЗаписьТекста(ИмяФайла);
ЗаписьТекста.ЗаписатьСтроку("SL code|SKU code|Quantity|Year|Month|Day");
ВыборкаРезультат = РезультатЗапроса.Выбрать();
Пока ВыборкаРезультат.Следующий() Цикл
ЗначенияПолей = Новый Массив;
Для Каждого ИмяПоля Из ИменаПолей Цикл
ЗначенияПолей.Добавить(XMLСтрока(ВыборкаРезультат[ИмяПоля]));
КонецЦикла;
ЗаписьТекста.ЗаписатьСтроку(СтрСоединить(ЗначенияПолей, "|"));
КонецЦикла;
ЗаписьТекста.Закрыть();
Показать
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот