Когда у вас уже создано огромное количество товаров, и вам нужно убрать в цене НДС.
Как изменить тип НДС у всех товаров 1С-Битрикс
Создайте страницу со следующим содержанием. Если у вас много товаров, выполнение скрипта может занять много времени, но после завершения НДС у всех товаров будет сброшен на тот, который вам нужен.
<? require($_SERVER["DOCUMENT_ROOT"]."/bitrix/header.php"); $APPLICATION->SetTitle("ndc"); ?> <? if (CModule::IncludeModule("catalog")) { $db_res = CCatalogProduct::GetList( array(), array("VAT_ID" => "2"), // поменяем только товары с типом НДС 2 false, false ); $i = 0; while ($ar_res = $db_res->Fetch()) { echo $ar_res["ID"]. '<br />'; $arFields = array( "ID" => $ar_res["ID"], "VAT_ID" => 1, ); CCatalogProduct::Add($arFields); $i++ ; } echo 'штук - '.$i; } ?> <?require($_SERVER["DOCUMENT_ROOT"]."/bitrix/footer.php");?>
VAT_ID – ID нужного НДС. Кстати говоря можно как поставить “Без НДС”, так и “20%” – тут уже как вам угодно.
почему ::Add ? если мы меняем параметры уже существующих товаров
в документации указано “Метод добавляет (или обновляет) параметры товара к элементу каталога. Нестатический метод.”
https://dev.1c-bitrix.ru/api_help/catalog/classes/ccatalogproduct/add.php