Rally SDK 2 - Как прикрепить историю к функции - PullRequest
0 голосов
/ 09 марта 2019

Я пытаюсь написать собственный HTML-блок, используя Rally SDK 2.1 (Javascript), чтобы создать новую историю. Я могу понять, как создать историю с собственным заголовком и описанием.

Если я пытаюсь установить функцию, то создание зависает и ничего не происходит ... Вот как я устанавливаю функцию в скрипте:

						var story = Ext.create(model, {
							Name: 'Can be deleted, created via Rally app SDK 2.1',
							Description: 'Dummy generated story - tests',
							PortfolioItem: '/portfolioitem/featureset/12345' // FEATURE
						});
Если я удалю атрибут «PortfolioItem», он будет работать как шарм.

Вот мой глобальный скрипт:

<!DOCTYPE html>
<html>
<head>
    <title>test - Story creation</title>
	
    <script type="text/javascript" src="/apps/2.1/sdk.js"></script>

    <script type="text/javascript">		
		
		// SDK documentation: https://docs.ca.com/en-us/ca-agile-central/saas/apps/2.1/doc/#!/api
				
        Rally.onReady(function() {
					
			// Create a new story
			function addStory() {		
			
				console.log('Creating a new story...');
				// Retrieve the Rally user stories model
				Rally.data.ModelFactory.getModel({
					type: 'UserStory',
					context: {
						workspace: '/workspace/12345', // dummy reference
						project: '/project/12345' // dummy reference
					},
					success: function(model) {
						// Create a new story thanks to the retrieved model
						var story = Ext.create(model, {
							Name: 'Can be deleted, created via Rally app SDK 2.1',
							Description: 'Dummy generated story - tests',
							PortfolioItem: '/portfolioitem/featureset/12345' // dummy reference
						});
						// Save the new story
						story.save({
							callback: function(result, operation) {
								if(operation.wasSuccessful()) {
									console.log('New story created!', result.get('FormattedID'));
								}
							}
						});
					}
				});
			}
			
			// The Rally application
			Ext.define('Rally.grg.storyCreation', {
				extend: 'Rally.app.App',
				
				// Method fired on application launch
				// Retrieve release features asynchronously
				launch: function() {
					console.log('Launch...');
					addStory();		
				}					
			});			
						
            Rally.launchApp('Rally.grg.storyCreation', {
              name: 'test - Story creation'
            });	

        });
    </script>

    <style type="text/css">
        
    </style>
</head>
<body></body>
</html>

Я попытался объявить новый объект портфолио, который будет ссылаться на функцию, которую я хочу. Затем я ссылаюсь на это на уровне истории, но он ведет себя точно так же:

				var f; 
			
				console.log('Defining the feature...');
				// Retrieve the Rally features model
				Rally.data.ModelFactory.getModel({
					type: 'portfolioitem',
					success: function(portfolioitemkModel) {
						// Define an existing feature thanks to the retrieved model
						f = Ext.create(portfolioitemkModel, {
							_ref: "/portfolioitem/featureset/12345",
							_refObjectName: "...",
							_refObjectUUID: "...",
							_type: "PortfolioItem/FeatureSet"							
						});
					}
				});	

Кто-нибудь, например, связывает историю и ее родительскую функцию с JavaScript SDK2, пожалуйста?

1 Ответ

0 голосов
/ 10 марта 2019

Я бы попробовал изменить эту строку:

PortfolioItem: '/portfolioitem/featureset/12345'

к этому:

PortfolioItem: '/portfolioitem/feature/12345'
...