helpf.pro
Регистрация
 0 
Распечатать

Выгрузка результата запроса в текстовый файл с разделителями

Код 1C v 8.х
 Запрос = Новый Запрос();
Запрос.УстановитьПараметр("ДатаНач",НачалоДня(ДатаНач));
Запрос.УстановитьПараметр("ДатаКон",КонецДня(ДатаКон));
Запрос.УстановитьПараметр("Организация",Организация);
Запрос.Текст = "ВЫБРАТЬ
| ПоступлениеТоваровУслугТовары.Номенклатура КАК Номенклатура,
| ПоступлениеТоваровУслугТовары.Количество КАК Количество,
| ПоступлениеТоваровУслугТовары.Цена КАК Цена,
| ПоступлениеТоваровУслугТовары.Ссылка.Номер КАК Номер,
| ПоступлениеТоваровУслугТовары.Ссылка.Дата КАК Дата,
| ПоступлениеТоваровУслугТовары.Ссылка.Контрагент КАК Контрагент,
| ПоступлениеТоваровУслугТовары.Номенклатура.Код КАК НоменклатураКод,
| ПоступлениеТоваровУслугТовары.Номенклатура.Артикул КАК НоменклатураАртикул
|ИЗ
| Документ.ПоступлениеТоваровУслуг.Товары КАК ПоступлениеТоваровУслугТовары
|ГДЕ
| ПоступлениеТоваровУслугТовары.Ссылка.Дата МЕЖДУ &ДатаНач И &ДатаКон
| И ПоступлениеТоваровУслугТовары.Ссылка.Организация = &Организация
|
|УПОРЯДОЧИТЬ ПО
| Контрагент,
| Номер,
| Дата,
| НоменклатураКод,
| Номенклатура,
| НоменклатураАртикул,
| Количество,
| Цена";
Результат = Запрос.Выполнить().Выбрать();
Текст = Новый ЗаписьТекста("c:\vigruz.txt", КодировкаТекста.ANSI);
РезультатДок = Запрос.Выполнить().Выбрать();
Пока РезультатДок.Следующий() Цикл
ОбработкаПрерыванияПользователя();
// В качестве разделителей необходимо использовать Символы. ВК (CR),ВТаб (VTab),НПП (NBSp),ПС (LF),ПФ (FF),Таб (Tab)

//Если нам нужна строка вида " helpf.pro 07.08.2009 13 " в качестве разделителя используется табуляция
//то пишем так:
Текст.ЗаписатьСтроку(Строка(РезультатДок.Контрагент)+Символы.Таб+Строка(Формат((РезультатДок.Дата),"ДЛФ=D"))+Символы.Таб+Строка(РезультатДок.Номер));
// При загрузке строку можно будет разложить в массив для дальнейшей работы, РазложитьСтрокуВМассивПодстрок( ТекСтр, Символы.Таб). Ссылка на функцию ниже

//Если нужен вид
// helpf.pro
// 07.08.2009
// 13
// здесь в качестве разделителя используется перевод каретки (следующая строка), то пишем
Текст.ЗаписатьСтроку(РезультатДок.Контрагент);
Текст.ЗаписатьСтроку(Символы.ПС);
Текст.ЗаписатьСтроку(Формат((РезультатДок.Дата),"ДЛФ=D"));
Текст.ЗаписатьСтроку(Символы.ПС);
Текст.ЗаписатьСтроку(РезультатДок.Номер);

КонецЦикла;
Текст.Закрыть();


При загрузке для разбора строки используйте: Функция разбирает строку на подстроки, используя заданный разделитель и возвращает массив

Еще посмотрите пример: Загрузка данных из Текстового файла
Разместил:   Версии: | 8.x | 8.2 УП |  Дата:   Прочитано: 11795
 0 
Распечатать
Возможно, вас также заинтересует
Google maps : вывод точек на карту и режим панорамы 2
В отличие от яндекс карт в GMaps можно использовать панорамы - за что им большой плюс! Надеюсь в яндексе прочитают этот пост и тоже когда-нибудь это сделают! Для клиента нужно было сделать вывод объектов на карту С...
Google maps, поиск оптимального маршрута 2
В данном посте хочу коснуться основных аспектов построения оптимального маршрута с использованием API Google maps. Исходные данные для построения маршрута: * Географические координаты объектов, которые хранятся в базе; *...
Автоматизация обмена данных используя обработку "Универсальный обмен данными в формате XML" 3
Автоматизация обмена между базами используя обработку " Универсальный обмен данными в формате XML" В основу данной публикации положены найденные мною материалы по cозданию обмена между двумя базами с использованием ...
Автоматическая установка ширины колонки табличного документа. 0
Процедура, которая " примерно" делает автоширину колонок (навроде, как если бы выделить все колонки и дважды щелкнуть мышкой по границе заголовка колонки). Привожу текст, работает неахти, но лучше чем ничего: Процедура...
Алгоритм шифрования RC4 0
Для решения некоторых задач, иногда требуется имееть возможность шифровать и дешифровывать, какие-то данные. Но при этом нет возможности использовать стороние внешнии компоненты. Предлагаем пример реализации...
Посмотреть все результаты поиска похожих
Вы не можете отправить комментарий анонимно, пожалуйста войдите или зарегистрируйтесь.