Различия

Здесь показаны различия между двумя версиями данной страницы.

Ссылка на это сравнение

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
консоль [09.07.2019 04:53]
Evgeny Viktorov [Пример работы с программой для командной строки Windows]
консоль [12.11.2019 06:27] (текущий)
Timur Osmanov [Применение правил автоматической установки]
Строка 28: Строка 28:
 FSystemConsole.exe import --properties -r D:​\FNOW\SUPPLIERS\Suppliers.csv base >> C:​\fcn_logs\log-swod-%date%.txt FSystemConsole.exe import --properties -r D:​\FNOW\SUPPLIERS\Suppliers.csv base >> C:​\fcn_logs\log-swod-%date%.txt
  
-rem загружаем поля для товаров в режиме ​замены, выводим логи загрузки в отдельный файл+rem загружаем поля для товаров в режиме ​обновления, выводим логи загрузки в отдельный файл
 FSystemConsole.exe import --items-fields -a D:​\FNOW\SUPPLIERS\Itemfields.csv base >> C:​\fcn_logs\log-swod-%date%.txt FSystemConsole.exe import --items-fields -a D:​\FNOW\SUPPLIERS\Itemfields.csv base >> C:​\fcn_logs\log-swod-%date%.txt
  
Строка 60: Строка 60:
 timeout 300 > NULL timeout 300 > NULL
  
-rem формируем заказы по фильтру 1 с учетом ранее проведенной балансировки+rem формируем заказы по фильтру 1 с учетом ранее проведенной балансировки, возможные ошибки консоли выводим в отдельный файл
 FSystemConsole.exe make-orders --user "​user"​ --consider-balancing "​1"​ "​base"​ "​D:​\FNOW\OUT\ORDERS"​ >> C:​\fcn_logs\log-swod-%date%.txt FSystemConsole.exe make-orders --user "​user"​ --consider-balancing "​1"​ "​base"​ "​D:​\FNOW\OUT\ORDERS"​ >> C:​\fcn_logs\log-swod-%date%.txt
 +echo %ERRORLEVEL% >> E:​\log\log-swod-%date%.txt
 </​code>​ </​code>​
 =====Логирование неудачных запусков утилиты===== =====Логирование неудачных запусков утилиты=====
Строка 80: Строка 81:
 {{ settings: consolelog.png?​550 }} {{ settings: consolelog.png?​550 }}
  
 +
 +Если консольная утилита завершилась из-за возникновения ошибки,​ то создаётся [[crashdumps|дамп памяти]]. \\
 +Путь к созданному файлу дампа, отображается в командной строке. По умолчанию файл дампа памяти создаётся в папке C:​\ProgramData\Ingenious Team\ForecastNOW\CrashDumps в формате dmp. \\
 +Данный файл можно передать в службу технической поддержки,​ для анализа и выявления причины завершения работы консольной утилиты.
 ====Коды ошибок при работе консольной утилиты==== ====Коды ошибок при работе консольной утилиты====
 |0| Нормальное завершение работы| |0| Нормальное завершение работы|
Строка 112: Строка 117:
 |29| У товара нет ближайшей доступной даты формирования заказа| |29| У товара нет ближайшей доступной даты формирования заказа|
 |31| Ошибка аутентификации при отправке заказа по электронной почте| |31| Ошибка аутентификации при отправке заказа по электронной почте|
 +|34| В базе данных нет правил автоустановки с указанным типом|
 +|35| Ни одно из введенных названий правил с указанным типом не соответствует тем, что находятся в базе данных|
 ====Остановка работы консольной утилиты при возникновение ошибок==== ====Остановка работы консольной утилиты при возникновение ошибок====
 Если во время работы консольной утилиты выявлены ошибки,​ то можно отменить дальнейшее выполнение команд. Для этого нужно в файл для консольной утилиты вставить дополнительную команду:​ Если во время работы консольной утилиты выявлены ошибки,​ то можно отменить дальнейшее выполнение команд. Для этого нужно в файл для консольной утилиты вставить дополнительную команду:​
