Разное

Получить картинку по id элемента битрикс: Как получить путь к изображению в 1C-Битрикс

Содержание

Формат XML-файла импорта в Битриксе

 

В предыдущей статье на тему переноса контента в Битрикс мы рассказали об основных задачах, которые необходимо решать для массового импорта данных. Также отметили, почему XML файл посчитан нашей студией наиболее пригодным для осуществления импорта данных в Битрикс.

В этой статье мы вкратце осветим тему построения XML структуры файла импорта.

Что должен содержать XML файл

Укрупнённо XML файл импорта-экспорта имеет следующую структуру:

<КоммерческаяИнформация ВерсияСхемы="2.021« ДатаФормирования="01.01.2001T12:00:00«>
   <Классификатор>
       <Ид>42</Ид>
       <Наименование>Наименование</Наименование>
       <! — 
           Описание свойств элементов и структуры инфоблока,
           т. е. какие данные инфоблок должен (может) содержать, например:
           — активность элемента
           — картинка „подробно“
           — свойства, которые дополнительно созданы для инфоблока
           — разделы (папки)
       -->
   </Классификатор>
   <Каталог>
       <Ид>42</Ид>
       <ИдКлассификатора>42</ИдКлассификатора>
       <! — 
           Ещё разные элементы, описывающие инфоблок, например
           — код инфоблока альфанумериками    
           — нужно ли индексировать элементы
           — и т.  п.
       -->
       <Товары>
           <Товар>
               <! — 
                   Самый главный XML элемент, содержит данные
                   для импортируемого элемента инфоблока
               -->
           </Товар>
       </Товары>
   </Каталог>
</КоммерческаяИнформация>

Как видно, файл содержит два основных раздела — <Классификатор/> и <Каталог/>. Несколько слов о каждом из них.

<Классификатор/>

Предназначен для описания, ну скажем так, схемы инфоблока (примерно как схема БД), т. е. описывает поля и свойства, которые у инфоблока имеются (или должны иметься). Кстати, с точки зрения импорта, тем более если мы импортируем в уже существующий инфоблок, это очень важный раздел, так как в случае его отсутствия Битрикс любезно допишет в инфоблок свойства, которые, как он считает, должны быть там по умолчанию — Цена, ШтрихКодТовара, Изгтовитель, Вес и еще много подобных. Удалять их придётся вручную.

Также этот раздел может содержать разделы (папки), к которым можно привязывать элементы. Если указанных в файле разделов нет, они будут созданы.

<Каталог/>

Предполагает наличие дополнительной информации об инфоблоке, такой как буквенно-цифровой код инфоблока (например, ‘news’), код сортировки инфоблока в списке, флаг разрешения индексации элементов и прочие.

Самым важным элементом в каталоге является, конечно, элемент <Товары/>, который содержит те данные, которые мы собираемся импортировать, в виде <Товар/>-ов.

Идентификация

В Битриксе для инфоблоков и их содержимого существует понятие „внешних“ кодов (XML_ID или EXTERNAL_ID), которые нужны для связи с внешним миром. То есть если для целей импорта надо каким-то образом идентифицировать инфоблок, его раздел, или его элемент, надо применять такой внешний код. В интернете  этот вопрос поднимался много раз (здесь, здесь, здесь, и далее по списку google).

Соответственно, всё, что содержит в себе файл импорта, будет записано в тот инфоблок, который:

  • имеет внешний код, равный <Ид> внутри <Классификатор/>-а;
  • имеет внешний код, равный <Ид> и <ИдКлассификатора> внутри <Каталог/>-а.

Обращаем внимание, что внутри <Каталог/>-а должно быть именно два различных элемента (с одинаковым значением). В документации по формату (пусть это слишком громкое название, но она есть, оказывается — доступна здесь) оба этих элемента упомянуты как несущие идентичную семантическую нагрузку („Идентификатор каталога.“). Почему это так и какая логика предполагалась разработчиками формата — неизвестно, и, судя по всему, навсегда останется тайной.

Во время импорта при добавлении элемента инфоблока для него (элемента) будет создан обычный уникальный ID (тот самый, к которому все привыкли: $arResult[„ELEMENT_ID»]), и также ему будет присвоен внешний код (XML_ID), значением которого будет установлено то, что содержится в файле импорта в элементе <Ид> соответствующего <Товар>-а. Учитывая наличие такого кода, при очередном импорте, если в файле импорта найдётся <Товар> с таким <Ид>, что в Битриксе в инфоблоке, куда осуществляется импорт, уже есть элемент с аналогичным XML_ID, такой элемент будет обновлён (а не добавлен новый).

Отметим также, что теоретические размышления наводят на мысль, что существует гипотетическая возможность в одном файле импорта разместить несколько <Классификатор/>-ов и несколько <Каталог/>-ов. На практике таких экспериментов нами пока поставлено не было, упоминаний в интернете об этом мы тоже не встречали. Если кто-то эти опыты поставит раньше нас — будем очень благодарны и обновим данную статью.

Импортируемые файлы

Файлы, которые должны быть импортированы в инфоблок как свойства элементов, при импорте должны лежать где-то таким образом, чтобы в файле импорта до них был прописан путь относительно файла импорта. На примере картинки «подробно» (DETAIL_PICTURE):

имеется news.xml

…
<Товар>
   <Ид>42</Ид>
   <Наименование>Название новости</Наименование>
   <Картинка>news_files/picture. png</Картинка>
   …
</Товар>
…

тогда должно быть расположение файлов:

/uploads/
   news.xml
   news_files/
       picture.png
 

Свойства элементов

Все импортируемые данные каждого элемента должны быть описаны в дочерних элементах каждого <Товар/>-а. Они могут быть как простыми элементами, вроде:

…
<Товар>
   <Ид>42</Ид>
   <Наименование>Название новости</Наименование>
   <Картинка>news_files/picture.png</Картинка>
   …
</Товар>
…

так и иметь более сложную структуру, как, например:

…
<Товар>
   …
   <ЗначенияСвойств>
       <ЗначенияСвойства>
           <Ид>CML2_ACTIVE</Ид>
           <Значение>true</Значение>
       </ЗначенияСвойства>
       <ЗначенияСвойства>
           <Ид>CML2_CODE</Ид>
           <Значение>peredaca-predmetov-vremen-vov</Значение>
       </ЗначенияСвойства>
   </ЗначенияСвойств>
   …
</Товар>
…

множественные свойства имеют такую форму:

…
<Товар>
   …
   <ЗначенияСвойств>
       <ЗначенияСвойства>
           <Ид>142</Ид>
           <Значение>Значение 1</Значение>
           <ЗначениеСвойства>
               <Значение>Значение 1</Значение>
               <Описание/>
           </ЗначениеСвойства>
           <Значение>Значение 2</Значение>
           <ЗначениеСвойства>
               <Значение>Значение 2</Значение>
               <Описание/>
           </ЗначениеСвойства>
       </ЗначенияСвойства>
   </ЗначенияСвойств>
   …
</Товар>
…

А так выглядит структура некоторых свойств, значения которых, по логике Битрикса, не должны быть описаны прямым образом в xml структуре, но должны быть представлены в виде сериализованных данных:

…
<Товар>
   …
   <ЗначенияСвойств>
       <ЗначенияСвойства>
           <Ид>108</Ид>
           <Значение>s: 13:"simple string«;</Значение>
           <ЗначениеСвойства>
               <Значение>s: 13:"simple string«;</Значение>
               <Описание/>
               <Сериализовано>true</Сериализовано>
           </ЗначениеСвойства>
       </ЗначенияСвойства>
   </ЗначенияСвойств>
   …
</Товар>
…

Обратите внимание: <Значение/>-я содержат строку — результат PHP-сериализации строчного литерала ‘simple string’ вместо строки, и <ЗначениеСвойства> содержит элемент <Сериализовано/> со значением true. В такой форме должны быть представлены данные для свойства с типом „Видео“, например: там будет содержаться сериализованный ассоциативный массив всех характеристик видеофайла (путь к файлу, высота и ширина, название,  продолжительность, и прочие).

