Создание задачи в jira из 1с
Этот учебник применяется к Jira 7.0.0 и более поздним версиям.
Intermediate. Вы должны были пройти хотя бы один учебник для начинающих, прежде чем работать с этим учебником. См. Список учебников для разработчиков.
Для завершения этого урока вам потребуется около 1 часа.
Обзор учебника
В этом руководстве вы найдете инструкции по разработке приложения, которое может выполнять операции CRUD в проекте Jira. В учебнике вы создадите сервлет, который представляет страницу в Jira, где пользователи могут:
- Создать задачу.
- Изменить задачу.
- Удалить задачу.
В дополнение к CRUD-операциям, этот учебник демонстрирует, как использовать модуль сервлета для выполнения простого списка задач с интерфейсами IssueService и SearchService .
Завершенное приложение будет состоять из следующих компонентов:
- Java-классы, инкапсулирующие логику приложения.
- Ресурсы для отображения пользовательского интерфейса приложения.
- Дескриптор приложения (то есть XML-файл), чтобы включить модуль плагина в приложении Atlassian.
Когда вы закончите, все эти компоненты будут упакованы в один JAR-файл.
Об этих инструкциях
Вы можете использовать любую поддерживаемую комбинацию операционной системы и IDE для создания этого приложения. Эти инструкции были написаны с использованием macOS Sierra и IntelliJ IDEA 2017.3. Если вы используете другую операционную систему или комбинацию IDE, вы должны использовать эквивалентные операции для своей конкретной среды.
Этот учебник был последний раз проверен с помощью Jira 7.7.1 с использованием Atlassian Plugin SDK 6.3.10.
Прежде чем вы начнете
Чтобы завершить этот учебник, вам необходимо знать следующее:
- Основы разработки Java: классы, интерфейсы, методы, использование компилятора и т. д.
- Как создать проект Atlassian plugin с помощью Atlassian Plugin SDK.
- Основы администрации Jira.
Источник приложения
Мы рекомендуем вам проработать этот учебник. Если вы хотите пропустить или проверить свою работу, когда закончите, вы можете найти исходный код приложения на Atlassian Bitbucket.
Чтобы клонировать репозиторий, выполните следующую команду:
Кроме того, вы можете загрузить исходный код в виде ZIP-архива.
Шаг 1. Создайте проект приложения
На этом этапе вы будете использовать две команды atlas для создания кода-заглушки для вашего приложения. atlas -команды являются частью Atlasian Plugin SDK и автоматизируют большую часть разработки приложений для вас.
- Настройте SDK Atlassian Plugin и создайте проект, если вы этого еще не сделали.
- Откройте терминал и перейдите в каталог, в котором вы хотите сохранить код приложения.
- Чтобы создать исходные файлы проекта и исходный код приложения Jira, выполните следующую команду:
- Чтобы определить приложение, введите следующую информацию.
- Подтвердите свои записи при появлении запроса.
- Перейдите в каталог, созданный с помощью SDK.
- Удалите автоматически созданные тестовые каталоги.
- Удалите ненужные файлы классов Java.
- Импортируйте проект в свою избранную среду IDE.
Шаг 2. Просмотрите и настройте (по желанию) сгенерированный код
Это хорошая идея, чтобы ознакомиться с кодом приложения заглушки. На этом этапе мы проверим значение версии и настроим созданный класс заглушки.
Добавить метаданные приложения к POM
POM (то есть файл определения объектной модели проекта) расположен в корне вашего проекта и объявляет зависимости проекта и другую информацию.
На этом этапе вы добавите некоторые метаданные о своем приложении и вашей компании или организации в POM.
- Перейдите в корневую папку и откройте файл pom.xml .
- Добавьте название организации или организации и URL вашего веб-сайта в элемент organization :
- Обновите элемент description :
- Сохраните файл.
Просмотрите созданный дескриптор приложения
Ваш код заглушки содержит файл дескриптора приложения atlassian-plugin.xml . Это XML-файл, который идентифицирует приложение для хоста приложения (то есть для Jira) и определяет требуемые функциональные возможности приложения.
- В своей среде IDE перейдите к src / main / resources и откройте файл дескриптора.
Вы должны увидеть что-то вроде этого (комментарии удалены):
На последующих этапах мы будем использовать генератор модуля плагинов (т. е. другую команду atlas-) для генерации кода-заглушки для дополнительных модулей, требуемых приложением.
Шаг 3. Добавьте модуль сервлета
- Откройте окно терминала и перейдите в корневую папку приложения, где находится pom.xml .
- Выполните следующую команду:
- Выберите параметр Servlet .
- При появлении запроса добавьте следующую информацию.
Новое имя класса
Show Advanced Setup
Показать расширенную настройку
- Выберите N для добавления другого модуля плагина.
Просмотрите изменения, сделанные генератором
Генератор добавил в ваше приложение следующие элементы:
- Класс Java IssueCRUD .
- Модуль servlet в ваш дескриптор приложения.
- Требуемые зависимости Maven (в вашем POM).
Если вы откроете файл atlassian-plugin.xml в своей среде IDE, вы увидите следующую информацию о модуле, добавленную генератором:
Если вы откроете файл pom.xml в своей среде IDE, в разделе dependencies вы увидите следующие новые записи:
Шаг 4. Добавьте модули управления Velocity и пользователями
По умолчанию модуль сервлета не сконфигурирован для использования шаблонов Velocity (предпочтительный механизм шаблонов Atlassian для сервлетов). Давайте создадим Velocity, чтобы мы не писали HTML внутри нашего кода сервлета. Мы будем использовать Atlassian Spring Scanner для импорта TemplateRenderer , который импортирует средство визуализации Velocity. Чтобы добавить этот компонент, выполните следующие действия:
- В корне вашего проекта откройте файл pom.xml .
- Найдите раздел dependencies и вставьте следующее:
- Сохраните файл.
Шаг 5. Создайте приложение и сделайте небольшой тест.
На данный момент вы на самом деле не написали Java-код. Вы можете, однако, запустить Jira и увидеть ваше приложение с его сервером в действии. На этом этапе вы запустите Jira, создите проект, который вы будете использовать позже, и проверите сервлет.
- Убедитесь, что вы сохранили все свои изменения кода до этой точки.
- Откройте окно терминала и перейдите в корневую папку приложения, где находится файл pom.xml .
- Выполните следующую команду:
Эта команда создает код приложения, запускает экземпляр Jira и устанавливает в нем ваше приложение. Это может занять несколько минут. Когда процесс завершится, вы увидите много строк состояния на вашем экране с чем-то вроде следующего:
Обратите внимание на URL-адрес экземпляра Jira.
- Перейдите в локальный экземпляр Jira в вашем браузере (URL-адрес указан в выводе терминала).
- Войдите в систему, используя admin / admin по умолчанию.
При первом запуске экземпляра Jira появляется мастер создания проекта.
- Создайте новый пустой проект под названием «TUTORIAL» с ключевым словом «TUTORIAL». Нам понадобится это позже.
Чтобы сосредоточиться на кодировании IssueCRUD, мы полагаемся на жестко закодированные идентификаторы проектов в нашем приложении. Важно, чтобы проект Jira имел имя и ключ «TUTORIAL». Если новый мастер проекта не отображается, обязательно создайте проект с этими значениями.
Шаг 6. Создание шаблонов Velocity
Нам нужны шаблоны Velocity для создания, редактирования и списка задач.
- Откройте новое окно терминала и перейдите к src / main / resources .
- Создайте подкаталог с именем templates .
- Создайте новый файл с именем edit.vm , затем добавьте следующий контент:
- Создайте файл с именем list.vm , затем добавьте следующий контент:
- Создайте файл с именем new.vm , затем добавьте следующий контент:
Вот как мы будем использовать файлы:
- list.vm , чтобы отобразить список доступных задач.
- edit.vm для редактирования выбранной задачи.
- new.vm для создания простой формы создания задачи.
Теперь вы готовы написать Java-код.
Шаг 7. Напишите свои Java-классы
На этом этапе вы обновите код сервлета, чтобы отобразить что-то более интересное, чем «Hello World». Все работы в этом разделе будут находиться в файле IssueCRUD.java , который находится здесь:
Настройка сервлета
Давайте сконфигурируем наш основной сервлет.
- Откройте файл IssueCRUD.java .
- Замените существующий раздел импорта (без нарушения определения пакета), чтобы он выглядел следующим образом:
- Поместите @Scanned аннотацию в класс IssueCRUD и создайте конструктор.
Аннотации @JiraImport инструктируют Atlassian Spring Scanner импортировать указанные интерфейсные сервисы Atlassian из хост-приложения и вставлять их в наш объект сервлета. @Scanned аннотация используется для обозначения класса для Atlassian Spring Scanner.
Обработка запроса GET ( список задач, новая задача, редактирование задачи)
После подключения сервисов Jira API, необходимых для приложения, мы можем начать работу с обработчиками запросов(request).
- Замените существующий метод doGet . Этот новый метод создает страницу, которая в зависимости от действия пользователя перечисляет все задачи, создает новые задачи и обновляет существующие задачи.
Если вы внимательно посмотрите, доступ к этой задаче выполняется с помощью IssueService . Нам также понадобится метод создания списка Jiras.
- Добавьте метод getIssues , который будет искать проблемы, относящиеся к проекту «TUTORIAL».
Если мы хотим получить список задач для нашего проекта, мы обращаемся к SearchService с указанным предложением JQL.
Параметр запроса(request), который получает сервлет, определяет, какую страницу отображать:
- Если параметр actionType edit , сервлет отображает шаблон edit.vm .
- Если параметр actionType является new , сервлет отображает шаблон new.vm .
- Если параметр не передан, сервлет отображает шаблон list.vm .
Обработка запроса POST (создание задачи и обновление задачи)
Теперь, когда мы можем отобразить запрос GET, давайте сосредоточимся на создании и обновлении задачи. Это происходит в запросе POST и обрабатывается в нашем коде методом doPost . Мы также создадим методы handleIssueEdit и handleIssueCreation для разделения логики. Обратите внимание, что код предполагает строгий код ключа проекта «TUTORIAL».
Как и в коде doGet , в doPost мы отделяем создание от обновления, проверяя для параметра запроса actionType .
Для создания и обновления задачи требуется выполнить шаг проверки. Для создания необходимо использовать метод validateCreate для IssueService . Шаг проверки вернет коллекцию ошибок, если есть ошибки с результатами проверки. В этом случае мы передадим их в контекст шаблона, чтобы Velocity мог отобразить их в HTML.
Удалить задачи
Мы можем удалить задачи с помощью нашего приложения.
Чтобы включить удаление задач, добавьте следующий метод:
Шаг 8. Создайте приложение и протестируйте его.
Теперь вы готовы протестировать свой классный новый сервлет для создания задач.
Внешняя обработка на управляемой форме для 1С:Предприятие 8.3 по интеграции с Atlassian Jira используя Jira REST API. Ключевые функции: выборка запросов с использованием JQL; добавление и изменение запросов; добавление, изменение и удаление записей о работах; чтение комментариев к запросам; сохранение всех ключевых параметров между сеансами работы. Тестирование проводилось на платформе 1С (8.3.11.2954) совместно с JIRA Server platform (7.3.7)
Вы используете Jira как веб-морду, общедоступную для всех ?
А 1С как учетную систему для расчета зарплаты и прочих расчетов ?
(1) Да, именно так.
Jira + Confluence - снаружи для клиентов и внешних подрядчиков.
1С - внутри, для аналитики, документооборота, расчетов и учета.
Спасибо за отличную разработку, очень нуждался в таком инструменте!
При попытке изменить задачу выходит следующая ошибка:
Ссылка на полноразмерный скриншот
В чем может быть проблема?
(6) Возможно вы не заполнили на закладке "Параметры" таблицу "Типы и статусы запросов". Если причина не в этом, готов к вам подключится по teamviewer и удаленно разобраться с проблемой. Напишите мне в личку. я буду на связи ~ после 15.00
(7) "Типы и статусы запросов" я заполнил, нужно что-нибудь в ней менять вручную?
Ссылка на полноразмерный скриншот
Жаль что только управляемые формы. Обработка конечно очень хороша. Все действия пишет. Все ошибки четко выводит. Но вот код читать немного трудно без многих комментов.
Если не полениться то можно подстроить под любую систему. Жаль нельзя добавить +10
(12) Спасибо за оценку :). Про комментарии кода - согласен. по хорошему надо было бы. но уже и так все свои временные лимиты израсходовал на обработку + публикацию :). Потому как в пришлось все свои наработки по интеграции достать из рабочей конфигурации и много чего написать нового и переписать по другому под формат внешней обработки.
Добрый день. Jira Server развернут в демо-версии на локальной машине, созданы 2 пользователя: админ и обычный пользователь
Из обработки не могу подключиться, выдает ошибку аутентификации 401.
Подскажите, пожалуйста, в чем может быть дело.
Спасибо.
(16) Добрый день. Что вижу на картинке, и с чем приходилось иногда сталкиваться. Jira иногда не работает корректно с кириллическими именами пользователей. Попробуйте создать пользователей, указав имя пользователя латиницей (на английском), Например не "Владимир", а "wowan_ht"
(20) Добрый день, сложно сказать не имея подробной информации.
Попробую предположить исходя из того что в этот момент происходит.
В момент получения статусов выполняется REST запрос:
В вашем случае скорее всего ошибка может быть в написании ключа проекта.
(24) Добрый день. Данная обработка предназначена для серверной версии Jira. При этом, на сколько я знаю, если речь идет об облачной версии, могут быть нюансы в написании отдельных запросов через REST.
- запрос такой же как и для серверной версии.
Возможно проблема в настройках прав пользователя под которым вы выполняете этот запрос:
Просто если у вас не работает запрос через браузер, сл-но он не работает и через обработку.
(25) Добрый вечер. Синхронизацию запустить получилось. Данные получены. Но столкнулся с еще одной проблемой: не могу создать новую задачу в обработке. Ошибка Код состояния 400 <"errorMessages":[],"errors":<"reporter":"Field 'reporter' cannot be set. It is not on the appropriate screen, or unknown.">>. А при попытке изменить задачу выдается ошибка: Значение не является значением объектного типа (Количество).
(26) Добрый день.
По Вопросу-1. "Не могу создать новую задачу. "reporter":"Field 'reporter' cannot be set"
Судя по ошибке при ваших настройках Jira, и с правами пользователя, под которым вы подключаетесь к Jira, нет возможности изменить поле "reporter".
Я проверил на "своей" Jira - у меня всё работает.
Ниже на картинке то как информация о "reporter" (автор) запроса отображается в моей Jira.
Попробуйте посмотреть как у вас:
1. Работает ли у вас выборка запросов (Закладка в обработке "Выборка запросов" - "Прочитать из Jira"/
2. Выводиться ли информация в поле "Reporter.name" (В списке выбранных запросов)
3. Откройте ссылку из колонки "Rest link" в браузере, и поищете поиском "reporter"
Если информация читается, но не записывается, причина с большой вероятность в ограниченных правах пользователя под которыми вы работаете c Jira через Rest. Проверьте что вы можете непосредственно в Jira под этим пользователем создать Запрос.
А затем попробуете при создании через обработку, указывать в качестве Автора (reporter), того же пользователя.
Просмотр через блокнот или сразу в окне браузере не принципиально. Если это поле читается при выборке запросов, значит вопрос с его установкой из обработки.
Проблема может быть из-за имени пользователя в Jira введенного кириллицей. Такой вопрос уже подымался (смотрите комментарий №17). А как у в вашем случае?
Судя по ошибке, скорее всего в вашем случае в проекте Jira не используются "Компоненты". Проверить это вы можете скачав файл json и проанализировав поля запроса.
В публикации в разделе "Источники и ссылки" в п.5 есть ссылка на онлайн просмотр Json файлов.
Вы можете закомментировать код обработки по чтению данных о компонентах в таком случае, чтобы избежать ошибки при работе обработки.
Внешняя обработка на управляемой форме для 1С:Предприятие 8.3 по интеграции с Atlassian Jira используя Jira REST API. Ключевые функции: выборка запросов с использованием JQL; добавление и изменение запросов; добавление, изменение и удаление записей о работах; чтение комментариев к запросам; сохранение всех ключевых параметров между сеансами работы. Тестирование проводилось на платформе 1С (8.3.11.2954) совместно с JIRA Server platform (7.3.7)
Функции
Ключевые функции
- Получение для проекта Jira всех типов запросов (issue type) и связанных с ними статусов (status) запросов.
- Выборка измененных запросов из Jira с отбором по проекту, периоду, с ограничением на кол-во отбираемых записей и используя шаблон JQL запроса.
- Получение списка пользователей Jira исходя из полей запроса (assignee, reporter, creator), полей worklog-а (autor, update autor) и полей комментариев (autor, update autor) и отображение имени пользователя и представления пользователя при выборе пользователя при редактировании полей запроса и полей записи о работе.
- Чтение и запись ключевых полей запроса (issue) Jira: Наименование (summary), Описание (description), Тип запроса (issue type), Родитель подзадачи (parent), Ссылка на epic (epic link), Приоритет (priority), Исполнитель (assignee), Автор (reporter), Создатель (creator), Срок исполнения (due date), Дата создания (created), Дата обновления (updated), Компоненты проекта Jira (components), Метки (labels), Первоначальная оценка (original estimate), Оставшееся время (remaining estimate), Всего затраты (time spent).
- Чтение и установка нового статуса запроса (status). Получение допустимых транзакции (transitions) Jira для перехода к новому статусу и осуществление перехода используя подходящую транзакцию.
- Чтение записей о работах (worklog) для запроса Jira. Добавление, Изменение и Удаление записей о работе.
- Чтение комментариев к запросу Jira. Формирование ссылки для перехода в Jira непосредственно к выбранному комментарию.
Дополнительные возможности
Источники и ссылки
Подключение к серверу Jira
На закладке "Параметры" указываются параметры для подключения к Jira:
- Адрес сервера для подключения.
- Ссылка по которой доступен REST API.
- Ключ проекта Jira который будет использоваться.
- Пользователь и пароль для подключения к Jira. Подключение к Jira выполняется используя простой (незащищённый) способ аутентификации (подробнее по ссылке:
Получение Типов и статусов запросов для проекта Jira
Выборка запросов используя JQL запрос к Jira
Список пользователей Jira для выбора
- Список на закладке "Пользователи" является основой для содержимого списков выбора при выборе участников запроса.
- Пользователи в список добавляются автоматически при "Выборке запросов" или при чтения данных конкретного запроса (с учетом записей о работах и комментариев).
- При необходимости пользователей в список можно добавить "вручную".
- Список пользователей автоматически сохраняется между сеансами работы в данных формы.
Чтение запроса из Jira
- На закладке "Запрос" выполняются основные операции по просмотру и редактированию полей запроса.
- Если выбрана операция "Изменить запрос" и заполнен "Ключ запроса" (Key) доступна команда "Прочитать из Jira".
- При нажатии "Прочитать из Jira" выполняется запрос к Jira и заполняются поля запроса, записи о работах и комментарии.
- Если заполнен "Ключ запроса" тогда отображается "ссылка для перехода к запросу в браузере".
- По ссылке "JSON" выполняется переход в браузере к файлу .json с данными запроса.
- Для чтения значений полей выполняется запрос к Jira (см.
Изменение полей запроса и запись в Jira
- Программа отдельно хранит все предыдущие значения полей запроса.
- Каждый раз при чтении запроса из Jira текущие и предыдущие значения полей синхронизируются.
- При изменение какого-либо из полей запроса, сравнивается новое значение и предыдущее.
- Если новое значение отличается от предыдущего, поле отмечается как "измененное" и выделяется на форме с помощью фона и цвета текста заголовка.
- При записи в Jira передаются только измененные поля (для которых новое значение отличается от предыдущего).
- Для записи выполняется запрос к Jira (см.
Создание нового запроса в Jira
- Для создания нового запроса на закладке "Запрос" необходимо выбрать операцию "Создать запрос".
- Пока запрос не создан, недоступны ссылки для перехода к запросу, комментариям и списку записей о работах.
- Для создания запроса выполняется запрос к Jira (см.
Изменение статуса запроса в Jira
- Если изменяется статус запроса, программа показывает информационную надпись вида "При записи статус изменится с "В работе" -> "Выполнен".
- Изменение статуса происходит при нажатии "Записать в Jira".
- Сначала выполняется запрос по записи измененных полей запроса, а затем изменяется статус запроса.
- Изменение статуса запроса происходит в несколько этапов:
- Сначала выполняется дополнительный запрос для получения списка всех допустимых транзакция для текущего запроса (см.
Чтение, Добавление и Удаление записей о работах в Jira
Чтение комментариев и переход по ссылке к конкретному комментарию в Jira
- В карточке запроса на закладке "Комментарии" отображается список всех комментариев для запроса.
- По кнопке "Прочитать комментарии" выполняется запрос к Jira и заполняется список комментариев для запроса (см.
Специальные предложения
Вы используете Jira как веб-морду, общедоступную для всех ?
А 1С как учетную систему для расчета зарплаты и прочих расчетов ?(1) Да, именно так.
Jira + Confluence - снаружи для клиентов и внешних подрядчиков.
1С - внутри, для аналитики, документооборота, расчетов и учета.Спасибо за отличную разработку, очень нуждался в таком инструменте!
При попытке изменить задачу выходит следующая ошибка:
Ссылка на полноразмерный скриншотВ чем может быть проблема?
(6) Возможно вы не заполнили на закладке "Параметры" таблицу "Типы и статусы запросов". Если причина не в этом, готов к вам подключится по teamviewer и удаленно разобраться с проблемой. Напишите мне в личку. я буду на связи ~ после 15.00
(7) "Типы и статусы запросов" я заполнил, нужно что-нибудь в ней менять вручную?
Ссылка на полноразмерный скриншотЖаль что только управляемые формы. Обработка конечно очень хороша. Все действия пишет. Все ошибки четко выводит. Но вот код читать немного трудно без многих комментов.
Если не полениться то можно подстроить под любую систему. Жаль нельзя добавить +10(12) Спасибо за оценку :). Про комментарии кода - согласен. по хорошему надо было бы. но уже и так все свои временные лимиты израсходовал на обработку + публикацию :). Потому как в пришлось все свои наработки по интеграции достать из рабочей конфигурации и много чего написать нового и переписать по другому под формат внешней обработки.
Добрый день. Jira Server развернут в демо-версии на локальной машине, созданы 2 пользователя: админ и обычный пользователь
Из обработки не могу подключиться, выдает ошибку аутентификации 401.
Подскажите, пожалуйста, в чем может быть дело.
Спасибо.(16) Добрый день. Что вижу на картинке, и с чем приходилось иногда сталкиваться. Jira иногда не работает корректно с кириллическими именами пользователей. Попробуйте создать пользователей, указав имя пользователя латиницей (на английском), Например не "Владимир", а "wowan_ht"
(20) Добрый день, сложно сказать не имея подробной информации.
Попробую предположить исходя из того что в этот момент происходит.В момент получения статусов выполняется REST запрос:
В вашем случае скорее всего ошибка может быть в написании ключа проекта.
(24) Добрый день. Данная обработка предназначена для серверной версии Jira. При этом, на сколько я знаю, если речь идет об облачной версии, могут быть нюансы в написании отдельных запросов через REST.
- запрос такой же как и для серверной версии.
Возможно проблема в настройках прав пользователя под которым вы выполняете этот запрос:
Просто если у вас не работает запрос через браузер, сл-но он не работает и через обработку.
(25) Добрый вечер. Синхронизацию запустить получилось. Данные получены. Но столкнулся с еще одной проблемой: не могу создать новую задачу в обработке. Ошибка Код состояния 400 <"errorMessages":[],"errors":<"reporter":"Field 'reporter' cannot be set. It is not on the appropriate screen, or unknown.">>. А при попытке изменить задачу выдается ошибка: Значение не является значением объектного типа (Количество).
(26) Добрый день.
По Вопросу-1. "Не могу создать новую задачу. "reporter":"Field 'reporter' cannot be set"
Судя по ошибке при ваших настройках Jira, и с правами пользователя, под которым вы подключаетесь к Jira, нет возможности изменить поле "reporter".
Я проверил на "своей" Jira - у меня всё работает.Ниже на картинке то как информация о "reporter" (автор) запроса отображается в моей Jira.
Попробуйте посмотреть как у вас:
1. Работает ли у вас выборка запросов (Закладка в обработке "Выборка запросов" - "Прочитать из Jira"/
2. Выводиться ли информация в поле "Reporter.name" (В списке выбранных запросов)
3. Откройте ссылку из колонки "Rest link" в браузере, и поищете поиском "reporter"Если информация читается, но не записывается, причина с большой вероятность в ограниченных правах пользователя под которыми вы работаете c Jira через Rest. Проверьте что вы можете непосредственно в Jira под этим пользователем создать Запрос.
А затем попробуете при создании через обработку, указывать в качестве Автора (reporter), того же пользователя.Просмотр через блокнот или сразу в окне браузере не принципиально. Если это поле читается при выборке запросов, значит вопрос с его установкой из обработки.
Проблема может быть из-за имени пользователя в Jira введенного кириллицей. Такой вопрос уже подымался (смотрите комментарий №17). А как у в вашем случае?
Судя по ошибке, скорее всего в вашем случае в проекте Jira не используются "Компоненты". Проверить это вы можете скачав файл json и проанализировав поля запроса.
В публикации в разделе "Источники и ссылки" в п.5 есть ссылка на онлайн просмотр Json файлов.
Вы можете закомментировать код обработки по чтению данных о компонентах в таком случае, чтобы избежать ошибки при работе обработки.То, что применение продуктов Atlassian оптимизирует управление проектами, особенно, если речь идет о распределенных командах, ни для кого не секрет. В этой статье мы расскажем, как с помощью Jira мы оптимизировали трудозатраты еще на старте проекта.
Корпоративная система WiseAdvice-IT на базе продуктов Atlassian, которые в нашей компании используют уже более 3 лет, позволяет полностью перевести контроль проектов в онлайн, идти в ногу с постоянно растущими темпами, забыть о разрозненных источниках коммуникации, например, электронной почте или таблицах Excel, постоянно использовать инструменты визуального планирования и реализовать цифровую трансформацию бизнеса не только на словах. Например, Jira, которая изначально применялась как система управления разработки ПО, стала для нас незаменимым инструментом в управлении как внутренними задачами, так и внешними проектами, которые мы с успехом реализуем на платформе 1С. Как с помощью Jira мы оптимизировали трудозатраты еще на старте проекта, расскажем в этой статье.
Проект
Представим себе ситуацию, когда многомиллионный проект комплексной автоматизации на основе флагмана 1С – программного продукта «1С:ERP. Управление холдингом», для крупной инфраструктурной компании в области телекоммуникаций, стартует в начале 2020 года. Помимо того, что с каждым днем становилось все яснее, что проект придется сдавать «на удаленке», руководитель проекта столкнулся с неожиданной проблемой кадрового голода.
Что случилось?
Когда в нашей стране начала активно ухудшаться эпидемиологическая ситуация, из-за чего вскоре объявили локдаун, многие компании поняли ценность внедрения автоматизированных систем управления как основы для эффективной организации удаленной работы своих предприятий. С этим и связано возникновение кадрового голода в сфере 1С: с одной стороны, на специалистов возрос спрос, с другой – специалисты в нестабильной ситуации боялись «прыгать» с проекта на проект или просто не были готовы работать в новом формате.
Именно поэтому еще на этапе проектирования и формирования задач на разработку – то есть в самом начале проекта, потребовалось срочно найти решение по оптимизации кадровых ресурсов.
Если бы сначала был сформирован технический проект, а затем на его основании были зафиксированы задачи на разработку, то запуск создаваемой АС в эксплуатацию, учитывая отсутствие специалистов, пришлось бы сдвинуть на февраль-март 2021 года, что было неприемлемо для заказчика.
Технический проект + задачи разработки
Было принято решение вначале проработать общую архитектурную часть технического проекта, и параллельно – особым образом сформировать задачи на разработку. После формирования задач их планировалось включить в архитектуру технического проекта автоматически, благо, инструменты позволяли.
Этапы проектирования и разработки расписывали, взяв за основу карту автоматизируемых бизнес-процессов, сформированную в результате предпроектного обследования, а после этапа моделирования были добавлены еще и функциональные требования по всем прорабатываемым подсистемам.
Руководитель проекта сформировал обобщающие задачи – «эпики», по каждому из бизнес-процессов и по каждому функциональному требованию. Реализация каждого эпика была разбита на отдельные, детально описаны задачи в подчинении данному эпику. Таким образом в дополнении к описанию архитектуры будущей системы, была сформирована четкая структура задач на разработку, что позволило разработке стартовать без промедления.
Чтобы полученный на предыдущем шаге документ сформировался в нужном, соответствующем техническому проекту формате, был реализован специальный инструмент (по сути – небольшая конфигурация на платформе «1С:Предприятие 8»). Документ с задачами, полученный в результате доформатирования, стал частью шаблона проектного документа «Технический проект», после чего провели всестороннее согласование документа.
Формирование технического проекта
Заведем проект в системе.
Рис.1 Создание проекта
Далее выгружаем эпики из Jira и загружаем их в инструмент формирования. В Jira настраиваем соответствующий фильтр по задачам и регулируем состав колонок.
Рис.2 настройка Jira
Выгружаем в Excel.
Рис.3 Выгрузка в Excel
В инструмент формирования загружаем через загрузку из табличного документа.
Рис.4 Загрузка из табличного документа
Теперь приступим к выгрузке описания задач из Jira и начнем с подготовки фильтра. Выгружаем описания задач с помощью механизма Jira automated release note.
Рис.5 Использование Jira automated release note
Результат
Силами одного специалиста был подготовлен документ «Технический проект» с прописанными задачами «от и до», без отвлечения аналитиков и технических специалистов, принимавших участие в начальном этапе разработки. Благодаря четкой пириоритизации задач удалось существенно сократить трудозатраты уже имеющихся на проекте специалистов и избежать привлечения новых.
Чтобы создать задачу в JIRA, пользователю необходимо иметь достаточные полномочия для соответствующего проекта - «Создать задачу» (Create Issue) . В противном случае, нужно обратиться к администратору JIRA.
Для того, чтобы создать новую задачу в JIRA, необходимо выполнить следующие шаги:
1. Нажмите «Создать» (Create) в верхней части экрана, чтобы открыть диалоговое окно «Создать задачу» (Create Issue).
Комбинация клавиш: c
2. Выберите соответствующий проект и тип задачи в диалоговом окне «Создать задачу» (Create Issue).
3. Введите резюме задачи и заполните все поля - по крайней мере, обязательные, отмеченные звездочкой.
Если вы хотите получить доступ к полям, которые не отображаются в этом диалоговом окне или вы хотите скрыть существующие поля:
2. Нажмите «Пользовательский» (Custom) и выберите поля, которые вы хотите отобразить или скрыть, установив или сняв соответствующие флажки, или нажмите «Все» (All), чтобы отобразить все поля.
Когда вы создадите задачу, JIRA запомнит выбранные вами поля.
4. Необязательно: Чтобы создать серию похожих задач в том же проекте и с таким же типом задачи, установите флажок «Создать еще» (Create another) в нижней части диалогового окна.
5. Если вы удовлетворены содержанием своей задачи, нажмите кнопку «Создать» (Create).
Если вы выбрали флажок «Создать еще» (Create another) (см. выше), появится новое диалоговое окно «Создать задачу». В зависимости от вашей конфигурации и значений, которые вы указали при создании предыдущих задач, некоторые поля в новом диалоговом окне «Создать задачу» (Create Issue) могут быть предварительно заполнены. Перед созданием следующей задачи убедитесь, что все выполнено правильно.
Советы:
Скриншот: диалоговое окно «Создать задачу» (Create Issue)
Читайте также: