Владимир Баранков, отпишитесь потом, какой из вариантов подошел?
Самому интересно стало!
Самому интересно стало!
25.08.2021 18:35:40
Владимир Баранков, отпишитесь потом, какой из вариантов подошел?
Самому интересно стало! |
|
|
25.08.2021 18:30:32
[QUOTE]Ахат Баязи написал:
Цитата Владимир Баранков написал:Я думал про это, но если обновлять сделку (чтоб сохранить значение поля), то мы получаем зацикливание. Как быть в такой ситуации?обновлять сделку с передачей доп параметра: Код[CODE]$options['ENABLE_SYSTEM_EVENTS'] = false; CCrmDeal::Update($ID, array &$arFields, $bCompare = true, $bUpdateSearch = true, $options = array())[/CODE][/QUOTE] или так: [CODE]$entity = new CCrmDeal(false); $successed = $entity->Update($ID, $fields, true, true, array('DISABLE_USER_FIELD_CHECK' => true, 'REGISTER_SONET_EVENT' => false));[/CODE] по идее если передать FALSE: $entity = new CCrmDeal(false); то отключается проверка PERMISSIONS и , кажись, не срабатывают события. Но нужно проверить!!! |
|
|
25.08.2021 18:09:21
[QUOTE]Владимир Баранков написал:
Я думал про это, но если обновлять сделку (чтоб сохранить значение поля), то мы получаем зацикливание. Как быть в такой ситуации?[/QUOTE] обновлять сделку с передачей доп параметра:[CODE]$options['ENABLE_SYSTEM_EVENTS'] = false; CCrmDeal::Update($ID, array &$arFields, $bCompare = true, $bUpdateSearch = true, $options = array())[/CODE] |
|
|
25.08.2021 17:45:46
это можно оставить только 1 раз в самом начале.
|
|||||
|
25.08.2021 12:36:56
Как решили вопрос? смотрю в коде этот кусок закоментирован. |
|||
|
25.08.2021 12:27:51
сотрудник - это тоже пользователь, только с большими привилегиями (состоит в группе моя компания). что можно сделать по вашему кейсу: 1. в БП создавайте переменную "привязка к пользователю" 2. в БП присваивайте этой переменной поле документа "привязка к сотруднику" 3. оперируйте этой переменной |
|||||
|
25.08.2021 07:43:36
[QUOTE]Aleksey Alekseevich написал:
Добрый день! Делаю бизнес процесс для поздравления клиентов компании с днём рождения. Бизнес процесс привязывается к клиентской карточке. Возникла проблема - при изменении поля дня рождения нужно каким-то образом останавливать текущий бизнес процесс и создавать новый. Вроде всё пересмотрел - не могу найти функцию удаления бизнес процессов. Может, есть какие-то иные варианты[/QUOTE] а зачем останавливать БП? по-моему все можно решить средствами редактора БП: 1. на старте БП: пишем в переменную значение ДР; 2. ставим на паузу до этой даты (штатное активити: пауза); 3. перед отправкой поздравления проверяем не поменялось ли значение (штатное активити: условие) 4. Если поменялось: 4.1. запускаем сам себя БП (штатное активити: запустить БП); 4.2. отправляем в конец БП. Он сам завершится. 5. Если не поменялось: шлем письмо и радуемся!!! |
|
|
25.08.2021 07:31:07
[QUOTE][URL=mailto:info@ittegcsi.ru]info@ittegcsi.ru[/URL] написал:
В товаре есть поле артикул. Возьмем 2 товара, значения: 1-112-0001, 1-112-0002, код поля PROPERTY_120'.Как методом crm.product.list получить эти два товара? Как бы я не пытался формировать массив фильтра, либо выборка пустая, либо 1 товар...[/QUOTE] [B]можно использовать Фильтр со сложной логикой:[/B][CODE]$prms = array( "filter" => array( "LOGIC" => "OR", 'PROPERTY_120' => '1-112-0001', 'PROPERTY_120' => '1-112-0002', 'PROPERTY_120' => '1-112-0003', ... 'PROPERTY_120' => '1-112-000n', ), );[/CODE] |
|
|
25.08.2021 07:18:03
[QUOTE]Олег написал:
Облачная версия.В задаче есть несколько пользовательских полей.Подскажите как получить к ним доступ?tasks.task.get пользовательских полей не показывает.[/QUOTE] Для получения пользовательских полей и поля привязки к CRM сущностям (UF_CRM_TASK), их нужно будет напрямую указать в SELECT. Список полей можно уточнить, отправив запрос [URL=https://dev.1c-bitrix.ru/rest_help/tasks/task/tasks/tasks_task_getFields.php]tasks.task.getFields[/URL]. |
|
|
25.08.2021 07:06:33
[QUOTE]Владимир Баранков написал:
День добрый, столкнулся с такой проблемой: у меня в сделке есть вычисляемое поле, которое зависит от двух других. Соответственно все его расчеты и изменения я делаю при OnBeforeCrmDealUpdate. Но когда данные приходят из CRM формы, то значения полей успешно меняются, а событие OnBeforeCrmDealUpdate не срабатывает. Подскажите, как можно отловить или куда копать, чтоб при изменении описанных выше полей рассчитывалось и нужное мне поле? Заранее благодарен.[/QUOTE] проверьте значения полей на событии: [B]OnBeforeCrmDealUpdate [/B]в вашем случае, скорее всего, там будут значения, которые были до прихода данных из CRM-формы. попробуйте юзнуть событие: [B]OnAfterCrmDealUpdate [/B] |
|
|