Помощь - Поиск - Пользователи - Календарь
Полная версия: Работа с файлами
"1C-PRO" - форум по 1C > Форумы по платформе "1С:Предприятие 8.x" > (8.х) Отчеты и обработки для платформы "1С:Предприятие 8.x"
Гончаров максим
Добрый день, знатоки!
Пишу свою первую обработку, поэтому будьте снисходительны...
Стоит простая задача - написать обработку для импорта / экспорта документа из / в файл.

Вопросы следующие:
Как создать файл на диске, открыть его для чтения / записи, и прочитать / записать из / в него данные?
LxS
Файл какого приложения?
Какой документ?
LxS
Простейший пример - работа с обычным текстовым файлом

Выгрузка

//########################################
Текст = Новый ТекстовыйДокумент;
Выборка = Справочники.Номенклатура.Выбрать();

Пока Выборка.Следующий() Цикл
Стр = СтрЗаменить(Выборка.Наименование, Символ(34), "%квч%");
Код = Строка(Выборка.Код)+Символ(34);
Текст.ДобавитьСтроку(Код + Стр);
КонецЦикла;

Текст.Записать("c:\text.txt");

//########################################
LxS
Загрузка

//########################################
Текст = Новый ТекстовыйДокумент;
Текст.Прочитать("c:\text.txt");

Для НомерСтроки=1 По Текст.КоличествоСтрок() Цикл
Стр = Текст.ПолучитьСтроку(НомерСтроки);
Позиция = Найти(Стр, Символ(34));
Код = Сред(Стр, 1, Позиция-1);
прНаименование = Сред(Стр, Позиция+1);
Наименование = СтрЗаменить(прНаименование, "%квч%", Символ(34));

Сообщить(Код + "-" + Наименование);

КонецЦикла;

//########################################

LxS
Работа с текстом. В предыдущем примере документ загружался полностью.
Ниже будет рассматриваться модель последовательного (построчного) доступа.

Запись

//#########################

Путь = "c:\text.txt";
Текст = Новый ЗаписьТекста(Путь, КодировкаТекста.UTF8);
Выборка = Справочники.Номенклатура.Выбрать();

Пока Выборка.Следующий() Цикл
Текст.ЗаписатьСтроку(Выборка.Наименование);
КонецЦикла;

//#########################




Чтение

//#########################

Путь = "c:\text.txt";
Текст = Новый ЧтениеТекста(Путь, КодировкаТекста.UTF8);
Стр = Текст.ПрочитатьСтроку();

Пока Стр <> Неопределено Цикл
Стр = Текст.ПрочитатьСтроку();
Сообщить(Стр);
КонецЦикла;

//#########################
Гончаров максим
Большое спасибо, вчера уже нашел объект ТекстовыйДокумент, вроде разобрался.
LxS
С документами приложений офиса чуть посложнее. Надо немного VBA знать.
Рад тому, что помог.
onfly
Цитата(LxS @ 20.4.2007, 10:44) *

С документами приложений офиса чуть посложнее. Надо немного VBA знать.
Рад тому, что помог.


Требую продолжение банкета :)
Можно примеры для ворда и/или ссылки какие-нибудь интересные?
Спасибо.
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.
Русская версия Invision Power Board © 2001-2008 Invision Power Services, Inc.