Таким образом, при формировании файла импорта необходимо понимать, для какого именно свойства предназначены данные, и уже исходя из этого генерировать нужную структуру.

Ошибки импорта

Если во время импорта произойдут какие-либо ошибки, Битрикс обязательно об этом сообщит. На этом любезности и удобства заканчиваются, так как не будет не только указаний о том, какие ошибки произошли, но также умалчивается, при импорте каких именно элементов они случились (представьте ситуацию — импорт на 4 тысячи элементов, и 2 ошибки в конце, видимо, предлагается беглым осмотром инфоблока в админке установить, что не импортировалось). В данном случае реальный способ выявить ошибочные — провести экспорт из инфоблока и сопоставить фактически попавшие в инфоблок элементы с исходным файлом импорта.

Ошибки из-за ЧПУ кодов

Как мы уже отмечали в предыдущей статье, Битрикс не генерирует ЧПУ коды во время импорта (даже если в настройках полей инфоблока установлена опция „Транслитерировать из названия при добавлении элемента.“ — вероятно, по мнению Битрикса, на импорт через XML это не распространяется). Соответственно, если кроме этого стоит галочка обязательности кода, то если импортировать элемент без кода, это вызовет ошибку, а если галка обязательности не указана, то проимпортируется с пустым кодом. Если код вам нужен, то оба сценария вас не устраивают. Технический момент: если вы импортируете в инфоблок, где уже есть элементы, необходимо позаботиться о том, чтобы ЧПУ коды импортируемых элементов не дублировали уже имеющиеся.

Ошибки из-за файлов

Если импортируются элементы с изображениями, недоступность файла изображения по указанному пути также вызывает ошибку. Поэтому в идеале после подготовки пакета файлов перед импортом следует проверять реальную физическую доступность всех файлов, указанных в xml-файле импорта.

Ошибки формата

XML файл импорта должен иметь корректную структуру, в противном случае произойдет либо ошибка импорта элемента целиком, либо не будет импортировано конкретное свойство. Оба сценария нас не устраивают. Если есть сомнения по вопросу формата, всегда можно вручную наполнить инфоблок данными, провести экспорт, изучить структуру полученного файла.

Обязательные данные

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

Бэкап перед импортом?

Во избежание проблем, тем более, если нет уверенности, что сформированный вами пакет импорта не приведёт к непредсказуемым результатам, сделайте архивную копию данных перед началом импорта. Идеальным подходом (в экосистеме Битрикса) делать это всегда.

Битрикс. Галерея для элемента инфоблока. Категория: Web-разработка • CMS Битрикс


Задача: добавить возможность прикреплять несколько изображений для каждой статьи блога. Добавим новое пользовательское свойство для инфоблока «Блог». Тип свойства — «Файл», множественное (можно добавить несколько файлов), код — GALLERY, в настройках свойства указываем тип загружаемых файлов — «Изображения».




Теперь добавим для какой-нибудь статьи блога несколько изображений:



За показ статей блога отвечает комплексный компонент «Новости». Распечатаем массив $arResult, чтобы увидеть доступные переменные:

<?php
/*
 * Файл local/templates/voguis_blog/components/bitrix/news/blog/bitrix/news.detail/.default/template.php
 */
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
$this->setFrameMode(true);
// массив доступных переменных
debug($arResult);
?>

<img src="<?=$arResult['DETAIL_PICTURE']['SRC'];?>" alt="<?=$arResult['DETAIL_PICTURE']['ALT'];?>">

<?= $arResult['DETAIL_TEXT']; /* текст статьи */ ?>

<div>
    <ul>
        <li><small> </small><span><?= $arResult['DISPLAY_ACTIVE_FROM']; ?></span></li>
        <li><a href="#"><small> </small><span><?= $arResult['PROPERTIES']['AUTHOR']['VALUE']; ?></span></a></li>
        <li><a href="#"><small> </small><span>Нет комментариев</span></a></li>
        <li><a href="#"><small> </small><span>Количество просмотров: <?=$arResult['SHOW_COUNTER'] ? $arResult['SHOW_COUNTER'] : 0;?></span></a></li>
        <li><a href="<?= $arResult['DETAIL_PAGE_URL']; ?>"><small> </small><span>Постоянная ссылка</span></a></li>
    </ul>
</div>
Array
(
    [SHOW_COUNTER] => 5
    [ID] => 8
    [NAME] => Восьмая статья блога
    [IBLOCK_ID] => 1
    [IBLOCK_SECTION_ID] => 4
    . ....
    [PROPERTIES] => Array
        (
            [AUTHOR] => Array(.....)
            [SHOW_MAIN] => Array(.....)
            [GALLERY] => Array
                (
                    [ID] => 5
                    [TIMESTAMP_X] => 2018-07-14 11:32:52
                    [IBLOCK_ID] => 1
                    [NAME] => Галерея
                    [ACTIVE] => Y
                    [SORT] => 500
                    [CODE] => GALLERY
                    .....
                    [VALUE] => Array
                        (
                            [0] => 30
                            [1] => 31
                            [2] => 32
                            [3] => 33
                            [4] => 34
                            [5] => 35
                        )
                    .....
                )
        )
    [DISPLAY_PROPERTIES] => Array(.....)
    [IBLOCK] => Array(.....)
    [SECTION] => Array(.....)
    [SECTION_URL] => 
    [META_TAGS] => Array(. ....)
)


У нас есть идентификаторы файлов изображений, нам надо получить пути к файлам с помощью метода CFile::GetPath(). И создать миниатюры изображений с помощью метода CFile::ResizeImageGet():

<?php
/*
 * Файл local/templates/voguis_blog/components/bitrix/news/blog/bitrix/news.detail/.default/template.php
 */
if (!defined("B_PROLOG_INCLUDED") || B_PROLOG_INCLUDED!==true) die();
$this->setFrameMode(true);
?>

<img src="<?=$arResult['DETAIL_PICTURE']['SRC'];?>" alt="<?=$arResult['DETAIL_PICTURE']['ALT'];?>">

<?= $arResult['DETAIL_TEXT']; /* текст статьи */ ?>

<?php if (!empty($arResult['PROPERTIES']['GALLERY']['VALUE'])): /* галерея изображений к статье блога */ ?>
    <div>
    <?php foreach ($arResult['PROPERTIES']['GALLERY']['VALUE'] as $item): ?>
        <?php
        // путь к изображению от корня сайта
        $image = CFile::GetPath($item);
        // создаем превьюшку изображения
        $thumb = CFile::ResizeImageGet(
            $item,
            array('width' => 200, 'height' => 100)
        );
        ?>
        <a href="<?= $image; ?>"><img src="<?= $thumb['src']; ?>" alt="" /></a>
    <?php endforeach; ?>
    </div>
<?php endif; ?>

<div>
    <ul>
        <li><small> </small><span><?= $arResult['DISPLAY_ACTIVE_FROM']; ?></span></li>
        <li><a href="#"><small> </small><span><?= $arResult['PROPERTIES']['AUTHOR']['VALUE']; ?></span></a></li>
        <li><a href="#"><small> </small><span>Нет комментариев</span></a></li>
        <li><a href="#"><small> </small><span>Количество просмотров: <?=$arResult['SHOW_COUNTER'] ? $arResult['SHOW_COUNTER'] : 0;?></span></a></li>
        <li><a href="<?= $arResult['DETAIL_PAGE_URL']; ?>"><small> </small><span>Постоянная ссылка</span></a></li>
    </ul>
</div>
CFile::GetPath(
   int file_id
)


Метод возвращает путь от корня сайта к зарегистрированному файлу. Возвращает NULL, если файл не зарегистрирован.

array CFile::ResizeImageGet( 
    mixed file, 
    array arSize, 
    const resizeType = BX_RESIZE_IMAGE_PROPORTIONAL, 
    bool bInitSizes = false,
    array arFilters = false,
    bool bImmediate = false,
    bool jpgQuality = false
);


Метод возвращает массив вида:

