Найти в Дзене
NASSR.ru

Простой учет простоев оборудования с использование ГУГЛ ФОРМ (обновляемый выпадающий список)

Оглавление

Идея:

автоматизировать учет времени простоев оборудования.

Критерии:

  • в электронном виде;
  • максимально просто;
  • мобильность (без необходимости постоянного использования ПК);
  • бесплатно.

По сути нужен счетчик времени с идентификатором операций.

Необходимые предварительные мероприятия:

  • аккаунт google или google suit.

Создаём систему учёта за семь простых шагов:

1. Создаем новую форму гугл / google form (далее - ФОРМА).

2. В созданной ФОРМЕ делаем три раздела:

Первый раздел - выбор роли (открыть/закрыть) и соответствующими настройками реакции на ответы.
Первый раздел - выбор роли (открыть/закрыть) и соответствующими настройками реакции на ответы.
Второй раздел - выбор оборудования и описание проблемы.
Второй раздел - выбор оборудования и описание проблемы.
Третий - закрытие простоя. В дальнейшем выпадающий список будет обновляться по данным из гугл таблицы / google sheets (далее - ТАБЛИЦА).
Третий - закрытие простоя. В дальнейшем выпадающий список будет обновляться по данным из гугл таблицы / google sheets (далее - ТАБЛИЦА).

3. Переходим на вкладку "Ответы", нажимаем “Посмотреть ответы в Таблицах”.

-5

На листе с заголовками, созданными по данным ФОРМЫ, добавляем сервисные столбцы. Для автоматического заполнения сервисных столбцов при внесении данных через ФОРМУ используем формулы массива:

- Создаём идентификатор (в данном примере - в столбце "G"), позволяющий выбрать открытую задачу (например, обозначение оборудования и метка времени). В формуле ниже столбец “C” - обозначение оборудования из второго раздела ФОРМЫ, столбец “A” - метка времени:

=ArrayFormulИ(ЕПУСТО(C2:C);"";C2:C&" от "&ТЕКСТ(A2:A;"dd.MM.yy hh:mm")))

- Для фильтрации ранее закрытых задач создаем столбец со статусом "открыт/закрыт" (где столбец "G" - ранее созданный идентификатор, "E" - этот же идентификатор, выбранный в третьем разделе ФОРМЫ при закрытии):

=ArrayFormula(ЕСЛИ(G2:G="";""; ЕСЛИ(ЕСЛИОШИБКА(ПОИСКПОЗ(G2:G;E:E;0);"")="";"Открыт";"Закрыт")))
Сервисные столбцы в ТАБЛИЦЕ.
Сервисные столбцы в ТАБЛИЦЕ.

4. Создаём новый лист в ТАБЛИЦЕ (в данном примере имя листа "data" - далее будет использовано в скрипте) для списка, который будем подставлять в ФОРМУ. Заголовок списка должен совпадать с формулировкой вопроса в ФОРМЕ. В список должны попадать только открытые задачи с листа "Ответы на форму":

=QUERY('Ответы на форму (1)'!G:H; "select G WHERE H = '" & "Открыт"&"'";-1)

5. Создаём скрипт гугл / google script для автоматического обновления выпадающего списка в ФОРМЕ:

Инструменты - Редактор скриптов
Инструменты - Редактор скриптов

Код скрипта:

var ssID = "между кавычек вставить ID ТАБЛИЦЫ";
var formID = "между кавычек вставить ID ФОРМЫ";
var wsData = SpreadsheetApp.openById(ssID).getSheetByName("data");
var form = FormApp.openById(formID);
function main(){
var labels = wsData.getRange(1, 1,1,wsData.getLastColumn()).getValues()[0];
labels.forEach(function(label,i){
var options = wsData.getRange(2, i + 1,wsData.getLastRow()-1,1).getValues().map(function(o){ return o[0] }).filter(function(o){return o !==""});
updateDropRownUsingTitle (label, options);
});
}
function updateDropRownUsingTitle(title,values) {
var items = form.getItems();
var titles = items.map(function(item){
return item.getTitle();
});
var pos = titles.indexOf(title);
if (pos !== -1){
var item = items[pos];
var itemID = item.getId();
updateDropdown(itemID,values);
}
}
function updateDropdown(id,values) {
var item = form.getItemById(id);
item.asListItem().setChoiceValues(values);
}

6. Добавляем триггер по событию “При отправке формы”:

Изменить - Триггеры текущего проекта
Изменить - Триггеры текущего проекта
Триггер "при отправке формы"
Триггер "при отправке формы"

7. Используем форму:

-10

Резюме:

Учет простоев оборудования является одним из элементов "Всеобщего обслуживания оборудования" (Total Productive Maintenance (TPM), который принято считать частью системы "Бережливого производства" (Lean manufacturing - см., например, ГОСТ Р 56407-2015), и позволяет устранять потери на ожидание (см. виды потерь / "muda").

В дальнейшем данные ТАБЛИЦЫ можно использовать для анализа, построения DASHBOARD-ов, сводных таблиц, печатных форм, отчетов и т.п. Таким же образом можно организовать простейшую систему управления ошибками/задачами (bug/issue tracker).

Форма также доступна на мобильных устройствах и может использоваться "на местах".

#ТОРО #lean #gsheets #gform #dropdownlist