Для выгрузки данных из Абонемент(Shelter) в StoreHouse4 используются утилиты ExportData (Абонемент) и ImportRK (StoreHouse4).
Утилиту ExportData можно найти в поставке Абонемент в папке FullversionVerxxx\util\ExportData\
Состав поставки утилиты:
ExportData.exe и ExportData.ini – программа для настройки условий выгрузки.
SHTR.dll и Shelter.ini – копируется с заменой в папку с ImportRK.exe и обеспечивает импорт из БД Абонемент(Shelter).
Настройка условий выгрузки.
В файле ExportData.ini указать путь БД Абонемент(Shelter).
В программе ExportData.exe добавляются условия выгрузки. См. рис.1.
|
Код |
уникальный код для данного условия выгрузки. В SH4 не передается. |
|
Наименование |
Наименование товарной группы в справочнике товаров SH4. Данная товарная группа будет aвтоматически добавлена в группу «Меню ресторана». (Рис 2). Будет создано «Место реализации» с таким названием. См. рис 3 |
|
Место реализации |
Код места реализации См. рис 3 |
|
Префикс для элементов |
Префикс для кодов товаров. См.рис 2 |
|
Префикс |
Префикс группы товаров см.рис 4 |
|
Внешний ID |
Номер группы товаров. Объединение Префикса и Внешнего ID даст код группы. ВНИМАНИЕ! Важно чтобы данный ID не пересекался с другими Внешними ID. |
|
Тип экспорта |
Возможны 3 варианта: «Услуги», «Номерной фонд», «Номерной фонд и корпуса». |
|
Доп. опции экспорта |
Задает аналитику выгрузки. Предопределенные варианты. |
| Выгружать коррекции | Технически есть возможность выгружать коррекции и ПО Абонемент. НО! Мы этого сознательно не делаем и делать не рекомендуем. Причина этого в разной специфики работы ПО Абонемент и ПО SH4. В ПО Абонемент реализация и коррекция могут быть сделаны в совершенно разные смены и даты. Таким образом если в ПО Абонемент пройдет реализация услуги А в дату Д1, а коррекция пройдет датой Д2, но реализации услуги А за дату Д2 не будет, то за дату Д2 реализация выгрузится с отрицательным количеством, что приведет к некорректной работе SH4. Мы рекомендуем не выгружать коррекции из ПО Абонемент в ПО SH4, а пользоваться отчетами и воздействовать на документы расхода в ручном режиме в SH4. Дополнительным мотиватором действовать именно так служит фак, что коррекции могут быть как с отменой списания, так и без, например: гость покупает кофе/чай/бутылку воды, отпивает и жалуется, что напиток горький/соленый/испорчен. Гостю возвращают деньги и услугу, но по факту списание прошло и товар отгружен. |
|
Включен |
Если данный флаг установлен, то условие выгрузки активно. |
|
Рис.1 |
Рис.2 |
|
Рис.3 |
Рис.4 |
Тип экспорта «Услуги».
Происходит выгрузка услуг оказанных в данном периоде. Используется смена начисления услуги.
При настройке важно учитывать, что Внешний ID не должен пересекаться с Внешним ID у групп услуг. На рис.5. максимальный внешний ID у групп выгружаемых услуг 101, а Внешний ID - 1000.
Для типа экспорта «Услуги» дополнительные опции недоступны.
|
Рис.5 |
После экспорта данных в SH4, создана группа верхнего уровня «Реализация услуг» в которой дерево товаров такой же структуры, как и в Абонемент(Shelter). (Рис.6.)
Если в данную смену были реализованы отмеченные услуги, то в StoreHouse4 будет сформирован документ расхода.(рис.7.)
|
Рис.6 |
Рис.7 |
Тип экспорта «Номерной фонд», «Номерной фонд и корпуса».
Происходит выгрузка выездов из номеров (для Shelter). Данные типы экспорта нужны, например, для списания хозяйственных единиц на уборку номера.
Если делать выгрузку без доп. опций, то каждый выезд из номера дает кол-во «единица», при этом не важно сколько гостей проживало в номере. Если включена доп. опция «Учитывать гостей в заезде». Если она включена, то будет анализироваться кол-во уникальных гостей, проживавших в этом номере. Уникальными считаются гости, на которого заведена регистрационная карта гостя. См. рис 8. При выселении данной заявки в выгрузку попадет кол-во 2. Доп. место учитываться не будет.
|
Рис.8 |
Например, если мы хотим выгружать выезд из номеров только первого корпуса, то нужно настроить условие выгрузки, аналогично тому, как показано на рис.9.
|
Рис.9 |
После успешного экспорта данных в SH4 появится товарная группа, список товаров и документы расхода. См. рис.9
|
Рис.10 |
Т.к. данные выгружаются по средствам открытых SQL запросов к базе данных, то для требований конкретного заказчика на платной основе можно сделать кастомное решение.
Настройка транспорта.
В файле Shelter.ini указать путь к базе Абонемент(Shelter). Установить параметры
UseConnectionString=0 UseExportData=1
Запустить ImportRK.exe и выбрать флаг «Меню ресторана» Рис 11. Установить период и нажать Импорт.
|
Рис.11 |
ВАЖНО!
Если у группы «Меню ресторана» нет флага, то нужно зайти в настройки импорта и прописать пути к любым папкам. См. рис.12.
|
Рис.12 |
Выгрузка по киоскам как по отдельным местам реализации
В случае, если, по какой-то причине, в одной БД реализация одних и тех же услуг происходит в разных клубах и требуется производить выгрузку в StoreHouse как из разных мест реализации,то можно применить следующий способ.
Данное решение, позволяет разделить выгрузки по киоскам заведённым в Абонемент, и назначить им различные места реализации в StoreHouse.
Для этого, настраивается правила экспорта в ExportData. Устанавливаются места реализации для данных правил. (Список выгружаемых услуг, в таком случае, может пересекаться)
После описанных выше настроек, для каждого экспорта, во вкладке "Реализация" необходимо добавить в сформированный SQL запрос перед частью
group by 1,2,3,4,5
Необходимо добавить следующий текст:
and IIF(sn(CREATORADDR)>0, CREATORADDR, (select sn(creatoraddr) from folio_contents fc2 where fc2.id=fc.creatorref))=%ID_киоска%
где, %ID_киоска% заменить на ID киоска в Абонемент, реализация через который будет выгружаться в рамках данного правила на данное место реализации в StoreHouse. (Пример подобной настройки приведён на рис.13)
После чего нажать на кнопку "Пересохранить SQL: Реализация".
После произведения данных действий, выгрузка по различным киоскам будет загружаться как различные места реализации в StoreHouse.
|
Рис.13 |
ВАЖНО!!!
Данные действия необходимо производить каждый раз при изменении настроек экспорта, поскольку формируемый автоматически запрос затирает данное условие.












