Как из custom формы в StarTeam вызвать другую custom форму и задать у нее какие-то параметры

Небольшая преамбула. Есть компания разработчик ПО. В качестве инструментария для версионности, управления изменениями и баг-трекинга используется Borland StarTeam. Используются 3 объекта:
Запрос — общение с Заказчиком и аля требования
Задача
ОшибкаВсе формы кастомизированы (реализованы с использованием APE) На прошлой неделе возникла необходимость вызывать из формы Запроса форму Задачи.
Начали смотреть как бы это проще реализовать. Первое на что подумали стандартный контрол для StarTeam — AddAndLinkButton. Но он к сожалению не дает возможности задать какие-нибудь параметры создаваемой формы, а хочется например часть информации из Запроса копировать в Задачу.После этого стали смотреть в сторону класса Locator из API StarTeam. Вроде как есть в нем подходящий метод — launchPropertyEditor, но к сожалению в документации вообще не описаны параметры, что надо передавать (в частности PropertyEditorCommand).После этого, посидели почесали репу и решили декомпилировать класс AddAndLinkButton и посмотреть как это в нем реализовано. В качестве декомпилятора взяли — JADЭтот способ оказался самым действенным :) В итоге сделали вот так вот:
try
{
java.awt.Window w = UI.findParentFrameOrDialog(this);
com.starbase.starteam.Folder folder;
folder = logic._workItem.getView().getRootFolder();
Item newItem = Item.createItem(«ChangeRequest», folder);
newItem.put(«USR_CR_NAME», «А вот так вот!!!»);
PropertyEditorUtils.edit(w, «», new Item[] {newItem}, 0, false, true);
if(!newItem.isNew())
logic._workItem.linkItem(newItem, false);
} catch (Exception ex) {}
Получилось вроде как совсем не плохо :)

0 Responses to “Как из custom формы в StarTeam вызвать другую custom форму и задать у нее какие-то параметры”


  • No Comments

Leave a Reply

 

Spam Protection by WP-SpamFree