Класс "ЗаписьXML" для 1С++, аналог одноименного класса из 8.x.

02.11.12

Интеграция - Файловый обмен (TXT, XML, DBF), FTP

Мне понадобилось перенести работающий код выгрузки данных в xml из 1С 8.2 в 7.7. Чтобы минимизировать исправления - написал класс-эмулятор класса ЗаписьXML из 8.2. Теперь при переносе кода из 1С8.2 в 7.7 количество необходимых изменений - минимально.

Файлы

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование Скачано Купить файл
Конфигурация - пример
.rar 12,33Kb
17 2 500 руб. Купить

Подписка PRO — скачивайте любые файлы со скидкой до 85% из Базы знаний

Оформите подписку на компанию для решения рабочих задач

Оформить подписку и скачать решение со скидкой

Вы можете заказать платную доработку или адаптацию этой разработки под вашу конфигурацию на «Бирже заказов».

  • 0% комиссии — оплата напрямую исполнителю;
  • Исполнители любого масштаба — от отдельных специалистов до команд под проект;
  • Прямой обмен контактами между заказчиком и исполнителем;
  • Безопасная сделка — при необходимости;
  • Рейтинги, кейсы и прозрачная система откликов.

Мне понадобилось перенести работающий код выгрузки данных в xml из  1С 8.2 в 7.7. Чтобы минимизировать исправления - написал класс-эмулятор класса ЗаписьXML из 8.2. Теперь при переносе кода из количество необходимых изменений - минимально.

В идеальном случае нужно заменить 

ЗаписьXML = Новый ЗаписьXML;

на

ЗаписьXML = СоздатьОбъект("ЗаписьXML");

 

В результате код выгрузки с использованием класса выглядит так же, как в 8.х:

    ИмяВременногоФайла = "C:\test.xml");



   
ЗаписьXML = СоздатьОбъект("ЗаписьXML");

   
ЗаписьXML.ОткрытьФайл(ИмяВременногоФайла);

   
ЗаписьXML.ЗаписатьОбъявлениеXML();

   
ЗаписьXML.ЗаписатьНачалоЭлемента("yml_catalog");

   
ЗаписьXML.ЗаписатьАтрибут("date", "" + ТекущаяДата());



   
//Валюты

   
ЗаписьXML.ЗаписатьНачалоЭлемента("currencies");

   
ЗаписьXML.ЗаписатьНачалоЭлемента("currency");

   
ЗаписьXML.ЗаписатьАтрибут("ID", "UAH");

   
ЗаписьXML.ЗаписатьАтрибут("rate", "1");

   
ЗаписьXML.ЗаписатьКонецЭлемента();

   
ЗаписьXML.ЗаписатьКонецЭлемента();

    //

   
ЗаписьXML.ЗаписатьКонецЭлемента();//yml_catalog

   
ЗаписьXML.Закрыть();

Для работы также требуется класс "Стек" (включен в файл примера).

 

Кроме методов, присутствующих в классе ЗаписьXML, добавил дополнительные, позволяющие делать выгрузку более лаконично:

  • ЗаписатьЗначениеЭлемента(Имя, Значение) - добавляет в файл строку вида:
    <currencyId>USD</currencyId>
  • ЗаписатьПараметр(Имя, Значение) - добавляет в файл строку вида:
    <param name="Максимальный формат">А4</param>

Содержимое: МД файл с классом ЗаписьXML и Стек (в обработках), с примером выгрузки (в отчетах)

Вступайте в нашу телеграмм-группу Инфостарт

См. также

Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист 1С:Предприятие 7.7 1С:Предприятие 8 1С:Бухгалтерия 7.7 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Перенос данных из 1С:Бухгалтерия 7.7 в БП 3.0 | Продукт является развитием и исправлением ошибок стандартной обработки для выгрузки данных из 1С Бухгалтерии 7.7 в Бухгалтерию 3.0 | Перенос из 7.7 является сложным, и на рынке сложно найти специалистов 1С по "семерке" - сотрудники помогут вам выполнить переход в рамках техподдержки предлагаемого переноса данных!

58000 руб.

26.05.2020    38953    13    94    

18

Файловый обмен (TXT, XML, DBF), FTP 1С:Предприятие 7.7 1C77 Россия Платные (руб)

Класс 1С++ для подключения ФИАС (Федеральная информационная адресная система) к любой конфигурации 1С 7.7. Опционально доступно геокодирование адресов и хранение географических координат адресных элементов ФИАС в отдельной БД. В конфигурации, где для ведения адресов используется типовой интерфейс по работе с КЛАДР, встраивается за пару минут.

