Как начать работать с 1С:Предприятие.Элемент
Размер шрифта
Цвет фона и шрифта
Изображения
Озвучивание текста
Обычная версия сайта
КРОН


Разрабатываем на 1С и создаем собственные продукты


8(800) 551-65-10
8(800) 551-65-10 Основной
8(499) 113-10-60 Отдел кадров
8(495) 266-65-10 Отдел продаж
E-mail
sales@i-cron.ru
Адрес
Москва г, пр-кт Вернадского, д. 94, к. 3, офис 6, помещ. XIX
Режим работы
Пн. – Пт.: с 9:00 до 18:00
Компания
  • О компании
  • Сотрудники
  • Отзывы
  • Вакансии
  • Реквизиты
  • Нам доверяют
Услуги
  • Специалисты на full-time
    • Аналитики 1С
    • Консультанты 1С
    • Разработчики 1С
  • Позадачная разработка
    • Fixed Price
    • Time&Material
  • Проектная разработка
  • Разработка под ключ
    • Разработка корпоративного сайта
  • Услуги 1С
    • Доработка 1С
    • Импортозамещение зарубежного ПО на 1С
    • Настройка 1С
    • Обновление 1С
    • Внедрение 1С
    • Сопровождение 1С
Блог
Информация
  • Вопрос-ответ
Контакты
Карьера в Крон
КРОН


Разрабатываем на 1С и создаем собственные продукты


8(800) 551-65-10
8(800) 551-65-10 Основной
8(499) 113-10-60 Отдел кадров
8(495) 266-65-10 Отдел продаж
E-mail
sales@i-cron.ru
Адрес
Москва г, пр-кт Вернадского, д. 94, к. 3, офис 6, помещ. XIX
Режим работы
Пн. – Пт.: с 9:00 до 18:00
Компания
  • О компании
  • Сотрудники
  • Отзывы
  • Вакансии
  • Реквизиты
  • Нам доверяют
Услуги
  • Специалисты на full-time
    Специалисты на full-time
    • Аналитики 1С      
      • Бизнес-аналитик 1С
      • Системный аналитик 1С
    • Консультанты 1С      
      • Консультант 1С (управленческий и бухгалтерский учет)
      • Консультант 1С ERP
      • Консультант 1С Документооборот
      • Консультант 1С УХ
    • Разработчики 1С      
      • Разработчик 1С (junior-middle)
      • Разработчик 1С (middle)
      • Разработчик 1С (senior)
  • Позадачная разработка
    Позадачная разработка
    • Fixed Price
    • Time&Material
  • Проектная разработка
    Проектная разработка
  • Разработка под ключ
    Разработка под ключ
    • Разработка корпоративного сайта
  • Услуги 1С
    Услуги 1С
    • Доработка 1С
    • Импортозамещение зарубежного ПО на 1С
    • Настройка 1С
    • Обновление 1С
    • Внедрение 1С
    • Сопровождение 1С
Блог
Информация
  • Вопрос-ответ
