Различия

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

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

Предыдущая версия справа и слева Предыдущая версия
Следующая версия
Предыдущая версия
консоль [13.02.2020 21:38]
Timur Osmanov [Частичная выгрузка данных]
консоль [27.09.2020 22:54] (текущий)
Timur Osmanov [Синтаксис]
Строка 64: Строка 64:
 echo %ERRORLEVEL% >> E:​\log\log-swod-%date%.txt echo %ERRORLEVEL% >> E:​\log\log-swod-%date%.txt
 </​code>​ </​code>​
 +=====Логирование выполнения команды=====
 +
 +Процесс выполнения любой консольной команды можно записывать в лог файл. Для этого, в конце команды нужно указать флаг "''​log''"​ и после знака "''​=''"​ путь к файлу лога.
 +
 +Пример с указанием пути к файлу:
 +<​code>​FSystemConsole.exe import -sh -r "​D:​\FNOW\format.format" ​ "​D:​\FNOW\SALES" ​ base --log=C:​\fcn_logs\log-swod.txt</​code>​
 +
 +Если путь к файлу не указан или файл не доступен,​ то лог консоли будет записан в новый сгенерированный файл в профиле в папке %AppData%\Ingenious Team\ForecastNOW\logs
 +
 +Пример без указания пути к файлу:
 +<​code>​FSystemConsole.exe import -sh -r "​D:​\FNOW\format.format" ​ "​D:​\FNOW\SALES" ​ base --log</​code>​
 +
 +
 +При формирование балансировки с указанием этого флага, записывается расширенный лог.
 =====Логирование неудачных запусков утилиты===== =====Логирование неудачных запусков утилиты=====
  
Строка 119: Строка 133:
 |34| В базе данных нет правил автоустановки с указанным типом| |34| В базе данных нет правил автоустановки с указанным типом|
 |35| Ни одно из введенных названий правил с указанным типом не соответствует тем, что находятся в базе данных| |35| Ни одно из введенных названий правил с указанным типом не соответствует тем, что находятся в базе данных|
 +|36| Массовая загрузка данных в таблицу sales недоступна. Загрузка была произведена в обычном режиме.|
 ====Остановка работы консольной утилиты при возникновение ошибок==== ====Остановка работы консольной утилиты при возникновение ошибок====
 Если во время работы консольной утилиты выявлены ошибки,​ то можно отменить дальнейшее выполнение команд. Для этого нужно в файл для консольной утилиты вставить дополнительную команду:​ Если во время работы консольной утилиты выявлены ошибки,​ то можно отменить дальнейшее выполнение команд. Для этого нужно в файл для консольной утилиты вставить дополнительную команду:​
Строка 159: Строка 174:
  
 - папки с настройками,​ если она указана то файлы gnclient.ini и dbserver-config.ini ищутся там (если не указаны конкретные пути через команды описанные выше), команда --config-path - папки с настройками,​ если она указана то файлы gnclient.ini и dbserver-config.ini ищутся там (если не указаны конкретные пути через команды описанные выше), команда --config-path
 +
 +По умолчанию,​ конфигурационные файлы которые использует программа находятся в ''​C:​\ProgramData\Ingenious Team\ForecastNOW''​ \\
 +Флаг с указанием пути к файлам,​ можно указать в любой части команды.
 =====Импорт данных===== =====Импорт данных=====
 ====Общий синтаксис==== ====Общий синтаксис====
Строка 172: Строка 190:
 ===Тип=== ===Тип===
 <​code>​ <​code>​
- -sh, --sales-history ​  ​импорт истории продаж ​+ -sh, --sales-history ​  ​импорт ​только ​истории продаж ​в csv и xml формате(для csv обязательно указание файла формата)
  -o, -c, --ontology, --classification ​ импорт классификации  -o, -c, --ontology, --classification ​ импорт классификации
  -p, --properties ​ импорт параметров  -p, --properties ​ импорт параметров
  -a, --analogs ​   импорт аналогов  -a, --analogs ​   импорт аналогов
  -mс, --marketing-campaigns ​      ​импорт акций  -mс, --marketing-campaigns ​      ​импорт акций
- -of, ----orderFrequency ​   импорт сроков доставки от поставщиков 
  -sp, --suppliers ​  ​импорт данных поставщиков  -sp, --suppliers ​  ​импорт данных поставщиков
  ​--all ​   импорт файла формата xml, содержащего историю продаж,​ параметры,​ классификацию и даты поступления заказов  ​--all ​   импорт файла формата xml, содержащего историю продаж,​ параметры,​ классификацию и даты поступления заказов
