1c 8.3 як перевірити файл xml. Формування файлу XML

💖 Подобається?Поділися з друзями посиланням

Перенесення даних - дуже важливий процес у будь-якій обліковій системі, платформа 1С 8.3 та 8.2 не виняток. Нижче ми розглянемо інструкцію, як найпростіше перенести дані з однієї системи в іншу, що має аналогічну конфігурацію (для різних конфігурацій можна використовувати інструмент для програмістів або).

Перед будь-якими діями необхідно зміни є незворотними!

Найпростіший і зручний спосібперенесення даних з 1С 8.3 до 1С 8.3 бухгалтерія 3.0 - використання обробки Вивантаження та завантаження даних у форматі XML (завантажити - для 8.2 або для 1С 8.3 або на ІТС). Обробка універсальна та підходить для будь-яких конфігурацій.

Не будемо вдаватися до подробиць, розглянемо покрокову інструкцію з міграції даних за допомогою даної обробки на прикладі найпростішого перенесення товарів.

Вивантаження даних у XML

Насамперед відкриємо обробку в базі джерела (звідки вивантажуватимемо товари) і подивимося на інтерфейс:

Отримайте 267 відеоуроків з 1С безкоштовно:

Відразу необхідно заповнити поле «Ім'я файлу» - цим шляхом буде створено новий файл даних, який ми завантажуватимемо в базу приймач. Трохи нижче, в табличній частині «Дані для розвантаження» необхідно вибрати дані, які ми хочемо вивантажити з бази даних.

Після виділення об'єкта з лівої табличної частини можна накласти відбір у правій табличній частині:


У нашому прикладі хочу вивантажити всі товари з найменуванням «Граблі».

Після заповнення всіх налаштувань дані можна вивантажувати. Для цього необхідно натиснути кнопку «Вивантажити дані»:


Завантаження даних із xml в 1с 8.3

Дані вивантажені з бази джерела, тепер їх потрібно перенести до бази-приймача.

Для цього необхідно запустити обробку вже в тій базі, в яку необхідно завантажити дані, і зайти на вкладку «Завантаження», вибрати файл на диску і натиснути на кнопку «Завантажити дані»:


Цей приклад підходить лише для перенесення даних між ідентичними конфігураціями на платформі 1С. Для розуміння механізму обмінів, для програмістів ми написали статтю - .

Перенесення інформації між базами даних є одним із завдань їх підтримки та адміністрування. Для ефективного виконання в автоматизованих комплексах 1С створюються обробки. Вони значно полегшують рутинну роботу, прискорюють процеси вивантаження-завантаження інформації та одночасно реалізують контроль її коректності. Вивантаження з 1с в xml дозволяє створювати файл із вмістом будь-якого об'єкта настроєної конфігурації, і використовувати його, коли необхідне вивантаження даних в ідентичну конфігурацію.

Інструменти для створення вивантаження

Для експорту інформації, що міститься в базах даних, переважно використовується формат xml. Для 1С розроблено безліч обробок (наприклад, Вивантаження Заданих xml82 epf), за допомогою яких можна виводити у файл і завантажувати дані. При цьому користувач повинен отримувати файл певної структури, який дозволяє завантажувати інформацію, що зберігається в ньому, в рідну базу даних або переносити її в інше місце. При створенні вивантаження слід дотримуватися таких правил:

  • Зберегти створені файли до моменту повного відновленнята закінчення процедур перевірки коректності перенесеної інформації;
  • У разі використання обробки як інструмент резервного копіювання створювати для копій даних окремі підпапки та вести журнал їх обліку для швидкого пошуку.

Універсальна обробка «Вивантаження та завантаження даних XML», що постачається в програмі підтримки користувачів 1С, яку можна знайти на сайті або дисках ІТС, є чудовим засобом для експорту та імпорту інформації. Користувач комп'ютера може вивантажити як всю базу, і її окремі об'єкти, при цьому крім власне експорту проводяться різні операції з перевірки інформації, що допомагають позбутися критичних помилок у даних.

  • Вивантаження. Створює файл, що містить об'єкти, що вивантажуються, що визначаються користувачем;
  • Завантаження Здійснює читання експортованого раніше файлу і записує відомості, що знаходяться в ньому. інформаційну базу.