Контакты
Карьера в Крон
    КРОН
    Компания
    • О компании
    • Сотрудники
    • Отзывы
    • Вакансии
    • Реквизиты
    • Нам доверяют
    Услуги
    • Специалисты на full-time
      Специалисты на full-time
      • Аналитики 1С      
        • Бизнес-аналитик 1С
        • Системный аналитик 1С
      • Консультанты 1С      
        • Консультант 1С (управленческий и бухгалтерский учет)
        • Консультант 1С ERP
        • Консультант 1С Документооборот
        • Консультант 1С УХ
      • Разработчики 1С      
        • Разработчик 1С (junior-middle)
        • Разработчик 1С (middle)
        • Разработчик 1С (senior)
    • Позадачная разработка
      Позадачная разработка
      • Fixed Price
      • Time&Material
    • Проектная разработка
      Проектная разработка
    • Разработка под ключ
      Разработка под ключ
      • Разработка корпоративного сайта
    • Услуги 1С
      Услуги 1С
      • Доработка 1С
      • Импортозамещение зарубежного ПО на 1С
      • Настройка 1С
      • Обновление 1С
      • Внедрение 1С
      • Сопровождение 1С
    Блог
    Информация
    • Вопрос-ответ
    Контакты
    Карьера в Крон
      8(800) 551-65-10 Основной
      8(499) 113-10-60 Отдел кадров
      8(495) 266-65-10 Отдел продаж
      E-mail
      sales@i-cron.ru
      Адрес
      Москва г, пр-кт Вернадского, д. 94, к. 3, офис 6, помещ. XIX
      Режим работы
      Пн. – Пт.: с 9:00 до 18:00
      КРОН
      Телефоны
      8(800) 551-65-10 Основной
      8(499) 113-10-60 Отдел кадров
      8(495) 266-65-10 Отдел продаж
      E-mail
      sales@i-cron.ru
      Адрес
      Москва г, пр-кт Вернадского, д. 94, к. 3, офис 6, помещ. XIX
      Режим работы
      Пн. – Пт.: с 9:00 до 18:00
      КРОН
      • Компания
        • Компания
        • О компании
        • Сотрудники
        • Отзывы
        • Вакансии
        • Реквизиты
        • Нам доверяют
      • Услуги
        • Услуги
        • Специалисты на full-time
          • Специалисты на full-time
          • Аналитики 1С
            • Аналитики 1С
            • Бизнес-аналитик 1С
            • Системный аналитик 1С
          • Консультанты 1С
            • Консультанты 1С
            • Консультант 1С (управленческий и бухгалтерский учет)
            • Консультант 1С ERP
            • Консультант 1С Документооборот
            • Консультант 1С УХ
          • Разработчики 1С
            • Разработчики 1С
            • Разработчик 1С (junior-middle)
            • Разработчик 1С (middle)
            • Разработчик 1С (senior)
        • Позадачная разработка
          • Позадачная разработка
          • Fixed Price
          • Time&Material
        • Проектная разработка
        • Разработка под ключ
          • Разработка под ключ
          • Разработка корпоративного сайта
        • Услуги 1С
          • Услуги 1С
          • Доработка 1С
          • Импортозамещение зарубежного ПО на 1С
          • Настройка 1С
          • Обновление 1С
          • Внедрение 1С
          • Сопровождение 1С
      • Блог
      • Информация
        • Информация
        • Вопрос-ответ
      • Контакты
      • Карьера в Крон
      • Кабинет
      • 8(800) 551-65-10 Основной
        • Телефоны
        • 8(800) 551-65-10 Основной
        • 8(499) 113-10-60 Отдел кадров
        • 8(495) 266-65-10 Отдел продаж
      • Москва г, пр-кт Вернадского, д. 94, к. 3, офис 6, помещ. XIX
      • sales@i-cron.ru
      • Пн. – Пт.: с 9:00 до 18:00
      Обучение 1С

      Как начать работать с 1С:Предприятие.Элемент

      Подробнее
      Обучение 1С
      2 апреля 2025

      Примечание: при написании статьи использовалась технология 1С:Предприятие.Элемент 6.0.2

      «1С:Предприятие.Элемент»  — это современная технология разработки, представленная фирмой 1С в начале 2024 года. Она обеспечивает возможность создания веб- и мобильных приложений непосредственно в браузере, без необходимости установки дополнительного программного обеспечения. Технология активно развивается, и на момент написания статьи актуальной является версия 6.1.1-2. Однако, несмотря на динамичное обновление, объем доступной информации для разработчиков в открытых источниках остается ограниченным..

      Данная статья позволяет немного окунуться в синтаксис языка «1С:Предприятие.Элемент» на примере решения типовой для программиста 1С задачи: выгрузка/загрузка данных в форматах .xml и .json.

      Для тех, кто интересуется разработкой «1С:Предприятие.Элемент» (далее «Элемент»), не будет секретом, что локальной версии для разработки пока что нет, но компания 1С предоставила возможность запросить доступ к песочнице на сайте 1cmycloud.com, так что все нижеописанное вполне можно попробовать руками.

      - Цель данной статьи продемонстрировать работу со встроенным языком - в рамках статьи рассмотрим следующее:
      1. В проект добавлена подсистема «РаботаCXMLИJSON» 
      2. В подсистему добавлены два справочника: «ВидыВыгрузки» и «ПримерВыгрузкиСправочника». 
      3. Справочник «Виды выгрузки» без реквизитов, добавлены два элемента: «XML» и «JSON». 
      4. В справочник «ПримерВыгрузкиСправочника» добавлены два реквизита: «ДатаВыгрузки» - ДатаВремя и «ВидВыгрузки» - ВидыВыгрузки.Ссылка
      5. Для справочника «ПримерВыгрузкиСправочника» добавлена форма, в которой добавлена обычная команда «Выгрузить в файл» и элемент «ВыборXMLJSON» (тип ВыборФайла). 

      Для реализации простого примера, этой информации достаточно, приступим:
      2.Форма справочника.png

      XML

      Для команды «Выгрузить в файл» опишем обработчик, он указывается в модуле формы справочника, точно также как в платформе
      3. Листинг кода.png
      Вариант выгрузки зависит от реквизита справочника «ВидВыгрузки», поэтому сверяем реквизит текущего объекта со значением «XML», если это так, то формируем файл xml, иначе формируем файл json. Обращение к реквизитам текущего объекта доступно также как в управляемых формах платформы через Объект. 

      Отличием же является то, что равенство в Элементе проверяется конструкцией «==», а символ «=», это операция присваивания. Вышесказанное справедливо и для запроса.

      Более подробно стоит остановиться на методе получения ссылки на вид выгрузки по наименованию. 
      Аннотации окружения перечисляются через пробел, порядок не важен – можно написать как:
      «@НаСервере @ДоступноСКлиента», так и «@ДоступноСКлиента @НаСервере».

      Так как запрос выполняется на стороне сервера, указываем «@НаСервере», так как, нам необходимо вызвать метод с клиента - «@ДоступноСКлиента». 
      По умолчанию вызов не контекстный, чтобы передать контекст выполнения нужно добавить аннотацию «Контекстный», для безконтекстных вызовов доступных с клиента, следует перед методом указывать конструкцию «статический».

       В скобках метода указываются параметры, в данном примере указано имя параметра и тип – Строка. 

      Функция от процедуры отличается указанием типа возвращаемого значения, в данном случае у нас функция, которая ожидает возврат переменной типа ВидыВыгрузки. Ссылка, поэтому указание конструкции «возврат» обязательно. 

      Кстати, проверка типа возвращаемой переменной ожидаемому типу функции выполняется автоматически 一 проект просто не получится опубликовать
      Далее в функции определяется переменная «Запрос» посредством конструкции «знч» 一 это означает, что переменная доступна только для чтения.
      Текст запроса в данном примере аналогичен запросу из платформы, кроме проверки на равенство и подстановки параметра.
      Указания в тексте запроса «%ИмяПеременной» достаточно, чтобы Элемент автоматом подставил в запрос параметр, присвоив значение из одноименной переменной.

      Так как в запросе ожидается одна запись, то используется конструкция «Запрос.Выполнить().ЕдинственныйИлиУмолчание()» которая возвращает строку результата запроса, и из которой мы возьмем ссылку на вид выгрузки.

      Определившись что текущий вариант выгрузки «XML», опишем алгоритм выгрузки.
      Самое время продемонстрировать, что собственно будем выгружать 一 файл будет формироваться на основе данных самого справочника.
      4. Данные для выгрузки.png

      Метод «НачатьВыгрузку» типа «ВыгрузкаФайлов» ожидает на вход ссылку на двоичные данные - это ссылка на Элемент в хранилище двоичных данных используемое Элементом, и данное хранилище мы будем использовать для передачи файла с сервера на клиент, соответственно метод «ВыгрузитьВXML» должен вернуть ссылку на эти самые двоичные данные. 

      Опишем функцию:

      5. Листинг кода.png

      Так как нам нужны данные объекта для формирования файла, указываем аннотацию «Контекстный» и не указываем «статический». ЗаписьXML - это объект, который создается на основе объекта «ПотокЗаписи» - поток записи двоичных данных. Для потока записи конструктора не существует, поток может быть получен например как результат метода «ОткрытьПотокЗаписи()» объекта Файл, или же из тела сообщения интеграции 1С:Шина, но если запись XML нужно сформировать без какого либо источника, то существует тип «ВременныйПотокЗаписи()».

      Переменная данного типа будет «Закрываемая», что означает использование системных ресурсов, и для того чтобы переменная не удерживала память ее нужно закрывать. Объявив такую переменную через «исп» мы обеспечим закрытие переменной при завершении метода. Создав запись XML на основе временного потока, выполняем запись данных справочника в поток.

      Элемент позволяет выполнять вызов методов объекта через точку, не обращаясь к самой переменной метода, т.е. можно написать как:

      «ЗаписьXML.ЗаписатьНачалоДокумента()
      ЗаписьXML.ЗаписатьКонецДокумента()»

      так и:

      «ЗаписьXML.ЗаписатьНачалоДокумента()

           . ЗаписатьКонецДокумента()»

      Далее обращаемся к методам работы с хранилищем двоичных данных, а именно «ОбъектноеХранилище.ЗагрузитьИзБайт», куда на вход нужно передать тип Байты – переменная типа ВременныйПотокЗаписи позволяет открыть поток для чтения и получить из него данные в виде байт. Как результат выполнения метода «ЗагрузитьИзБайт()», получаем ссылку на двоичные данные в хранилище, эту ссылку возможно передать на клиент. 

      Осталось пояснить что означает строчка «знч ВременныеФайлы = новый ДвоичныйОбъект.Свойства ("temp") .Временные()». 
      Метод «ЗагрузитьИзБайт()» вторым параметром принимает на вход свойства загружаемого объекта, данные свойства и инициализируются вышеуказанной конструкцией, на основе этих свойств настраивается как объекты распределяются по различным хранилищам.

      После публикации проекта и выполнения команды получаем результат:
      6. Сформированный файл XML.png

      Для демонстрации примера по загрузке данных из XML воспользуюсь этим же файлом. Для выбора файла на форме справочника используется элемент типа «ВыборФайлов» для которого описан обработчик «ПриИзменении».
      7.Листинг кода.png

      В свойствах элемента формы указано, что множественный выбор запрещен, поэтому выбранный файл будет единственный в коллекции.

      Далее используется метод «ЗагрузкаФайлов.НачатьЗагрузку()» куда передается выбранный файл, метод «ЗагрузкаФайла.ПолучитьРезультат()» позволяет получить ссылку на двоичные данные на основе выбранного файла. 

      Результатом выполнения алгоритма будет соответствие, где ключом будет наименование реквизита справочника, а значением значение данного реквизита. 

      Для того чтобы было куда присвоить результат выполнения алгоритма, нужно объявить соответствие доступное не только для чтения/ записи, такая переменная объявляется через «пер». В конце обработчика используется объект «Уведомление» который позволяет отобразить информацию пользователю.

      Так как мы говорим о XML, опишем листинг функции «ПрочитатьXML».

      8 Листинг кода.png

      Для создания объекта ЧтениеXML потребуется ПотокЧтения по аналогии с ПотокЗаписи. Так как метод передается ссылка на двоичные данные, то применим метод «Загрузить()» для получения объекта, который в свою очередь позволяет открыть поток для чтения двоичных данных. 

      Цикл в Элементе описывается более простой конструкцией чем в платформе, например не нужно указывать конструкцию «КонецЦикла». 

      Важный момент – если сперва вызвать метод «ПрочитатьСодержимоеКакСтроку()», то позиционирование перейдет сразу на конец элемента, и прочесть атрибуты уже не получится, поэтому данный метод вызывается после чтения атрибутов. 

      Элемент обладает развитой синтаксической подсказкой, поэтому достаточно просто понять какой метод применить в той или иной ситуации.

      9. Пример синтаксической подсказки.png

      10. Результат чтения файла XML.png

      JSON

      Комментариев к листингу кода формирования файла JSON потребуется гораздо меньше, поскольку основные нюансы описаны в примере с XML. Источником для выгрузки выступает второй элемент справочника «ПримерВыгрузкиСправочника»

       Данные для выгрузки JSON.png 12. Листинг кода.png

      Переменная типа «ЗаписьJson» в данном примере объявляется также основании временного потока записи, для примера указаны настройки формирования JSON. После записи данных, точно также, как и с XML формируется ссылка на двоичный объект, в хранилище который мы можем передать на клиент.
      Хотелось бы привести еще один пример формирования файла JSON – вместо использования объекта «ЗаписьJson» есть возможность записи объекта через метод «СериализацияJson.ЗаписатьОбъект()». 

      13 Второй способ записи JSON.png
      Резюмируя

      В статье рассмотрены ключевые принципы работы с «1С:Предприятие.Элемент», включая выгрузку и загрузку данных в XML и JSON, особенности синтаксиса встроенного языка и работу с двоичными данными.

      Основные тезисы, которые мы выделяем:

      ✔️ «1С:Предприятие.Элемент» позволяет разрабатывать веб- и мобильные приложения прямо в браузере.
       
      ✔️Локальной версии пока нет, но доступ к песочнице можно получить через 1cmycloud.com.

      ✔️ Работа с реквизитами, объектами и хранилищем двоичных данных схожа с платформой 1С:Предприятие, но имеет ряд особенностей.

      ✔️ Выгрузка данных в XML и JSON выполняется через соответствующие объекты и методы, включая ЗаписьXML, ЗаписьJson и СериализацияJson.

      ✔️ Загрузка данных требует корректной обработки потока чтения и использования методов ЗагрузкаФайлов.НачатьЗагрузку() и ПолучитьРезультат().

      ✔️ Особое внимание стоит уделить аннотациям окружения и контекстному выполнению кода, которые влияют на доступность методов и выполнение запросов.

      Эти знания помогут разработчикам быстрее освоить «1С:Предприятие.Элемент» и применять его для решения практических задач

      Автор статьи:
      Попов Алексей
      Ведущий разработчик 1С

      • Комментарии
      Загрузка комментариев...
      Назад к списку
      • IТ-услуги 7
      • Импортозамещение 1
      • Настройка и доработка 1С 1
      • Обучение 1С 4
      • Роли на проекте 4
      Мы в телеграм @cronpartners, новости из мира IT, 1C, актуальные вакансии Подписаться
      Компания
      О компании
      Сотрудники
      Отзывы
      Вакансии
      Реквизиты
      Нам доверяют
      Услуги
      Специалисты на full-time
      Позадачная разработка
      Проектная разработка
      Разработка под ключ
      Услуги 1С
      8(800) 551-65-10
      8(800) 551-65-10 Основной
      8(499) 113-10-60 Отдел кадров
      8(495) 266-65-10 Отдел продаж
      E-mail
      sales@i-cron.ru
      Адрес
      Москва г, пр-кт Вернадского, д. 94, к. 3, офис 6, помещ. XIX
      Режим работы
      Пн. – Пт.: с 9:00 до 18:00
      sales@i-cron.ru
      Москва г, пр-кт Вернадского, д. 94, к. 3, офис 6, помещ. XIX
      © 2025 ООО КРОН
      Политика конфиденциальности
      Карта сайта