array(
    'src',    // путь к уменьшенной картинке относительно корня сайта
    'width',  // если bInitSizes = true ширина уменьшенной картинки, иначе 0
    'height', // если bInitSizes = true высота уменьшенной картинки, иначе 0
)


Метод уменьшает картинку и размещает уменьшенную копию в папку /upload/resize_cache/путь. Один раз уменьшив изображение получаем физический файл, который позволяет при последующих обращениях не проводить операции по уменьшению изображения. При следующем вызове метод вернет путь к уменьшенному файлу. Статический метод.


Ну и набросаем стили для галереи изображений:

/*
 * Файл local/templates/voguis_blog/components/bitrix/news/blog/bitrix/news. detail/.default/style.css
 */
.gallery {

}
    .gallery a img {
        border: 1px solid #ddd;
        padding: 10px;
        margin: 10px;
    }
    .gallery a img:hover {
        box-shadow: 0 0 10px #ddd;
    }


Поиск:
CMS • Web-разработка • Битрикс • Галерея • Изображение • Инфоблок • Коллекция • Элемент инфоблока

Подробно о файлах обмена с 1С

Подробно о import.xml, offers.xml и их друзьях, а так же о их роли в обменах между и магазином.

Немного о файлах и их количестве


На момент написания в 2018 году существует два различных набора файлов используемых в обмене между интернет-магазином и в версии выше 8.0.
Набор этих файлов зависит от версии модуля обмена с веб-узлами [1] установленного в . В «старом» обмене участвовало 3 файла:
import.xml, offers.xml и orders. xml в «новом» — добавилось еще 5 xml файлов — prices.xml, rests.xml, documents.xml, contragents.xml, references.xml.
Однако, основными остались старые-добрые импорт и офферс, остальные файлы могут не присутствовать в выгрузке.


Критическая разница между «старым» обменом и «новым» в том, что ранее 1C умела обмениваться с сайтом лишь в регламентном режиме с промежутком от раза в 15 минут и дольше, в новом появилась возможность обновления в режиме реального времени (realtime).

Перечень файлов участвующих в обменах


  • import.xml — содержит данные о товарах, категориях (группах), типах цен, складах, свойствах товаров и единицах измерения;

  • offers.xml — содержит данные о предложениях товаров (SKU [2]) и их свойствах;

  • orders.xml — содержит подробные данные о заказах;

  • prices.xml — содержит данные о ценах предложений перечисленных в offers. xml;

  • rests.xml — содержит данные о фактических остатках торговых предложений перечисленных в offers.xml;

  • documents.xml — содержит информацию о документах прикрепленных к товарам;

  • contragents.xml — содержит информацию о контрагентах;

  • references.xml — содержит информацию о пользовательских справочниках затронутых в import.xml .


Мы не станем рассматривать файл с контрагентами, пользовательскими справочниками и документами [3] из-за относительной редкости их использования и остановимся только на основных фалах без которых добиться обновления каталога попросту не выйдет.


Инициатором обмена всегда является 1С.
Сайт выступает только принимающей стороной и обрабатывает данные присланные из 1С
На стороне магазина не хранятся никакие доступы позволяющие подключиться на удаленный сервер 1С и инициализировать обмен или выполнить иную операцию.

Как сказано выше, обмен между 1С и сайтом происходит при помощи обмена файлами в формате XML построенными на основе стандарта CommerceML 2.xx [3]. Начнем рассматривать примеры файлов выгрузки в порядке очереди их обработки сайтом в момент обмена.

import.xml

Основа основ и первый файл в цепочке обмена. Хранит все данные основного каталога товаров

Структура import.xml

12345678-ABCD-123A-4567-8910E1234DF5Ид>
12345678-ABCD-123A-4567-8910E1234DF5ИдКлассификатора>
Каталог товаровНаименование>


XML-ID — Товара AИд>
AAAAAQAAAHI=НомерВерсии>
falseПометкаУдаления>


Название товараНаименование>
10БазоваяЕдиница>

XML-ID — Категории товараИд>
Группы>




XML-ID — Свойства AИд>

ЗначенияСвойства>

XML-ID — Свойства BИд>

ЗначенияСвойства>

XML-ID — Свойства CИд>

ЗначенияСвойства>
ЗначенияСвойств>


НДСНаименование>
12Ставка>
СтавкаНалога>
СтавкиНалогов>


ВидНоменклатурыНаименование>
МатериалЗначение>
ЗначениеРеквизита>

ТипНоменклатурыНаименование>
ТоварЗначение>
ЗначениеРеквизита>
ЗначенияРеквизитов>
0Вес>
Товар>
Товары>
Описание каталогаОписание>
Каталог>
КоммерческаяИнформация>

Не зависимо от того какой файл мы рассматриваем он будет содержать в структуре ряд общих элементов и ряд уникальных, присущих только данному виду файла. К общим элементам относятся:


<КоммерческаяИнформация> — Верховный элемент в который входят все остальные. Содержит версию схемы обмена, дату формирования и иную служебную информацию.

<ПакетПредложений> — Содержит данные о предложениях.

<Ид> — Уникальный идентификатор пакета предложений. Обязательно наличие символа # для связи с инфоблоком товаров.

<Наименование> — Название.

<ИдКаталога> — Уникальный идентификатор каталога, пакет предложений которого прислан.

<ИдКлассификатора> — Уникальный идентификатор классификатора, который относится к пакету предложений.

<Предложения> — Головной элемент информации о предложениях товаров.

<Предложение> — Элемент содержит данные отдельного предложения элемента.

<Ид> — Идентификатор предложения. В отдельных случаях может иметь формат: #

Уникальные для файла импорта:

Группы> — Элемент содержит информацию о группах (разделах) товаров.
Группа> — Элемент содержит описание группы элемента.
Ид> — Уникальный идентификатор группы (раздела).
НомерВерсии> — Номер версии элемента группы (раздела).
ПометкаУдаления> — Признак того, что элемент должен быть деактивирован.
Наименование> — Наименование группы (раздела).
Группы> — Подчиненный элемент, который хранит информацию о подчиненных группах.
Свойства> — Элемент содержит информацию о свойствах товаров.
Свойство> — Элемент содержит описание свойства элемента.
Ид> — Уникальный идентификатор свойства.
НомерВерсии> — Номер версии свойства.
ПометкаУдаления> — Признак того, что элемент должен быть деактивирован.
Наименование> — Наименование свойства.
Ид> — Уникальный идентификатор товара.
НомерВерсии> — Номер версии товара.
ПометкаУдаления> — Признак того, что элемент должен быть деактивирован.
Артикул> — Артикул товара.
Наименование> — Наименование товара.
Описание> — Описание товара, попадающее в подробное описание товара.
Картинка> — Элемент содержит информацию о картинках товара. Первый элемент является основной картинкой.
БазоваяЕдиница> — Единица измерения товара.
Группы> — Элемент содержит информацию о группах (разделах), в которых товар находится.
Ид> — Идентификатор группы (раздела) товара.
Изготовитель> — Элемент содержит информацию о изготовителе товара.
Вес> — Вес товара.
Ид> — Идентификатор изготовителя.
Наименование> — Наименование производителя.
ОфициальноеНаименование> — Официальное наименование производителя.
ЗначенияСвойств> — Элемент содержит информацию о свойствах товаров.
ЗначенияСвойства> — Элемент содержит описание свойства товара.
Ид> — Идентификатор свойства.
Значение> — Значение свойства.
СтавкиНалогов> — Элемент содержит информацию о налогах товаров.
СтавкаНалога> — Элемент содержит описание налога товара.
Наименование> — Наименование налога.
Ставка> — Ставка налога.
ЗначенияРеквизитов> — Элемент содержит информацию о дополнительных данных товара. Есть предопределенные значения:


  • Файл — содержит информацию о местонахождении приложенного файла;

  • ОписаниеФайла — описание файла или картинки. Формат: #;

  • Вес — вес товара;

  • ОписаниеВФорматеHTML — содержит описание товара в формате HTML;

  • Полное наименование — информация о анонсе товара.

ЗначениеРеквизита> — Элемент содержит описание дополнительной информации товара.
Наименование> — Наименование реквизита.
Значение> — Значение реквизита.

Возможные дополнительные элементы:


<ТипыЦен> — Элемент содержит информацию о типах цен товаров.

<ТипЦены> — Элемент содержит описание типа цены элемента.

<Ид> — Уникальный идентификатор типа цены.

<НомерВерсии> — Номер версии типа цены.

<ПометкаУдаления> — Признак того, что элемент должен быть деактивирован.

<Наименование> — Наименование типа цены. Наименование типа цены должно быть уникально, иначе новое не добавится.

<Валюта> — Валюта типа цены.

<Налог> — Описание налогов для типа цены.

<Наименование> — Наименование налога.

<УчтеноВСумме> — Признак того, включен ли налог в стоимость товара.


<Склады> — Элемент содержит информацию о складах товаров.

<Склад> — Элемент содержит описание склада элемента.

<Ид> — Уникальный идентификатор склада.

<НомерВерсии> — Номер версии склада.

<ПометкаУдаления> — Признак того, что элемент должен быть деактивирован.

<Наименование> — Наименование склада.

offers.xml


Основной файл обмена каталогом с торговыми предложениями (SKU) — в «старом» обмене в нем хранилась вся информация о предложениях включая их цены. остатки и прочие данные. В «новом» обмене в нем представлена только основная информация касающаяся самих элементов, а цены, остатки и пр. вынесены в отдельные файлы.

Структура offers.xml

12345678-ABCD-123A-4567-8910E1234DF5#Ид>
Пакет предложенийНаименование>
12345678-ABCD-123A-4567-8910E1234DF5ИдКаталога>
12345678-ABCD-123A-4567-8910E1234DF5ИдКлассификатора>


XML-ID — SKU — Предложения AИд>
oQAAAAE=НомерВерсии>
falseПометкаУдаления>
Название предложения — Например цвет — БелыйНаименование>



XML-ID — Свойства АИд>
XML-ID — Значения B свойства АЗначение>
ЗначенияСвойства>
ЗначенияСвойств>
Предложение>

XML-ID — SKU — Предложения BИд>
oAAAAAEAAAA=НомерВерсии>
falseПометкаУдаления>
Название предложения — Например цвет — БежевыйНаименование>



XML-ID — Свойства АИд>
XML-ID — Значения С свойства АЗначение>
ЗначенияСвойства>
ЗначенияСвойств>
Предложение>
Предложения>
ПакетПредложений>
КоммерческаяИнформация>

Расшифровка элементов XML


<НомерВерсии> — Номер версии предложения.

<ПометкаУдаления> — Признак того, что элемент должен быть деактивирован.

<ЗначенияСвойств> — Элемент содержит информацию о свойствах предложений.

<ЗначенияСвойства> — Элемент свойства предложения.

<Ид> — Идентификатор предложения.

<Значение> — Значение предложения.

Возможные дополнительные элементы:


<Свойства> — Элемент содержит информацию о свойствах товаров.

<Свойство> — Элемент содержит описание свойства элемента.

<Ид> — Уникальный идентификатор свойства.

<НомерВерсии> — Номер версии свойства.

<ПометкаУдаления> — Признак того, что элемент должен быть деактивирован.

<Наименование> — Наименование свойства.

<Внешний> — Признак того, что свойство типа справочник и должно хранится в highload-инфоблоке. Если хранит файл или изображение должен принимать значение true.

<Информационное> — Признак того, что свойство влияет на цену.

<ТипЗначений> — Тип значения свойства. Тип значения может быть: Строка, Число, Время, Справочник.

<ВариантыЗначений> — Элемент содержит информацию о вариантах значений, если тип свойства Справочник.

<Справочник> — Элемент содержит описание варианта значений свойства.

<ИдЗначения> — Идентификатор варианта значения свойства.

<Значение> — Значение варианта значения свойства.

<Картинка> — Адрес файла изображения, если значение свойства хранит картинку.


<Штрихкод> — Штрих-код предложения.

<ХарактеристикиТовара> — Элемент содержит информацию о строковых свойствах предложений.

<ХарактеристикаТовара> — Элемент множественного строкового свойства предложений.

<Наименование> — Наименование свойства.

<Значение> — Значение.


<Комплектующие> — Элемент содержит информацию о комплектующих предложениях.

<Комплектующее> — Элемент, содержащий информацию о комплектующем предложении.

<Ид> — Идентификатор комплектующего.

<Наименование> — Наименование комплектующего.

<Количество> — Количество товара.

<ЗначенияРеквизитов> — Элемент содержит информацию о дополнительных данных в предложениях.

<ЗначениеРеквизита> — Элемент содержит описание дополнительной информации товара.

<Наименование> — Наименование реквизита.

<Значение> — Значение реквизита.

prices.xml

Файл содержит информацию о текущих ценах предложений в разрезе всех типов цен на сайте.

Структура prices.xml

12345678-ABCD-123A-4567-8910E1234DF5#Ид>
Пакет предложенийНаименование>
12345678-ABCD-123A-4567-8910E1234DF5ИдКаталога>
12345678-ABCD-123A-4567-8910E1234DF5ИдКлассификатора>


XML-ID — SKU — ПредложенияИд>


15 155 грн за штПредставление>
XML-ID — Типа цены АИдТипаЦены>
15155ЦенаЗаЕдиницу>
UAHВалюта>
Цена>

30 300 руб за штПредставление>
XML-ID — Типа цены ВИдТипаЦены>
30300ЦенаЗаЕдиницу>
рубВалюта>
Цена>
Предложение>
Предложения>
ПакетПредложений>
КоммерческаяИнформация>

Расшифровка элементов XML



<Цены> — Элемент содержит информацию о ценах предложения товара.

<Цена> — Элемент содержит описание цены предложения товара.

<Представление> — Представление цены (на сайте не используется).

<ИдТипаЦены> — Уникальный идентификатор (внешний код) — типа цены.

<ЦенаЗаЕдиницу> — Цена за единицу товара.
<Валюта> — Валюта цены.

rests.xml


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

Структура rests.xml

12345678-ABCD-123A-4567-8910E1234DF5#Ид>
Пакет предложенийНаименование>
12345678-ABCD-123A-4567-8910E1234DF5ИдКаталога>
12345678-ABCD-123A-4567-8910E1234DF5ИдКлассификатора>


XML-ID — SKU — ПредложенияИд>



XML-ID — СкладаИд>
1Количество>
Склад>
Остаток>
Остатки>
Предложение>
Предложения>
ПакетПредложений>
КоммерческаяИнформация>

Расшифровка элементов XML



<Остаток> — Элемент содержит данные об остатках отдельного предложения в разрезе складов.

<Количество> — Остаток по всем складам.

<Склад> — Данные о складе и остатке предложения на нем.

<Ид> — Уникальный идентификатор склада.

<Количество> — Остаток предложения в разрезе склада.


Все файлы присылаемые на сайт и обрабатываемые системой попадают в папку /upload/1c_catalog/, промежуточные и служебные файлы обмена во время процедуры сохраняются в папке /upload/1c_exchange.

orders.xml

Файл с данными заказов. Бывает двух видов — сформированный на стороне сайта и забираемый и сформированный и отправляющий на сайт информацию о изменениях в заказах в случае их проведения на стороне после прошлого обмена. В частности, текущий статус заказа после ухода с сайта в . Как получить пример такого файла без 1С мы описывали ранее.

Примечания

  1. Актуальные версии модулей разных редакций 1С для России, Беларуси, Казахстана — тут, для Украины
    тут.

  2. SKU — складской номер, артикул.

  3. Описание файлов на сайте Битрикса — XML-файлы для обмена данными.

  4. Описание и примеры xml схемы для специалистов 1С — CommerceML 2.XX.

Если вам понадобятся образцы самих файлов или помощь по осознанию написанного на реальном примере смотрите данный пост или пишите вопросы в комментариях

