Да, это довольно прямолинейно. Я предполагаю, что вы в основном знаете, как писать сценарии DXL, так что вот только основные части. Подробности и примеры всегда можно найти в руководстве DXL или на форуме developerWorks для DXL (http://www.ibm.com/developerworks/community/forums/html/forum?id=11111111-0000-0000-0000-000000001527)
Ваша программа будет состоять в основном из цикла, который перемещает все модули в папке. Ваша точка будет
Folder fStart = folder "/project/myfolder/mysubfolder"
Вы не писали ли ваши модули только или вы должны рекурсивно пройти папку в одной папке. Предполагая, что нет рекурсии. Итак, теперь ваш код будет проходить через папку. Это делается через
Itam iCurrent
for iCurrent in fStart do {
if (type iCurrent == "Formal") {
myCreateBaselineForModule(module iCurrent)
}
}
Наконец, вам нужно будет создать базовую линию. Предполагая, что вы хотите создать основную версию без суффикса вы уверены, что ни один модуль не открыт или имеет несохраненные изменения, и у вас достаточно прав доступа, код будет просто
void myCreateBaselineForModule (Module mod) {
create (mod, nextMajor(), "")
}
Спасибо! Мне нужно было только изменить тип iCurrent на модуль. У меня есть еще одно сомнение. Как изменить разрешения на эксклюзивное редактирование? Я прочитал, что его можно установить с помощью setExclusive(), но я не уверен, какие аргументы для этой функции. –
см. Http://stackoverflow.com/questions/39474201/how-to-give-exclusive-edit-permissions – Mike