Skip to content

Latest commit

 

History

History
418 lines (358 loc) · 20.2 KB

sale-property-update.md

File metadata and controls

418 lines (358 loc) · 20.2 KB

Обновить свойство заказа sale.property.update

Scope: sale

Кто может выполнять метод: администратор

Метод обновляет свойство заказа.

Параметры метода

{% include Сноска об обязательных параметрах %}

#| || Название тип | Описание || || id* sale_order_property.id | Идентификатор свойства заказа || || fields* object | Значения полей для создания свойства заказа || |#

Параметр fields

Общие параметры, актуальные для свойств заказа любого типа:

{% include Сноска об обязательных параметрах %}

#| || Название тип | Описание || || name* string | Название свойства заказа || || code string | Символьный код свойства заказа || || active string | Индикатор активности свойства заказа. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию значение Y || || util string | Индикатор, является ли свойство заказа служебным. Служебные свойства заказа не отображаются в публичной части. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию значение N || || userProps string | Индикатор, входит ли свойство заказа в профиль покупателя. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию значение N || || isFiltered string | Индикатор, доступно ли свойство заказа в фильтре на странице списка заказов. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию значение N || || sort integer | Сортировка || || description string | Описание свойства заказа || || required string | Индикатор обязательности заполнения значения свойства заказа. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию значение N || || multiple string | Индикатор, является ли свойство заказа множественным. Для множественных свойств возможно указать несколько значений. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию значение N || || xmlId string | Внешний идентификатор свойства заказа || || defaultValue any | Дефолтное значение свойства заказа. Для множественных свойств заказа (multiple) поддерживается передача массива значений || || settings object | Объект в формате {"field_1": "value_1", ... "field_N": "value_N"} для передачи дополнительных настроек свойства заказа.

Список поддерживаемых ключей этого объекта зависит от типа свойства. Для некоторых типов свойств (например, Y/N) дополнительные свойства не предусмотрены. Описание параметра settings для разных типов свойств приведено в описании метода sale.property.add || |#

Параметры, актуальные для свойств заказа типа STRING

#| || Название тип | Описание || || isProfileName string | Индикатор необходимости использования значения данного свойства заказа в качестве названия профиля пользователя. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию выставляется в значение N || || isPayer string | Индикатор необходимости использования значения данного свойства заказа в качестве имени плательщика. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию выставляется в значение N|| || isEmail string | Индикатор необходимости использования значения данного свойства заказа в качестве e-mail (например, при регистрации нового пользователя при оформлении заказа). Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию выставляется в значение N|| || isPhone string | Индикатор необходимости использования значения данного свойства заказа в качестве номера телефона. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию выставляется в значение N|| || isZip string | Индикатор необходимости использования значения данного свойства заказа в качестве почтового индекса. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию выставляется в значение N|| || isAddress string | Индикатор необходимости использования значения данного свойства заказа в качестве адреса. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию выставляется в значение N|| |#

Параметры, актуальные для свойств заказа типа LOCATION

#| || Название тип | Описание || || isLocation string | Индикатор необходимости использования значения данного свойства заказа в качестве местоположения покупателя для расчета стоимости доставки. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию выставляется в значение N || || isLocation4tax string | Индикатор необходимости использования значения данного свойства заказа в качестве местоположения покупателя для определения ставок налогов. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию выставляется в значение N || || inputFieldLocation string | Устаревшее поле. Не используется. || |#

Параметры, актуальные для свойств заказа типа ADDRESS

#| || Название тип | Описание || || isAddressFrom string | Индикатор необходимости использования значения данного свойства заказа в качестве адреса покупателя, откуда необходимо забрать заказ для расчета стоимости доставки. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию выставляется в значение N || || isAddressTo string | Индикатор необходимости использования значения данного свойства заказа в качестве адреса покупателя, куда необходимо доставить заказ для расчета стоимости доставки. Возможные значения:

  • Y — да
  • N — нет

Если не передано, то по умолчанию выставляется в значение N || |#

Примеры кода

{% include Сноска о примерах %}

{% list tabs %}

  • cURL (Webhook)

    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"id":93,"fields":{"personTypeId":3,"propsGroupId":6,"name":"Телефон (для связи с курьером)","type":"STRING","code":"PHONE","active":"Y","util":"N","userProps":"Y","isFiltered":"N","sort":500,"description":"описание свойства","required":"Y","multiple":"N","settings":{"multiline":"Y","maxlength":100},"xmlId":"","defaultValue":"","isProfileName":"Y","isPayer":"Y","isEmail":"N","isPhone":"N","isZip":"N","isAddress":"N"},"auth":"**put_access_token_here**"}' \
    https://**put_your_bitrix24_address**/rest/sale.property.update
  • cURL (OAuth)

    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"id":93,"fields":{"personTypeId":3,"propsGroupId":6,"name":"Телефон (для связи с курьером)","type":"STRING","code":"PHONE","active":"Y","util":"N","userProps":"Y","isFiltered":"N","sort":500,"description":"описание свойства","required":"Y","multiple":"N","settings":{"multiline":"Y","maxlength":100},"xmlId":"","defaultValue":"","isProfileName":"Y","isPayer":"Y","isEmail":"N","isPhone":"N","isZip":"N","isAddress":"N"}}' \
    https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webbhook_here**/sale.property.update
  • JS

    BX24.callMethod(
        'sale.property.update', {
            id: 93,
            fields: {
                personTypeId: 3,
                propsGroupId: 6,
                name: 'Телефон (для связи с курьером)',
                type: 'STRING',
                code: 'PHONE',
                active: 'Y',
                util: 'N',
                userProps: 'Y',
                isFiltered: 'N',
                sort: 500,
                description: 'описание свойства',
                required: 'Y',
                multiple: 'N',
                settings: {
                    multiline: 'Y',
                    maxlength: 100
                },
                xmlId: '',
                defaultValue: '',
                isProfileName: 'Y',
                isPayer: 'Y',
                isEmail: 'N',
                isPhone: 'N',
                isZip: 'N',
                isAddress: 'N',
            }
        },
        function(result) {
            if (result.error()) {
                console.error(result.error());
            } else {
                console.info(result.data());
            }
        }
    );
  • PHP

    require_once('crest.php');
    
    $result = CRest::call(
        'sale.property.update',
        [
            'id' => 93,
            'fields' => [
                'personTypeId' => 3,
                'propsGroupId' => 6,
                'name' => 'Телефон (для связи с курьером)',
                'type' => 'STRING',
                'code' => 'PHONE',
                'active' => 'Y',
                'util' => 'N',
                'userProps' => 'Y',
                'isFiltered' => 'N',
                'sort' => 500,
                'description' => 'описание свойства',
                'required' => 'Y',
                'multiple' => 'N',
                'settings' => [
                    'multiline' => 'Y',
                    'maxlength' => 100
                ],
                'xmlId' => '',
                'defaultValue' => '',
                'isProfileName' => 'Y',
                'isPayer' => 'Y',
                'isEmail' => 'N',
                'isPhone' => 'N',
                'isZip' => 'N',
                'isAddress' => 'N',
            ]
        ]
    );
    
    echo '<PRE>';
    print_r($result);
    echo '</PRE>';

{% endlist %}

Ответ в случае успеха

HTTP-статус: 200

{
   "result":{
      "property":{
         "active":"Y",
         "code":"PHONE",
         "defaultValue":"",
         "description":"описание свойства",
         "id":96,
         "inputFieldLocation":"0",
         "isAddress":"N",
         "isAddressFrom":"N",
         "isAddressTo":"N",
         "isEmail":"N",
         "isFiltered":"N",
         "isLocation":"N",
         "isLocation4tax":"N",
         "isPayer":"Y",
         "isPhone":"N",
         "isProfileName":"Y",
         "isZip":"N",
         "multiple":"N",
         "name":"Телефон (для связи с курьером)",
         "personTypeId":3,
         "propsGroupId":6,
         "required":"Y",
         "settings":{
            "maxlength":"100",
            "multiline":"Y"
         },
         "sort":500,
         "type":"STRING",
         "userProps":"Y",
         "util":"N",
         "xmlId":""
      }
   },
   "time":{
      "start":1712818736.235335,
      "finish":1712818736.611224,
      "duration":0.3758888244628906,
      "processing":0.18679594993591309,
      "date_start":"2024-04-11T09:58:56+03:00",
      "date_finish":"2024-04-11T09:58:56+03:00"
   }
}

Возвращаемые данные

#| || Название тип | Описание || || result object | Корневой элемент ответа || || property sale_order_property | Объект с информацией об обновленном свойстве заказа || || time time | Информация о времени выполнения запроса || |#

Обработка ошибок

HTTP-статус: 400

{
   "error":200840400001,
   "error_description":"property is not exists"
}

{% include notitle обработка ошибок %}

Возможные коды ошибок

#| || Код | Описание || || 200840400001 | Обновляемое свойство заказа не найдено || || 200850000003 | Внутренняя ошибка обновления свойства || || 200850000009 | Ошибка возникает при попытке обновить свойство заказа со значением параметра multiple, выставленным в Y, в том случае, если не передан параметр isFiltered. Фильтрация по множественным свойствам заказов не поддерживается || || 200850000010 | Ошибка возникает при попытке обновить свойство заказа со значением параметра multiple, выставленным в Y, в том случае, если значение параметра isFiltered не равно N. Фильтрация по множественным свойствам заказов не поддерживается || || 200850000011 | Ошибка возникает при попытке обновить свойство заказа с типом LOCATION и значением параметра isLocation, выставленным в Y, в том случае, если значение параметра multiple не указано. Не поддерживается множественность у свойств заказа отмеченных индикатором isLocation || || 200850000012 | Ошибка возникает при попытке обновить свойство заказа с типом LOCATION и значением параметра isLocation, выставленным в Y, в том случае, если значение параметра multiple не равноN. Не поддерживается множественность у свойств заказа отмеченных индикатором isLocation || || 200850000013 | Ошибка возникает при попытке обновить свойство заказа с типом LOCATION и значением параметра isLocation4tax, выставленным в Y, в том случае, если значение параметра multiple не указано. Не поддерживается множественность у свойств заказа отмеченных индикатором isLocation4tax || || 200850000014 | Ошибка возникает при попытке обновить свойство заказа с типом LOCATION и значением параметра isLocation4tax, выставленным в Y, в том случае, если значение параметра multiple не равно N. Не поддерживается множественность у свойств заказа отмеченных индикатором isLocation4tax || || 200850000015 | Ошибка возникает при попытке обновить свойство заказа с типом STRING и значением параметра isProfileName, выставленным в Y, в том случае, если значение параметра required не указано. Название профиля обязательно и не может быть пустым || || 200850000016 | Ошибка возникает при попытке обновить свойство заказа с типом STRING и значением параметра isProfileName, выставленным в Y, в том случае, если значение параметра required не равно Y. Название профиля обязательно и не может быть пустым || || 200040300020 | Недостаточно прав для обновления свойства заказа || || 100 | Не указан параметр id || || 100 | Не указан или пустой параметр fields || || 0 | Не переданы обязательные поля || || 0 |Другие ошибки (например, фатальные ошибки) || |#

{% include notitle системные ошибки %}

Продолжите изучение