Обробка дозволяє провести контроль об'єктів на неприпустимі символи, а також включає функцію експорту інформації з обмеженнями.

Вивантаження може використовуватися як під час обміну інформацією між базами 1С. З її допомогою можна забезпечити інтеграцію різних комплексів, наприклад, 1С та системи Парус. Універсальність формату XML дозволяє створювати програми для перенесення інформації практично будь-яких інформаційних банків. Обробка розвантаження та завантаження даних xml – найважливіший інструмент обміну інформацією.

Процес вивантаження даних уxml

Розглянемо, як вивантажити з 1с в xml у звичайному режимі. Після завантаження обробки ВивантаженняЗавантаженняДанихxml.epf та її відкриття необхідно виконати такі кроки:

  • Відібрати об'єкти для експорту;
  • Налаштувати необхідні фільтри, наприклад, за періодом;
  • Визначити розташування файлу з інформацією на дисковій підсистемі;
  • Запустити вивантаження об'єктів.


Необхідно пам'ятати, що заголовна частина формату файлу розвантаження відрізняється від формату файлу, що використовується при розвантаженні за планами обміну.

xml

Завантаження xml в 1с проводиться в базу-приймач із конфігурацією, ідентичною базі-джерелу. Перш ніж завантажити в 1с xml 1с необхідно відкрити обробку в базі-приймачі. Потім потрібно вказати шлях до раніше вивантаженого файлу і здійснити завантаження даних натисканням на кнопку «Завантажити дані».

При необхідності активуються прапорці для завантаження даних у режимі обміну в розподіленій інформаційній базі та ігнорування помилок, що виникають при завантаженні об'єктів.


Після цього необхідно перевірити бази і переконатися, що всі елементи завантажені коректно, щоб не отримати їх втрати, наприклад, якщо помилка в обробнику події після завантаження об'єкта.


Ця обробкадозволяє проводити обмін даними між однаковими (ідентичними) конфігураціями на платформі 1С 8.2 - Бух, ЗУП, УТ, УПП та інші, головне щоб конфігурації були однаковими!

Скріншоти обробки

(foto)

Режими роботи

Обробка реалізує 2 режими роботи: Вивантаження (створення файлу вивантаження зазначених користувачем даних) та Завантаження (читання файлу вивантаження, створеного однойменним режимом, та запис наявних у ньому даних). Встановлення режиму здійснюється вибором у полі Режим.

Перед запуском того чи іншого режиму (натискання кнопки Виконати) потрібно вказати ім'я файлу вивантаження або ввівши його вручну в полі "Ім'я файлу", або скориставшись кнопкою вибору цього поля та стандартним діалогом вибору файлу.

У режимі завантаження є можливість редагування використання підсумків під час запису регістрів, що може вплинути на швидкість завантаження.

Кнопки "Вимкнути підсумки" та "Увімкнути підсумки" доступні при встановленому прапорі "Включити можливість редагування використання підсумків під час завантаження даних" та використовуються для ручного керування режимом використання підсумків під час завантаження даних.

Умови застосування обробки

Обробка може використовуватися тільки в тих випадках, коли інформаційна база, в якій здійснювалося вивантаження даних, і та, в якій дані завантажуються, є однорідними (конфігурації ідентичні, дані можуть відрізнятися), або всі об'єкти, що вивантажуються, практично повністю ідентичні за складом і типами реквізитів і табличних частин, властивостями "провідного" об'єкту метаданих і т.д. Слід зазначити, що у зв'язку із зазначеними обмеженнями обробка головним чином призначена для обміну між однорідними ІБ.

Формат файлу розвантаження відрізняється від формату файлу, створюваного при розвантаженні за планом обміну, заголовною частиною. Для вивантаження даних (елементів довідників, наборів записів регістрів тощо) обробкою використовується той самий механізм XML-серіалізації, що й розвантаженням за планами обміну, у цій частині формати файлів ідентичні.

Визначення складу вивантаження

Обробка дозволяє здійснити як повне, і часткове вивантаження даних інформаційної бази у файл. Налаштування складу даних, що вивантажуються, проводиться в діалозі шляхом установки прапорців в колонці дерева, що відображає об'єкти метаданих, дані по яких можуть бути вивантажені. Додаткова колонкапрапорців, "За потреби", встановлює необхідність вивантаження об'єктів даного типу"за посиланням". Тобто, якщо прапорець встановлений тільки в колонці "При необхідності", то дані по такому об'єкту будуть вивантажуватися не повністю, а лише в тому обсязі, який необхідний для підтримки цілісності в інформаційній базі, яка завантажуватиме файл вивантаження.

