2014-06-12 3 views
0

Actully Я хочу, чтобы функциональность была похожа на функцию глубокой копии Которая копирует все истории и задания внутри этих рассказов в этой функции. Я изменил код из StoryDeepCopy, но функции не заполняются, просто истории только заполняются, я не знаю, почему это происходит. Я думаю, что приложение с глубокой копией истории было в версии 1.32, у которой нет концепции функции или какой-либо PortfolioItem, но версия 2.0 имеет поддержку для этого. Это может быть смысл. Любые предложения Это часть кода из приложенияФункция глубокой копии в ралли

function onChooserClose(chooser, args) { 
    if (args.selectedItem) { 
     selectedValue = args.selectedItem; 
     goButton.setEnabled(true); 
     dojo.byId('featureBox').innerHTML = args.selectedItem.FormattedID + ' - ' + args.selectedItem.Name; 
    } 
    } 

    function showChooser() { 
    var chooserConfig = { 
     fetch:"FormattedID,Name,Description", 
     title: 'Feature Chooser' 
    }; 
    chooser = new rally.sdk.ui.Chooser(chooserConfig, dataSource); 
    chooser.addEventListener('onClose', onChooserClose); 
    chooser.display(); 
    } 

    rally.addOnLoad(function() { 
    goButton = new rally.sdk.ui.basic.Button({ 
     text: "Copy", 
     enabled: false 
    }); 
    goButton.addEventListener('onClick', buttonPressed); 
    goButton.display('goButton'); 

    chooseButton = new rally.sdk.ui.basic.Button({ 
     text: "Choose" 
    }); 
    chooseButton.addEventListener('onClick', showChooser); 
    chooseButton.display('chooseButton'); 

    showChooser(); 

    rally.sdk.ui.AppHeader.setHelpTopic("252"); 
    }); 
}); 
+0

Это приложение, которое поможет вам сделать глубокие копии элементов портфеля: https://github.com/RallyCommunity/portfolio-item-copy – kelps

ответ

0

Там нет аналога глубокой копии для функций в каталоге приложения. Вы правы, что AppSDK1, последняя версия которого составляет 1,33, не имеет понятия о объектах PortfolioItem. Если вы хотите получить доступ к портфолио элементы или заблокированное причины, или какой-либо другой функции, введенные в более поздних версиях WS API до 1.43 этот синтаксис допущу:

<script type="text/javascript" src="/apps/1.33/sdk.js?apiVersion=1.43"></script> 

Другой вариант этого трюка показан во фрагменте кода ниже из приложения, которое строит таблицу PortfolioItems в AppSDK1 приложении:

<script type="text/javascript" src="https://rally1.rallydev.com/apps/1.32/sdk.js"></script> 
    <script type="text/javascript"> 

    function tableExample() { 
     var rallyDataSource = new rally.sdk.data.RallyDataSource('111','222','false','false'); 
     rallyDataSource.setApiVersion("1.43"); 
     function itemQuery() { 
     var queryObject = { 
      key: "pi", 
      type: "portfolioitem", 
      fetch: "FormattedID,Name" 
     }; 
     rallyDataSource.findAll(queryObject, populateTable); 
     } 

Этот метод не работает с v2.0 от WS API.

Его следует использовать с осторожностью. Одна вещь, которая определенно сломается, - это расчеты даты начала и окончания времени. Вот почему многие устаревшие приложения Rally App Catalog по-прежнему находятся на уровне 1,29. Это связано с изменениями в API версии 1.30. См. Раздел API versioning в документации WS API.

+0

thnx nick..I попробую этот код ... и увидит также управление версиями. – Sontya

+0

Привет, я до сих пор не могу воспользоваться функциями (PortfolioItem) с кодом, который дал, но он извлекает только истории. Мне нужно скомпилировать и построить его с помощью Rally-app-builder. – Sontya

+0

У меня есть приложение appsdk1, которое работа с portfoiliitems здесь: https://github.com/nmusaelian-rally/pi-with-appsdk1 Вам не нужно использовать построитель приложений с appsdk1. Я не уверен, как он может получать истории, когда вы задаете тип: «portfolioitem» – nickm

Смежные вопросы