Экспорт данных из SPSM

В SPSM есть возможность экспорта данных индивидуального или группового заказа в текстовый файл произвольного формата – XML, HTML, TXT, JSON  и пр. Эта функционал может быть использован при необходимости экспортировать данные в другие программу, например 1С.

Существуют три основных способа экспортировать данные в файл:



Все три вида формируют конечный файл с данными используя файл-шаблон, заменяя переменные в файле-шаблоне на реальные значения. 


Пример содержимого файла-шаблона:


<ORDER>
<ID>#%GROUP_ORDER_ID%#</ID>
<PHONE>#%ORDER_CLIENT_CELL%#</PHONE>
<EMAIL>#%ORDER_CLIENT_EMAIL%#<EMAIL>
<TEXT>Ваш заказ был оплачен</TEXT>
</ORDER>


Пример итогового содержимого экспортированного файла:


<ORDER>
<ID>1167672</ID>
<PHONE>+70000000000</PHONE>
<EMAIL>semeon@semeonovich.com<EMAIL>
<TEXT>Ваш заказ был оплачен</TEXT>
</ORDER>


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


Ручной номерованный экспорт данных

Как следует из названия, при использовании этого метода данные экспортируются пользователем вручную. Слово "номерованный" в названии означает что каждому экспорту присваивается уникальный номер.

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


Основные особенности ручного номерованного экспорта:


  • Данный вид экспорта возможен только из окна списков заказов.
  • Данный вид экспорта возможен только если выбраны один или несколько индивидуальных заказов.
  • Экспорт инициируется по выбору пункта меню появляющегося по щелчку правой кнопки мыши .
  • Все выбранные заказы должны принадлежать одному клиенту, если в настройках не разрешено иначе.
  • У данного клиента должен быть введён адрес электронной почты или в настройках установлена обязательность запроса адреса.
  • Для формирования файла с данными используются два файла-шаблона: 
    • Файл-шаблон для информации общей для всего экспорта.
    • Файл-шаблон для детальной информации о каждом заказе.
  • Общие и детальные данные на конечном этапе вставляются в один общий файл.
  • Экспорту присваивается автоматически сгенерированный номер из последовательности:
  • Номер экспорта присваивается всем экспортированным заказам.
  • Информация сохраняемая в файл является XML-совместимой (специальные символы заменены на символы допустимые в XML).
  • В окне редактирования заказа, на специальной вкладке, можно отследить все удачные попытки ручного номерованного экспорта для каждого заказа. 

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

  • Информация общая для всего экспорта (заголовок):
    • %EXPORT_ID% - уникальный номер экспорта
    • %EXPORT_EMAIL% - электронная почта клиента
    • %EXPORT_CONTACT% - контакт клиента
    • %EXPORT_AMOUNT% - общая сумма всех экспортируемых заказов
    • %EXPORT_COUNT% - количество экспортируемых заказов
    • %EXPORT_DATE% - дата и время экспорта
    • %USER_NAME% - имя пользователя который экспортировал данные
    • %USER_EMAIL% - электронная почта пользователя который экспортировал данные
    • %DETAILS% - вся информация об индивидуальных заказах
  • Информация об индивидуальном заказе:
    • %ORDER_ID% - номер заказа
    • %CLIENT_NAME% - имя клиента 
    • %CLIENT_CONTACT% - контакт клиента 
    • %CLIENT_EMAIL% - электронная почта клиента
    • %ORDER_DESCRIPTION% - описание заказа
    • %EQUIPMENT_DESCRIPTION% - описание оборудования
    • %MATERIAL_DESCRIPTION% - описание материала
    • %ORDER_DETAILS% - детали заказа
    • %ORDER_QUANTITY% - количество экземпляров в заказе
    • %ORDER_TOTAL% - сумма заказа
    • %DESCRIPTION_OF_ADDITIONAL_SERVICES% - список дополнительных услуг заказа, через запятую
    • %QUANTITY_OF_ADDITIONAL_SERVICES% - количество дополнительных услуг заказа
    • %TOTAL_AMOUNT_FOR_ADDITIONAL_SERVICES% - общая сумма дополнительных услуг заказа
    • %CAID% - дополнительный идентификатор клиента
    • %MAID% - дополнительный идентификатор материала
    • %EAID% - дополнительный идентификатор оборудования
    • %DAID% - дополнительный идентификатор доставки
    • %DELIVERY_DESCRIPTION% - описание способа доставки


Простой экспорт данных через автоматизированный действия по событиям

Данный вид экспорт возможен через действия по наступления событий. Действия по событию возможны только в полной версии SPSM.

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


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


  • Ввести имя события, например "Экспорт в XML для отсылки"
  • Событием, вызывающим экспорт могут быть выбраны разные события, например "Заказ: все части оплачены". Выберите подходящее вам событие из выпадающего списка.
  • Выберите нужное действие из списка. В данном случае это должно быть "Заказ: Экспорт данных группового заказа в файл".
  • Вам необходимо указать имя файла-шаблона и имя конечного файла, куда будут экспортированы данные. По наступлению события шаблон будет считан из файла-шаблона, переменные в нем будут заменены на реальные значения и полученный результат будет экспортирован. Файл-шаблон должен быть в кодировке UTF-8, в этой-же кодировке будет создан и конечный файл. Имена файла-шаблона и итогового файла могут содержать переменные.
  • Список переменных, доступных для использования в названии итогового файла и содержимом файла-шаблона отличается от списка переменных, доступных для ручного номерованного экспорта. Полный список переменных можно посмотреть тут.


Дополнительную информацию о действиях по событию можно получить на этой странице.


Экспорт данных с расширенными возможностями через уведомления через SCS

О настройках и использовании этого способа написано в этой статье.


Данный вид экспорта изначально был предназначен для уведомления клиентов, путём передачи файлов с данными в стороннюю программу (SCS), где они использовались для передачи сообщений клиентам тремя разными способами - по электронной почте, через СМС или через сообщения в WhatsApp. Все три типа уведомлений используются независимо друг от друга и используют разные файлы с данными. В конечном итоге формирование экспортных файлов происходит через механизм действия по наступления событий, как и в варианте выше.


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