Понадобилось добавить ограничение цены для товара в SAP Commerce (Hybris) — десятичная цена должна быть больше или равна нулю.
В принципе — это не сложно сделать через Backoffice (Система - Проверка - Ограничения
), но тогда, при переиницаиализации платформы, внесённые изменения будут удалены. Поэтому — лучше создать файл impex, который автоматически накатится при обновлении или инициализации Hybris.
Чтобы не забыть — сохраню себе на память содержимое такого файла. Проверить работоспособность можно вручную — в HAC (Console - ImpEx Import
), после чего надо перезагрузить механизм ограничений в Backoffice.
Что даёт это ограничение — при попытке задать товару нулевую или отрицательную цену — будет выскакивать соответствующее сообщение об ошибке (содержимое message[lang=en]
или message[lang=ru]
, в зависимости от текущей локали).
INSERT_UPDATE DecimalMinConstraint;id[unique=true];severity(code,itemtype(code));active;annotation;descriptor(enclosingType(code),qualifier);message[lang=en];message[lang=ru];value;inclusive
;PriceMustBeGreaterThanZero;ERROR:Severity;true;javax.validation.constraints.DecimalMin;PriceRow:price;Price must be greater than zero;Цена должна быть больше нуля;0,00000000;false