Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

201908 のの会@関数Talk 15th

348 views

Published on

Notes/Dominoの@関数を取り上げながら、調べたこと、経験したことを雑談してゆきます。
第15回は@DbColumと@DbLookup についての1回目

Published in: Software
  • Be the first to comment

  • Be the first to like this

201908 のの会@関数Talk 15th

  1. 1. @ @ -notes knows community- 2019/08/08 ネオアクシス株式会社 阿部覚 (tw:) @abesat @関数Talk 第15回 公開版
  2. 2. @ @ 毎回参照させていただく IBMさんのオンラインヘルプで こんな表示が
  3. 3. @ @ しばし残すけど、 いずれIBMサイトからは無くなるよ、 ということみたい HCLさんのサイトで 新しいヘルプが出るのかちょっと不安だけど 当面はIBMさんのヘルプを参照しています 新しい素敵なヘルプが出るのを超期待しつつ
  4. 4. @ @ えー そろそろやってよ、というリクエス トがありました… うーん 奥深いし、課題もあり 1回ではやり切れないとは思いつつ いったん をつけてみましょうか✋
  5. 5. @ @ @DbColumn @DbLookUp 1回じゃ話しきれない雑談の 基本篇
  6. 6. @ @ 共通して2つの機能に大別されます 「Dominoデータソース」 Dominoデータベースのビューを通して 値をもらってくる 「ODBCデータソース」 外部のリレーショナルデータベースを通して 値をもらってくる 本雑談では、基本重視で ODBCデータソースについては いったん割愛させていただきます☺
  7. 7. @ @ では、ビューから値をもらう「Dominoデータソース」とは まずは両関数を並べて表示すると 基本的な構造はこんな感じ @DbColumn ( class : cache ; server : database ; view ; columnNumber ) @DbColumn ( class : cache ; server : database ; view ; columnNumber ) @DbLookup ( class : cache ; server : database ; view ; key ; columnNumber または fieldName ; keywords ) @DbLookup ( class : cache ; server : database ; view ; key ; columnNumber または fieldName ; keywords ) 赤字は@DbColumnにはなく@DbLookupにのみある引数
  8. 8. @ @ 引数概略 その1 @DbColumn ( class : cache ; server : database ; view ; columnNumber ) @DbLookup ( class : cache ; server : database ; view ; key ; columnNumber または fieldName ; keywords ) classはDominoデータソースを意味する "Notes” または "” cacheは "” / "NoCache” / "ReCache” の3つから選択 この関数の実行結果を「覚えておくかどうか」の 指定です。内容説明は今回省略… ✋私には"ReCache”の存在意義がいまいち不明
  9. 9. @ @ 引数概略 その2 @DbColumn ( class : cache ; server : database ; view ; columnNumber ) @DbLookup ( class : cache ; server : database ; view ; key ; columnNumber または fieldName ; keywords ) 引用するビューが どこの何というデータベースにあるのかを指定 自データベース内にあるのなら "”だけでも
  10. 10. @ @ 引数概略 その3 @DbColumn ( class : cache ; server : database ; view ; columnNumber ) @DbLookup ( class : cache ; server : database ; view ; key ; columnNumber または fieldName ; keywords ) ここでは データをもらってくる対象のビュー名を指定します
  11. 11. @ @ 引数概略 その4 @DbColumn ( class : cache ; server : database ; view ; columnNumber ) @DbLookup ( class : cache ; server : database ; view ; key ; columnNumber または fieldName ; keywords ) そのビューの列番号(何列目)を数字で指定 ただ、何列目かの数え方は…今回省略、後ほど…
  12. 12. @ @ と、ここまでは両関数に共通する引数でした @DbColumn ( class : cache ; server : database ; view ; columnNumber ) @DbLookup ( class : cache ; server : database ; view ; key ; columnNumber または fieldName ; keywords ) ODBCかDominoか、結果を覚えるかどうか と、 このサーバーの、あのデータベースの、 そのビューの、 ○列目だよ 以上がこれで特定されます。
  13. 13. @ @ これで@DbColumn側の引数はそろったので 実例で確認します、 説明の都合上、こんなフォームとビューを作りました
  14. 14. @ @ これで@DbColumnの引数はそろったので 実例で確認します 説明の都合上、こんなフォームとビューを作りました プリビューしたフォームプリビューしたフォーム ビューを参照する@DbColumn式 式の結果を表示する 表示用の計算結果フィールド
  15. 15. @ @ フォーム部分の設計を示すと こんな感じです ビューを参照する@DbColumn式 (編集可能なテキストフィールドで入力) 式の結果を表示する 表示用の計算結果フィールド @Evalは他の式を実行する@関数です
  16. 16. @ @view 上のビューの名前 view 上のビューの名前 server : database 略すと自データベース server : database 略すと自データベース class : cache 今回は説明省略 class : cache 今回は説明省略 columnNumbercolumnNumber とりあえずは 略せるところは略した@DbColumn式で確認
  17. 17. @ @ columnNumber部分の数値を増やすと
  18. 18. @ @ columnNumber部分の数値を増やすと…
  19. 19. @ @ columnNumber部分の数値を増やすと……
  20. 20. @ @ なお、columnNumberを0にしても、 1のときと同じ結果でした…常にそうなるかどうかは未検証
  21. 21. @ @ これで、@DbColumnのほうは イメージがつかめたでしょうか? 次に @DbLookupでしか使わない引数を確認します
  22. 22. @ @ 引数概略 その5 @DbColumn ( class : cache ; server : database ; view ; columnNumber ) @DbLookup ( class : cache ; server : database ; view ; key ; columnNumber または fieldName ; keywords ) keyは絞り込みに使う値で、 1列目の値から指定します といってもピンとこないと思うので また実例を
  23. 23. @ @ 1列目が"第22回"の行(文書)の2列目は何? といった絞り込みです
  24. 24. @ @ keyとcolumnNumberによって、 どの行のどの値をもらってくるかが変わります keyは複数指定も可能keyは複数指定も可能
  25. 25. @ @ 引数概略 その6 @DbColumn ( class : cache ; server : database ; view ; columnNumber ) @DbLookup ( class : cache ; server : database ; view ; key ; columnNumber または fieldName ; keywords ) @DbLookupでは 列番号の代わりにフィールド名を 使うこともできます 数字なら列番号、引用符付きの文字ならフィールド名と 自動判断されます
  26. 26. @ @ たとえば、ビューには表示されていない 開始時間のフィールド値を取得する、とか
  27. 27. @ @ たしか従来は fieldNameよりcolumnNumberのほうが パフォーマンスが良いと推奨されていたように思います しかし最近私は、fieldNameのほうが捨てがたいのではと 感じています、その理由は別途 ほか、 引数の制限など、もう少し具体的な使い方は 後続の回で 今回触れなかった引数のkeywordsについては、 前置きの話が必要だと思いますので、別途 今回の基本篇はここで一区切りつけたいと思います
  28. 28. @ @ ご清聴ありがとう ございました!

×