Класс "Запись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
16
16 Скачать (1 SM) Купить за 1 850 руб.

Мне понадобилось перенести работающий код выгрузки данных в 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 и Стек (в обработках), с примером выгрузки (в отчетах)

См. также

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

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

1 стартмани

14.02.2023    3114    8    ksnik    0    

6

Файловый обмен (TXT, XML, DBF), FTP Учет документов Распознавание документов и образов Бухгалтер Пользователь Платформа 1С v7.7 Платформа 1С v8.3 Платформа 1C v8.2 Конфигурации 1cv8 Конфигурации 1cv7 Россия Платные (руб)

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

10800 руб.

13.10.2022    8466    1    12    

9

Файловый обмен (TXT, XML, DBF), FTP Бухгалтер Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 Россия Бухгалтерский учет НДС Абонемент ($m)

Выгрузка реестра необлагаемых НДС операций в ответ на требование налоговой инспекции. В формате xml согласно требованиям законодательства https://sbis.ru/formats/docFormatCard/120287/help/?scrollTo=description Реестр документов подаётся в ответ на требование налоговой о представлении пояснений. Начиная с 23 ноября 2020 года, его можно направлять по ТКС, в электронном виде в формате xml (письмо ФНС России от 12.11.2020 № ЕА-4-15/18589). Данная обработка просто выбирает необлагаемые суммы (не по ставке 0%) по книги продаж за выбранный квартал и включает их в реестр с кодом операции, который выбран в самой обработке.

1 стартмани

24.09.2021    4769    5    AndKovalchuk    0    

3

Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист Платформа 1С v8.3 Оперативный учет 7.7 1С:Торговля и склад 7.7 1С:Бухгалтерия 3.0 Бухгалтерский учет Управленческий учет Абонемент ($m)

Обработка и правила обмена данными для выгрузки документов и всех связанных с ними справочников из 1С7.7 ТиС 9.2 в 1С8.3 БП 3.0 через файл XML. В типовых конфигурациях уже есть такое решение. Это немного доработанные правила и сама обработка выгрузки, добавлена возможность устанавливать отбор по выгружаемым документам по Фирме, Контрагенту, Складу, Проекту, Автору, ЮрЛицу. А также это внешняя обработка, что даёт возможность адаптировать её под нетиповую ТиС. Обработка и правила тестировались на платформах: 1С: Предприятие 7.7 и 1С: Предприятие 8.3.18.1334. На типовых конфигурациях: «Торговля + склад», редакция 9.2 (7.70 1004) и «Бухгалтерия предприятия» редакция 3.0 (3.0.96.30).

1 стартмани

13.08.2021    9311    58    Kuzya_brаtsk    8    

11

Файловый обмен (TXT, XML, DBF), FTP ЭДО и ОФД Программист Бухгалтерский учет 7.7 1С:Бухгалтерия 7.7 1С:Торговля и склад 7.7 1С:Бухгалтерия 1.6 1С:Упрощенное налогообложение 7.7 Россия Бухгалтерский учет Абонемент ($m)

Обмениваемся УПД (УКД) с различными контрагентами через СБИС. А чтобы загрузить УПД (УКД) из 7.7 в Сбис, используем данную обработку, которая создает файл в формате XML, который можно импортировать в систему электронного документооборота. Для конфигурации "Бухгалтерский учет" (тестировалась на релизе 7.70.663) Для конфигурации "Упрощенная система налогообложения" ( тестировалась на релизе 7.70.305) Для конфигурации "Торговля и Склад 7.7" (тестировалась на релизе 7.70.1007)

1 стартмани

31.07.2021    16789    261    AndKovalchuk    56    

18

Разработка внешних компонент Файловый обмен (TXT, XML, DBF), FTP Программист Платформа 1С v7.7 Конфигурации 1cv7 Абонемент ($m)

Эта внешняя компонента Base64.dll предназначена для платформы 1С версии 7.7. Используется для преобразования файлов из/в кодировку Base64 из встроенного языка 1С Предприятие. Компонента тестировалась на базе конфигурации Бухгалтерский учет для Казахстана, редакции 7.70.257.

10 стартмани

06.04.2021    10000    14    softmaker    13    

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

В любом случае спасибо :) Пригодилось.
5. ksnik 593 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 Сейчас в теме
Оставьте свое сообщение