[QUOTE]
Евгений Жуков написал:
Вы нигде не указываете типы цен,которые необходимо выбирать.[/QUOTE]
Я читал это, но вероятно не совсем понял сути. Там сказано
[QUOTE]Если он не пуст, то пересчет идет не по ценам из базы данных, а по ценам из этого массива.
[/QUOTE]
Но где тогда взять те цены которыми нужно заполнить массив? Вообще, после прочтения скромной документации я набрасал такой код, но и он не работал. Что еще я упустил?[CODE]foreach ($arResult as $item) {
if(CCatalogSku::IsExistOffers($item["ID"])) {
$res = CIBlockElement::GetByID($item["ID"]);
if($ar_res = $res->GetNext()) {
if(isset($ar_res['IBLOCK_ID']) && $ar_res['IBLOCK_ID']) {
$res = CIBlockPriceTools::GetCatalogPrices($item["ID"], array('BASE', 'RETAIL', 'DISCOUNT'));
$offers = CIBlockPriceTools::GetOffersArray(array(
'IBLOCK_ID' => $ar_res['IBLOCK_ID'],
'HIDE_NOT_AVAILABLE' => 'Y',
'CHECK_PERMISSIONS' => 'Y'
), array($item["ID"]), null, null, null, null, $res, null, array('CURRENCY_ID' => "RUB"), $USER->getId(), null);
foreach($offers as $offer) {
$debug[] = $offer;
$prices = CCatalogProduct::GetOptimalPrice($offer['ID'], 1, $USER->GetUserGroupArray(), 'N');
if(isset($prices['PRICE'])) {
$price = $prices['PRICE']['PRICE'];
}
}
}
}
} else {
$prices = CCatalogProduct::GetOptimalPrice($item["ID"]);
if(!$prices || !isset($prices['PRICE'])) {
return false;
}
if(isset($prices['CURRENCY'])) {
$currency_code = $prices['CURRENCY'];
}
}
$prod = new PRODUCT();
$prod->ID = $item["ID"];
$prod->name = $APPLICATION->ConvertCharset($item["NAME"], LANG_CHARSET, "UTF-8");
$prod->description = $APPLICATION->ConvertCharset($item["DETAIL_TEXT"], LANG_CHARSET, "UTF-8");
$prod->url = $URL.$item["DETAIL_PAGE_URL"];
if(isset($price['PRICE']['CURRENCY'])) {
$currency_code = $price['PRICE']['CURRENCY'];
$prod->currency = $price['PRICE']['CURRENCY'];
}
$prod->price = $price['PRICE']['PRICE'];
if(isset($item["DETAIL_PICTURE"])){
$prod->pictures["DETAIL_PICTURE"] = $offer["DETAIL_PICTURE"];
}
if(isset($item["PRIVIEW_PICTURE"])){
$prod->pictures["PRIVIEW_PICTURE"] = $offer["DETAIL_PICTURE"];
}
setOfferNode($dom, $prod, $offersNod);
}
[/CODE]