вот пример поиска цены с помощью классе PriceDisc, может подойдет:
X++:
static void testFindPrice(Args _args)
{
InventTable inventTable;
InventTableModule inventTableModule;
Container conPrice;
InventDimId inventDimId;
TransDate transDate = systemDateGet();
ItemId itemId;
;
select firstonly inventTable
where inventTable.ItemId == itemId;
inventTableModule = inventTable.inventTableModuleSales();
conPrice = PriceDisc::findItemPriceAgreement(ModuleInventPurchSales::Sales, // модуль
inventTable.ItemId, // номенклатура
InventDim::find(inventDimId), // аналитики
inventTableModule.UnitId, // ед изм
transDate, // дата
inventTableModule.PriceUnit, // кол-во (цена)
"", // код клиента
CompanyInfo::find().CurrencyCode,// валюта из компании
""); // ценовая группа
info(strFmt('Цена - %1', conPeek(conPrice, 1))); // первым номеро в контейнере это цена номенклатуры
}
как можно видеть не обязательно указывать клиента, ценовую группу и т.д. тогда будет выполняться поиск в разрезе номенклатуры, с типом связи контрагентов "Все".