При відкритті форми обробка встановлює ознаку вивантаження за посиланням всім об'єктам, що гарантує цілісну цілісність вивантаженого фрагмента інформаційної бази.

При натисканні на кнопку "Визначити об'єкти, що вивантажуються за посиланням", обробка аналізує, посилання на які дані можуть міститися в об'єктах, у яких встановлено ознаку повного вивантаження, і автоматично заповнює колонку прапорців, що індикують необхідність вивантаження за посиланням. Якщо об'єкт вже має встановлений прапорець повного вивантаження, то прапорець вивантаження за посиланням не встановлюється.

Можливі застосування

Використання цієї обробки можливе, наприклад, для створення повної або часткової резервної копіїданих, здійснення обміну даними між інформаційними базами, і навіть як допоміжний інструмент у відновленні проблемних інформаційних баз.

В організації облік може вести не тільки у рішеннях на платформі 1С:Підприємство, а й в інших програмних комплексах (Галактика, Вітрило, SAP та інше). У цьому виникають завдання інтеграції двох додатків.

Наприклад, у деякій програмі (назвемо його "X") потрібно прочитати список документів конфігурації. Про практичну користь вирішення подібного завдання говорити не будемо, зазначу лише, що найбільш зручним і універсальним способому такій ситуації буде вивантаження списку документів у форматі XML.

Обмін із використанням цього формату є універсальним, оскільки з ним можуть працювати більшість програм. Розглянемо як можна з 1С:Підприємства вивантажити список документів конфігурації у XML-файл.

Вивантаження в XML

І так перейдемо до головного. Нам потрібно обійти список метаданих документів та сформувати список у XML-файлі. На наступному скріншоті представлений алгоритм формування файлу XML:

Функція СтворитиXML() Експорт // Отримуємо ім'я тимчасового файлуШлях = ОтриматиІм'яТимчасовогоФайлу() ; // Ініціалізуємо клас "ЗаписXML"Запис = Новий ЗаписXML; // Відкриваємо тимчасовий файл для запису - 8 ") ; // Записуємо оголошення XML-файлуЗапис. ЗаписатиОголошенняXML() ; // Запис. ЗаписатиПочатокЕлементу(" ДокументиКонфігурації") ; // Перший елемент // Атрибут першого елемента з датою формування файлуЗапис. ЗаписатиАтрибут("generated", Формат(ПоточнаДата(), "ДФ = рррр-ММ-ddThh:mm:ss; ДЛФ = DT")) ; // Записуємо елемент кожному за документа конфігурації. У текст розміщуємо ім'я документа.Для кожного Док З Метадані. Документи Цикл Запис. ЗаписатиПочатокЕлементу("Документ"); Запис. ЗаписатиТекст(Док. Ім'я); Запис. ЗаписатиКінецьЕлементу() ; КінецьЦикл; // Завершуємо запис першого елементаЗапис. ЗаписатиКінецьЕлементу() ; Запис. Закрити() ; // Закриваємо файл // Отримуємо двійкові дані файлу та поміщаємо їх у тимчасове сховищеДвійковіДані = Новий ДвійковіДані(Шлях) ; Адреса = ПоміститиВчаснеСховище(ДвійковіДані,Новий УнікальнийІдентифікатор) ; Повернення Адреса; // Повертаємо адресу файлу до сховищаКінецьФункції

Кожен створений елемент має бути правильно завершений. Після виконання "ЗаписатиПочатокЕлементу()" обов'язково має бути виконаний метод "ЗаписатиКінецьЕлементу", інакше структура XML-файлу буде некоректною.

Загальний шаблон створення XML-файлів є наступною послідовністю:

// 1. Ініціалізуємо клас "ЗаписXML"Запис = Новий ЗаписXML; // 2. Відкриваємо тимчасовий файл для записуЗапис. Відкрити Файл (Шлях, "UTF-8"); // 3. Записуємо оголошення XML-файлуЗапис. ЗаписатиОголошенняXML() ; // // // 4. ++ Записуємо вміст XML-файлуЗапис. ЗаписатиПочатокЕлементу("ЕлементXML") ; Запис. ЗаписатиКінецьЕлементу() ; // - Записуємо вміст XML-файлу // 5. Закриваємо файлЗапис. Закрити() ;

