Используйте при моделировании, загрузке или устранении неполадок с данными продуктов и прайс-листов Salesforce — охватывает цепочку из трёх объектов Product2 → Pricebook2 → PricebookEntry…
npx clawhub@latest install product-catalog-data-modelЭтот навык охватывает стандартную модель данных продуктов и прайс-листов Salesforce — трёхобъектную цепочку Product2 → Pricebook2 → PricebookEntry — включая жёсткое платформенное ограничение, согласно которому запись стандартного прайс-листа должна существовать прежде, чем для того же продукта может быть создана запись любого пользовательского прайс-листа. Устанавливайте этот навык, когда необходимо моделировать, выполнять массовую загрузку или устранять неполадки в данных каталога продуктов в Salesforce, включая правильную последовательность массовой загрузки, поведение наследования UseStandardPrice и паттерн идентификатора стандартного прайс-листа для конкретной организации. Навык не предназначен для Salesforce CPQ, Industries CPQ или механики позиций возможных сделок (Opportunity Line Item).
npx clawhub@latest install product-catalog-data-modelНажмите кнопку Установить вверху страницы для настройки в один клик
FIELD_INTEGRITY_EXCEPTION о отсутствующей записи стандартного прайс-листа, и вам нужно понять и устранить это предварительное условие.cpq-vs-standard-products-decision.industries-cpq-vs-salesforce-cpq.Рассматривается полная взаимосвязь между тремя основными объектами: Product2 как главный элемент каталога без цены, Pricebook2 как контейнер прайс-листа и PricebookEntry как связующая запись, которая назначает фактическую UnitPrice продукту в рамках конкретного прайс-листа. Поясняется, за что отвечает каждый объект и каким образом они связаны между собой.
Документирует необходимое правило платформы, согласно которому для продукта должна существовать запись PricebookEntry в стандартном прайс-листе (Standard Pricebook), прежде чем для этого продукта можно будет добавить любую пользовательскую запись PricebookEntry. Включает точный текст ошибки DML, причину существования данного ограничения, а также объяснение того, почему его невозможно обойти с помощью какого-либо API или инструмента.
Описывает обязательный четырёхшаговый порядок загрузки: Product2 → стандартные PricebookEntries → пользовательские записи Pricebook2 → пользовательские PricebookEntries. Объясняет, почему все PricebookEntries не могут быть загружены в рамках одного задания Bulk API, и почему между заданием для стандартных PBE и заданием для пользовательских PBE требуется шаг верификации.
Объясняет, когда следует устанавливать UseStandardPrice = true или false для пользовательских записей PricebookEntry, как наследование цены из стандартного прайс-листа работает автоматически при значении флага true, а также почему указание явного значения UnitPrice вместе с UseStandardPrice = true приводит к ошибке поля.
Описывает требование всегда выполнять запрос SELECT Id FROM Pricebook2 WHERE IsStandard = true во время выполнения, а не задавать идентификатор стандартного прайс-листа жёстко в коде, поскольку он отличается в каждой производственной организации, sandbox-среде, scratch org и Developer Edition. Также документирует паттерн Test.getStandardPricebookId() для тестовых классов Apex.
Предоставляет контрольный список предварительной проверки перед завершением работы, охватывающий порядок последовательности загрузки, взаимную исключительность поля UseStandardPrice, уникальность комбинации Product2Id + Pricebook2Id для каждого PricebookEntry, а также обработку неактивных продуктов и записей. Включает задокументированные поведения платформы, которые вызывают реальные сбои в производственной среде.
Специалисту необходимо загрузить сотни или тысячи продуктов с ценами по нескольким прайс-листам с помощью Data Loader или Bulk API 2.0. Этот навык предоставляет правильную подготовку CSV-файлов, последовательный порядок выполнения заданий и шаги верификации, позволяющие избежать ошибки обязательного наличия стандартной записи PBE и обеспечить успешное создание всех пользовательских PricebookEntry.
Задание массовой загрузки завершается ошибкой FIELD_INTEGRITY_EXCEPTION: pricebook entry in standard price book required before this entry can be created. Этот навык определяет первопричину — отсутствие стандартной записи PricebookEntry для затронутых продуктов — и предоставляет последовательность действий по устранению проблемы.
Организации необходимы отдельные прайс-листы для разных регионов или уровней клиентов: одни прайс-листы наследуют стандартную цену, тогда как другие требуют скидок, специфичных для отдельных продуктов. Этот навык охватывает случаи использования UseStandardPrice = true в сравнении с явными значениями UnitPrice для каждого пользовательского прайс-листа, а также описывает, как обновления цен распространяются при включённом наследовании.
Команда развёртывает скрипты загрузки каталога продуктов или код Apex в нескольких организациях и сталкивается с ошибками, вызванными жёстко заданными идентификаторами стандартного прайс-листа (Standard Pricebook). Этот материал объясняет, почему идентификатор стандартного прайс-листа является специфичным для каждой организации, как надёжно получать его во время выполнения с помощью запроса, а также как использовать Test.getStandardPricebookId() в тестовых классах Apex для предотвращения сбоев в процессе непрерывной интеграции (CI).
npx clawhub@latest install product-catalog-data-modelВойдите, чтобы написать отзыв
Отзывов пока нет. Будьте первым, кто поделится своим опытом!