2012-01-31 6 views
4

ダイナミックコンボボックスを持つLotus Notesアプリケーションを作成しています。コンボボックスの選択肢は、SQLデータベースから選択することによって取得する必要があります。SQLデータベースをLotus Domino Designerに接続するにはどうすればよいですか?

ドミノデザイナーで使用するためにSQLデータベースを接続する方法を知りたいと思っています。ありがとう。

編集:これは、クライアントである、ウェブ

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 
+0

質問を更新して、これがメモクライアントアプリケーションかWebベースアプリケーションかを指定してください。 –

+0

が更新されました。それはクライアントアプリケーションだ –

答えて

4

質問はロータススクリプトとタグ付けされているので、これはLotusScript関連(XPages関連ではない)と仮定しています。

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

+0

私のデータベースを認識するために必要なことはありますか?何らかの「名前付き製品が存在しない」というエラーが常に戻ってきます。 自分の資格情報が正しいです。 –

+0

コードの一部を表示できますか?あるいは、この記事のようにODBCConnectionを使ってLotusScriptのコード例が見つかるかどうかを確認してください:http://stackoverflow.com/questions/4923236/lotuscript-some-questions-about-connecting-to-a-sql-db –

+0

メインポストを更新私は何を持っている。それはかなり簡単です。私はなぜそれが接続されていないのか分かりません。 –

1

はOpenNTF上EXTLIBを見ているわけではありません。 SQL呼び出しを行うために接続できるXPagesコンポーネントがあります。

http://extlib.openntf.org

+0

私はちょうど2日前のようにロータスを始めた、私はxPagesを実装する方法を知らない。 –

1

あなたがのXPagesアプリケーションを使用している場合は、あなたが望むデータを取得し、コンボボックスのコントロールの選択値にバインドするために管理Beanまたは静的なJavaメソッドを使用することができます。

4

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

+0

私はこれを試してみました。「<データアクセスアプリケーション層> @db関数を実行できませんでした」 –

+0

ODBC設定の問題のように聞こえます。 –

+0

+1オペラはLotusScriptソリューションを求めていますが、@Formula ODBCの '@ DBlookup'を使用するのはおそらく、コンボボックスをNotesクライアントアプリケーションとして実装する最も簡単で効率的なソリューションです。彼が得るエラーは単なるODBC設定エラーです。 @dblookup( "ODBC"; "ConnectionName"; "userid"; "userpw"; "table"; "field"; "key" [; options]) - これはコンボ/詳細については、Notesヘルプを参照してください。 – andora

2

あなたは質問に追加したコードが原因しばらくの無限ループを引き起こすことが起こっている/ドロップダウンボックスの選択はあなたにもその接続に定期エージェントを作成することができますどのように変化するかを、多くの場合に応じて、

をWEND SQLサーバー。私は、返される値が常に同じであれば、SQLサーバへの不要なトラフィックを削減するため、私自身の内部アプリケーションのいくつかについてこれを多くしています。

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

LSXLCにはこの質問の対象外となるオプションがたくさんあるため、Domino Designerのヘルプファイルを見てlsxlcを検索することをおすすめします。ヘルプファイルには多くの例があります。

関連する問題