За допомогою цих п'яти кроків створюється практично будь-який файл XML.

У нашому прикладі створений файл перетворюється на двійкові дані і повертається в місце виклику функції "Створити XML". Цей файл може бути записаний у файлову систему.

Приклад вивантаженого файлу Ви могли бачити на скріншоті вище.

Інший додаток

Для прикладу створив додаток на .NET Framework, щоб продемонструвати читання XML-файлу в сторонній програмі.

Програма читає створений файл та виводить документи у вигляді списку:

Можете спробувати самі, програма доступна для завантаження за посиланням наприкінці статті.

Універсальність

Формат XML використовується у більшості конфігурації обміну даними між прикладними рішеннями на платформі 1С:Підприємство. Іншим способом обміну, що часто використовується, є підключення через COM-з'єднання. XML-дозволяє виконувати обмін практично з будь-якими додатками, чим і заслужив називатися універсальним.

Файли для завантаження:

Додаток для читання XML-файлу.

Обробка формування файлу XML.

Коли підприємство постійно користується у роботі якимось програмним комплексом, то, природно, завжди виникає питання його постійної підтримки та адміністрування. Не обійтися при цьому із завданнями обміну, зберігання та відновлення даних. Розглянемо, як завантажити або вивантажити дані з 1С у форматі XML, оскільки це є важливою процедурою цієї теми.

Будуються вони так, щоб при розвантаженні можна було одержати файл формату XML, у якому будуть записані необхідні клієнту дані. При цьому одночасно із записом відбувається і контроль коректності записів, що переносяться, на предмет критичних помилок.

Таким чином, вивантаження в XML-файл (імпорт записів) з однієї інформаційної бази і подальше завантаження з XML в іншу - являють собою обмін даними у форматі XML між базами.

Така процедура, особливо при великих масивах інформації, заощаджує велику кількість ручної роботи.

Імпорт (отриманий файл) може бути використаний також як архів для відновлення у непередбачених ситуаціях (при втраті чи пошкодженні).

Таких інструментів обробок розроблено дуже багато, і вони доступні в інтернеті. Відповідальність за використання лягає на плечі (і голову) клієнта.

Але для офіційних користувачів один розробниками створений універсальний обробник «Вивантаження/завантаження даних XML».

ВАЖЛИВО. Експорт в XML в 1С і подальше завантаження в XML з 1С допустима для ідентичних конфігурацій - інакше відбудеться її пошкодження.

Універсальний обробник

Основні моменти для використання універсального розробника:

  • Імпорт файлів зберігати до закінчення перенесення записів та перевірки їхньої коректності;
  • При використанні резервних копій слід вести їх облік для сортування пошуку.

У його роботі передбачено два режими: створення файлу за збереження інформації та його читання/запис - коли відбувається імпорт.

Крім того, користувач може встановлювати як під час експорту, так і завантаження даних додаткові обмеження.

Виймаємо записи

Вивантажувати дані можна як у всій базі, і вибірково - пообъектно.

Після скачування, встановлення та відкриття оброблювача виконується наступне:

Їх відбір проводять у діалоговому вікні, що відкрилося після запуску. Для цього встановлюють галочки у переліку, який відображає об'єкти метаданих для вилучення;

  1. Налаштовуються необхідні фільтри (наприклад, за датою);
  2. Вибирається місце на дисковому просторі;
  3. Запускається сама операція.

Заливаємо записи до приймача

Першим кроком для прийняття даних до бази-приймача потрібно відкрити в ній програму-обробник.

Після того як буде вказано шлях до файлу-джерела та активовані (за потреби) прапорці налаштувань процедури - можна запускати процес кнопкою «Завантажити дані».


Тепер вам відомо, як завантажити або вивантажити дані з 1С у форматі XML для збереження даних та обміну між базами.

Пишіть у коментарях про свій досвід у цьому питанні.

Робота з XML-документами доступна безпосередньо із вбудованої мови системи 1С:Підприємство 8.

