Документация для разработчиков
Темная тема

BX.UI.StepProcessing Types

BX.UI.StepProcessing.ProcessOptions


Поля структуры для инициализации процесса Process.


id: string – Уникальный идентификатор процесса в контексте страницы.


controller: string – Дефолтый контроллер процесса.


component: string – Контроллер компонента.


componentMode?: 'class'|'ajax' – Тип обработчика запросов в контроллере компонента.


method?: 'GET' | 'POST' – HTTP-метод AJAX-запросов.


params?: {} – Параметры, добавляемые в запрос на всех хитах к контроллеру.


optionsFields?: Array – Поля, выводимые на стартовом диалоге. OptionsField.


queue?: Array – Очередь заданий. QueueAction.


handlers?: {} – js-функции коллбек - StateChanged. При смене состояния процесса на стороне клиента:

  • - RequestStart – Коллбек вызывается непоследственно перед ajax-вызовом.
  • - RequestStop – Коллбек вызывается при остановке процесса пользователем. При его установке отменяется вызов действия контроллера cancel.
  • - RequestFinalize – Коллбек вызывается при выполнении задания с параметром finalize. При его установке отменяется вызов действия контроллера finalize.

messages: {} – Фразы, выводимые на диалоге и кнопках:

  • - DialogTitle – Заголовок диалога.
  • - DialogSummary – Аннотация на стартовом диалоге.
  • - DialogStartButton – Кнопка старт.
  • - DialogStopButton – Кнопка стоп.
  • - DialogCloseButton – Кнопка закрыть.
  • - RequestCanceling – Аннотация, выводимая при прерывании процесса. По умолчанию: «Прерываю...».
  • - RequestCanceled – Аннотация, выводимая если процесс прерван.
  • - RequestCompleted – Текст на финальном диалоге успешного завершения.
  • - DialogExportDownloadButton – Кнопка для скачивания файла.
  • - DialogExportClearButton – Кнопка удаления файла и сохраненных параметров.
  • - AuthError – Сообщение об ошибке в запросе, при потере авторизации на ajax-хите.
  • - RequestError – Сообщение о сетевой ошибке на ajax-хите.
  • - WaitingResponse – Дефолтное сообщение ожидания ответа на первом шаге, выводимое при отсутствии аннотации первого задания.

Для всех сообщений уже имеются фразы по умолчанию и переводы. Переопределение фразы необходимо для кастомизации под конкретную задачу.


showButtons?: {} – Какие кнопки вывести на диалог:

  • start?: boolean – Стартует процесс.
  • stop?: boolean – Прерывает текущий запрос и вызывает коллбек RequestStop или действие контроллера cancel, контролер должен его поддерживать.
  • close?: boolean – Закрывает диалог процесса.

dialogMinWidth?: number – Минимальная ширина диалога.


dialogMaxWidth?: number – Максимальная ширина диалога.


BX.UI.StepProcessing.OptionsField


Поля структуры для инициализации полей ввода на диалоге.



name: string – Уникальное имя поля в рамках диалога.


type: 'checkbox' | 'select' | 'radio' | 'text' | 'file' – Тип поля.


title: string – Наименование поля.


value?: any – Значение по умолчанию.


obligatory?: boolean – Обязателен для заполнения.


multiple?: boolean – Селектор множественного выбора. Только для полей 'checkbox' | 'select'.


emptyMessage?: string – Текст ошибки, выводимой если не заполнено.


textSize?: number – Размеры текстовой области.


textLine?: number – Размеры текстовой области.


list?: {[val: string]: string} – Список значений для полей типа 'checkbox' | 'select'.


size?: number – Число видимых элементов для поля типа 'select'.


BX.UI.StepProcessing.QueueAction


Поля структуры для инициализации заданий процесса.



action: string – Действие контроллера.


title: string – Аннотация диалога на шаге.


progressBarTitle: string – Краткая аннотация для прогресс-бара.


