1

更新されていないタスクを見つける必要があります。

基準は次のようになります。

'iteration.Name = \"iterationName\" and State!=Completed and LastUpdateDate<'+str(datetime.datetime.now())+"'"

これにより、次のようになります。

iteration.Name = "iterationName" and State!=Completed and LastUpdateDate<'2015-12-27 20:17:08.769000'

結果は得られませんでした。

ラリー タスク オブジェクトにはLastUpdateDate2015-12-16T09:54:30.600Z 8.0

LastUpdateDateクエリ条件を比較するにはどうすればよいですか?

4

2 に答える 2

0

質問は何年も前に尋ねられましたが、 pyralで日付を含むクエリを使用したい人には役立つかもしれません。

質問のコードにはいくつかの問題があります。

  1. datetime.datetime.now()Rally が必要とする形式で日付を返さない可能性があるstrftimeため、適切な形式を取得するために使用することをお勧めします。

  2. 複数の条件には、正しい括弧のセットが必要です。例えば:((((condition1) AND (condition2)) AND (condition3)) AND (condition4))

  3. LastUpdateDate必ず現在の日付より前になります (ユーザーが未来にジャンプできた場合を除く)。

  4. 日付は"、シングル クォーテーション ( ) ではなく、ダブル クォーテーション ( ) で囲む'ことをお勧めします。

これは、過去 5 日間更新されておらず、完了していないタスクを特定するためのコードです。

iter_name = "2018-Iteration-4"
five_days_ago = datetime.datetime.now() - datetime.timedelta(days=5)
str_date = five_days_ago.strftime("%Y-%m-%dT%H:%M:%S.%fZ")
tasks_not_updated = rally.get(
    'Task',
    query = '(((iteration.Name = "%s")'
            ' and (State != Completed))'
            ' and (LastUpdateDate < "%s"))' % (iter_name, str_date)
)
for task in tasks_not_updated:
    print("%s (%s)" % (task.Name, task.State))
于 2018-03-15T03:57:16.113 に答える