Є можливість:

  • послідовно читати та записувати xml-документи:
    • перетворювати з рядка, отриманого з тексту елемента або значення атрибуту XML, значення відповідно до зазначеного типу;
    • отримувати рядкове подання значення для розміщення тексту елемента або значення атрибута XML;
    • отримати тип даних XML, що відповідає переданому як параметр типу;
    • проводити перевірку можливості читання з XML значення зазначеного типу;
    • проводити перевірку відповідності схемі XML під час читання XML
    • робити запис значення у форматі XML;
    • повертати тип, що відповідає типу даних XML.
  • використовувати модель об'єктного доступу до даних XML-документів (Документ DOM), що відповідає наступним стандартам:
    • DOM Level 2;
    • XPath (DOM Level 3);
    • DOM Load and Save (DOM Level 3).
  • використовувати об'єктну модель схеми XML (схема XML);
  • використати канонічний XML стандарт 1.1 (Canonical XML 1.1).

Використовуючи зовнішнє з'єднання та механізми роботи з XML, можна організовувати інтеграцію з прикладними системами за прийнятими в цих системах форматами. Для цього застосовуються механізми XSL-перетворення. Наприклад, для такої інтеграції можна використовувати BizTalk сервер компанії Microsoft:

Fast Infoset

Платформа надає засоби для роботи з документами XML у бінарному форматі Fast Infoset. Технологія Fast Infoset використовує альтернативний синтаксис відображення даних XML. Це забезпечує менший обсяг файлів і вищу швидкість обробки, ніж швидкість обробки даних, записаних у звичайному форматі XML. Файл, записаний у форматі Fast Infoset, має розширення .fi або .finf.

Режими роботи

Обробка ВивантаженняЗавантаженняДанихXML82 реалізує 2 режими роботи: Вивантаження (створення файлу вивантаження зазначених користувачем даних) та Завантаження (читання файлу вивантаження, створеного однойменним режимом, і запис наявних у ньому даних). Встановлення режиму здійснюється вибором у полі Режим.

Перед запуском того чи іншого режиму (натискання кнопки Виконати) потрібно вказати ім'я файлу вивантаження або ввівши його вручну в полі Ім'я файлу, або скориставшись кнопкою вибору цього поля і стандартним діалогом вибору файлу.

У режимі завантаження є можливість редагування використання підсумків під час запису регістрів, що може вплинути на швидкість завантаження. Кнопки “Вимкнути підсумки” та “Включити підсумки” доступні при встановленому прапорі “Включити можливість редагування використання підсумків під час завантаження даних” та використовуються для ручного керування режимом використання підсумків під час завантаження даних. ** Умови застосування обробки**

Обробка може використовуватися тільки в тих випадках, коли інформаційна база, в якій здійснювалося вивантаження даних, і та, в якій дані завантажуються, є однорідними (конфігурації ідентичні, дані можуть відрізнятися), або всі об'єкти, що вивантажуються, практично повністю ідентичні за складом і типами реквізитів і табличних елементів, властивостям “провідного” об'єкта метаданих тощо. Слід зазначити, що у зв'язку із зазначеними обмеженнями обробка головним чином призначена для обміну між однорідними ІБ.

Формат файлу розвантаження відрізняється від формату файлу, створюваного при розвантаженні за планом обміну, заголовною частиною. Для вивантаження даних (елементів довідників, наборів записів регістрів тощо) обробкою використовується той самий механізм XML-серіалізації, що й розвантаженням за планами обміну, у цій частині формати файлів ідентичні.

Визначення складу вивантаження

Обробка дозволяє здійснити як повне, і часткове вивантаження даних інформаційної бази у файл. Налаштування складу даних, що вивантажуються, проводиться в діалозі шляхом установки прапорців в колонці дерева, що відображає об'єкти метаданих, дані по яких можуть бути вивантажені. Додаткова колонка прапорців, "За потреби", встановлює необхідність вивантаження об'єктів даного типу "за посиланням". Тобто, якщо прапорець встановлений тільки в колонці “При необхідності”, то дані по такому об'єкту будуть вивантажуватися не повністю, а лише в тому обсязі, який необхідний для підтримки цілісності в інформаційній базі, яка завантажуватиме файл вивантаження.

При відкритті форми обробка встановлює ознаку вивантаження за посиланням всім об'єктам, що гарантує цілісну цілісність вивантаженого фрагмента інформаційної бази.