6100 руб.

15.11.2017    27842    31    71    

29

Файловый обмен (TXT, XML, DBF), FTP Программист 1С:Предприятие 7.7 Абонемент ($m)

Предлагается обработка, которая импортирует XML файл в справочник. Обработка облегчает обработку XML файлов за счет использования команд 1С 7.7 работы со справочниками и запросами. Тестировалось на релизе 7.70.027

1 стартмани

04.08.2025    1965    0    malovandrey    2    

4

Файловый обмен (TXT, XML, DBF), FTP Программист 1С:Предприятие 7.7 1С:Торговля и склад 7.7 Абонемент ($m)

Представляю Вам техническую обработку, которая позволяет выгрузить справочник номенклатуры ТиС 7.7 в удобочитаемый JSON.

10 стартмани

09.01.2025    2754    1    quazare    0    

6

Перенос данных 1C Файловый обмен (TXT, XML, DBF), FTP Программист 1С:Предприятие 7.7 НДС Абонемент ($m)

Пример создания документа Поступление (акт, накладная, УПД) в 1С: Бухгалтерии 3 путем загрузки из XML универсального формата EnterpriseData 1.12 файла, сгенерированного обработкой документа "Реализация". Выгрузка реализации написана в самописной конфигурации на платформе 1С:Предприятие 7.7. Способ заполнения реквизитов поступления можно переделать под себя, выгрузка XML в универсальный формат EnterpriseData останется работоспособной.

1 стартмани

14.02.2023    4752    10    ksnik    0    

7

Файловый обмен (TXT, XML, DBF), FTP Учет документов Распознавание документов и образов Бухгалтер Пользователь 1С:Предприятие 7.7 1С:Предприятие 8 1C:Бухгалтерия 1C77 1С:Бухгалтерия 2.0 1С:Бухгалтерия 3.0 1С:Управление производственным предприятием 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 1.х 1С:Комплексная автоматизация 2.х 1С:Управление нашей фирмой 1.6 1С:Управление торговлей 10 1С:Управление торговлей 11 Россия Платные (руб)

Программный комплекс способный распознавать сотни листов за раз любых сканированных(фото) документов (УПД, ТОРГ12, СФ, паспорт и пр.) и загружать их в любую 1С (БП3.0, УТ, КА, УНФ, УПП, 1С7.7 ТиС, ЗУП3 и пр.), а также формировать архив сканированных документов.<br> Робот применяет до 5 способов распознавания. Максимальное качество загрузки документов из бесплатных OCR. Работает без Интернета.

10980 руб.

13.10.2022    10995    1    12    

10
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Ёпрст 1068 29.10.12 16:58 Сейчас в теме
Лень смотреть, на основе чего класс слеплен ?
Домдокумент ?
обычный текст ?
в7плюс ?
3. Dolly_EV 270 31.10.12 08:01 Сейчас в теме
(1) О! Тебе же лень было через fso переписать декларацию - вот оно, готовое ))))
(0) Автору - плюс!
еще бы кто бы написал класс "1С:Предприятие8_для_77" )))
2. curdate 54 29.10.12 17:01 Сейчас в теме
4. ITEkb 01.11.12 09:03 Сейчас в теме
Для стартапа маловато информации.
Пока сам от начала до конца не написал загрузку-выгрузку, только тогда понял, как это дело все работает.
Хотя, можно сослаться на то, что обрабтка для знающих людей.
Но здесь чаще простые обыватели подходящие под себя обработки ищет :)

В любом случае спасибо :) Пригодилось.
5. ksnik 695 14.03.13 15:33 Сейчас в теме
В обработке КлсЗаписьXML
Процедура ЗаписатьОбъявлениеXML() Экспорт
	Текст.ДобавитьСтроку("<?xml version=""1.0"" encoding=""windows-1251""?>");
КонецПроцедуры	// ЗаписатьОбъявлениеXML

тег с ошибочной кодировкой " encoding="win1251"?> вместо "windows-1251".
Кодировки "win1251" не существует. Есть "windows-1251".
6. igo1 270 20.11.14 13:11 Сейчас в теме
Чтобы получить заголовок файла <?xml version="1.0" encoding="windows-1251"?> пишем код.

Запись = Новый ЗаписьXML;
Запись.УстановитьСтроку("windows-1251");
Запись.ЗаписатьОбъявлениеXML();
........
7. programma 18.02.15 19:06 Сейчас в теме
Для отправки сообщения требуется регистрация/авторизация