4

動的なコンボ ボックスが必要な Lotus Notes アプリケーションを作成しています。コンボ ボックスの選択肢は、SQL データベースから選択して取得する必要があります。

Lotus Notes/Domino を初めて使用します。SQL データベースを接続して Domino Designer で使用する方法を知りたいです。ありがとう。

編集:これはWebではなくクライアントです

Sub  Initialize

    On Error GoTo e
    Dim pw As String,user As String,odbc As String
    Dim i As Integer
    Dim conn As ODBCConnection,query As ODBCQuery,rs As ODBCResultSet
    Dim db As NotesDatabase
    Dim session As NotesSession
    Dim view As NotesView
    Dim doc As NotesDocument
    Dim newDoc As NotesDocument
    Set session = New NotesSession  
    Set db = session.CurrentDatabase
    Set view = db.GetView("Reports")
    Set doc = view.GetFirstDocument 
    Set conn = New ODBCConnection
    Set query = New ODBCQuery
    Set rs = New ODBCResultSet
    Set query.Connection = conn 
    Set rs.Query = query

    odbc =  "server"  
    user =  "user" 
    pw =  "pass"
    Call conn.ConnectTo( odbc , user , pw ) 
        i = 0
        query.SQL =  "SELECT * FROM table" 
        rs.Execute 
        rs.FirstRow
        Do  While  Not rs.IsEndOfData
            i = i + 1
            rs.NextRow
        Loop
    conn.Disconnect
    Exit  Sub 
e : 
    MessageBox "Error " & Err & " line " & Erl & ": " & _
    Error        
    Exit Sub

End  Sub
4

5 に答える 5

4

質問には Lotusscript のタグが付けられているため、これは Lotusscript 関連 (XPages 関連ではありません) であると想定しています。

Domino Designer ヘルプ データベースで、ODBCConnection、ODBCQuery、および ODBCResultSet Lotusscript クラスを参照してください。

于 2012-01-31T19:41:50.180 に答える
4

XPages コンポーネントを使用できない場合は、コンボボックスの「選択肢に数式を使用」部分で@DBLookupの ODBC バリアントを試すことができます。

于 2012-01-31T19:54:08.630 に答える
2

質問に追加したコードは、while/wend が原因で無限ループを引き起こします。

ドロップダウン ボックスの選択肢が変更される頻度に応じて、SQL サーバーに接続するスケジュールされたエージェントを作成することもできます。返される値が常に同じである場合、SQL サーバーへの不要なトラフィックを削減するため、私自身の内部アプリケーションの一部でこれを頻繁に行います。

UseLSX "*lsxlc"スケジュールされたエージェントは、Lotusscript エージェントのオプション セクションに追加して、LSXLC 拡張機能を使用する必要があります。

LSXLC には、この質問の範囲を超える多くのオプションがあるため、Domino Designer ヘルプ ファイルを参照して、lsxlc を検索することをお勧めします。ヘルプ ファイルには多くの例があります。

于 2012-02-02T14:48:36.317 に答える
1

xpagesアプリケーションを使用している場合は、マネージドBeanまたは静的Javaメソッドを使用して、必要なデータを取得し、それをコンボボックスコントロールの選択値にバインドできます。

于 2012-01-31T17:23:01.463 に答える
1

OpenNTF の extlib を見てください。これには、接続して SQL 呼び出しを行うことができる XPages コンポーネントがあります。

http://extlib.openntf.org

于 2012-01-31T14:49:22.697 に答える