Diese Präsentation wurde erfolgreich gemeldet.
Wir verwenden Ihre LinkedIn Profilangaben und Informationen zu Ihren Aktivitäten, um Anzeigen zu personalisieren und Ihnen relevantere Inhalte anzuzeigen. Sie können Ihre Anzeigeneinstellungen jederzeit ändern.

201812 のの会@関数Talk 8th

98 Aufrufe

Veröffentlicht am

Notes/Dominoの@関数を取り上げながら、調べたこと、経験したことを雑談してゆきます。
第8回は @ThisName・@ThisValue・@Failure について。

Veröffentlicht in: Software
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

201812 のの会@関数Talk 8th

  1. 1. -notes knows community- 2018/12/13 ネオアクシス株式会社 阿部覚 (tw:) @abesat @関数Talk 第8回 公開版
  2. 2. 今月は なにやら急転直下の事変が起きて おそらく私もみなさんも そわそわの最中ですが このトークはあんまし関係なしに すすめたいと思います😅
  3. 3. @ThisName @ThisValueの 雑談
  4. 4. IBMさんのヘルプ フィールドの、 名前や値を返す関数ですが それぞれの関数のヘルプには この↓注記が付されています
  5. 5. いまは も使えます いまは も使えます Notes/Domino R5 以前は存在せず、 現在のフィールド名を式で使いたいときは 引用符つきでフィールド名を書く必要が ありました "FieldName" → @ThisName 現在のフィールド値を式で使いたいときは 引用符なしでフィールド名を書く必要が ありました FieldName → @ThisValue
  6. 6. かつてはこうする必要がありました @ThisValueで例示すると いまはこんな式でもOKです
  7. 7. つまり、過去の方法で 代替できないこともないですが、 何がうれしいかといえば • フィールド名の 書き間違え、つづりミスを防ぎやすい • 複数のフィールドで、同じ式をつかえて 開発を省力化できる ということだと思います
  8. 8. でも、少し残念なことを ここでは2つ挙げようと思います
  9. 9. 残念なことその1 例:コメント入力がない時は 非表示にしたい @If(@IsDocBeingEdited; @False; @ThisValue=""; @True; @False)
  10. 10. 残念なことその1 フィールドのプロパティにあっても 段落の非表示式です 非表示式では使えません
  11. 11. 残念なことその2 フィールド名間違い 古くからのDBのバグを修正するとき Sales_3 と @ThisValue のどちらに直す?
  12. 12. 残念なことその2 古くからのDBのバグを修正するとき いっそ、 全部のフィールドの式を @This~に直したい衝動にかられます
  13. 13. もうひとつ、 @ThisName のほうは いまいち利用しづらい というのもありますが これはまた機会があれば
  14. 14. @Failureな 雑談
  15. 15. これまでも出したように @Failure といえば 編集可能なフィールドの 「入力の確認」で @Successと組み合わせて こんなふうに使用されます
  16. 16. ところで、前2回を通じて • @All、@True、@Yes、@Success は 数値の1である • @False、@No は 数値の0である というお話をさせていただきました
  17. 17. つまり…こんな感じ @All @True @Yes @Success 要するに、1 @False @No 要するに、0
  18. 18. @Trueと@False、 @Yesと@Noは、対で使われますが @All @True @Yes @Success 1 @False @No 0
  19. 19. では、 @Successと対で使われる@Failureも 値は0なの? @Success 1 @Failure 0
  20. 20. そこで、 ヘルプに「@Failure は入力確認式のみで使用します。」とあるのを無視して 計算結果のフィールド値として @Failureを指定してみます
  21. 21. 文書を作成するとこうなりました @Failureで指定したメッセージが そのまま@Failureの戻り値に。 0が返るわけではないようです ここで、ある疑問がわき、
  22. 22. 文書保存時にこんな警告が出るわけですが この入力確認式だと、
  23. 23. 文書保存時に警告… 入力確認式、こうしちゃうと、 出たっ!
  24. 24. いくつか試してみると どうやら入力確認式は、 戻り値が数値なら保存OK 戻り値が文字列だと保存NGで その文字列が警告メッセージになる @Success、@Failure どちらも使わずとも機能するようです
  25. 25. 実はヘルプを見直すと こんなことが書かれていました これだけ読んでもぴんときませんね… 今回はじめて 意味が分かった気がします IBMさんのヘルプ
  26. 26. 今回もありがとうございました!

×