Интеграция 1С и Битрикс: Управление сайтом


Интеграция системы учета на базе 1С и сайта на CMS 1C:Битрикс Управление сайтом является сложной задачей, на этом этапе “погибло” немало хороших сайтов.


Проблема здесь состоит в том, что происходит передача данных из двух разных по архитектуре систем. Среднестатистический программист 1С не знает как выгрузить данные на сайт так, чтобы веб-разработчик мог использовать максимум типовых функций CMS. Но еще больший сюрприз — это то, что среднестатистический веб-разработчик также не может объяснить программисту 1С, как ему нужно получить данные. Их общение похоже на разговор глухого и немого.


В этой статье мы попробуем упростить жизнь программистам 1С и веб-разработчикам, рассказав о своем опыте интеграции и “подводных камнях”, с которыми мы встретились. Для интеграции мы используем типовой модуль обмена адаптированный под конфигурацию “ЮвелирСофт:Ювелирный торговый дом”.


Начнем с того, чтобы понять, как типовой сайт на 1С:Битрикс хранит данные по товарному каталогу:


Каталог товаров


Каталог товаров — это как справочник “Номенклатура” в 1С, там хранятся общие реквизиты артикулов, те, которые никогда не изменяются — артикул, тип изделия, проба, металл, производитель, фото и т.д. это так называемые каталожные позиции.


Именно эти позиции показываются в списке товаров в каталоге:


    В каталоге товаров позиции могут быть нескольких типов:


  • Простой товар — товар, у которого нет вариантов размеров, драгоценных камней или других параметров влияющих на цену(если такие будут, то см. Ниже “Каталог предложений”). Например, серьги, кресты.


  • Товар с предложениями — это товары, у которых есть свойства для выбора, свойства влияющие на цену товара. Чаще всего это выбор размера и драгоценных камней.


  • Комплект и набор — эти типы рассматривать не будем, т.к. они доступны только в редакции “Бизнес” и из 1С их выгрузить нельзя. Подробнее тут.


Каталог предложений


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


Для товарного предложения можно также загрузить фото, это используется когда для разных драгоценных вставок нужны разные фото из-за цвета камней. Каталог предложений связан с каталогом товаров. Связь один ко многим — для 1 элемента каталога товаров соответствует много элементов каталога предложений.


В каталог товаров и предложений можно загрузить любое количество необходимых свойств товаров. Например, для товаров — артикул, тип изделия, пробам, а для предложений — размер, вставка, вес.


После того, как разобрались с хранением данных, посмотрим какие варианты выгрузок на сайт существуют.


  1. Полная выгрузка товаров — при такой выгрузке каждый раз получаются все данные для выгрузки (в зависимости от настройки — остатки, весь каталог или остатки+каталог). Такая выгрузка подходит при небольшом количестве товаров (до 5 000 артикул и 10 000 предложений). Если количество товаров и предложений большое, то такая выгрузка может занять от 3-6 часов.


  2. Выгрузка по изменениям — фиксирует в 1С только изменения для выгрузки на сайт и выгружаемый объем данных существенно меньше. Подходит для больших каталогов и для сайтов, где необходимо часто проводить выгрузку товаров для поддержания актуальности.


Также для оптимизации выгрузки в обоих вариантах используется пакетная выгрузка — в настройках задается количество товаров в 1 пакете и весь массив выгрузки бьется на кратные этому числа товаров пакеты.


Такая функция позволяет сделать процесс обмена более стабильным и выгружать данные на сайты с небольших количеством оперативной памяти.


Рассмотрим состав файлов выгрузки:


  1. Папка с названием кода выгрузки


  2. Выгрузка товаров разбитая на пакеты, в каждом пакете, указанное в настройках выгрузки количество товаров.


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


  4. Общий файл для каталога предложений — аналогично предыдущему файлу содержит все свойства и их значения, но уже для каталога предложений. В некоторых версиях выгрузки для оптимизации выгрузки общие файлы offers могут быть для каждого пакета, т.е. В корне выгрузки из может быть более 1.



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


Теперь самое интересное — файлы с товарами.

Файлов 4 вида:


  1. Файл import — содержит данные по элементам каталога товаров.



    1. Ид — cамое важное — это идентификатор номенклатуры, он должен быть уникальным, т.к. Если в файле есть два разных товара с одинаковым ИД, то на сайт будет загружен только последний элемент, точнее будут загружены оба, но последний перетрет предыдущий элемент. Ид важен, т.к. значение того, как он работает можно использовать, например для того, чтобы загружать остатки из 2-х разных баз так, чтобы одинаковые артикула не двоились — для этого нужно сделать так, чтобы в выгрузке из каждой базы ид товара были одинаковы.


    2. Артикул и наименования — Это стандартные поля для любой выгрузки из 1С. Наименование будет отображаться в карточке товара и в списке. Поэтому заранее нужно подумать над тем, чтобы оно было человеко понятное — такое, как обычный человек ищет в интернете.


    3. Группы — это список разделов на сайте, в которые попадает товар. Огромный плюс в том, что на сайте товар может лежать в более, чем 1 разделе


    4. Описание — текстовое описание товара, выводится карточку



    5. Картинка — относительная ссылка до каталога import_files в соответствующем пакете. При необходимости выгрузки нескольких картинок — выгружаются несколько секций


    6. Первая картинка становится основной для товара, остальные дополнительные.


    7. Основной блок со свойствами товаров. Именно эти ид свойств и ид значений должны быть идентичны свойствам и значениям в общих файлах импорта.


  2. Файл offers — элементы каталога предложений



    1. Ид — идентификатор предложения. Связь элемента каталога товаров и предложений идет именно через ИД предложений.


      ОБЯЗАТЕЛЬНО: Началом ид предложений должен быть ид товаров, которому это предложений соответствует. Также если у предложений 1 ид, то на сайт будет загружено только последнее. Поэтому для создания нескольких предложений по размерам и вставкам в ид добавляются либо гуиды вставки и наименование размера.


      Далее использую это информации можно реализовать выгрузки изделий по сериям номенклатуры(уникальные изделия) добавив в ид серию. Или выгрузку товаров с разным весом — также в ид добавляем вес изделия и на сайте уже имеем столько предложений сколько товаров данного артикула с разным весом.


    2. Номер версии — в этот пункт мы пишем даты выгрузки в миллисекундах.


      Она необходима нам для того, чтобы поддерживать актуальность предложений. По ней мы ориентируемся и после загрузки деактивируем предложений, у которых дата отлична. Это необходимо так как типовая загрузка при наличии хотя бы 1 активного предложения в файле выгрузки активирует все уже существующие на сайте.


    3. Наименование — текстовое отображение предложения. Его нужно также делать человеко понятным, т.к. В стандартном варианте оно будет отображаться в корзине пользователя и в заказе.


    4. Список свойство товаров — также идентификаторы свойств и значений должны находиться в общем файле для предложений товаров.



    5. Для указания изображения для предложения необходимо до выгрузки свойств, выгрузить секцию — <Картинка><Картинка/> — и ссылка на изображение, аналогично файлу import.


  3. Файлы prices



    ВАЖНО:


    1. Ид предложения из файла offers совпадал с ид в файле prices. В противном случае цена для предложения не загрузиться и оно будет недоступным.


    2. При выгрузке нескольких цен на 1 предложение все цены должны идти в 1 секции “Цена”. В противном случае цены могут затирать друг друга. Т.е. Для 1 предложения в файле prices должна быть 1 запись, а в ней в блоке “Цены” все цены идти в блоках “Цена”.


  4. Файлы rests — файлы с данными остатков товаров.



    ВАЖНО:


    Ид предложения из файла offers совпадал с ид в файле rests. В противном случае цена для предложения не загрузиться и оно будет недоступным


  5. Папка import_files — в ней содержатся изображения для товаров, их физическое расположение.


Подробнее про структуру файлом можно почитать здесь.

Правильно удаление элементов [bitrix api]

