Применить к
Обновление столбцов с раскрывающимся списком с помощью рабочих процессов Bridge
Who can use this?
Plans:
- Bridge by Smartsheet
Используйте Bridge, чтобы изменять значения раскрывающихся столбцов в Smartsheet при изменении исходных значений.
Что нужно для начала работы
- Таблица:
- идентификатор таблицы;
- исходный столбец, содержащий значения раскрывающегося списка (в нашем примере столбец называется Source Values (Исходные значения));
- целевой столбец, который Bridge может обновлять (в нашем примере столбец называется Dropdown (Раскрывающийся список)).
- Bridge:
- интеграция со Smartsheet;
- триггер рабочего процесса Bridge: Smartsheet > When Column Values are Changed;
- модули рабочих процессов Bridge:
- Smartsheet > Get Sheet;
- Smartsheet > Update Column;
- Array Management > Extract Field from Array.
- Необязательно: другая платформа-источник по вашему выбору.
Начало работы
Чтобы создать рабочий процесс в Bridge, выполните аутентификацию интеграции Smartsheet для рабочего пространства Bridge.
Настройка интеграции Smartsheet с Bridge описана тут.
При построении рабочего процесса держите таблицу и рабочий процесс Bridge открытыми в двух отдельных вкладках. Это облегчит работу.
Построение базовой модели рабочего процесса
Прежде чем приступить к работе, подготовьте все модули, необходимые для рабочего процесса.
- Создайте новый рабочий процесс Bridge.
- Используйте панель в построителе рабочих процессов, чтобы добавить три модуля в следующем порядке.
Модуль 1 Smartsheet > Get Sheet 2 Array Management > Extract Field from Array 3 Smartsheet > Update Column - Сохраните рабочий процесс.
Вот как должен выглядеть готовый рабочий процесс.
Настройка триггера рабочего процесса
После создания базовой модели рабочего процесса приступайте к настройке триггера рабочего процесса.
- Выберите модуль Trigger (Триггер).
- Выберите страницу Integrations (Интеграции) в разделе Integrations, чтобы открыть панель Integration в новой вкладке.
- Найдите Smartsheet в списке интеграций.
Используйте опцию Connected (Подключены) под логотипом Bridge, чтобы получить список только тех интеграций, которые прошли аутентификацию для данного рабочего пространства. - Разверните строку Triggers (Триггеры).
- Чтобы создать новый триггер, выберите .
- Заполните следующие поля.
- Trigger Name (Имя триггера). Создайте пользовательскую метку для своего триггера.
- Sheet ID (Идентификатор таблицы). Вставьте идентификатор исходной таблицы (откуда будут копироваться значения).
- Event Type (Тип события). Выберите When Column Values are Changed (При изменении значений столбцов).
- Column Name or ID (Имя или идентификатор столбца). Введите имя столбца Smartsheet, который станет источником значений раскрывающегося списка.
- Select Workflow (Выбор рабочего процесса). Выберите новый рабочий процесс, который вы только что создали, из выпадающего списка.
- Выберите Save (Сохранить).
- Вернитесь к рабочему процессу.
Если вы хотите вернуться на исходную вкладку, обновите страницу, чтобы увидеть триггер.
Настройка модулей рабочего процесса
Этот рабочий процесс запускают действия в таблице. Как только рабочий процесс обнаружит триггер (-ы), он выполнит необходимые действия с той же таблицей. Поэтому для заполнения модулей Smartsheet мы будем использовать ссылки на данные среды выполнения (журнала запуска) из триггера.
Шаг 1. Настройка модуля Get Sheet
Что делает модуль Get Sheet?
Модуль Get Sheet извлекает данные из таблицы, изменение которой запускает рабочий процесс.
Когда модуль Get Sheet запускается, Bridge извлекает данные таблицы и помещает их в журнал запуска рабочего процесса в виде объектов. Объекты — это элементы, возвращаемые API, которые содержат значения полей, относящихся к данному объекту.
Массив — это набор объектов и соответствующие им поля. Вот пример того, как массив из 13 строк из модуля Get Sheet может выглядеть в журнале запуска. Развёрнута информация о первой строке.
- В поле Sheet ID (Идентификатор таблицы) введите значение {{runtime.sheetID}}.
- Сохраните рабочий процесс.
- В таблице добавьте новое значение в столбец, содержащий исходные значения (в любую строку).
- Сохраните таблицу.
Шаг 2. Обнаружение данных, внесённых в рабочий процесс
Вернитесь в Bridge, чтобы скопировать данные, необходимые для модуля Extract Field from Array (Извлечь поле из массива).
- Откройте журнал запуска.
- Обновите панель журнала запуска.
- Чтобы просмотреть подробные сведения о триггере и модулях рабочего процесса, разверните верхнюю запись.
- Чтобы просмотреть возвращаемые данные, разверните строку Smartsheet: Get Sheet.
- Разверните строку таблицы.
- Найдите запись rows (Строки).
Она будет выглядеть так: rows: Array[#]. - Выберите значок справа от записи rows.
- Выберите Copy data reference (Копировать ссылку на данные).
Шаг 3. Настройка модуля Extract Field from Array
Что делает модуль Extract Field from Array?
Модуль Extract Field from Array (Извлечение поля из массива) позволяет извлекать значения из объектов массива. С помощью этого модуля вы можете создать список, состоящий только значения этого поля.
В примере, который вы увидите в этой статье, Bridge будет извлекать поле значений Source Values. Bridge извлечёт все значения из столбца Source Values и представит их в виде списка.
- Чтобы открыть панель редактирования, выберите модуль Extract from Array.
- В поле Array (Массив) вставьте ссылку на данные.
Она будет длинной и начнётся с фигурных скобок: {{. - В поле Key (Ключ) укажите столбец, который вы хотите представить в виде списка.
- Указывая столбец, который нужно представить в виде списка, используйте следующий формат: cells.[Имя столбца].value. Например: cells.Source Values.value.
- В поле Output (Вывод) проверьте, выбрано ли поле Array.
- Сохраните рабочий процесс.
- В таблице добавьте новое значение в столбец, содержащий исходные значения (в любую строку).
- Сохраните таблицу.
Шаг 4. Обновление столбца
Что делает модуль Update Column?
Модуль Update Column вносит созданный вами список значений в столбец с раскрывающимся списком. При каждом запуске рабочего процесса Bridge будет создавать новую версию списка и обновлять её для данного столбца таблицы.
- В поле Sheet ID (Идентификатор таблицы) введите значение {{runtime.sheetID}}.
- Получите идентификатор столбца.
- Вернитесь на панель изменения модуля Update Column.
- В поле Column ID (Идентификатор столбца) вставьте ссылку на данные.
- В поле Column Name введите имя столбца, в котором будут содержаться значения раскрывающегося списка.
- В поле Type (Тип) выберите тип столбца: Dropdown (Single Select) (Раскрывающийся список с одиночным выбором) или Dropdown (Multi Select) (Раскрывающийся список с множественным выбором).
- В поле Values (Значения) вставьте массив, созданный модулем Extract Field from Array во время последнего запуска.
- Сохраните рабочий процесс.
Чтобы получить ссылку на данные для модуля Extract Field from Array, выполните следующие действия.
- Откройте панель журнала запуска.
- Чтобы вернуться к списку запусков, выберите All Runs (Все запуски).
- Обновите панель журнала запуска.
- Разверните запись о последнем запуске.
- Раскройте строку Array Management: Extract Field from Array.
- Выберите значок справа от записи с результатами.
- Выберите Copy data reference (Копировать ссылку на данные).
- Сохраните рабочий процесс.
Альтернативные варианты
Для создания списка значений не обязательно использовать одну и ту же таблицу или элемент Smartsheet. Если вы хотите получить значения выпадающего списка из другого места, то триггер и первый модуль рабочего процесса будут другими.
Вот как можно настроить рабочий процесс в этом случае.
- Используйте список из столбца другой таблицы. При этом вам придётся изменить триггер, чтобы он реагировал на изменение другой таблицы. Также необходимо будет обновить поля Sheet ID и Column ID модуля Update Column.
- Используйте список из Resource Management или Brandfolder. Рабочий процесс может реагировать конкретные изменения в Resource Management или Brandfolder и генерировать список значений из этих систем. Замените триггер, приведённый в примере, соответствующим триггером для одной из этих интеграций. Затем замените модуль Get Sheet на модуль, который будет импортировать данные в рабочий процесс.
- Используйте триггер Schedule (Расписание). При использовании этого триггера вам не придётся реагировать на изменения, так как рабочий процесс сделает всё за вас:
- извлечёт данные и импортирует их в рабочий процесс;
- будет обновлять раскрывающийся список раз в день, неделю или месяц.