При натисканні на кнопку "Визначити об'єкти, що вивантажуються за посиланням" обробка аналізує, посилання на які дані можуть міститися в об'єктах, у яких встановлена ​​ознака повного вивантаження, і автоматично заповнює стовпчик прапорців, що індикують необхідність вивантаження за посиланням. Якщо об'єкт вже має встановлений прапорець повного вивантаження, то прапорець вивантаження за посиланням не встановлюється.

Можливі застосування

Використання цієї обробки можливе, наприклад, для створення повної або часткової резервної копії даних, здійснення обміну даними між інформаційними базами, а також як допоміжний інструмент відновлення проблемних інформаційних баз.

Дозволить заощадити час на внесення до 1С відомостей про купівлю послуг компанії Peterhost.
Для цього необхідно завантажити в 1С XML-файл і з нього сформується документ «Надходження товарів та послуг», що містить відомості про придбані послуги. Рахунок-фактуру можна сформувати виходячи з цього документа.

Детальна інструкціяпредставлена ​​нижче.

1. Підключення зовнішньої обробки

1.1. Якщо використовується інформаційна база 1С:Підприємство 8.X з конфігурацією «Бухгалтерія підприємства 2.0», для завантаження документа у форматі CommerceML необхідно підключити зовнішню обробку ()
Це можна зробити двома способами:
1. Зберегти файл зовнішньої обробки локально на диск і відкривати через меню "Файл" → "Відкрити" перед кожним завантаженням даних у форматі CML .
2. Підключити обробку до інформаційної бази (ІБ) постійно. Тоді вона буде доступна всім (у разі роботи через мережу) з меню «Сервіс» → « Додаткові звітита обробки» → «Додаткові зовнішні обробки».

  • У меню "Сервіс" необхідно вибрати "Додаткові звіти та обробки" - "Додаткові зовнішні обробки".
  • Натиснути кнопку "Додати". Відкриється форма додавання нового елемента довідника:
  • У полі «Найменування» вказати назву обробки, наприклад, «Завантаження даних у форматі CommerceML (RU-CENTER Group)».
  • Натиснути кнопку вибору файлу та вказати шлях до файлу обробки завантаження ().
  • Натиснути кнопку «ОК» Тепер обробка підключена до інформаційної бази та знаходиться у довіднику «Додаткові зовнішні обробки», і її можна відкрити подвійним клацанням миші.

1.2. У разі використання конфігурації "Управління виробничим підприємством" (версії 10.3 і вище) та "Управління торгівлею" (версії 1.3 і вище) ця обробка вже включена і можна перейти до п.2.

2. Формування документа «Надходження товарів та послуг»

В результаті виконаних нижче дій до 1С буде занесено інформацію про послуги, придбані в компанії Peterhost.
1. Далі необхідно зберегти на свій комп'ютер XML-файл з даними документа «Надходження товарів та послуг» за потрібний період. Файл у форматі XML знаходиться у розділі Особистого кабінетупід посиланням "XML для "1С"".
Натисніть кнопку вибору праворуч від поля "Ім'я файлу даних" та вибрати цей файл (див. малюнок 1). На питання "Прочитати дані з файлу?" дайте відповідь «ОК». Файл із даними буде прочитаний обробкою.
2. Якщо обробці вдасться визначити всі відповідності елементів даних файлу з даними інформаційної бази, буде поставлено питання «Зберегти дані в інформаційну базу?». Якщо відповісти «Так», то буде створено новий документ «Надходження товарів та послуг». Перейдіть до пункту 3.
3. Якщо не всі відповідності даних будуть визначені, то буде виведено повідомлення: «Під час завантаження даних програмі не вдалося автоматично знайти об'єкти ІБ, відповідні елементам, переданим у файлі обміну…» та запропонує виконати зіставлення вручну. У цьому випадку необхідно виконати таке:

  • Натиснути "ОК". Відкриється форма зіставлення об'єктів файлу та ІБ. У ній є кілька закладок, які відповідають різним типамоб'єктів (організації, контрагенти, номенклатура тощо). Якщо дані якогось типу не були зіставлені, то на відповідних закладках будуть червоні знаки оклику (див. малюнок 2).
  • Зайти на відповідні закладки та вручну виставити відповідності елементів. Слід врахувати, що відповідності контрагентів та організацій шукаються за ІПН, а відповідності номенклатури – спочатку за артикулом, потім за найменуванням. Якщо елемента, який відповідає даним файлу, немає в ІБ, його можна створити автоматично за даними файлу, натиснувши кнопку «Створити за даними з файла».
  • При додаванні номенклатури необхідно відзначити галочкою властивість «Послуга» (див. рисунок 3). Також можна змінити повне і коротке найменування елемента номенклатури.
  • На закладці «Рахунки обліку» бажано додати рахунки обліку номенклатури, щоб під час створення документа «Надходження товарів та послуг» ці номери проставлялися автоматично. Наприклад, для послуг можуть бути встановлені наступні значення: «Рахунок обліку» – 25 (Загальновиробничі витрати) та «Рахунок обліку пред'явленого ПДВ» – 19.04 (ПДВ з придбаних послуг) (див. рис. 4).
  • Після зіставлення всіх елементів та натискання кнопки «ОК» програма запросить підтвердження на завантаження документа в ІБ, після чого створить новий документ «Надходження товарів та послуг» (див. рис. 5).