Есть такая уязвимость, когда атакующий может удалить элемент, каталог, или даже инфоблок. Для этого нужно найти страницу или скрипт который выполняет эти действия.

После чего ему нужно всего навсего добавить картинку, например на форум, и в адрес url картинки подставить определенно сформированный адрес.

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

www.site.ru/news/detail.php?ID=777&del=Y

Теперь если мы добавим пост на форум или блоги, и добави картинку с ссылкой,

<img src=»www.site.ru/news/detail.php?ID=777&del=Y» />

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

string bitrix_sessid() — возвращает идентификатор сессии, предварительно обработанный функцией md5.
bool check_bitrix_sessid($varname=’sessid’) — возвращает true, если верно условие $_REQUEST[$varname] == bitrix_sessid(), иначе false.
string bitrix_sessid_get($varname=’sessid’) — возвращает строку вида $varname=идентификатор сессии
string bitrix_sessid_post($varname=’sessid’) — возвращает строку вида <input type=»hidden» name=»$varname» id=»$varname» value=»идентификатор сесии» />

Передача идентификатора сессии в форме

<form method=»post» action=»/news/add.php»>
<?=bitrix_sessid_post()?>
Title: <input type=»text» name=»NAME» size=»40″ maxlength=»255″ value=»»>
</form>

Передача идентификатора в ссылке

<a href=»/news/detail.php?ID=123&del=Y&<?=bitrix_sessid_get()?>»>Удалить</a>

Проверка сессии

if($arResult[«Perm»]>=BLOG_PERMS_MODERATE && intval($_GET[«delete_comment_id»])>0 && check_bitrix_sessid())
{
/*Удаление комментария*/
}

Таким образом злоумышленник даже если сделает пакость то нечего не произойдет как ID сессии будет разный.

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

Оригинал

модулей Битрикс и недооцененные возможности | Виталий Сестренский

Если честно, в Битриксе много разных модулей и гораздо больше компонентов с различными настройками, поэтому разработчики иногда могут не уделять должного внимания всем этим настройкам, и в результате мы можем быть свидетелями утечки памяти, снижения производительности и т. д.
Таким образом, я хочу выделить некоторые важные элементы в модулях и быть уверенным, что вы будете знать обо всех них в своих проектах.Давайте приступим к делу.

Performance Module

Это отличный модуль, когда вы используете проект в производственной среде, потому что он может явно указать на проблемы и места, где ваше приложение работает не так хорошо. Более того, у вас есть возможность анализировать индексы MySQL с помощью SQL-запросов, измерять производительность по компонентам на каждой странице.
В своей предыдущей статье я упомянул размер кэша и его важность, поэтому, применяя этот модуль, инженеры могут проверить эту информацию, следовательно, у них будет шанс решить такие типы проблем за короткое время.

По умолчанию Битрикс не создает много индексов MySQL из коробки. Вы можете убедиться в этом, если откроете любой модуль в папке «modules» и найдете скрипты установочного файла SQL. На самом деле это сделано специально, и я расскажу почему. В компаниях люди используют одни модули Битрикс чаще, чем другие, и в результате мы должны создавать индексы MySQL там, где это действительно необходимо, и эффективность будет максимальной. Причем все манипуляции с индексами вы можете делать из админки.

Модуль масштабирования

Этот модуль предлагает добавить несколько серверов БД и распределять запросы между ними. Я не упомянул веб-серверы, потому что с ними все просто, но с БД ситуация иная, и вот почему.
Если вы используете этот модуль, просто помните, что проект не должен содержать файлов «after_connect * .php» и не использовать «SET». Также старайтесь избегать любых запросов на изменение в начале страницы. Я почти уверен, что все это знают, однако не используйте в коде прямые SQL-запросы, это необходимо реализовать через официальный Bitrix API, а также всегда использовать классы ORM для своих таблиц.
Все эти моменты могут повлиять на работу модуля и изменить ожидаемое поведение распределения запросов между ведущим и ведомым серверами БД.

Модуль безопасности

Подобно модулю производительности, вы можете полностью оценить этот модуль при производстве. Все мы хорошо знаем об атаках с использованием межсайтовых сценариев, проблемах iframe, различных ботах и ​​т. Д. Битрикс позволяет легко предотвратить все эти неприятности. Администраторы могут без труда изменить все необходимые настройки из админпанели.Также в зависимости от политики безопасности вашей компании администраторы могут ограничивать доступ к ресурсам Битрикс по IP-адресам, регулярным выражениям и многим другим правилам.

Модуль статистики

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

Заключение
Я описал четыре модуля Битрикс выше и абсолютно уверен, что люди, которые используют Битрикс каждый день, знают, что их в системе намного больше, однако я продолжаю замечать, что при разработке инженеры допускают ошибки и не используют эти особенно модули в полном составе, в основном в масштабируемых проектах с высокой посещаемостью.
Многие говорят, что Битрикс как продукт довольно сложный, тем не менее, производитель предоставляет огромное количество инструментов из коробки, которые решают множество повседневных проблем.В результате я считаю это большим преимуществом.

Битрикс | VisioneerIT

ГБ

Зарегистрироваться

Диск

Общедоступные группы

Неограниченное

162

2 9044 Контрольные списки

0

ban 9002

2

2

в электронную почту

044 Изменить трубопровод

SMS CRM

0162

900

90 044

$

000 / мес

$

мес

— 90 004

90

мессенджеры

и мобильные

2

2

4

пользователи

без ограничений

Два фактора

Цена, новозеландские доллары

Бесплатно

14,40 долл. США

69 долл. США

41,40 долл. США

долл. США чат и поток активности)

Безлимит

Безлимит

Безлимит

Безлимит

Безлимит

Безлимит

Пользователи бизнес-инструментов (задачи, CRM, календари) , рабочие процессы)

12

2

6

24

50

Без ограничений

Интернет-хранилище

50 ГБ

50 ГБ

100 ГБ

Без ограничений

Помощь при адаптации

первые 30 дней

Техническая поддержка

2 2 2 2 2 2 Настольное приложение
Мобильное приложение
Приложения Markeplace
Зарегистрироваться Зарегистрироваться Зарегистрироваться Зарегистрироваться
Связи
Пользователи

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Пользователи бизнес-инструментов

12

2

6

24

50

Без ограничений

Администраторы

2

2

5

Безлимит

Битрикс24.Сеть

Общее меню

Фоновые темы 970 970 970 Общие темы
Пользовательские приглашения

Activity Stream
Видеообъявления
Опубликовать по электронной почте
Объявления
Опросы
Чат
Чат, аудио- и видеозвонки
Групповые чаты (общедоступные и частные)
Интернет-хранилище

5 ГБ

10 ГБ

24 ГБ

50 ГБ

100 ГБ

Без ограничений

90 Персональный диск
Групповые и корпоративные диски
Синхронизация дисков
One Drive, Google Drive, Dropbox, интеграция с Box 2

902

Онлайн-редактирование в GoogleDocs, MS Offi ce Online
Локальное редактирование (MS Office, OpenOffice, LibreOffice)
В текстовом поиске Права доступа
Общий доступ к файлам
Общий доступ к папкам
Ограничить общий доступ к файлам

900-45 944

900-45 944 944

Замок для документов

Мусорное ведро16 9004

История версий

3

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Безопасная очистка 9044

Календари
Планировщик мероприятий
Синхронизация с внешними календарями
9022 Рабочие группы

Проекты
Группы с внешними пользователями

Без ограничений

Без ограничений

imited

Безлимит

Безлимит

Почта
Подключить собственный домен к почте

+

+

16 9002 +

Управление почтовыми ящиками пользователей

Рабочее время и отчеты
Абсолютная диаграмма

2

900

Отслеживание рабочего времени

Рабочие отчеты

–9000 4

Bitrix24Time

0

0 Встречи и брифинги

Корпоративный портал
Структура компании
Рабочие процессы
Рабочие процессы потока операций

0

5

Управление записями

Task and Projects

12 пользователей

24 пользователя

24 пользователя

50 пользователей

50 пользователей

Unlimited

Kanban16 Канбан

