ルールのトリガーで表記を変更して欲しい項目があります。

ルールの「トリガーを追加」を見ますと
タスクの移動
→ タスクのセクションへの移動
などがありますが、下に行くと
期日が次の値…
期日の変更
期日の接近
タスクの期限超過
カスタムフィールドが次の値…
◯◯の変更

など、「の変更」となっています
これはアクションの方と同じ表記にしているかと推測しておりますが
トリガーだと適切じゃない気がします。
期日の値
〇〇の値
が適切じゃないでしょうか。

@Takeshi_Yamazaki1 さん、ご投稿ありがとうございます!:sparkles:

トリガーは

  • <目的語>の<動詞>
  • <主語>が<述語>

アクションは

  • <目的語>に<動詞>
  • <目的語>を<動詞>

と、それぞれ統一しております。
見分ける助けになれば幸いです。

〇〇の値(存在)よりも、〇〇の変更(変化)の方が、タイミングが明確で、トリガーの名前としてはふさわしいように考えております。いかがでしょうか。

(アクションの名前形式が一部不統一ですので、修正いたします。確認するきっかけになりました。ありがとうございました!)

@Shun_Sakurai さん

でもトリガーは現在の値が〇〇なら・・・(IF分で言えば=)であって
現在の値を◯◯にする(変更)したいわけじゃないので、<動詞>がしっくり来ません。
あえて言うならBE動詞(◯◯である)ならわかりますが
DO動詞 <変更>が良いんでしょうか?

とはいえ、間違いとかでは無く、意識的にそうしているって事ですよね。

1 Like

横からすみません。
個人的な感覚になるのですが、「が次の値…」というのがミスリードしていると感じています。

「期日が次の値…」「カスタムフィールドが次の値…」などは、単に「期日」「カスタムフィールド」とすれば、トリガは、

  • 「期日の変更」⇨期日が変更されたとき
  • 「期日の近接」⇨期日が近づいてきたとき
  • 「タスクの期限超過」⇨期日を過ぎたとき
  • 「○○の変更」⇨カスタムフィールド〇〇が変更されたとき

と言う風に素直に理解できると思います。

P.S.
英語メニューだと該当部分は、以下のようになっています。
@山崎岳史 さんがおっしゃっている、be動詞になっていますね。
日本語だと表現のバリエーションが 多くて難しいですね💦

ちなみに、

トリガーは現在の値が〇〇なら・・・(IF分で言えば=)であって

ですが、asanaのトリガーは現在の値が〜ならばではなく、対象の状態が〜へ変化したときという建て付けになっています。

image
image

1 Like

ご返信ありがとうございます!

日本語に訳すときはBe動詞(is changed/〜が変更される)と一般動詞(changes/〜が変化する)をあまり区別しないので、両方を含めて「動詞」と呼んでいました。

ルールはIf… then…の形で表現されることが多いですが、実際の挙動はIf文やWhile文(〜である場合)よりは、Whenやイベントハンドラー(〜になったとき)が近いと思います。
たとえば、Due date is changed(期日の変更)はWhen due date is changed(期日の変更時、期日が変更されたとき)のWhen(〜とき)が省略されたかたちです。

UIローカリゼーションのガイドラインとして、各文字列はなるべく短くするので、「期日の変更(名詞的)」「期日を変更(動詞的)」のように区別していましたが、もう少し見分けやすくしたほうがよいでしょうか?例えば:

トリガー: 期日の変更
アクション: 期日を変更

トリガー: 期日の変更
アクション: 期日を変更する


川上さんの指摘されたとおり、Due date is…の直訳「期日が次の値…」などは確かに「期日」などとした方がシンプルで良いですね!
すぐには変更できないのですが、変更します。

1 Like

@Shun_Sakurai さん @Tetsuo_Kawakami さん

ちょっと分かってきました。例えば・・・
・期日が1週間後のタスク → 期日を今日に変更 → トリガー発動
といった挙動なのですね。私の場合は・・・
・完了セクションに移動 & 期日が今日 → トリガーA発動
・完了セクションに移動 & フィールド値がB → トリガーB発動
といった動きを考えていたので、変更時にトリガー発動させるというルールは考えていませんでした。

私も川上さんのご指摘どおり、◯◯の変更、〇〇の値よりも◯◯(期日やフィールド)がシンプルでわかりやすいと思いました。

1 Like

@Takeshi_Yamazaki1 さん
私もきになって試してみました。

ですが、下図のルールで問題なく動きました。
複数のトリガーがあるときは、それぞれが立ったことを保持しているようです。

  • 完了セクションに移動してから、フィールドをBで動作 → 発動
  • フィールドをBにしてから、完了セクションへ移動 → 発動
  • フィールドをBにしてから、Aに変更して、完了セクションへ移動 → 発動せず

なお、

ですが、期日の判定が、日付が変わった頃、1回行われるため判断できませんでした。
日付が変わって期日と日付が一致したらフラグが立つと思いますが、さらに日が変わった時に立っていたフラグが落ちるのかがわかりませんでした。
おそらく落ちると思うのですが。。。。

なお、

こちらは、日付が変わるまでに期日を変更していれば発動します。
しかし、日付が変わり、asanaのシステム判定が終了後に期日を今日にしても発動はしないようです。
こちらは、現在の機能では実現が難しそうですね。

要望を出しているルールの中で場合分けもしくは、フィルターをかけたい。 がリリースされたらできるのですが。。。

1 Like

@Shun_Sakurai さん
個人的な感覚としては、次の表記だとわかりやすいです。

トリガー: 期日の変更
アクション: 期日を変更

トリガー: 期日の変更時
アクション: 期日を変更する(もしくは、期日を変える)

心の声:日本語むずい!:laughing:

@Tetsuo_Kawakami さん、検証してくださりありがとうございます!
トリガーが複合する場合、確かに変化の瞬間だけでなく状態もトリガー条件になるのが自然ですね。

日付関連のルールはこのバグの影響かもしれません。
修正されてから検証していただくのがよさそうです🙇


翻訳の変更案についてもありがとうございます。
検討させていただきます!

@Shun_Sakurai さん

when A,if B then Cができると一般的なことは網羅できるのかなと思いました。

A:トリガー(1つで良い)
B: 状態(複数ありえる。and やor,not,norの組み合わせができる)
C:アクション(複数ありえる)

これであれば、ポーリングで監視するのはAだけで済み、サーバー負荷は抑えられそうです。

@Tetsuo_Kawakami さん、 @Takeshi_Yamazaki1 さん、フォーラムの皆様

まさに when A, if B, then C ができる機能がリリースされますので、こちらのトピックでもお知らせします✨

2 Likes

@ShunS さん メッチャ楽しみです。

1 Like