3. Проведення документа «Надходження товарів та послуг»

Щоб провести документ «Надходження товарів та послуг», необхідно відкрити його подвійним натисканням і заповнити поля, такі як «Залік авансів» (наприклад, «Автоматичний») та поля на закладці «Рахунки розрахунків» (див. рис. 6). Значення цих полів визначаються обліковою політикою вашої організації. Для документа необхідно натиснути кнопку «ОК».

4. Формування документа «Рахунок-фактура»

Після успішного створення та проведення документа «Надходження товарів та послуг» можна на підставі нього створити документ «Рахунок-фактура отриманий». Для цього необхідно натиснути на відповідне посилання в нижній лівій частині форми документа.

— усім відомі веб-сторінки, які також являють собою аналог XML із нестрогими перевірками.

Об'єкти читання/запису XML, FastInfoset, HTML розширюють можливості читання текстового файлу вбудованою обробкою тегів розмітки.

Також вони використовуються для об'єктів Побудовувач DOM/Запис DOM (див. далі) як джерела даних.

Файли XML 1С містять текстову інформацію, тобто є текстовими файлами. Об'єкти Читання XML 1С і Запис XML 1С є надбудовою, що дозволяє спростити роботу з тегами XML файлу 1С.

Об'єкти ЧитанняFastInfoset 1С та ЗаписFastInfoset 1С, ЧитанняHTML 1С та ЗаписHTML 1С повністю аналогічні ЧитанняXML1С та ЗаписXML1С і служать для роботи таким же способом з іншими форматами.

Файл XML 1С, який використовувався у прикладах

Довідник>

Довідник>

Текстове значенняРеквізит>
Довідник>
Конфігурація>

Приклад 1. Зчитування файлу XML 1С на дерево значень за допомогою ЧитанняXML 1С

//відкриваємо файл XML 1С читання за допомогою ЧитанняXML 1С
Файл = Новий Читання XML();
Файл.ВідкритиФайл("D:\СтруктураКонфігурації.xml");

//підготуємо дерево значень
//у кожної гілки XML може бути найменування, атрибути та значення
дзXML = Новий ДеревоЗначень();
дзXML.Колонки.Додати("Найменування");
дзXML.Колонки.Додати("Значення");
дзXML.Колонки.Додати("Атрибути");

//оскільки атрибутів у рядка XML може бути кілька - записуватимемо їх у таблицю значень
//Кожен атрибут має ім'я та значення
тАтрибутів = Новий ТаблицяЗначень();
тАтрибутів.Колонки.Додати("Ім'я");
тАтрибутів.Колонки.Додати("Значення");

//Рівень вкладеності допоможе нам розуміти коли потрібно додати вкладену гілку, а коли потрібно повернутися на рівень вгору
РівеньВкладення = 0;
//поточний рядок - рядок дерева, змінюватиметься зі збільшенням вкладеності
ПоточнаРядок = Невизначено;
//Читання файлу XML 1С проводиться не рядково, а по структурі, при закінченні файлу читання поверне брехня
Поки Файл.Прочитать() Цикл

// нас цікавлять три види вузлів - початок елемента, текст (значення елемента) і кінець елемента (щоб повернутися на рівень вгору)
Якщо Файл.ТипУзла = ТипУзлаXML.ПочатокЕлементу Тоді