Планировщик
Диаграмма Ганта (временная шкала)
Проекты
Напоминания
Делегирование
Отслеживание времени задачи 9044

Отправить по электронной почте к задаче
Задача по электронной почте
Оценить задачу 2
Построитель отчетов
CRM, рабочий процесс, календарь, интеграция привода
Планирование задач ограничено рабочим днем ​​/ рабочим днем ​​
Зависимости задач

5

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Обмен шаблонами

CRM

12 пользователей

24 пользователя

6 пользователей

50 пользователей

Без ограничений

Лиды, контакты, компании, сделки

Без ограничений

Без ограничений

без ограничений

0

без ограничений Безлимитный

9004 5

Без ограничений

Без ограничений

Импорт / экспорт данных (CSV)
Миграция из другой CRM CRM

Цель продаж

История

для мобильных CRM

Панель слайдера CRM
Хронология CRM
Пользовательские поля в CRM
Пользовательские разделы в CRM Карты

Многоканальный CRM
Телефония
Электронная почта 9044

Социальные сети
Интернет-магазин
Сайты и целевые страницы
Онлайн-чат на веб-сайте 9016 9016 902

9016 902

Форма обратного звонка
Сканер карт

12

24 / мес

24 / мес

50 / мес

Unl imited

Чат в CRM

100 / мес

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Без ограничений

за последние 3 дня

за последние 3 дня

за последние 3 дня

за последние 3 дня

за последние 3 дня

без ограничений

Другие каналы через RestAPI 5

Отведения
Облегченный режим CRM
Преобразование лидов в контакты, сделки, компании
С нестандартные источники лидов
Управление клиентами
Контакты
Компании
Индивидуальные отрасли промышленности
Обзор на 360 градусов
Контактный импорт / экспорт 2

Сделки
Трубопроводы

1

1

1

1

Повторяющиеся сделки

004

Настраиваемые ступени трубопроводов
Типы настраиваемых сделок
Преобразовать сделку в котировку или счет и онлайн-платежи
Пользовательские статусы счетов
Повторяющиеся счета

904 счета-фактуры

Счета в формате PDF
Счета по электронной почте
Paypal
Котировки
Пользовательские статусы расценок
Преобразовать расценки в накладную или сделку

Действия с CRM
Задачи
Электронная почта
Встречи Звонок s
Списки вызовов

Запись разговора
Сообщения электронной почты

CRM

из CRM
входящие / исходящие звонки из CRM
Входящие / исходящие сообщения из CRM
Каталог продукции
Налоги
Валюты 2

Единицы измерения
Формы веб-сайта CRM и виджет чата
Активные формы веб-сайтов

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Публичная форма / страница чата
Виджет веб-сайта
Удалить «Powered by»

CRM Automation
Триггеры

Правила для лидов

+

+

Правила сделок

5 944 944 944 944 9452 9004

Индивидуальные правила

Разработчик бизнес-процессов

Отчеты
Предварительно настроенные отчеты
Конструктор настраиваемых отчетов
Фейс-трекер

$

$

$

$

$

Права доступа CRM
Права доступа на основе ролей 16 5 9016

Журнал доступа CRM

Маркетинг
Массовая рассылка по электронной почте

5000 / мес

15 000 / мес

50 000 / мес

50 000 / мес

1000000 / мес

Массовые SMS

Голос вещание

Массовая рассылка сообщений 9000 2 —

Rest API

Интегрированная телефония
Лимит аренды номера телефона 3

1 номер

900

3 номера

3 номера

Без ограничений

Без ограничений

Отображение собственного номера в идентификаторе вызывающего абонента.
Подключить АТС через Rest API
Подключить АТС через SIP-коннектор

49 $ / мес

$ 49 / мес

49 $ / мес

49 $ / мес

49 $ / мес

Входящие / исходящие линии

Безлимитный

Безлимитный

безлимитный

Безлимитный

Безлимитный

Маршрутизация звонков
Перевод звонка

0

9452 VoIP телефонные аппараты

Перехват вызовов 90 162

Внутренние добавочные номера
Настройки рабочего времени
Голосовая почта и приветствия2 Запись звонков

100 / мес

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Права доступа к телефонной связи

Автоматический номеронабиратель

IVR (голосовое меню)

2 уровня

Без ограничений

Оценка качества звонков

Группы очередей

1

0

Без ограничений

4

Без ограничений 9000

Без ограничений

Без ограничений

Без ограничений

Размер группы очередей

3

Без ограничений

Без ограничений

Безлимитный

Звонок всем Режим распределения

Отслеживание источника звонков

Расшифровка звонков

0 руб.05 / мин

0,05 долл. / Мин

0,05 долл. / Мин

0,05 долл. / Мин

0,05 долл. / Мин

0,05 долл. / Мин

Дополнительные функции CR8M Расширенный поиск дубликатов

Открытые каналы

12 пользователей

24 пользователя

24 пользователя

50 пользователей

9000

Безлимитный

Каналы

1

2

2

2

Безлимитный

Безлимитный

Сохранить в CRM

100 / мес

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Без ограничений

Маршрутизация 9044 9044 2

9044
Передача разговора между сотрудниками
Передача разговора между каналами
9016 Автоматические ответы 2 9016 Приветствие и автоматические ответы 9070

Сбор контактной информации
Готовые ответы
Веб-чат

1

2

90 002 2

2

Без ограничений

Без ограничений

Направить чат во все режимы распределения

Рейтинг клиентов
Рейтинг беседы супервизора

Права доступа к открытому каналу

Сайты и целевые страницы

12 пользователей

6 пользователей

6 пользователей

6 пользователей

Безлимит

900 45

Оперативное хранилище

5 ГБ

10 ГБ

50 ГБ

50 ГБ

100 ГБ

Без ограничений

Сайтов

10

10

10

10

Без ограничений

Веб-страницы

Без ограничений

без ограничений

Безлимитный

Безлимитный

Безлимитный

Использовать собственное доменное имя

Шаблоны сайтов страниц

9 0162
Google Analytics
Карты Google
Формы веб-сайтов CRM
Чат

Форма запроса обратного звонка
Удалить брендинг «Powered by Bitrix24»

НАСТРОЙКИ АККАУНТА )
Ограничить доступ по IP-адресу

Добавить собственный логотип 945

РАЗНОЕ
URL пользовательского аккаунта (собственное доменное имя)

Восстановление резервной копии

Отключить OTP для администратора

64 5

Перенести аккаунт Битрикс24 в другую зону

Зарегистрироваться Зарегистрироваться Зарегистрироваться Зарегистрироваться Зарегистрироваться

Zoom vs Bitrix24 2021 Сравнение

Что лучше Zoom или Битрикс24? Сегодняшним компаниям требуется наиболее эффективное программное обеспечение для совместной работы, чтобы оставаться конкурентоспособными.На этой странице мы поможем вам с покупкой лучшего программного обеспечения, позволяя сравнивать Zoom и Битрикс24 до мельчайших деталей их индивидуальных предложений.

Также можно проверить наши общие значения баллов, которые оценивают качество и производительность программного обеспечения в целом. Zoom получил 8,9 балла, Битрикс24 — 9,0. Аналогичным образом можно сравнить их общий рейтинг удовлетворенности пользователей: 99% (Zoom) против 96% (Битрикс24). Не забудьте выбрать программное обеспечение, которое лучше всего отвечает вашим основным потребностям, а не программное обеспечение с большим количеством функций.

Мы понимаем, что не у всех компаний есть время протестировать широкий спектр различных решений, поэтому мы составили список рекомендаций, которые могут быть вам полезны. Наши лучшие продукты в категории ПО для видеоконференцсвязи: Lifesize, RingCentral Video, Skype.

Стоимость:

Начиная с

14 долларов.99

Стоимость модели

Стоимость модели

Бесплатно

Ежемесячный платеж

Единовременный платеж

Годовая подписка

На основе котировок

Список функций

Список функций

  • Видео вебинар
  • Групповое сотрудничество
  • Облако и локальная запись
  • Zoom Встречи и комнаты
  • Интегрированное планирование
  • Premium Audio