method?: 'GET' | 'POST' – HTTP-метод AJAX-запроса задания.


controller?: string – Свой отдельный контроллер на шаге задания.


params?: {[name: string]: any} – Дополнительные параметры, добавляемые в запрос.


finalize?: boolean – Финальный шаг не отображается пользователю. Контроллер должен реализовать действие с именем finalize, предназначенное для освобождения ресурсов и очистки временных данных. Либо должен быть установлен коллбек RequestFinalize.


BX.UI.StepProcessing.ProcessResult


Поля структуры ответа контроллера. Ответ ajax-контроллера должен содержать обязательные поля:


STATUS?: string – Статус выполнения текущего задания. Принимаются только два значения:


  • PROGRESS – задание еще не окончено, необходимо повторить запрос с теми же параметрами,
  • COMPLETED – задание выполнено, можно переходить к следующему.

SUMMARY?: string – Текстовая аннотация к результату выполненного действия.


PROCESSED_ITEMS?: number – Число уже обработанных элементов.


TOTAL_ITEMS?: number – Общий объём элементов в обработке. Целое число.


Необязательные поля:


WARNING?: string – Текст предупреждения об нефатальных для процесса проблемах, который будет выведен на диалог.


FINALIZE?: boolean – Досрочно завершить текущий процесс.


NEXT_CONTROLLER?: string – В следующем запросе принудительно переключиться на этот контроллер.


NEXT_ACTION?: string – В следующем запросе выполнить это действие.


DOWNLOAD_LINK?: string – Ссылка на скачивание сформированного файла.


FILE_NAME?: string – Наименование файла для атрибута ссылки вида <a href="${downloadLink}" download="${fileName}">.


DOWNLOAD_LINK_NAME?: string – Текст, выводимый на кнопку для скачивания файла.


CLEAR_LINK_NAME?: string – Текст, выводимый на кнопку для удаления файла.



А также любые дополнительные поля для обработки в обработчиках событий и функции коллбек StateChanged.


BX.UI.StepProcessing.ProcessState


Состояние процесса принимает следующие значения:



intermediate: 'INTERMEDIATE' – Ожидание действия пользователя.


running: 'RUNNING' – Процесс в работе.


completed: 'COMPLETED' – Выполнено.


stopped: 'STOPPED' – Процесс прерван.


error: 'ERROR' – Процесс остановлен из-за ошибки.


canceling: 'CANCELING – Процесс прерывается.


BX.UI.StepProcessing.ProcessCallback


В ходе цикла обработки очереди заданий вызываются следующие функции коллбеки непосредственно в контексте экземпляра процесса::



StateChanged?: function(ProcessState, ProcessResult) – При смене состояния процесса на стороне клиента.


StepCompleted?: function(ProcessState, ProcessResult) – Коллбек вызывается, если шаг очереди закончен.


RequestStart?: function(FormData) – Коллбек вызывается непоследственно перед AJAX-вызовом.


RequestStop?: function(params) – Коллбек вызывается при остановке процесса пользователем. При его установке будет отменен вызов действия контроллера cancel. Иначе контроллер должен реализовать действие с именем cancel.


RequestFinalize?: function(params) – Коллбек вызывается при выполнении задания с параметром finalize. При его установке будет отменен вызов действия контроллера finalize, предназначенного для освобождения ресурсов и очистки временных данныхю. Контроллер должен реализовать такое действие.


Пользовательские комментарии

Мы будем рады, если разработчики добавят свои комментарии по практическому использованию методов системы.

Для этого нужно всего лишь авторизоваться на сайте

Но помните, что Пользовательские комментарии, несмотря на модерацию, не являются официальной документацией. Ответственность за их использование несет сам пользователь.

Также Пользовательские комментарии не являются местом для обсуждения функционала. По подобным вопросам обращайтесь на форумы.
© «Битрикс», 2001-2024, «1С-Битрикс», 2024
Наверх