РівеньВкладеності = РівеньВкладеності + 1;

//якщо це перший рядок, то додамо її в верх дерева і збережемо тільки найменування
Якщо ПоточнийРядок = Невизначено Тоді
ПоточнаРядок = дзXML.Рядки.Додати();
ПоточнаРядок.Найменування = Файл.Ім'я;
Продовжити;
Інакше
//Вкладені рядки
ПоточнаРядок = ПоточнаРядок.Рядок.Додати();
ПоточнаРядок.Найменування = Файл.Ім'я; //збережемо найменування

//Чи має цей елемент XML атрибути?
Якщо Файл.КількістьАтрибутів() > 0 Тоді
//якщо так - скопіюємо підготовлену порожню таблицю для збереження атрибутів
тАтрибутиВузла = тАтрибутів.Скопіювати();
//цикл за кількістю атрибутів цього елемента
Для Сч = 0 за Файл.КількістьАтрибутів()-1 Цикл
//для кожного атрибуту запам'ятаємо ім'я та значення
Рядок = тАтрибутиВузла.Додати();
Рядок.Ім'я = Файл.ИмяАтрибута(Сч);
Рядок.Значення = Файл.ЗначенняАтрибута(Сч);
КінецьЦикл;
//збережемо таблицю атрибутів елемента в поточний рядок
ПоточнаРядок.Атрибути = тАтрибутиВузла;
КінецьЯкщо;
КінецьЯкщо;

ІнакшеЯкщо Файл.ТипУзла = ТипУзлаXML.КонецЭлемента Тоді
//на початку елемента збільшуємо рівень вкладеності, наприкінці елемента зменшуємо
РівеньВкладеності = РівеньВкладеності - 1;
//Повертаємо поточний рядок на рівень вгору
ПоточнаРядок = ПоточнаРядок.Батько;

ІнакшеЯкщо Файл.ТипУзла = ТипУзлаXML.Текст Тоді
//якщо елемент має значення - просто збережемо його
ПоточнаРядок.Значення = Файл.Значення;

КінецьЯкщо;

КінецьЦикл;

Файл.Закрити();

Приклад 2. Запис файлу 1С XML за допомогою об'єкту ЗаписXML 1С

//Створюємо файл ЗаписXML 1С
Файл = Новий записXML();
Файл.ВідкритиФайл("D:\СтруктураКонфігурації.xml", "UTF-8");
Файл.ЗаписатиПочатокЕлементу("Конфігурація");

//за метаданими обходимо всі довідники (докладніше див. "Робота з метаданими")
Довідник з Метадані.Довідники Цикл

//ЗаписатиПочатокЕлементу - відкриває нову [підлеглу] гілку
Файл.ЗаписатиПочатокЕлементу("Довідник");
//ЗаписатиАтрибут - записує атрибут у відкриту раніше гілку
Файл.ЗаписатиАтрибут("Ім'я", Довідник.Ім'я);
Файл.ЗаписатиАтрибут("Синонім", Довідник.Синонім);

//за метаданими обходимо всі реквізити довідника
Для кожного Реквізит із Довідник.Реквізити Цикл




КінецьЦикл;

//за метаданими обходимо всі табличні частини довідника
Для кожного ТЧ з Довідник.
Файл.ЗаписатиПочатокЕлементу("ТабличнаЧастина");
Файл.ЗаписатиАтрибут("Ім'я", ТЧ.Ім'я);
Файл.ЗаписатиАтрибут("Синонім", ТЧ.Сінонім);

Для кожного Реквізит із ТЧ.Реквізити Цикл
Файл.ЗаписатьПочатокЕлементу("Реквізит");
Файл.ЗаписатиАтрибут("Ім'я", Реквізит.Ім'я);
Файл.ЗаписатиАтрибут("Синонім", Реквізит.Сінонім);
Файл.ЗаписатиКінецьЕлементу();
КінецьЦикл;

Файл.ЗаписатиКінецьЕлементу();
КінецьЦикл;

//ЗаписатиКінецьЕлементу - "закриває" відкриту раніше за допомогою ЗаписатиПочатокЕлементу гілку
Файл.ЗаписатиКінецьЕлементу();
КінецьЦикл;

Файл.ЗаписатиКінецьЕлементу();
Файл.Закрити();

Розповісти друзям