Блог Горошко Андрея 1C-Битрикс,Bitrix24 Обновить поля группы свойств sale.propertygroup.update

Обновить поля группы свойств sale.propertygroup.update

Каждый PHP-разработчик, работающий с экосистемой Bitrix Framework, должен глубоко понимать работу её ключевых компонентов. В этой статье мы проведем подробный аудит темы «Обновить поля группы свойств sale.propertygroup.update», проанализируем лучшие практики и покажем, как правильно использовать sale.propertygroup.update в реальных задачах.

Обновить поля группы свойств sale.propertygroup.update

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

Метод обновляет поля группы свойств.

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

Название
тип
Описание
id
sale_order_property_group.id
Идентификатор группы свойств
fields
object
Значения полей для обновления группы свойств

Параметр fields

Параметр / ТипОписание
personTypeId
sale_person_type.id
Идентификатор типа плательщика. Так как свойство отмечено индикатором isImmutable, то изменить его не получится. Значение свойства же передавать обязательно
name
string
Название группы свойств
sort
integer
Сортировка

Примеры кода

  • cURL (Webhook)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"id":10,"fields":{"personTypeId":3,"name":"Обновленная группа свойств","sort":100}}' \
    https://**put_your_bitrix24_address**/rest/**put_your_user_id_here**/**put_your_webbhook_here**/sale.propertygroup.update
  • cURL (OAuth)
    curl -X POST \
    -H "Content-Type: application/json" \
    -H "Accept: application/json" \
    -d '{"id":10,"fields":{"personTypeId":3,"name":"Обновленная группа свойств","sort":100},"auth":"**put_access_token_here**"}' \
    https://**put_your_bitrix24_address**/rest/sale.propertygroup.update
  • JS
    try
    {
    	const response = await $b24.callMethod(
    		"sale.propertygroup.update", {
    			"id": 10,
    			"fields": {
    				"personTypeId": 3,
    				"name": "Обновленная группа свойств",
    				"sort": 100,
    			}
    		}
    	);
    	
    	const result = response.getData().result;
    	console.info(result);
    }
    catch( error )
    {
    	console.error(error);
    }
  • PHP
    try {
        $response = $b24Service
            ->core
            ->call(
                'sale.propertygroup.update',
                [
                    'id' => 10,
                    'fields' => [
                        'personTypeId' => 3,
                        'name' => 'Обновленная группа свойств',
                        'sort' => 100,
                    ],
                ]
            );
    
        $result = $response
            ->getResponseData()
            ->getResult();
    
        echo 'Success: ' . print_r($result, true);
        // Нужная вам логика обработки данных
        processData($result);
    
    } catch (Throwable $e) {
        error_log($e->getMessage());
        echo 'Error updating property group: ' . $e->getMessage();
    }
  • BX24.js
    BX24.callMethod(
        "sale.propertygroup.update", {
            "id": 10,
            "fields": {
                "personTypeId": 3,
                "name": "Обновленная группа свойств",
                "sort": 100,
            }
        },
        function(result) {
            if (result.error()) {
                console.error(result.error());
            } else {
                console.info(result.data());
            }
        }
    );
  • PHP CRest
    require_once('crest.php');

    $result = CRest::call(
        'sale.propertygroup.update',
        [
            'id' => 10,
            'fields' => [
                'personTypeId' => 3,
                'name' => 'Обновленная группа свойств',
                'sort' => 100,
            ]
        ]
    );

    echo '<PRE>';
    print_r($result);
    echo '</PRE>';

Обработка ответа

HTTP-статус: 200

{
    "result":{
        "propertyGroup":{
            "id":10,
            "name":"Обновленная группа свойств",
            "personTypeId":3,
            "sort":100
        }
    },
    "time":{
        "start":1711451989.729911,
        "finish":1711451989.907491,
        "duration":0.1775798797607422,
        "processing":0.008534908294677734,
        "date_start":"2024-03-26T14:19:49+03:00",
        "date_finish":"2024-03-26T14:19:49+03:00"
    }
}

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

Название
тип
Описание
result
object
Корневой элемент ответа
propertyGroup
sale_order_property_group
Объект с информацией об обновленной группе свойств
time
time
Информация о времени выполнения запроса

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

HTTP-статус: 400

{
    "error":0,
    "error_description":"Required fields: name"
}

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

КодОписание
200940400001Обновляемая группа свойств не найдена
200040300020Недостаточно прав для обновления группы свойств
200950000008Передано пустое значение одного из обязательных полей
100Не указан параметр id
100Не указан или пустой параметр fields
0Не переданы обязательные поля структуры fields
0Другие ошибки (например, фатальные ошибки)
  • [](./index)
  • [](./sale-property-group-add)
  • [](./sale-property-group-get)
  • [](./sale-property-group-list)
  • [](./sale-property-group-delete)
  • [](./sale-property-group-get-fields)

💡 Экспертное мнение и рекомендации

Советы эксперта по интеграции:

  • Всегда используйте кэширование при частых запросах к sale.propertygroup.update, чтобы разгрузить базу данных.
  • Соблюдайте стандарты PSR при написании обработчиков для «Обновить поля группы свойств sale.propertygroup.update».
  • Регулярно проводите аудит производительности системы с помощью встроенного монитора 1С-Битрикс.

Похожая задача в бизнесе?

Помогу автоматизировать процессы и внедрить ИИ

Меня зовут Андрей Горошко. Я Full-stack разработчик и эксперт по 1С-Битрикс. Настраиваю CRM Битрикс24, разрабатываю защищенные API и создаю умных ИИ-агентов для автоматизации рутины.

Related Post

Как использовать $APPLICATION->ShowPanel() в 1С-Битрикс: пример кодаКак использовать $APPLICATION->ShowPanel() в 1С-Битрикс: пример кода

Оптимизация производительности и безопасности — залог успешного проекта на 1С-Битрикс. Данный материал посвящен практическому применению «Как использовать $APPLICATION->ShowPanel() в 1С-Битрикс: пример кода». Мы подготовили подробный разбор принципов работы и развернутые

Договор на разработку сайта на 1С-Битрикс: этапы, гарантии, передача правДоговор на разработку сайта на 1С-Битрикс: этапы, гарантии, передача прав

Выбор редакции, расчет точной сметы и покупка официальных лицензий 1С-Битрикс и Битрикс24 — это ключевой этап планирования любого цифрового проекта. Информация по теме «Договор на разработку сайта на 1С-Битрикс: этапы,

Удалить сайт landing.site.deleteУдалить сайт landing.site.delete

Эффективная интеграция и кастомизация функционала в Битрикс24 часто требует работы на уровне API. Сегодня мы подробно рассмотрим «Удалить сайт landing.site.delete». Вы узнаете экспертные методики работы с landing.site.delete и научитесь избегать