
Ваш путеводитель по интеграции V5!

Интеграция формул между V5 Traceability и ERP-системой клиента позволяет импортировать формулы/рецепты/спецификации материалов, где их затем можно планировать через рабочие задания для производства партии or продукты с помощью терминала V5.
Дополнительную информацию о том, как работает модуль формулирования в V5 Traceability, см. в нашем руководстве по модулю. здесь.
Что касается того, как мы можем связать детали формулы с тем, что мы видим в Центре управления, мы будем использовать API V5 и шлюз для заполнения как верхних ‘Formula’ панель для ввода данных заголовка формулы, а также нижняя ‘Formula Step’ панель для заполнения сведений о шаге формулы.
В зависимости от нашего метода интеграции мы будем использовать ‘Formula’ и ‘FormulaStep’ конечные точки, чтобы заполнить обе эти панели и завершить настройку формулы.
Чтобы узнать больше об определениях этих классов базы данных, перейдите по следующим ссылкам:
Шаблон интеграции для Формул можно скачать здесь.
Первичные ключи — это уникальный идентификатор для каждой таблицы в V5 API. Для Formula, это:
commodity.code – Базовый товарный код формулы. Номер формулы/рецепта.
Для пакетов FormulaStep, первичные ключи:
formula.commodity.code – Тот же код товара для самой формулы, как описано выше.
sequence – Используется для определения порядка отдельных шагов формулы в настройке формулы, т. е. 1, 2, 3 и т. д.
Другие поля, которые требуются SG для заполнения допустимой строки формулы в Центре управления:
Для пакетов Formula:
type – Тип формулы. Это значение должно быть 0 (для формулы партии) или 1 (для формулы продукта).
defaultSize - 'Базовый размер' рассматриваемой формулы.
commodity.units.code – Единица веса, в которой должна быть выведена формула. Если не указано иное, формула будет создана в единицах измерения базы данных по умолчанию.
Для пакетов FormulaStep:
type - формула шаг напишите.
Типы шагов следующие:
0 – Взвесить
1 – Ключевой ввод
2 – Вопрос
3 – Сообщение
4 – Смена контейнера
5 – Компонент продукта
6 – Упаковка продукта
7 – Субмикс
8 – Сортировка
9 - Массовая диспенсия
10 - Необязательно
11 – Сканировать
12 - Пересматривать
13 – Приостановить
Предпочтительные поля служат для добавления дополнительной информации по рассматриваемой формуле и, хотя и не являются обязательными, полезны, когда речь идет о дополнительных функциях в V5 Traceability.
Для пакетов Formula эти поля:
commodity.units.code – Единица веса, в которой должна быть выведена формула. Если не указано иное, формула будет создана в единицах измерения базы данных по умолчанию.
minimumProducts – Минимальный размер партии, которую можно изготовить
maximumProducts – Максимальный размер партии, которую можно изготовить.
Для пакетов FormulaStep эти поля:
sequence – последовательность шагов формулы, т.е. в каком порядке она должна обрабатываться при производстве.
commodity.code – товар/ингредиент, который будет использоваться на конкретном этапе
targetQty – целевой вес для конкретного шага
unit.code – единица измерения этого конкретного шага
question.question– Если этот шаг должен быть вопросом или сообщением, его можно ввести с помощью этого поля.
Мы можем, как мы видели в разделах первичных ключей и обязательных полей, перемещаться между этими 2 'formula'И'formulaStep' классы и поэтому могут включать вышеуказанные точки данных для использования с любым классом, при условии, что мы можем успешно перейти к этому классу.
Также могут быть включены дополнительные поля, например, для FormulaStep:
upperTol – Верхний допуск для этого конкретного этапа, т.е. максимально допустимый вес, превышающий целевое количество, чтобы быть приемлемым при производстве формулы.
lowerTol – Более низкий допуск для этого конкретного этапа, т.е. максимально возможный вес ниже целевого количества, чтобы быть приемлемым при производстве формулы.
schedule – Следует ли планировать этот шаг при создании формулы. Полезно для шагов, которые являются субмиксами и должны быть созданы одновременно с основной формулой.
Как обсуждалось выше, мы все равно можем использовать эти точки данных при использовании ‘formula’ конечную точку, просто перейдя к ‘formulaStep’ класс, добавив ‘formulaStep’ каждому из вышеперечисленного.
В зависимости от нашей методологии интеграции формул мы обычно используем разные конечные точки; Для интеграции API мы обычно используем ‘Formula’и для CSV ‘FormulaStep’. Теперь мы можем взглянуть на оба из них и понять, почему это так.
Формула:
Мы можем использовать ‘Formula’ конечная точка для создания новых формул для производства в V5 Traceability. Как мы увидим, использование этой конечной точки позволяет нам легко сохранить заголовок формулы и информацию о шаге в одном файле.
‘Formula’ импортировать конечную точку/URI –
http://host:port/V5-API/api/integrate/import/formula
Для этого примера импорта с помощью ‘Formula’ конечную точку, мы можем структурировать базовый файл импорта для одной формулы с двумя шагами формулы, как показано ниже:

Этот образец файла JSON можно загрузить здесь.
Используя руководство по API, мы можем наметить пути, которые мы используем для перехода к различным классам, которые нам нужно использовать для этого импорта. в ‘Formula’ мы видим, что все, что мы здесь используем, это ‘type’ и ‘productionLocation’. Отсюда нам нужно определить нашу формулу информации о товаре, что мы можем сделать, пройдя от ‘Formula’ в ‘Commodity’. Здесь мы можем ввести информацию о товаре для самой формулы (ее код, описание и т.д.).
Чтобы затем определить шаги формулы, нам сначала нужно перейти к ‘FormulaStep’ класс, где мы можем определить тип шага, целевое количество, допуски и т. д. Отсюда мы снова перейдем к ‘Commodity’ класс, за исключением того, что здесь, из-за маршрута, который мы выбрали к классу, мы будем определять информацию о товаре для ингредиента, который будет использоваться для определенного шага формулы, а не информацию заголовка, которую мы определили уже выше.
Отсюда мы затем пройдем от обоих ‘Commodity’ занятия, чтобы прийти в ‘WeightUnit’ class, где мы можем определить ЕИ как для самой формулы, так и для каждого отдельного шага. Таким образом, хотя мы используем для этого один и тот же класс, мы достигли этого двумя разными способами, что отражено в определениях, которые мы видим (commodity.units.code vs formulaStep.commodity.units.code), что позволяет нам использовать разные единицы измерения при желании.
Здесь мы можем увидеть сводку поиска пути, необходимого для создания вышеуказанного файла JSON:

Мы можем создать остальные необходимые точки данных, используя аналогичный метод поиска пути.
Если мы запустим файл JSON, указанный выше, мы увидим, что эта новая формула вместе со всеми ее шагами теперь отображается на вкладке «Формулы» в Центре управления.

ФормулаШаг:
‘FormulaStep’ импортировать конечную точку/URI –
http://host:port/V5-API/api/integrate/import/formula_step
Для этого примера импорта с помощью ‘FormulaStep’ endpoint, мы рассмотрим импорт той же формулы, что и выше, но просто изменим ее имя. Используя эту конечную точку, мы можем структурировать этот файл, как показано ниже:
Мы также можем воспользоваться ‘FormulaStep’ конечная точка для создания новых формул для производства в V5 Traceability. Это будет работать во многом так же, как использование ‘Formula’ выше, но нам фактически пришлось бы проходить классы базы данных в обратном порядке, поэтому вместо перехода от ‘Formula’ в ‘FormulaStep’, мы бы пошли от ‘FormulaStep’ в ‘Formula’. Ниже мы можем увидеть, как это будет работать:

Этот образец файла JSON можно загрузить здесь.
Как мы видим здесь, мы вводим ту же информацию с точки зрения шагов и просто меняем имя формулы. Обратите внимание на обход от ‘formulaStep’ класс к ‘formula’ class, а также тот факт, что эта информация должна быть вложена для каждого шага формулы.
Если мы теперь запустим этот пример файла JSON, наша дублирующая формула теперь будет создана с теми же настройками, которые мы видели при использовании ‘Formula’ конечная точка.

Что касается получения файлов, относящихся к формулам/рецептам, обратно из API V5, мы на самом деле не отслеживаем здесь какие-либо данные о потреблении, поэтому вместо этого мы просто будем экспортировать конфигурацию/настройку формулы. Для этого есть еще несколько вариантов, если мы проверим доступные ‘IntegrationExport’ услуги:
Формула:
Экспорт конечной точки/URI –
http://host:port/V5-API/api/integrate/export/formula/{code}
Эта конечная точка экспортирует файл JSON со всей связанной информацией для конкретной формулы. Если мы запустим этот запрос GET для формулы, которую мы создали с помощью ‘Formula’ endpoint, мы получим файл возврата, который выглядит примерно так:

