1

私は、特定のレコードをターゲットにできるリレーショナル データベースの操作に慣れています。たとえば、以下の疑似 SQL を使用します。

SELECT id, name, otherVar FROM students WHERE id=:studentId

しかし、ロータス ノーツのフラットなデータ モデルでこれにアプローチする方法さえわかりません。私はグーグルで検索してきましたが、Lotus Notes 内のドキュメントではなく、Lotus Notes 自体を更新する方法についてヒットし続けています。LN の専門知識を持っている人が正しい方向に私を向けることができれば、それは大歓迎です。

4

2 に答える 2

6

類推として SQL ステートメントを使用するとstudents、列idとを持つビューがあるnameとしますotherVar。列idは (昇順または降順で) 並べ替える必要があります。ビューは次のようになります

╔════╦════════════╦═════════════╗
║ id ║ name       ║ otherVar    ║
╠════╬════════════╬═════════════╣
║ 1  ║ Daniel     ║ ----------  ║
║ 2  ║ Joseph     ║ ----------  ║
║ 3  ║ Michelle   ║ ----------  ║
╚════╩════════════╩═════════════╝

このビューを検索するには、LotusScript で次のように記述します。

Dim session As New NotesSession 'Get current session
Dim currentDB As NotesDatabase
Dim view As NotesView
Dim doc As NotesDocument
Dim studentId As String

studentId = "<STUDENT_ID>" 'The student ID that needs to be searched
Set currentDB = session.CurrentDatabase 'Get current database
Set view = currentDB.GetView("students") 'Get the view
Set doc = view.GetDocumentByKey(studentId, True) 'Look up the view with student ID to get the student document

詳細については、簡単な Google 検索をNotesView行ってください。式言語では、次のように記述できます。

@DbLookup("Notes":"NoCache"; ""; "students"; "<STUDENT_ID>"; "<FIELD TO BE RETRIEVED>"; [FailSilent]);

ただし、複雑な計算を行う場合、数式はロータス スクリプトほど柔軟性がありません。

于 2013-10-28T05:05:32.793 に答える
0

Domino Data Services も試してみてください。Notes 管理者に REST サービス用のデータベースを開いてもらうと、ほぼどこからでも Domino データを取得できます。Web 上の Domino Data Services マニュアルを参照してください。

于 2013-10-29T08:36:34.210 に答える