1

イニシアチブを指すように機能の親フィールドを更新することで、機能を子としてイニシアチブに追加することができました(子としてイニシアチブに機能を追加(php api)

これは、ユーザー ストーリーを子として機能に追加するのと同じ方法だと思いました。ユーザー ストーリーのフィールドを更新して、その機能を指すようにします。

これは私にエラーを与えているコードです:

$rally->update("story", $story['ObjectID'], array('Parent' => $feature['ObjectID']));

これは私が得ているエラーです:

PHP Fatal error: Uncaught exception 'RallyApiError' with message 'Could not read: Could not read referenced object 13317970914'

機能 ID を参照できないようです..なぜこれが起こっているのですか?

4

1 に答える 1

1

ストーリーの PortfolioItem フィールドを更新できます。

WS API docでは、階層要件 (別名ストーリー) の親フィールドは、別の階層要件であると想定されています。フィーチャーにすることはできません。また、ストーリーの Feature フィールドは読み取り専用であり、Feature の UserStories コレクションは読み取り専用です。これにより、ストーリーの PortfolioItem フィールドを更新するオプションが残ります。

これを説明する Ruby コードを次に示します。

@rally = RallyAPI::RallyRestJson.new(config)

obj = {}
obj["Name"] = "new story efd"
new_s = @rally.create("hierarchicalrequirement", obj)

query = RallyAPI::RallyQuery.new()
query.type = "portfolioitem"
query.fetch = "Name,FormattedID"
query.workspace = {"_ref" => "https://rally1.rallydev.com/slm/webservice/v2.0/workspace/11111" } 
query.project = {"_ref" => "https://rally1.rallydev.com/slm/webservice/v2.0/project/2222" }
query.query_string = "(FormattedID = \"F22\")"

result = @rally.find(query)
feature = result.first

field_updates={"PortfolioItem" => feature}
new_s.update(field_updates)
于 2013-08-06T18:38:28.493 に答える