Пример файла JSON можно скачать здесь.
All Formulas:
Экспорт конечной точки/URI –
http://host:port/V5-API/api/integrate/export/formulas
Эта конечная точка экспортирует файл JSON, содержащий список всех формул, содержащихся в системе. Обратите внимание, что это вернет только данные заголовка для каждой формулы. Чтобы получить шаги формулы, см. ниже.
Образцы JSON-файлов этого типа можно скачать здесь.
Шаг формулы:
Экспорт конечной точки/URI –
http://host:port/V5-API/api/integrate/export/formula_step/{code}/{sequence}
Эту конечную точку можно настроить для возврата данных для определенного шага определенной формулы. Мы бы указали, какой шаг мы хотим получить, используя его порядковый номер. Если мы достигнем этой конечной точки, чтобы получить шаг 1 первого примера формулы, которую мы создали выше, мы получим результат, который выглядит примерно так:

Этот пример файла JSON можно скачать здесь.
Шаги формулы:
Экспорт конечной точки/URI –
http://host:port/V5-API/api/integrate/export/formula_steps/{all}
Эта конечная точка предоставляет список всех шагов формулы в системе. Мы можем изменить возврат, используя либо ‘/true’ or ‘/false’ на месте ‘/{all}’ в URI выше. ‘True’ экспортирует список всех шагов в системе, тогда как ‘false’ вернет список шагов, не помеченных как уже экспортированных.
По структуре это будет очень похоже на приведенный выше пример, только с большим количеством шагов. Пример ‘true’ экспорт этого типа можно скачать здесь.
Примечание: После импорта формулы можно защитить от любых изменений, установив флажок «Освобождение от импорта» в заголовке формулы в Центр управления. Это применимо только к методологии CSV.
В приведенных выше примерах JSON мы видели, что мы можем использовать как ‘formula’ и ‘formulaStep’ конечные точки для этой конкретной методологии. Однако для импорта CSV мы будем использовать только ‘formulaStep’ конечная точка.
Имя файла определения заголовка/столбца: “formulaStep.csvh”
Готовые заголовочные файлы должны быть размещены в: “<installdir>\SG Control Center\gateway\import\column_defs”
Импортировать имя файла CSV: “formulaStep-datetime.csv”
CSV для импорта должны быть размещены в: “<installdir>\SG Control Center\gateway\import”
Заголовочный файл:
Файлы заголовков обычно компилируются SG Systems до интеграции CSV, но мы можем увидеть базовый пример того, который мы можем использовать для заданий ниже:

Для получения дополнительной информации о том, как мы структурируем эти файлы, см. главная страница интеграции. Этот образец заголовочного файла можно загрузить здесь.
Файл импорта CSV:
Затем мы можем использовать определенный порядок точек данных в заголовке, чтобы структурировать наш файл импорта. SG Systems может предоставить для этого файл шаблона, в котором перечислены точки данных для каждого столбца, чтобы было понятнее при заполнении списка. Обратите внимание, что эта первая строка может быть проигнорирована Центром управления и поэтому может быть сохранена в файле при отправке на импорт.
Мы снова создадим дубликат формулы 2, которую мы создали с помощью метода JSON, описанного выше. Пример файла импорта формулы в формате CSV может выглядеть примерно так:

Этот пример файла импорта можно загрузить здесь.
После завершения импорта мы видим, что эта дополнительная формула была добавлена в Центр управления с помощью тех же шагов, что и формулы, которые мы создали с помощью импорта JSON выше.

Для экспорта в CSV мы просто будем использовать тот же ‘formulaStep’ файл заголовка/конечная точка, как указано выше для импорта. Это можно скачать здесь.
Имя файла определения заголовка/столбца: “formulaStep.csvh”
Готовые заголовочные файлы должны быть размещены в: “<installdir>\SG Control Center\gateway\export\order”
Экспортировать имя файла CSV: “FormulaStep-datetime.csv”
CSV для экспорта будут созданы в: “<installdir>\SG Control Center\gateway\export”
Это единственный способ получить данные формулы из V5 Traceability в форме CSV.
Этот экспорт также необходимо включить в разделе «Шлюз» Центра управления. Мы можем выбрать здесь для экспорта ‘Formulas’.

Заголовочный файл:
В этом примере мы можем использовать для экспорта заголовок, ранее использовавшийся для импорта. При желании к этому можно добавить дополнительные точки данных.
Файл экспорта CSV:
Включение этого экспорта с использованием ранее использованного заголовка даст файл экспорта для наших трех новых формул, который будет выглядеть следующим образом:

Уникальным для механизма импорта CSV является наличие флажка «Защищено» напротив заголовка формулы в Центре управления:

Если этот флажок установлен, формула будет защищена от любых изменений, вносимых последующими импортами CSV-файлов formulaStep.
Как указано выше, это уникально для методологии импорта CSV; установка этого флажка не защитит формулу от обновлений через JSON/API.