Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
プロフィール文書って何?
Search
Haruyuki Nakano
May 13, 2022
Programming
0
630
プロフィール文書って何?
プロフィール文書は、HCL Notes/Domino のアプリケーション内に作成可能な文書です。
この資料では、その特徴などをまとめています。
第35回「のの会」で使用しました。
Haruyuki Nakano
May 13, 2022
Tweet
Share
More Decks by Haruyuki Nakano
See All by Haruyuki Nakano
次期バージョン 14.5.1 Early Access Program が始まりました
harunakano
1
90
LotusScript でエージェント情報を出力してみた
harunakano
0
120
LotusScript でビューへアクセスする方法 #3
harunakano
0
48
LotusScript でビューへアクセスする方法 #2
harunakano
0
59
LotusScript でビューへアクセスする方法 #1
harunakano
0
75
LotusScript で文書へアクセスする方法
harunakano
0
140
DAOSのおさらいと進化について
harunakano
0
140
HCL Domino 14.5 EAP2 Domino IQ について
harunakano
0
560
HCL Notes/Domino 14.5 EAP Drop1
harunakano
1
410
Other Decks in Programming
See All in Programming
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
2k
15年続くIoTサービスのSREエンジニアが挑む分散トレーシング導入
melonps
2
230
コマンドとリード間の連携に対する脅威分析フレームワーク
pandayumi
1
460
今こそ知るべき耐量子計算機暗号(PQC)入門 / PQC: What You Need to Know Now
mackey0225
3
380
OCaml 5でモダンな並列プログラミングを Enjoyしよう!
haochenx
0
140
CSC307 Lecture 03
javiergs
PRO
1
490
React 19でつくる「気持ちいいUI」- 楽観的UIのすすめ
himorishige
11
7.5k
AIフル活用時代だからこそ学んでおきたい働き方の心得
shinoyu
0
140
疑似コードによるプロンプト記述、どのくらい正確に実行される?
kokuyouwind
0
390
IFSによる形状設計/デモシーンの魅力 @ 慶應大学SFC
gam0022
1
310
AtCoder Conference 2025
shindannin
0
1.1k
AI Agent の開発と運用を支える Durable Execution #AgentsInProd
izumin5210
7
2.3k
Featured
See All Featured
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
190
Visualization
eitanlees
150
17k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
66
37k
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
The agentic SEO stack - context over prompts
schlessera
0
650
Measuring & Analyzing Core Web Vitals
bluesmoon
9
760
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.6k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
170
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.7k
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
120
Practical Orchestrator
shlominoach
191
11k
Amusing Abliteration
ianozsvald
0
100
Transcript
プロフィール文書って何? 12.0.1 で登場予定の新機能を理解するために復習しましょう 中野 晴幸 Haruyuki Nakano harunakano.blogspot.com (blog) @harunakano
(twitter)
プロフィール文書の 特徴 通常の「文書」との違いとは
特徴 • ビューに表示できない/フォルダへ追加できない • 通常の文書検索では探せない • 文書数にカウントされない • プログラムによるアクセス •
高速アクセス • 競合文書が発生しない 隠し文書 と表現されることも!?
ビューに表示できない/フォルダへ追加できない SELECT文にプロフィール文 書用のフォームを指定しても @All でも、プロフィール文書 は表示されない ※プロフィール文書上のアイテムの サマリーフラグがFalseという訳ではない
通常の文書検索では探せない • フォルダ/ビューに表示できない • 全文索引に含まれない ビュー検索、全文検索では文書が探せない
文書数にカウントされない 全文書の数より プロフィール文書の数が多い
プログラムによるアクセス • フォーム名とユニークキーを指定して文書にアクセス • 値の取得が容易 • 文書が存在しなければ自動作成される いかにも作成しそうな名称の(”CreateProfileDocument” のような)コマンド/メソッドは存在しない
高速アクセス • アクセスした文書をクライアントのキャッシュに保持する • データベースを開いている間はキャッシュを参照 一方の更新内容が他方へ反映されにくいため、更新が頻繁に発生する情報の共有に向か ない
競合文書が発生しない • フォームのプロパティで「競合の作成」を選択している場合 であっても、競合文書は作成されない仕様です 競合の扱いは文書の $ConflictAction アイテムの値によって管理 されますが、プロフィール文書では通常の文書と異なる値が設定さ れます。 「競合の作成」を選択していた場合でも強制的に内部で「競合を作
成しない」を選択した状態となり、「競合のマージ」を選択してい た場合も強制的に内部で「マージ/競合なし」を選択した状態とな ります。 競合が発生する状況になった場合は、更新日時が新しい方の文書が 保存されます。
使用例 データベースの使用に必要な各種設定値を保存する
使用例 • メールDB カレンダープロフィール カラープロフィール iNotesプロフィール アーカイブデータベースプロフィール • ディスカッションDB アーカイブデータベースプロフィール
• スクリプトデバッガのブレイクポイント 「各種設定の保存」といえば notes.ini もこのような使い方ができます。 どんな違いがあるのでしょうか?
notes.ini との比較 notes.ini • データベース間で設定情報の共有が可能 • ユーザー自身による設定の閲覧・修正・ 削除が可能 • 端末ごとの設定のため、複数のユーザー
アカウントを使い分ける場合に注意が必 要 • 自分が使用する複数の端末や他のユー ザーとの間で設定の共有が困難 • 端末の入れ替えや機種変更などで設定が 消える可能性あり プロフィール文書 • 端末間/ユーザー間で設定情報の共有が 可能 • 複製されるためレプリカ間の共有が可能 • 可視性に難あり。設定をユーザー自身で 自由に閲覧・修正させるにはフォーム等 のアクセス手段の構築が必要 • 削除に難あり。多少プログラミングが必 要
プログラミング プロフィール文書を使ってみよう
プロフィール文書(NotesDocument)の プロパティ IsProfile True NameOfProfile プロフィール名 Key ユニークキー NotesPeek では
ユニークキーを user-name と表示します
プロフィール文書の 作成・既存文書の編集 LotusScript set notesDocument = notesDatabase.GetProfileDocument( profilename$ [, uniqueKey$]
) set NotesUIDocument = notesUIWorkspace.EditProfile( profilename$ [, uniqueKey$] ) @コマンド/@関数 @Command( [EditProfileDocument] ; profilename; uniqueKey ) ※すぐに実行される @Command( [EditProfile] ; profilename; uniqueKey ) ※すべての関数の実行された後に実行される • プロフィール名とユニークキーの組合せで1文書だけ作成可能(同じ組み合わせの文 書を複数作成できない) • CreateProfileDocument のような作成に特化したメソッドが無い • Compose @コマンドではプロフィール文書を作成できない • GetProfileDocument で取得する文書の IsNewNote プロパティは、プロフィール文 書が存在しなかった場合は True を返す
プロフィール文書コレクションの取得 LotusScript set notesDocumentCollection = notesDatabase.GetProfileDocCollection( profilename$ ) • プロフィール名が同じプロフィール文書のコレクションを取得する
値の取得・更新 LotusScript ※通常の NotesDocument クラスと同様の操作のため割愛 @コマンド/@関数 @GetProfileField( profilename; fieldname; uniqueKey
) @SetProfileField( profilename; fieldname; value; uniqueKey )
次回予告 冒頭で「今回は 12.0.1 の新機能 を知るための復習」と言いました が…
Named Document (名前付き文書)とは • 12.0.1 では Named Document(名前付き文書)と 呼ばれる新しいタイプの文書を作成および管理するため の新しいメソッドが用意されている
• NoteID ではなく名前を持つ • Notesクライアントやどのビューにも表示されない • プログラムによるアクセスを想定して設計されている • これまでのプロフィール文書を機能的に置き換えるもの