Информация о цене

Информация о цене

Zoom предлагает 4 корпоративных тарифных пакета:

Базовый план Zoom

  • Личная встреча
  • Бесплатно
  • Принимать до 100 участников
  • Безлимитные встречи 1 на 1
  • Групповые собрания ограничены 40 минутами
  • Неограниченное количество встреч
  • Онлайн-поддержка
  • Функции видеоконференцсвязи
  • Функции веб-конференции
  • Функции групповой совместной работы
  • Безопасность

Zoom Pro Plan

  • Для небольших команд
  • 14 долларов США.99 в месяц на хост

Все функции базового плана плюс:

  • Включает 100 участников
  • Неограниченная продолжительность встречи для встреч любого размера
  • Управление пользователями
  • Управление функциями администратора
  • Отчетность
  • Идентификатор персонализированной личной встречи
  • Назначить планировщик
  • 1 ГБ записи в облаке MP4 или M4A
  • REST API
  • Совместимость со Skype для бизнеса (Lync)

Дополнительные дополнительные планы

  • Дополнительное облачное хранилище для записи (от 40 долларов в месяц)
  • 323 / SIP Room Connector (от 49 долларов США в месяц)
  • Join by Zoom Rooms (от 49 долларов в месяц)
  • Присоединяйтесь по бесплатному телефону или позвоните мне (от 100 долларов в месяц)
  • Добавить видео вебинары (от 40 долларов в месяц)

Бизнес-план Zoom

  • Малый и средний бизнес
  • $ 19.99 в месяц на хост
  • Минимум 10 хостов
  • Все функции Pro Plan плюс:
  • Включает 100 участников
  • Телефон службы поддержки
  • Панель администратора
  • Скрытый URL
  • Вариант для локального развертывания
  • Управляемые домены
  • Единый вход
  • Фирменный знак
  • Персонализированные письма
  • Интеграция LTI

Zoom Enterprise Plan

  • Крупные предприятия
  • $ 19.99 в месяц на хост
  • Минимум 100 хостов

Все функции бизнес-плана плюс:

  • Включает 200 участников
  • Неограниченное облачное хранилище
  • Специализированный менеджер по работе с клиентами
  • Executive Business Reviews
  • Пакетные скидки на вебинары и Zoom Rooms

интеграции

интеграции

Zoom можно интегрировать с другими платформами и программным обеспечением для улучшения обмена контентом, планирования и начала встреч, унификации входа в систему, автоматизации маркетинга и совместной работы в комнатах.Zoom поддерживает следующие интеграции:

  • Microsoft One Drive
  • Google Диск
  • Ящик
  • BropBox
  • Слабина
  • Salesforce
  • Skype
  • Microsoft Outlook
  • Google (Календарь, Chrome)
  • Firefox
  • LTI Canvas
  • Щит LTI
  • LTI Moodle
  • LTI Desire2Learn
  • Планирование Acuity
  • Microsoft Active Directory
  • Google
  • Okta
  • Facebook Centrify
  • RSA
  • Eloqua
  • Marketo
  • Hipchat
  • Hubspot
  • Zapier
  • Пардо
  • Инфузионсофт
  • Intel Unite
  • Куби

Поддерживаемые языки

Английский

китайский

Немецкий

Хинди

Японский

Испанский

Французский

Русский

итальянский

голландский

португальский

Польский

Турецкий

Шведский

Выдающиеся клиенты

Вашингтонский университет, Zendesk, UBER

Доступные устройства

Окна

Linux

Android

iPhone / iPad

Mac

Интернет

Windows Mobile

Размер компании

Малый бизнес

Крупные предприятия

Средний бизнес

Фрилансеры

Доступная поддержка

электронная почта

телефон

живая поддержка

обучение

билетов

Общая информация

Полнофункциональное решение для веб-конференций, Zoom становится одним из самых популярных бизнес-приложений благодаря своей гибкости, простоте использования и доступности.Помимо регулярных онлайн-встреч и обучения, Zoom также предоставляет виртуальные конференц-залы, которые также служат рабочим пространством для совместной работы. Он также предлагает другие варианты связи через ZoomPhone. Кроме того, его система чата позволяет обмениваться сообщениями и файлами между платформами, что еще больше повышает надежность связи, особенно для удаленных сотрудников.

Адрес компании

Бульвар Алмаден 55, 6-й этаж,
Сан-Хосе, Калифорния 95113
США

Популярные альтернативы Zoom

Стоимость модели

Бесплатно

Ежемесячный платеж

Единовременный платеж

Годовая подписка

На основе котировок

Список функций

  • Интранет-центр Activity Stream
  • Массовая рассылка
  • Общий доступ к календарю
  • Структура компании
  • CRM
  • Отчеты CRM
  • Ежедневник
  • Уведомления по электронной почте
  • Экстранет
  • Обмен файлами и управление версиями
  • Мгновенные сообщения
  • Фотоальбомы
  • Проектные группы
  • Воронка продаж
  • Простое назначение доступа
  • Задачи
  • Отчетность о задачах
  • Управление временем
  • Профили пользователей
  • Рабочий процесс

Информация о цене

Бесплатно

  • 12 пользователей
  • 1 администратор
  • Онлайн-хранилище 5 ГБ

Plus — 39 долларов в месяц

  • 24 пользователя
  • 2 админа
  • Интернет-хранилище на 24 ГБ

Standard — 99 долларов в месяц

  • 50 пользователей
  • 5 администраторов
  • Интернет-хранилище 100 ГБ

Professional — 199 долларов в месяц

  • Неограниченное количество пользователей
  • Неограниченное количество администраторов
  • Неограниченное онлайн-хранилище

интеграции

Битрикс24 поставляется с открытым API, поэтому эту систему легко настроить и интегрировать с другими бизнес-решениями, которые вы можете использовать.Доступны интеграции для Zapier, Quickbooks, Facebook, Freshbooks, Xero, Dropbox, Box, GSuite, Microsoft Office 365, Asana, Zoho, Pipedrive и почти всех других популярных продуктов SaaS

.

Поддерживаемые языки

Английский

китайский

Немецкий

Хинди

Японский

Испанский

Французский

Русский

итальянский

голландский

португальский

Польский

Турецкий

Шведский

Выдающиеся клиенты

Xerox, Samsung, Volkswagen, Vogue, журнал PC

Доступные устройства

Окна

Linux

Android

iPhone / iPad

Mac

Интернет

Windows Mobile

Размер компании

Малый бизнес

Крупные предприятия

Средний бизнес

Фрилансеры

Доступная поддержка

электронная почта

телефон

живая поддержка

обучение

билетов

Общая информация

Битрикс24 предлагает инструменты для совместной работы в ключевых бизнес-процессах, таких как CRM, управление проектами, управление временем, постановка задач и управление документами.Его набор функций также включает ежедневник и модуль управления временем. В Битрикс24 также есть надежный модуль отчетности по задачам и производительности.

Адрес компании

901 с.Pitt St, Suite 325, Александрия, VA 22314, США

Популярные альтернативы Битрикс24

Почти так же важны, как возможности и качество поддержки клиентов, варианты ценообразования, предоставляемые Zoom и Битрикс24.Хотя стоимость не должна быть единственным элементом, это, без сомнения, ключевой момент, о котором следует подумать. Вам следует ожидать гибкого ценового пакета, который можно адаптировать к размеру вашей компании и легко масштабировать при росте вашего бизнеса. Убедитесь, что вы не выбираете тарифные планы с дополнительными функциями, которые вы не найдете полезными, и всегда старайтесь связаться с поставщиком напрямую, поскольку предприятия часто могут получить выгоду от более доступных цен. Вам также следует попробовать бесплатную пробную или демонстрационную версию каждого приложения, чтобы потратить хотя бы некоторое время на его использование.Это полезный опыт, который не требует от вас вложений денег и дает вам надежное представление о том, каково работать с Zoom и Битрикс24.

Последнее изменение страницы

.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *