Skip to content

Latest commit

 

History

History
221 lines (189 loc) · 9.17 KB

bizproc-activity-add.md

File metadata and controls

221 lines (189 loc) · 9.17 KB

Добавить новое действие bizproc.activity.add

{% note warning "Мы еще обновляем эту страницу" %}

Тут может не хватать некоторых данных — дополним в ближайшее время

{% endnote %}

{% if build == 'dev' %}

{% note alert "TO-DO не выгружается на prod" %}

  • нужны правки под стандарт написания
  • отсутствуют параметры или поля
  • не указаны типы параметров
  • отсутствуют примеры
  • отсутствует ответ в случае успеха
  • отсутствует ответ в случае ошибки
  • не прописаны ссылки на несозданные ещё страницы.
  • описание метода в целом кривое, надо иначе расписать
  • Нужно разбить параметры на несколько таблиц, с учетом, что там массивы внутри
  • неправильная сноска про обязательные параметры

{% endnote %}

{% endif %}

Scope: bizproc

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

Добавляет новое действие для использования в бизнес-процессах.

Каждый документ генерирует свой набор типов полей, с которыми он может работать. Например, у CRM есть поле типа Адрес, он обозначается как UF:address. Чтобы такой тип поля использовать в своих активити, нужно указать, что мы работаем с документом CRM (ключ DOCUMENT_TYPE) и тогда можно описывать свойства такого типа (ключ PROPERTIES).

#| || Параметр | Описание ||

|| CODE^^ | Внутренний идентификатор действия, уникальный в рамках приложения. Допустимые символы a-z, A-Z, 0-9, точка, дефис и нижнее gодчеркивание. || || HANDLER^^ | URL, на который действие будет отсылать данные (через сервер очередей bitrix24), когда бизнес-процесс дошел до его выполнения. Должен ссылаться на тот же домен, на котором установлено приложение. || || AUTH_USER_ID | ID пользователя, токен которого будет передан приложению. || || USE_SUBSCRIPTION | Использование подписки. Допустимые значения - Y или N. Можно указать, должно ли ожидать действие ответа от приложения. Если параметр пустой или не указан - пользователь может сам настроить этот параметр в настройках действия в дизайнере бизнес-процессов. || || NAME^*^ | Название действия. Может быть строкой или ассоциативным массивом локализированных строк. Нельзя использовать значение Title. || || DESCRIPTION | Описание действия. Может быть строкой или ассоциативным массивом локализированных строк. || || PROPERTIES | Массив параметров действия. Список значений аналогичен значениям параметра RETURN_PROPERTIES. || || RETURN_PROPERTIES | Массив возвращаемых значений действия. Параметр управляет возможностью действия ожидать ответа приложения и работать с данными, которые придут в ответе.

{% note info "Внимание!" %}

Системное название параметра должно начинаться с буквы и может содержать только символы a-z, A-Z, 0-9 и нижнее подчеркивание.

{% endnote %}

Каждый параметр обязательно должен содержать:

  • Name - строка или массив локализаций.
  • Description - описание параметра, строка или массив локализаций.
  • Type - тип параметра. Список базовых параметров:
    • bool (Да/Нет),
    • date (Дата),
    • datetime (Дата/Время),
    • double (Число),
    • int (Целое число),
    • select (Список) массив значений списка,
    • string (Строка),
    • text (Текст),
    • user (Пользователь).
  • Options только для TYPE равному select.
[
'value1' => 'title1',
'value2' => 'title2',
'value3' => 'title3',
'value4' => 'title4',
]
  • Required(Y/N) - обязательность параметра.
  • Multiple(Y/N) - множественность параметра.
  • Default - значение параметра по-умолчанию. || || DOCUMENT_TYPE | Тип документа, который будет определять типы данных для параметров PROPERTIES и RETURN_PROPERTIES. Массив из 3 элементов:
  • id модуля,
  • сущность (класс),
  • непосредственно тип документа.

Примеры:

['crm', 'CCrmDocumentLead', 'LEAD'], 
['lists', 'BizprocDocument', 'iblock_22'],
['disk', 'Bitrix\Disk\BizProcDocument', 'STORAGE_490'],
['tasks', 'Bitrix\Tasks\Integration\Bizproc\Document\Task', 'TASK_PROJECT_13'].

|| || FILTER | Правила ограничения действия по типу документа и редакции. || || USE_PLACEMENT | Дает возможность открывать дополнительные настройки действия в слайдере приложения. Принимает значения (Y/N). || |#

* - обязательные параметры

Примеры

{% list tabs %}

  • JS

    var params = {
        'CODE': 'md5',
        'HANDLER': 'http://yanzh.net16.net/ping.php',
        'AUTH_USER_ID': 1,
        'USE_SUBSCRIPTION': 'Y',
        'NAME': {
            'ru': 'MD5 генератор',
            'en': 'MD5 generator'
        },
        'DESCRIPTION': {
            'ru': 'Действие возвращает MD5 хеш от входящего параметра',
            'en': 'Activity returns MD5 hash of input parameter'
        },
        'PROPERTIES': {
            'inputString': {
                'Name': {
                    'ru': 'Входящая строка',
                    'en': 'Input string'
                },
                'Description': {
                    'ru': 'Введите строку, которую вы хотите хешировать',
                    'en': 'Input string for hashing'
                },
                'Type': 'string',
                'Required': 'Y',
                'Multiple': 'N',
                'Default': '{=Document:NAME}'
            }
        },
        'RETURN_PROPERTIES': {
            'outputString': {
                'Name': {
                    'ru': 'MD5',
                    'en': 'MD5'
                },
                'Type': 'string',
                'Multiple': 'N',
                'Default': null
            }
        },
        'DOCUMENT_TYPE': ['lists', 'BizprocDocument', 'iblock_1'],
        'FILTER': {
            INCLUDE: [
                ['lists']
            ]
        }
    };
    
    BX24.callMethod(
        'bizproc.activity.add',
        params,
        function(result)
        {
            if(result.error())
                alert("Error: " + result.error());
            else
                alert("Success: " + result.data());
        }
    );

{% endlist %}

Пример параметров Бизнес-процесса

select
'docType': {
	'Name': {
		'ru': 'Тип документа',
		'en': 'Document type'
	},
	'Required': 'Y',
	'Multiple': 'N',
	'Default': 'PDF',
	'Type': 'select',
	'Options': {
		'pdf': 'PDF',
		'docx': 'DOCX'
	}
}
bool
'saveDoc': {
	'Name': {
		'ru': 'Сохранить документ',
		'en': 'Save document'
	},
	'Description': {
		'ru': 'Присвоить порядковый номер',
		'en': 'Assign a sequential number'
	},
	'Type': 'bool',
	'Required': 'Y',
	'Multiple': 'N',
	'Default': 'Y'
}
string
'Parameters': {
	'Name': {
		'ru': 'Параметры шаблона',
		'en': 'Template\'s parameters'
	},
	 'Description': {
		'ru': 'ParamID={=ParamValue}',
		'en': 'ParamID={=ParamValue}'
	},
	'Type': 'string',
	'Required': 'N',
	'Multiple': 'Y'
}

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