function __cat_setVAT($arVAT) { $arCurrentVAT = array(); $dbRes = CCatalogVAT::GetList(); while ($arRes = $dbRes->Fetch()) { $arCurrentVAT[floatval($arRes['RATE'])] = $arRes; } foreach ($arVAT as $arFields) { if (isset($arCurrentVAT[floatval($arFields['RATE'])])) { continue; } // errors're goin by forest CCatalogVAT::Set($arFields); } }
require $DOCUMENT_ROOT . "/bitrix/modules/main/include/prolog_admin_after.php"; $strError = $ex->GetString(); ShowError($strError); require $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/main/include/epilog_admin.php"; die; } IncludeModuleLangFile(__FILE__); require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/catalog/prolog.php"; ClearVars(); $errorMessage = ""; $bVarsFromForm = false; $ID = IntVal($ID); if ($REQUEST_METHOD == "POST" && strlen($Update) > 0 && !$bReadOnly && check_bitrix_sessid()) { $DB->StartTransaction(); $arFields = array("ID" => $ID, "ACTIVE" => $ACTIVE == "Y" ? "Y" : "N", "C_SORT" => intval($C_SORT), "NAME" => $NAME, "RATE" => floatval($RATE)); if ($res = CCatalogVAT::Set($arFields)) { $ID = $res; $DB->Commit(); if (strlen($apply) <= 0) { LocalRedirect("/bitrix/admin/cat_vat_admin.php?lang=" . LANG . "&" . GetFilterParams("filter_", false)); } else { LocalRedirect("/bitrix/admin/cat_vat_edit.php?lang=" . LANG . "&ID=" . $ID . "&" . GetFilterParams("filter_", false)); } } else { if ($ex = $APPLICATION->GetException()) { $errorMessage .= $ex->GetString() . "<br>"; } else { $errorMessage .= (0 < $ID ? str_replace('#ID#', $ID, GetMessage('CVAT_ERR_UPDATE')) : GetMessage('CVAT_ERR_ADD')) . "<br>"; } $bVarsFromForm = true; $DB->Rollback();