リレーションズとの連携
注記: 注記: マスター/スレーブは時代遅れの用語であり、インバウンド/アウトバウンドに置き換えられています。
ドット表記は関係式と共に使用して、以下のフィールドにアクセスできます:
| フィールド名 | 説明 |
|---|---|
| インバウンド | 関係における主要な実体 |
| アウトバウンド | 関係における二次的な実体 |
| 'RelationType' | 関係の種類('リンク'、'ブロッカー'、'関係'、または'重複') |
関係性タイプ
RelationType フィールドをチェックすることで、必要な関係の種類のみをフィルタリングできます:
例: ユーザーストーリーIDを返す + タイプが 'Relation' である OutboundRelations もののみ
/api/v2/userstories?select={ID, OutboundRelations.where(RelationType.Name = 'Relation')}
.Count と.Where の使用
MasterRelations + InboundRelations はコレクションであるため、'.count()' や '.where()' を使用してコレクションの値を確認できます例: 1つ以上のマスター/インバウンド関係を持つすべてのフィーチャの (名前, ID) を返す。/api/v2/features?where=(InboundRelations.count > 0)&select={ID, Name}例: アウトバウンド関係を持たないすべてのフィーチャの (名前, ID) を返す。/api/v2/features?where=(OutboundRelations.count = 0)&select={ID, Name}例: 「関係」タイプのユーザーストーリー関係については、インバウンド機能のエンティティ名を選択してください注記: 注記: この MasterFeature 用語を使用するには、インバウンドエンティティはフィーチャーである必要があります。
/api/v2/userstories?select={InboundRelations.Where(RelationType.Name='Relation').Select(MasterFeature.Name)}
「インバウンド」と「アウトバウンド」の使用
+ Outbound.ID を使用して、各個 Inbound.ID 別のリレーションの特定の ID 値を確認できます例: アウトバウンドリレーションIDが '12345' の場合 OutboundRelations にのみ バグID + を返す/api/v2/bugs?select={ID, OutboundRelations.where(Outbound.Id = 12345)}例: ユーザーストーリーIDを返す + インバウンド関係がプロジェクト 2.0 'Actus' にある InboundRelations もののみ/api/v2/userstories?select={Id, InboundRelations.Where(Inbound.Project.Name = 'Actus 2.0')}
/relations エンドポイントの使用
リレーションズエンドポイントを使用して、インバウンド、アウトバウンド、またはIDフィールドに直接アクセスできます。注記: IDフィールドは、対応するエンティティIDではなく、リレーションの実際のIDです。 それらの値にはインバウンドを使用します。 ID および/または Outbound.ID
例: インバウンドエンティティのIDが191261であるリレーションを返す。/api/v2/relations?where=(inbound.id = 191261)&select={inbound:{inbound.id, inbound.name}, outbound:{outbound.id, outbound.name}, RelationType.name}
インバウンド/アウトバウンド関係コレクションからのフィールドへのアクセス
ID、Outbound、Inbound、および RelationType フィールドは、Relationsコレクション上で直接アクセスできます。 例: ユーザーストーリーエンドポイントの場合、関係タイプが「関係」であるインバウンド関係に対して機能IDを選択します/api/v2/userstories?select={InboundRelations.Where(RelationType.Name = 'Relation').Select(MasterFeature.ID)}
インバウンド/アウトバウンド割り当て可能コレクションからのフィールドへのアクセス
例: 少なくとも1つのインバウンド関係を持ち、かつすべてのインバウンド関係が「進行中」状態であるすべてのユーザーストーリーを返す。/api/v2/userstories?where=((InboundAssignables.Count(EntityState.Name = 'In Progress') = InboundAssignables.Count())
and InboundAssignables.Count() > 0)例: 少なくとも1つのインバウンド割り当て可能タスクが存在し、少なくとも1つのアウトバウンド割り当て可能タスクが存在し、すべてのインバウンド割り当て可能タスクが「完了」状態であり、かつすべてのアウトバウンド割り当て可能タスクが「未処理」状態であるすべてのフィーチャーを返す。/api/v2/features?where=((InboundAssignables.Count(EntityState.Name = 'Done') = InboundAssignables.Count())
and (OutboundAssignables.Count(EntityState.Name = 'Open') = OutboundAssignables.Count())
and InboundAssignables.Count() > 0
and OutboundAssignables.Count() > 0)
注: 例の説明:完了状態のすべての受信割り当て可能タスク - ( InboundAssignables.Count( EntityState.Name = 'Done') = InboundAssignables.Count())オープン状態のすべての送信割り当て可能タスク - ( OutboundAssignables.Count( EntityState.Name = 'Open') = OutboundAssignables.Count())送信割り当て可能タスクが少なくとも1つ存在 - OutboundAssignables.Count() > 0受信割り当て可能タスクが少なくとも1つ存在 InboundAssignables -.Count() > 0
エンティティ固有フィールドへのアクセス
リレーションのネストされたフィールドにアクセスするには、以下の表記を使用できます注記 : この表記法を使用するには、 の関係 'EntityType' が存在している必要があります
収集 MasterRelations 対象: マスター {EntityType} : 例: MasterUserStory.Feature SlaveRelations 収集対象: スレーブ {EntityType} : 例: SlaveFeature. Release例: エンティティ #190977 に対し、「Relation」タイプの全インバウンド関係を選択 + 「マスター」ユーザーストーリーのフィーチャーフィールドを選択/api/v2/userstories?where=(id=190977)&select={MasterRelations.Where(RelationType.Name='Relation').Select(MasterUserStory.Feature)}例: エンティティ #190977 について、「Relation」タイプのすべてのアウトバウンド関係を選択 + 「Slave」フィーチャーの Epic フィールドを選択/api/v2/userstories?where=(id=190977)&select={SlaveRelations.Where(RelationType.Name='Relation').Select(SlaveFeature.Epic)}