Строка 158: Строка 165:
 </​code>​ </​code>​
  
-режим - замена,​ обновление или частичное обновление +режим - замена,​ обновление или частичное обновление ​\\ 
-формат - формат истории продаж,​ актуально только для истории продаж +формат - формат истории продаж,​ актуально только для истории продаж ​\\ 
-база_данных - название базы данных Forecast NOW!+база_данных - название базы данных Forecast NOW! \\
  
  
Строка 172: Строка 179:
  -of, ----orderFrequency ​   импорт сроков доставки от поставщиков  -of, ----orderFrequency ​   импорт сроков доставки от поставщиков
  -sp, --suppliers ​  ​импорт данных поставщиков  -sp, --suppliers ​  ​импорт данных поставщиков
- ​--all ​   импорт файла формата xml, содержащего историю продаж ​и параметры+ ​--all ​   импорт файла формата xml, содержащего историю продажпараметры, классификацию и даты поступления заказов
  ​--storage-aliases ​ импорт файла, содержащего названия складов  ​--storage-aliases ​ импорт файла, содержащего названия складов
  ​--customer-purchases ​  ​импорт файла, содержащего закупки для клиентов  ​--customer-purchases ​  ​импорт файла, содержащего закупки для клиентов
Строка 190: Строка 197:
 --prepare-report-settings импорт файла, содержащего фильтры подготовки заказа --prepare-report-settings импорт файла, содержащего фильтры подготовки заказа
 --recipients-limits импорт файла, содержащего ограничения для внутренних перемещений --recipients-limits импорт файла, содержащего ограничения для внутренних перемещений
 +--clients импорт файла содержащего данные по клиентам
 </​code>​ </​code>​
  
