Утилита фоновой загрузки данных

FSystemConsole.exe Находится в директории вместе с программой

Синтаксис

Справка по команде

FSystemConsole.exe help

Загрузка данных

FSystemConsole.exe import тип [режим формат | режим] исходник цель [опции]
Тип
 -sh, --sales-history                     импорт истории продаж 
 -o, -c, --ontology, --classification     импорт классификации
 -p, --properties                         импорт параметров
 -a, --analogs                            импорт аналогов
 -mс, --marketing-campaigns               импорт акций
 -of, ----orderFrequency                  импорт расписания поставок
 -sp, --suppliers                         импорт данных поставщиков
 --all                                    импорт файла формата xml, содержащего историю продаж и параметры
 --storage-aliases                        импорт файла, содержащего названия складов

Режим(только для истории продаж и классификации)

Режим «Заменить» применяется для загрузки полной классификации при первоначальной загрузке истории продаж, для создания новых групп, новых товаров и изменения принадлежности групп. Алгоритм работы точно такой же, как при загрузки истории продаж: старая классификация полностью заменяется данными из новой классификации. Поэтому загружаемая классификация в режиме «Заменить» должна быть полной и содержать в себе все данные. Пользовательские изменения при это будут утеряны. Рекомендуется их сохранить и впоследствии загрузить через режим «Обновить»

Режим «Обновить» применяется для загрузки дополнительной информации по имеющейся классификации.

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

 -r, --remove                           режим замены и удаления старой информации
 -a, --append                           режим добавления и обновления информации
 -s                                     сохранение старых свойств в классификации. Может использоваться только при загрузке комплексного xml файла. Указывается в конце команды 

Формат(только для истории продаж)

файл формата истории продаж

Файл формата можно получить следующим образом:

  1. Запустить программу,
  2. Выбрать режим пользователя
  3. Выбрать файл истории продаж для загрузки
  4. Нажать «Указать Формат истории продаж»

5.Заполнить формат

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

6. Нажать «Сохранить в файл» - получите искомый файл для загрузки формата расширением .format

Пример файла формата

Склад;Артикул;Клиент;Дата;Кол-во;Цена реализации;Выручка;Цена закупки;Себестоимость;Учетная цена;Прибыль;Остаток;Товар в пути, ед.;Размещенный заказ, ед.;В резерве, ед.;Невыполненный заказ;Упущенный спрос
column-separator:;
decimal-separator:.
date-format:yyyy-MM-dd
header-flag:true

Исходник

исходный файл с данными для импорта

Цель

целевая база данных для импорта

Опции

--no-verification

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

--dir

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

--save-properties

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

Пример загрузки аналогов

FSystemConsole.exe import -a analogs.csv database.db

Пусть в программе содержатся следующие записи об аналогах:

гл.аналог1;аналог2;аналог4
гл.аналог2;аналог5

в файле analogs.csv:

гл.аналог1;аналог3;аналог4

В программе станет следующая информация по аналогам:

гл.аналог1;аналог2;аналог3;аналог4
гл.аналог2;аналог5

Сжатие и обновление базы данных

update <целевая база данных>
Пример

FSystemConsole.exe update source.db

Загрузка акций

Акции загружаются в программу при помощи команд -mc или –marketing-campaigns

Вид команды:

FSystemConsole.exe import -mc  исходник цель 

Исходник- исходный файл с данными для импорта определенного формата

Цель - целевая база данных для импорта

Загрузка типа акции

При загрузке акций в программу (при помощи команд -mс или –marketing-campaigns) можно задать ее тип. Это делается при помощи команды через команды SET_CMP_TYPE

Команда задается в разделе #campaigns файла загрузки акций

Возможные значения – COEF (тип - коэффициент) , AMOUNT (тип – объем)

Пример указания типа акции в файле импорта:

SET_CMP_TYPE;id_акции1;COEF
SET_CMP_TYPE;id_акции2;AMOUNT

Другой возможный способ задания типа акции через команду SET_CMP_PARAMS: (в разделе #campaigns файла загрузки акций)

Пример: SET_CMP_PARAMS;6;{«campaignType»:«AMOUNT»}

Загрузка планируемых объемов спроса для акций типа Объем

При загрузке акций в программу можно задать планируемый объем спроса и комментарии. Это делается при помощи команды SET_CMP_AMOUNT

Общий вид команды

SET_CMP_AMOUNT;акция;склад;артикул;клиент;дата(формат даты либо дд.мм.год или год-мм-дд);объём;комментарий
Примеры команды в файле импорта акций:
SET_CMP_AMOUNT;id_акции1;склад1;артикул1;клиент1;2016-01-11;100;какой-то комментарий

Пример файла для загрузки акции типа Объем

#campaigns
ADD_CMP;6;Акция по герметикам;04.05.2016;05.05.2016;1;Большие скидки;
SET_CMP_PARAMS;6;{"campaignType":"AMOUNT","userFields":{}} – **задан тип акции Объем**
ADD_WHS;Склад 1;6
SET_CMP_AMOUNT;6;Склад 1;60000202;;2016-05-04;2000;Заберут 2000 – **задан артикул, планируемый объем спроса по нему и комментарий**
#itemsCampaigns
ADD_SKU;60000209;6
#itemsCompareCampaigns

Очистка планируемых объемов спроса

Вид команды для очистки планируемых объемов:

CLEAR_CMP_AMOUNT_DATA;id_акции 

При использование такой команды будет очищены планируемые объемы спроса у акции с идентификатором id_акции

Команда задается в разделе #campaigns файла загрузки акций

Пример работы с программой для командной строки Windows

Пример любезно предоставлен компанией ТОО Барс-NORD.

@echo off

rem ------------------------------------------------
rem Описание выгрузки:
rem Каждый день из системы учета выгружается история продаж в сетевую папку в формате .csv,
rem при чем файл именуется определенным образом: 
rem [Имя базы данных]_[название СУБД]_[текущая дата в формате ГГГГММДД].csv;
rem Аналогично каждый день выгружается классификация в сетевую папку в формате .csv,
rem при чем файл именуется следующим образом: 
rem classification_[текущая дата в формате ГГГГММДД].csv
rem ------------------------------------------------

rem Переход в папку с консольной утилитой импорта...
cd "C:\Program Files (x86)\ForecastNOW\"

rem Задаем путь запуска консольной утилиты импорта...
set fnow_file="C:\Program Files (x86)\ForecastNOW\FSystemConsole.exe"

rem Формирование даты в формате выгрузки ГГГГММДД...
set now=%DATE:~-4%%DATE:~3,2%%DATE:~0,2%

rem Задаем файл формата...
set fnow_base_format="C:\ForecastNOW\Export\format.format"

rem ------------------------------------------------
rem Обновление базы 
rem Задаем файл обновлений...
set fnow_update_file="C:\ForecastNOW\Export\Sales_History\history_%now%.csv"

rem Задаем файл классификации
set fnow_base_classification="C:\ForecastNOW\Export\Classification\classification_%now%.csv"

rem Задаем путь к файлу базы данных или название базы данных в MySQL версии...
set fnow_base_file="databasename"

rem Задаем параметры обновления истории продаж...
set fnow_update_paremetrs= -sh -a %fnow_base_format% %fnow_update_file% %fnow_base_file%

rem Запуск обновления истории продаж:
%fnow_file% import %fnow_update_paremetrs%

rem Задаем параметры обновления классификации...
set fnow_update_paremetrs= -o -r %fnow_base_classification% %fnow_base_file%

rem Запуск обновления классификации:
%fnow_file% import %fnow_update_paremetrs%

Очистка данных

Очистка аналогов

Команда для очистки аналогов

FSystemConsole.exe remove analogs <target_database>

<target_database> - имя базы, в которой нужно удалить все аналоги - для sqlite базы - полный путь к ней, для MYSql - название базы

Удаление товаров

Можно удалять товары из базы через консольную утилиту.

Команда для удаления товаров

 FSystemConsole remove products <путь к файлу с артикулами> <имя или путь к базе>

<путь к файлу с артикулами> - путь к файлу с форматом строки: артикул.

Например:

400000015
weqwe-ewqee-wwew-1111

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