/** * <p>Метод добавляет новую ставку НДС или обновляет существующую в зависимости от передаваемых данных в массиве <i>arFields</i>. Метод динамичный.</p> <p></p> <div class="note"> <b>Примечание:</b> метод устарел, вместо него рекомендуется использоваться <a href="http://dev.1c-bitrix.ru/api_help/catalog/classes/ccatalogvat/add.php">CCatalogVat::Add</a> и <a href="http://dev.1c-bitrix.ru/api_help/catalog/classes/ccatalogvat/update.php">CCatalogVat::Update</a> соответственно.</div> * * * @param array $arFields Ассоциативный массив параметров ставки НДС. Допустимые ключи: <ul> * <li>ID - код ставки НДС (задается только для существующей ставки);</li> * <li>ACTIVE - активность ставки НДС ('Y' - активна, 'N' - неактивна);</li> <li>C_SORT * - индекс сортировки;</li> <li>NAME - название ставки НДС;</li> <li>RATE - * величина ставки НДС.</li> </ul> * * @return mixed <p>Метод возвращает <i>ID</i> созданной или измененной ставки НДС, * либо <i>false</i> в случае ошибки.</p> <br><br> * * @static * @link http://dev.1c-bitrix.ru/api_help/catalog/classes/ccatalogvat/set.php * @author Bitrix * @deprecated deprecated since catalog 12.5.6 -> CCatalogVat::Add() */ public static function Set($arFields) { if (isset($arFields['ID']) && intval($arFields['ID']) > 0) { return CCatalogVat::Update($arFields['ID'], $arFields); } else { return CCatalogVat::Add($arFields); } }
/** * <p>Метод добавляет новую ставку НДС или обновляет существующую в зависимости от передаваемых данных в массиве <i>arFields</i>.</p> <p><b>Примечание:</b> метод устарел, вместо него рекомендуется использоваться <a href="http://dev.1c-bitrix.ru/api_help/catalog/classes/ccatalogvat/add.php">CCatalogVat::Add</a> и <a href="http://dev.1c-bitrix.ru/api_help/catalog/classes/ccatalogvat/update.php">CCatalogVat::Update</a> соответственно.</p> * * * * * @param array $arFields Ассоциативный массив параметров ставки НДС. Допустимые ключи: <ul> * <li>ID - код ставки НДС (задается только для существующей ставки);</li> * <li>ACTIVE - активность ставки НДС ('Y' - активна, 'N' - неактивна);</li> <li>C_SORT * - индекс сортировки;</li> <li>NAME - название ставки НДС;</li> <li>RATE - * величина ставки НДС.</li> </ul> * * * * @return mixed <p>Метод возвращает <i>ID</i> созданной или измененной ставки НДС, * либо <i>false</i> в случае ошибки.</p><br><br> * * @static * @link http://dev.1c-bitrix.ru/api_help/catalog/classes/ccatalogvat/set.php * @author Bitrix */ public static function Set($arFields) { if (array_key_exists('ID', $arFields) && 0 < intval($arFields['ID'])) { return CCatalogVat::Update($arFields['ID'], $arFields); } else { return CCatalogVat::Add($arFields); } }
require_once $_SERVER["DOCUMENT_ROOT"] . "/bitrix/modules/catalog/prolog.php"; if (!($USER->CanDoOperation('catalog_read') || $USER->CanDoOperation('catalog_vat'))) { $APPLICATION->AuthForm(GetMessage("ACCESS_DENIED")); } CModule::IncludeModule("catalog"); $bReadOnly = !$USER->CanDoOperation('catalog_vat'); IncludeModuleLangFile(__FILE__); ClearVars(); $errorMessage = ""; $bVarsFromForm = false; $ID = intval($ID); if ('POST' == $_SERVER['REQUEST_METHOD'] && strlen($Update) > 0 && !$bReadOnly && check_bitrix_sessid()) { $DB->StartTransaction(); $arFields = array("ACTIVE" => 'Y' == $ACTIVE ? "Y" : "N", "C_SORT" => intval($C_SORT), "NAME" => $NAME, "RATE" => $RATE); if (0 < $ID) { $res = CCatalogVat::Update($ID, $arFields); } else { $ID = CCatalogVAT::Add($arFields); $res = 0 < $ID; } if ($res) { $DB->Commit(); if (strlen($apply) <= 0) { LocalRedirect("/bitrix/admin/cat_vat_admin.php?lang=" . LANGUAGE_ID . "&" . GetFilterParams("filter_", false)); } else { LocalRedirect("/bitrix/admin/cat_vat_edit.php?lang=" . LANGUAGE_ID . "&ID=" . $ID . "&" . GetFilterParams("filter_", false)); } } else { if ($ex = $APPLICATION->GetException()) { $errorMessage .= $ex->GetString(); } else {
public static function unSetVatMode() { if (!CModule::IncludeModule('catalog')) { return false; } $count = 0; $arActiveVats = array(); $dbActiveVats = CCatalogVat::GetListEx(array(), array('ACTIVE' => 'Y'), false, false, array('ID')); while ($arVat = $dbActiveVats->Fetch()) { $arActiveVats[] = $arVat['ID']; CCatalogVat::Update($arVat['ID'], array('ACTIVE' => 'N')); $count++; } $strActiveVats = !empty($arActiveVats) ? implode(',', $arActiveVats) : ''; COption::SetOptionString("crm", "crmSaveActiveVats", $strActiveVats); COption::SetOptionString("crm", "vatModeSetted", 'N'); self::$bVatMode = false; return $count; }
$DB->StartTransaction(); if (!CCatalogVat::Delete($ID)) { $DB->Rollback(); if ($ex = $APPLICATION->GetException()) { $lAdmin->AddGroupError($ex->GetString(), $ID); } else { $lAdmin->AddGroupError(str_replace("#ID#", $ID, GetMessage("ERROR_DELETE_VAT")), $ID); } } else { $DB->Commit(); } break; case "activate": case "deactivate": $arFields = array("ACTIVE" => $_REQUEST['action'] == "activate" ? "Y" : "N"); if (!CCatalogVat::Update($ID, $arFields)) { if ($ex = $APPLICATION->GetException()) { $lAdmin->AddGroupError($ex->GetString(), $ID); } else { $lAdmin->AddGroupError(str_replace("#ID#", $ID, GetMessage("ERROR_UPDATE_VAT")), $ID); } } break; } } } $lAdmin->AddHeaders(array(array("id" => "ID", "content" => "ID", "sort" => "ID", "default" => true), array("id" => "C_SORT", "content" => GetMessage("CVAT_SORT"), "sort" => "C_SORT", "default" => true), array("id" => "ACTIVE", "content" => GetMessage("CVAT_ACTIVE"), "sort" => "ACTIVE", "default" => true), array("id" => "NAME", "content" => GetMessage("CVAT_NAME"), "sort" => "NAME", "default" => true), array("id" => "RATE", "content" => GetMessage("CVAT_RATE"), "sort" => "RATE", "default" => true))); $arSelectFields = $lAdmin->GetVisibleHeaderColumns(); if (!in_array('ID', $arSelectFields)) { $arSelectFields[] = 'ID'; }
public static function update($params) { if (!CModule::IncludeModule('catalog')) { throw new RestException('The Commercial Catalog module is not installed.'); } global $DB, $USER; $CrmPerms = new CCrmPerms($USER->GetID()); if (!$CrmPerms->HavePerm('CONFIG', BX_CRM_PERM_CONFIG, 'WRITE')) { throw new RestException('Access denied.'); } $ID = intval(CCrmInvoiceRestUtil::getParamScalar($params, 'id', 0)); if ($ID <= 0) { throw new RestException('Invalid identifier.'); } $fields = CCrmInvoiceRestUtil::getParamArray($params, 'fields'); $fields = self::filterFields($fields, 'update'); if (!is_array($fields) || count($fields) === 0) { throw new RestException('Invalid parameters.'); } $DB->StartTransaction(); $updatedID = false; if (count($fields) > 0) { $catalogVat = new CCatalogVat(); $updatedID = $catalogVat->Update($ID, $fields); } if ($updatedID) { $DB->Commit(); } else { $DB->Rollback(); throw new RestException('Error on updating VAT rate.'); } return $updatedID; }