Строка 257: Строка 265:
 [[формат_данных_для_загрузки#​ограничения_на_внутренние_перемещения|Формат файла ограничений на внутренние перемещения]] [[формат_данных_для_загрузки#​ограничения_на_внутренние_перемещения|Формат файла ограничений на внутренние перемещения]]
  
 +==Данные по клиентам==
 +[[формат_данных_для_загрузки#​данные_по_клиентам|Формат файла с данными по клиентам]]
 ===Режим(только для истории продаж,​ классификации,​ произвольных полей товаров,​ параметров)=== ===Режим(только для истории продаж,​ классификации,​ произвольных полей товаров,​ параметров)===
  
Строка 368: Строка 378:
 Флаг должен быть указан ​ сразу после [[консоль#​тип|типа]] импортируемого файла Флаг должен быть указан ​ сразу после [[консоль#​тип|типа]] импортируемого файла
  
- +<​code>​--user <​пользователь></​code>​ 
 +Используется при загрузке настроек балансировки. Указывается пользователь  
 +для которого производится загрузка настроек балансировки.
  
  
Строка 402: Строка 413:
 ===Пример=== ===Пример===
  
-<​code>​FSystemConsole.exe ​update ​base </​code>​+<​code>​FSystemConsole.exe ​compress ​base </​code>​
 =====Формирование заказов без участия пользователя===== =====Формирование заказов без участия пользователя=====
  
Строка 498: Строка 509:
 <​!---rc-to-buy-immutable - Заказать без корректировок---->​ <​!---rc-to-buy-immutable - Заказать без корректировок---->​
 <​!---rc-to-buy-untreated - Заказать без обработок---->​ <​!---rc-to-buy-untreated - Заказать без обработок---->​
 +<​!---rc-manual-edit - Ручное редактирование---->​
 <​!---rc-purchase-price - Цена закупа---->​ <​!---rc-purchase-price - Цена закупа---->​
 <​!---rc-purchase-cost - Сумма---->​ <​!---rc-purchase-cost - Сумма---->​
Строка 616: Строка 628:
  
  | --group-order-roundbystorage storage  | --group-order-roundbystorage storage
-<​code>​----save-union-only</​code>​+<​code>​--save-union-only</​code>​
 Сохранение только объединенных заказов Сохранение только объединенных заказов
  
Строка 645: Строка 657:
 <​code>​--email</​code>​ <​code>​--email</​code>​
 Флаг для автоматической [[формирование_заказа#​отправка_заказа_поставщику_по_электронной_почте|отправки сохранённых заказов на email]], указанный в карточке поставщика. Заказы отправляются только при указание флага с форматом,​ в указанном формате. Флаг для автоматической [[формирование_заказа#​отправка_заказа_поставщику_по_электронной_почте|отправки сохранённых заказов на email]], указанный в карточке поставщика. Заказы отправляются только при указание флага с форматом,​ в указанном формате.
 +
 +Пустые заказы и нулевые заказы (где у всех позиций заказать =0) отправлены не будут
  
 <​code>​filter</​code>​ <​code>​filter</​code>​
Строка 696: Строка 710:
 2) не удалит заказы с диска. тогда заказы перестанут грузится у всего набора пользователей П. об этом будет сообщено в явном виде в программе. 2) не удалит заказы с диска. тогда заказы перестанут грузится у всего набора пользователей П. об этом будет сообщено в явном виде в программе.
  
 +Если при формирование заказов,​ должны быть учтены ограничения поставщиков,​ но по каким то причинам,​ ограничения не были соблюдены,​ то при запуске программы будет выведено соответствующее сообщение,​ со списком заказов. Товарам к которым не применилось ограничение,​ будет записан соответствующий комментарий.
  
  
Строка 738: Строка 753:
 ===Формат файла с настройками балансировки=== ===Формат файла с настройками балансировки===
 Рекомендуется указывать файл настроек балансировки,​ сохраненного из программы в соответствующем [[формат_данных_для_загрузки#​настройки_балансировки|формате]] Рекомендуется указывать файл настроек балансировки,​ сохраненного из программы в соответствующем [[формат_данных_для_загрузки#​настройки_балансировки|формате]]
-</​note> ​в комбинации с использованием фильтра для отбора товаров,​ участвующих в балансировке.+в комбинации с использованием фильтра для отбора товаров,​ участвующих в балансировке.
  
 Также поддерживается,​ формат,​ позволяющий задавать товары,​ участвующие в балансировке и прочие параметры ее проведения:​ Также поддерживается,​ формат,​ позволяющий задавать товары,​ участвующие в балансировке и прочие параметры ее проведения:​
Строка 782: Строка 797:
 расписание заказов;<​основное|балансировка>​ расписание заказов;<​основное|балансировка>​
 алгоритм балансировки;<​по рентабельности|пропорциональное распределение остатка с рц> алгоритм балансировки;<​по рентабельности|пропорциональное распределение остатка с рц>
-направление балансировки;<​значение направления из настроек "​Направления балансировки">​ </​code>​+направление балансировки;<​значение направления из настроек "​Направления балансировки"​
 +метод разворота аналогов;<​сначала старые запасы,​ потом новые|сначала дешевые,​ потом дорогие|по приоритету|обратно приоритету> </​code>​
  
 3.3. Дополнительные настройки (если строчка присутствует в файле настроек,​ то эта настройка будет учтена при проведении балансировки) 3.3. Дополнительные настройки (если строчка присутствует в файле настроек,​ то эта настройка будет учтена при проведении балансировки)
  
 <​code>​учитывать аналоги <​code>​учитывать аналоги
-разворачивать аналоги 
 не учитывать разницу цен не учитывать разницу цен
 норма складского запаса равна сроку поставки + периодичность норма складского запаса равна сроку поставки + периодичность
Строка 806: Строка 821:
 доставка;​от(РЦ1);​до(РЦ2);​срок(1);​стоимость(2000);​кг(3);​%(4) доставка;​от(РЦ1);​до(РЦ2);​срок(1);​стоимость(2000);​кг(3);​%(4)
 доставка;​от(РЦ1);​до(Ф2);​срок(455);​стоимость(21);​кг(1);​%(20) доставка;​от(РЦ1);​до(Ф2);​срок(455);​стоимость(21);​кг(1);​%(20)
-Отображать все нулевые перемещения;​Отображать все+Отображать все нулевые перемещения;​Есть дефицит
 доход на высвобожденные средства;​10 доход на высвобожденные средства;​10
 не перемещать товар;​14 не перемещать товар;​14
Строка 813: Строка 828:
 расписание заказов;​балансировка расписание заказов;​балансировка
 учитывать аналоги учитывать аналоги
-разворачивать аналоги+метод ​разворота аналогов;​сначала старые запасы,​ потом новые
 не учитывать разницу цен не учитывать разницу цен
 норма складского запаса равна сроку поставки + периодичность норма складского запаса равна сроку поставки + периодичность
Строка 863: Строка 878:
  
 При указании этих флагов (одного или нескольких) балансировка также будет сохраняться в указанном формате. По умолчанию балансировка сохраняется в excel csv, для флага "​--csv"​ просто в csv (в имя файла дописывается --csv так как расширение файлов у них одинаковое). Если файл цели указан с расширением xml, то флаг "​--xml"​ можно не указывать. При указании этих флагов (одного или нескольких) балансировка также будет сохраняться в указанном формате. По умолчанию балансировка сохраняется в excel csv, для флага "​--csv"​ просто в csv (в имя файла дописывается --csv так как расширение файлов у них одинаковое). Если файл цели указан с расширением xml, то флаг "​--xml"​ можно не указывать.
 +В excel csv формате балансировка сохраняется всегда.
 +
  
   *<​code>​--no-split-by-destinations</​code>​   *<​code>​--no-split-by-destinations</​code>​
Строка 947: Строка 964:
  ​Далее указываются статусы для фильтрации. Для указания нескольких статусов их нужно перечислить через ;  ​Далее указываются статусы для фильтрации. Для указания нескольких статусов их нужно перечислить через ;
  
-Виды [[акции_новые&#​фильтрация_по_коэффициенту_увеличения_спроса|значений]]:​+Виды [[акции_новые1#​фильтрация_по_коэффициенту_увеличения_спроса|значений]]:​
  
   *notset - не установлен   *notset - не установлен
Строка 961: Строка 978:
   *exceeded_period_treshold - период акции больше,​ чем указан в [[настройки/​глобальные_настройки#​Ограничение для расчета акций по их длительности|глобальной настройке]]   *exceeded_period_treshold - период акции больше,​ чем указан в [[настройки/​глобальные_настройки#​Ограничение для расчета акций по их длительности|глобальной настройке]]
  
 +Если используются [[настройки/​глобальные_настройки#​коэффициенты_акций_по_товарам|потоварные коэффициенты акций]],​ то расчёт и прогнозирование коэффициентов,​ будет производиться только по товарам удовлетворяющим условиям фильтра.
 ==Фильтрация по времени проведения акций== ==Фильтрация по времени проведения акций==
 Акции можно отфильтровать по времени их проведения ​ - прошедшие,​ текущие,​ будущие Акции можно отфильтровать по времени их проведения ​ - прошедшие,​ текущие,​ будущие
Строка 1029: Строка 1047:
 ==Прогресс - бар== ==Прогресс - бар==
 В командной строке будет отражен прогресс-бар степени завершенности расчета акций и число рассчитанных и расчитываемых акций ​ В командной строке будет отражен прогресс-бар степени завершенности расчета акций и число рассчитанных и расчитываемых акций ​
-=====Проведение анализа-эффективности без участи пользователя=====+=====Проведение анализа-эффективности без участия пользователя=====
  
 ====Синтаксис==== ====Синтаксис====
Строка 1199: Строка 1217:
 source - файл настроек (может не существовать,​ если задан ключ --dates) source - файл настроек (может не существовать,​ если задан ключ --dates)
  
-target - файл для сохранения результата - если указаны форматы сохранения при помощи флагов,​ то расширение файла можно не прописывать,​ если не указfны - то расширение xlsx+target - файл для сохранения результата - если указаны форматы сохранения при помощи флагов,​ то расширение файла можно не прописывать,​ если не указаны - то расширение xlsx
  
 --dates dateFrom dateTo - даты от и до для расчёта. Если не указан ключ --dates и даты, то даты берутся из файла настроек. Если указан ключ, но не даты, то берутся минимальная и максимальная даты из базы. Если указан ключ и даты, то берутся даты из аргументов --dates dateFrom dateTo - даты от и до для расчёта. Если не указан ключ --dates и даты, то даты берутся из файла настроек. Если указан ключ, но не даты, то берутся минимальная и максимальная даты из базы. Если указан ключ и даты, то берутся даты из аргументов
Строка 1240: Строка 1258:
  
 <​code>​ <​code>​
-analogs ​             очистка аналогов +analogs ​                 очистка аналогов 
-products ​            ​удаление товаров из базы +products ​                ​удаление товаров из базы 
-customer-purchases ​  ​удаление закупок для клиентов +customer-purchases ​      ​удаление закупок для клиентов 
-composite ​           очистка данных о комплектах +composite ​               очистка данных о комплектах 
-items-fields ​        ​очистка полей для товаров +items-fields ​            ​очистка полей для товаров 
-arrivals ​            ​очистка дат поступления заказов +arrivals ​                ​очистка дат поступления заказов 
-orders ​              ​очистка реестра заказов +orders ​                  ​очистка реестра заказов 
-order-schedule ​    ​очистка расписаний заказов +order-schedule ​          ​очистка расписаний заказов 
-storage-graphs ​     иерархия складов+storage-graphs ​          ​иерархия складов
 balancing-destinations ​  ​направления балансировки balancing-destinations ​  ​направления балансировки
 +clients ​                 справочник клиентов
 </​code>​ </​code>​
  
Строка 1372: Строка 1391:
  
 <​code>​ <​code>​
-FSystemConsole ​acvtivate-licence ​<​путь к файлу лицензии>​+FSystemConsole ​activate-license ​<​путь к файлу лицензии>​
 </​code>​ </​code>​
  
Строка 1404: Строка 1423:
 Если во время работы команды что-то пойдёт не так, то об этом будут сообщено в журнале через ненулевой код возврата. Если во время работы команды что-то пойдёт не так, то об этом будут сообщено в журнале через ненулевой код возврата.
  
 +=====Очистка журнала действий пользователей=====
 +
 +<​code>​FSystemConsole clearlog database</​code>​
 +
 +database - имя базы
 +
 +Команда позволяет очистить журнал действий пользователей от старых записей,​ которые не попадают в период указанный в [[настройки/​глобальные_настройки#​хранение_истории_действий_пользователя|глобальной настройке]] \\
 +Если глобальная настройка по [[настройки/​глобальные_настройки#​очищать_журнал_действий_пользователя_при_закрытии_программы|автоматической очистки журнала]] выключена,​ то можно использовать данную команду.
 +
 +=====Применение правил автоматической установки=====
 +<​code>​FSystemConsole apply-parameters-rules [--general/​--seasonal] database [--names/​--tags] </​code>​
 +
 +general — применить все правила кроме сезонности \\
 +seasonal — расчет и применение правил сезонности
 +
 +Совместное использование в одной команде флагов general и seasonal, не допускается
 +
 +database — название базы
 +
 +names — после флага, в кавычках,​ через запятую,​ указываются названия правил ("​правило1,​правило2,​правило3"​),​ которые нужно применить. \\
 +tags — после флага, в кавычках,​ через пробел,​ указывается список тэгов в соответствие с которыми применяются автоправила
 +
 +Совместное использование в одной команде флагов names и tags, не допускается
 +
 +
 +Если список названий правил и тип правил,​ не указаны,​ то операция будет произведена над всеми правилами в базе(если такие есть).