Пример #1
0
 /**
  * <p>Метод добавляет новую ставку налога с параметрами из массива arFields. Метод динамичный.</p>
  *
  *
  * @param array $arFields  Ассоциативный массив параметров новой ставки налога. Ключами
  * являются названия параметров ставки, а значениями -
  * соответствующие значения.<br> Допустимые ключи: <ul> <li> <b>TAX_ID</b> - код
  * налога;</li> <li> <b>PERSON_TYPE_ID</b> - тип плательщика;</li> <li> <b>VALUE</b> - величина
  * налога (в процентах);</li> <li> <b>CURRENCY</b> - валюта;</li> <li> <b>IS_PERCENT</b> -
  * всегда значение "Y";</li> <li> <b>IS_IN_PRICE</b> - налог уже включен в цену
  * товара;</li> <li> <b>APPLY_ORDER</b> - порядок применения;</li> <li> <b>ACTIVE</b> - флаг
  * (Y/N) активности налога;</li> <li> <b>TAX_LOCATION</b> - массив для указания
  * местоположений и групп местоположений, для которых действует эта
  * ставка. Каждый элемент массива представляет собой ассоциативный
  * массив с ключами: <ul> <li> <b>LOCATION_ID</b> - код местоположения или группы
  * местоположений;</li> <li> <b>LOCATION_TYPE</b> - "L" для местоположения и "G" для
  * группы местоположений.</li> </ul> </li> </ul>
  *
  * @return int <p>Возвращается код добавленной ставки налога или <i>false</i> в случае
  * ошибки.</p> <br><br>
  *
  * @static
  * @link http://dev.1c-bitrix.ru/api_help/sale/classes/csaletaxrate/csaletaxrate__add.40a40d86.php
  * @author Bitrix
  */
 public static function Add($arFields, $arOptions = array())
 {
     global $DB;
     if (!CSaleTaxRate::CheckFields("ADD", $arFields)) {
         return false;
     }
     $arInsert = $DB->PrepareInsert("b_sale_tax_rate", $arFields);
     $strSql = "INSERT INTO b_sale_tax_rate(" . $arInsert[0] . ", TIMESTAMP_X) " . "VALUES(" . $arInsert[1] . ", " . $DB->GetNowFunction() . ")";
     $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
     $ID = IntVal($DB->LastID());
     if (is_set($arFields, "TAX_LOCATION")) {
         CSaleTaxRate::SetTaxRateLocation($ID, $arFields["TAX_LOCATION"], $arOptions);
     }
     return $ID;
 }
Пример #2
0
 function Update($ID, $arFields)
 {
     global $DB;
     $ID = IntVal($ID);
     if (!CSaleTaxRate::CheckFields("UPDATE", $arFields)) {
         return false;
     }
     $strUpdate = $DB->PrepareUpdate("b_sale_tax_rate", $arFields);
     $strSql = "UPDATE b_sale_tax_rate SET " . "\tTIMESTAMP_X = " . $DB->GetNowFunction() . ", " . "\t" . $strUpdate . " " . "WHERE ID = " . $ID . " ";
     $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
     if (is_set($arFields, "TAX_LOCATION")) {
         CSaleTaxRate::SetTaxRateLocation($ID, $arFields["TAX_LOCATION"]);
     }
     return $ID;
 }
Пример #3
0
 /**
  * <p>Метод изменяет параметры ставки налога с кодом ID. Метод динамичный.</p>
  *
  *
  * @param int $ID  Код ставки налога. </ht
  *
  * @param array $arFields  Ассоциативный массив новых параметров ставки налога. Ключами
  * являются названия параметров ставки, а значениями -
  * соответствующие значения.<br><br> Допустимые ключи: <ul> <li> <b>TAX_ID</b> -
  * код налога;</li> <li> <b>PERSON_TYPE_ID</b> - тип плательщика;</li> <li> <b>VALUE</b> -
  * величина налога (в процентах);</li> <li> <b>CURRENCY</b> - валюта;</li> <li>
  * <b>IS_PERCENT</b> - всегда значение "Y";</li> <li> <b>IS_IN_PRICE</b> - налог уже включен
  * в цену товара;</li> <li> <b>APPLY_ORDER</b> - порядок применения;</li> <li> <b>ACTIVE</b> -
  * флаг (Y/N) активности налога;</li> <li> <b>TAX_LOCATION</b> - массив для указания
  * местоположений и групп местоположений, для которых действует эта
  * ставка. Каждый элемент массива представляет собой ассоциативный
  * массив с ключами: <ul> <li> <b>LOCATION_ID</b> - код местоположения или группы
  * местоположений;</li> <li> <b>LOCATION_TYPE</b> - "L" для местоположения и "G" для
  * группы местоположений.</li> </ul> </li> </ul>
  *
  * @return int <p>Возвращается код измененной ставки налога или <i>false</i> в случае
  * ошибки.</p> <br><br>
  *
  * @static
  * @link http://dev.1c-bitrix.ru/api_help/sale/classes/csaletaxrate/csaletaxrate__update.bd202837.php
  * @author Bitrix
  */
 public static function Update($ID, $arFields, $arOptions = array())
 {
     global $DB;
     $ID = intval($ID);
     if (0 >= $ID) {
         return false;
     }
     if (!CSaleTaxRate::CheckFields("UPDATE", $arFields)) {
         return false;
     }
     $strUpdate = $DB->PrepareUpdate("b_sale_tax_rate", $arFields);
     $strSql = "UPDATE b_sale_tax_rate SET TIMESTAMP_X = " . $DB->GetNowFunction() . ", " . $strUpdate . " WHERE ID = " . $ID;
     $DB->Query($strSql, false, "File: " . __FILE__ . "<br>Line: " . __LINE__);
     if (array_key_exists("TAX_LOCATION", $arFields)) {
         CSaleTaxRate::SetTaxRateLocation($ID, $arFields["TAX_LOCATION"], $arOptions);
     }
     return $ID;
 }