Строка 358: Строка 375:
 <​code>​--dir</​code> ​ <​code>​--dir</​code> ​
  
-Будет произведена загрузка всех csv файлов из директории **Исходник** как файлов истории продаж. **Исходник** обязательно должен быть директорией в этом случае.+Будет произведена загрузка всех csv и xml файлов из директории **Исходник** как файлов истории продаж. **Исходник** обязательно должен быть директорией в этом случае. При этом, csv и xml файлы, можно загружать вместе. Для csv обязательно указание файла формата.
  
 <​code>​--temp-file=<​путь к временному файлу></​code> ​ <​code>​--temp-file=<​путь к временному файлу></​code> ​
  
 Программа автоматически объединит содержимое csv файлов из директории,​ в указанный временный файл и загрузит историю продаж из этого файла. \\ Программа автоматически объединит содержимое csv файлов из директории,​ в указанный временный файл и загрузит историю продаж из этого файла. \\
 +Чтобы загрузка происходила из указанной директории,​ обязательно указание флага "​dir"​ \\
 Если утилите не удастся создать новый временный файл, то об этом будет сообщено,​ программа завершится. \\ Если утилите не удастся создать новый временный файл, то об этом будет сообщено,​ программа завершится. \\
 Если файл с таким именем уже существует,​ то программа попытается его удалить и создать новый. \\ Если файл с таким именем уже существует,​ то программа попытается его удалить и создать новый. \\
Строка 407: Строка 425:
  
 =====Сжатие базы данных===== =====Сжатие базы данных=====
 +Сжатие происходит через массовую загрузку из файла.
 +Файл со сжатой историей продаж создается во временной папке для массовой загрузки (указывается в [[настройки/​глобальные_настройки#​пути_сохранения|Глобальных настройках]]) \\
 +Чтобы все прошло корректно сжатие должно быть запущено на компьютере где расположен сервер СУБД. \\
 +Программа должна быть запущена под пользователем,​ который имеет права на запись во временную папку для массовой загрузке,​ а сервер СУБД имеет права на чтение из этой папки. \\
  
-compress database, где database - имя/путь к базе данных+Перед процессом сжатия, автоматически создается дамп базы. \\ 
 + 
 + 
 +Команда для запуска сжатия ​базы: 
 +<​code>​FSystemConsole.exe compress [database-name]</​code>​ 
 + 
 +database-name - имя базы ​данных
  
 ===Пример=== ===Пример===
Строка 607: Строка 635:
 Объединение сформированных заказов по [[формирование_заказа#​объединение_заказов_по_поставщикам| поставщикам]],​ Объединение сформированных заказов по [[формирование_заказа#​объединение_заказов_по_поставщикам| поставщикам]],​
 [[формирование_заказа#​объединение_заказов_по_поставщикам_и_группе_заказа|поставщику и группе заказа]] или по [[формирование_заказа#​объединение_заказов_по_поставщикам_группе_заказа_и_складу|поставщику,​ группе заказа и складу]]. [[формирование_заказа#​объединение_заказов_по_поставщикам_и_группе_заказа|поставщику и группе заказа]] или по [[формирование_заказа#​объединение_заказов_по_поставщикам_группе_заказа_и_складу|поставщику,​ группе заказа и складу]].
-Выбрать можно только одно объединение+Выбрать можно только одно объединение ​\\ 
 +В название файла объединённого заказа указывается идентификатор заказа.
  
 <​code>​ <​code>​
Строка 734: Строка 763:
 Во время выполнения команды,​ файл настроек проходит проверку на наличие ошибок. Если в файле есть ошибки,​ то балансировка не сформируется и будет выведено соответствующее сообщение,​ с указанием пути где хранится лог файл. Если указан флаг который игнорирует ошибки файла настроек,​ то балансировка сформируется и ошибочные настройки будут заменены на настройки по умолчанию. Во время выполнения команды,​ файл настроек проходит проверку на наличие ошибок. Если в файле есть ошибки,​ то балансировка не сформируется и будет выведено соответствующее сообщение,​ с указанием пути где хранится лог файл. Если указан флаг который игнорирует ошибки файла настроек,​ то балансировка сформируется и ошибочные настройки будут заменены на настройки по умолчанию.
  
-<​code>​user</​code>​ - пользователь,​ чьи настройки будут использованы при балансировке+<​code>​user</​code>​ - пользователь,​ чьи настройки будут использованы при балансировке.  
 +Так же, если в команде указан пользователь,​ то балансировка дополнительно сохраниться в том формате,​ который использовался пользователем последний раз. ​
  
 <note tip> <note tip>
Строка 799: Строка 829:
 алгоритм балансировки;<​по рентабельности|пропорциональное распределение остатка с рц> алгоритм балансировки;<​по рентабельности|пропорциональное распределение остатка с рц>
 направление балансировки;<​значение направления из настроек "​Направления балансировки">​ направление балансировки;<​значение направления из настроек "​Направления балансировки">​
-метод разворота аналогов;<​сначала старые запасы,​ потом новые|сначала дешевые,​ потом дорогие|по приоритету|обратно приоритету>​ </​code>​+метод разворота аналогов;<​сначала старые запасы,​ потом новые|сначала дешевые,​ потом дорогие|по приоритету|обратно приоритету
 +группа заказа;<​не учитывать|основная|балансировка></​code>​
  
 3.3. Дополнительные настройки (если строчка присутствует в файле настроек,​ то эта настройка будет учтена при проведении балансировки) 3.3. Дополнительные настройки (если строчка присутствует в файле настроек,​ то эта настройка будет учтена при проведении балансировки)
Строка 835: Строка 866:
 добавлять к остатку склада-донора остаток в пути добавлять к остатку склада-донора остаток в пути
 алгоритм балансировки;​пропорциональное распределение остатка с рц алгоритм балансировки;​пропорциональное распределение остатка с рц
-направление балансировки;​Распределение остатков рц</​code>​+направление балансировки;​Распределение остатков рц 
 +группа заказа;​балансировка</​code>​
  
 <note important>​ <note important>​
Строка 855: Строка 887:
 ====Полный синтаксис команды==== ====Полный синтаксис команды====
  
-<​code>​FSystemConsole balancing database [source] target [--user] [--filter] [--xml] [--csv] [--xlsx][--consider-balancing] [--no-split-by-destinations] [--no-verification] [--balancing-by-clients]</​code>​+<​code>​FSystemConsole balancing database [source] target [--user] [--filter] [--xml] [--csv] [--xlsx][--consider-balancing] [--no-split-by-destinations] [--no-verification] [--balancing-by-clients] [--no-split-by-order-group]</​code>​
  
  
Строка 864: Строка 896:
   *<​code>​--user Имя пользователя </​code>​- указывается имя пользователя,​ настройки балансировки и отображения которого будут использованы для сохранения балансировки (показанные параметры/​свойства/​анализы,​ единицы измерения и направления балансировки).   *<​code>​--user Имя пользователя </​code>​- указывается имя пользователя,​ настройки балансировки и отображения которого будут использованы для сохранения балансировки (показанные параметры/​свойства/​анализы,​ единицы измерения и направления балансировки).
 Если указывается пользователь то файл настроек указывать не обязательно. Если в команде указан и файл настроек и пользователь,​ то настройки балансировки будут использоваться от указанного пользователя,​ а файл настроек будет проигнорирован. При входе в программу,​ после формирования балансировок,​ будет выведено сообщение,​ что файл настроек использоваться не будет. Если указывается пользователь то файл настроек указывать не обязательно. Если в команде указан и файл настроек и пользователь,​ то настройки балансировки будут использоваться от указанного пользователя,​ а файл настроек будет проигнорирован. При входе в программу,​ после формирования балансировок,​ будет выведено сообщение,​ что файл настроек использоваться не будет.
 +Так же, если в команде указан пользователь,​ то балансировка дополнительно сохраниться в том формате,​ который использовался пользователем последний раз. ​
  
   *<​code>​--filter </​code>​- указание фильтра,​ по которому будет проходить балансировка.   *<​code>​--filter </​code>​- указание фильтра,​ по которому будет проходить балансировка.
Строка 898: Строка 931:
 Если данный флаг не указан,​ то балансировка формируется исходя из настроек балансировки,​ пользователя указанного в команде. Если данный флаг не указан,​ то балансировка формируется исходя из настроек балансировки,​ пользователя указанного в команде.
  
 +  *<​code>​--no-split-by-order-group</​code>​
  
 +При заданных группах заказа,​ сформированные балансировки будут разбиваться в соответствие с заданными значениям групп заказа. Если в консольной команде указан данный флаг, то разбиение по группам заказа не происходит,​ не зависимо от настроек.
 ====Отображение балансировки в интерфейсе программы=== ====Отображение балансировки в интерфейсе программы===
 При выполнении консольной балансировки её результат сохраняется в базу. ​ При выполнении консольной балансировки её результат сохраняется в базу. ​
Строка 1078: Строка 1113:
  
  
-database+database ​- Путь или имя базы для расчетов
  
-путь или имя базы для расчетов+source - [[обеспечение_продаж&#​создать_файл_с_параметрами_анализа_csv_или_txt|Файл]] с параметрами ​расчетов
  
-source+target - Полный путь к Excel csv(.csv) или Excel(.xlsx) файлу, в который будут записаны результаты прогноза.
  
-[[обеспечение_продаж&#​создать_файл_с_параметрами_анализа_csv_или_txt|Файл]] ​с параметрами расчетов. ​+=====Расчёт прогноза ​- плана заказов===== 
 + \\ 
 +**Синтаксис**
  
-target+<​code>​FSystemConsole.exe stockplan database --filter filter [--user userName] --target ​target --dates date1 date2 [--xlsx] [--csv] [настройки плана заказов]</​code>​
  
-Файл, куда сохранятся результаты анализа+''​database''​ - путь или имя базы для расчетов 
 + 
 +''​filter''​- имя фильтра,​ созданного в программе для выбора товаров,​ попадающих в план заказов 
 + 
 +''​user''​ - имя пользователя. Если указан пользователь,​ то используются настройки плана заказов,​ указанные у этого пользователя в программе (Тип анализа,​ Временная корзина,​ Единицы измерения) 
 + 
 +''​target''​ - файл, куда сохранится рассчитанный план заказов 
 + 
 +''​dates''​ - период расчёта плана заказов. dates1 - дата От, dates2 - дата До 
 + 
 +''​xlsx csv''​ - указывается ​в каком формате сохранится план ​заказов xlsx или utf8 csv. если флаг не указан, то сохранится в xlsx. 
 + 
 + 
 +**Настройки плана заказов** 
 + 
 +  * Тип анализа 
 +<​code>​--type (income | ordered | rests | payment)</​code>​ 
 +''​income''​ - Приходы \\ 
 +''​ordered''​ - Заказано \\ 
 +''​rests''​ - Остатки \\ 
 +''​payment''​ - План оплат \\ 
 + 
 +  * Временная корзина 
 +<​code>​--timeBucket (week | month | quarter)</​code>​ 
 +''​week''​ - По неделям \\ 
 +''​month''​ - По месяцам \\ 
 +''​quarter''​ - По кварталам \\ 
 + 
 +  * Единицы измерения 
 +<​code>​--units (sell | purchase | amount | weight | volume | reports | sku)</​code>​ 
 +''​sell''​ - в Реализационных ценах \\ 
 +''​purchase''​ - в Закупочных ценах \\ 
 +''​amount''​ - Нат. ед. \\ 
 +''​weight''​ - Вес \\ 
 +''​volume''​ - Объём \\ 
 +''​reports''​ - Число заказов \\ 
 +''​sku''​ - SKU \\ 
 + 
 +<note important>​План оплат формируется только в закупочных ценах и не может быть поквартальным.</​note>​ 
 + 
 +**Пример команды**
  
 +<​code>​FSystemConsole.exe stockplan demo.db --filter filter№1 --user FCN --target "​D:​\FNOW\OUT"​ --dates 01.01.2020 01.04.2020 </​code>​
 =====Проведение ABC анализа===== =====Проведение ABC анализа=====
 Вы можете проводить ABC- XYZ и кросс ABC-анализ автоматически при помощи консольной утилиты. Результаты анализа запишутся в базу, а также в Excel файл с разбиением товаров по группам. Вы можете проводить ABC- XYZ и кросс ABC-анализ автоматически при помощи консольной утилиты. Результаты анализа запишутся в базу, а также в Excel файл с разбиением товаров по группам.
Строка 1113: Строка 1191:
 дополнительные столбцы;​список через ';'​ свойств и параметров для вывода</​code>​ дополнительные столбцы;​список через ';'​ свойств и параметров для вывода</​code>​
  
-склад - имя ​склада или пусто (тогда расчет будет произведен по всем складам)+склад - код ​склада или пусто (тогда расчет будет произведен по всем складам)
  
 тип - группа или срез тип - группа или срез
Строка 1197: Строка 1275:
 <​code>​assortiment database source target [--user username] [--public]</​code>​ <​code>​assortiment database source target [--user username] [--public]</​code>​
  
-target - xls файл, в который будут записаны итоги анализа+target - полный путь к xls или xlsx файлу, в который будут записаны итоги анализа.
  
 флаг - -public - сделать доступным итоги анализа всем пользователям флаг - -public - сделать доступным итоги анализа всем пользователям