0

レポートを自動的に実行するようにAccessデータベースを設定することに興味があります。各クライアントコンピューターにアクセスして適切なDSNを設定する手間を省くために、可能であれば、VBスクリプト自体でODBC接続を設定したいと思います。

私はグーグルでこのサイトをチェックし、いくつかの良いスターターコードを見つけましたが、すべてのエラーメッセージを消すには十分ではありません。誰かが以下のコードを完成させることができますか?

Sub SetupODBC(Str_Server as string, Str_Db as string)  
 'Str_Server=Name of Server
 'Str_db=Name of Database
 Dim C as ADODB.Connection  
 Set C = new ADODB.Connection  
 C.ConnectionString = ??  
 C.Open  
 Debug.print C.State  
Exit Sub
4

3 に答える 3

1

このサイトはあなたの友達です:http: //www.connectionstrings.com/access

私は最初あなたの質問に正しく従いませんでした。AccessからLotusへのリンクを作成して、LotusNotesデータについてレポートする必要があるようです。そうするためのいくつかの方法があります。

Lotus NotesデータをXMLとして公開し、リモートシステムからそのXMLにアクセスする方法を頻繁に使用します。XML開始タグであるルート要素を使用してNotesページを簡単に作成し、ルート要素の間に埋め込みビューを挿入できます。その埋め込みビューは、HTMLとして表示され、xmlタグに解決される列を含む必要があります。たとえば、ビューの各行は次のようになります。

<Person><FirstName>Ken</FirstName><LastName>Pespisa</LastName></Person>

列の数式は次のようになります。

"<Person><FirstName>" + FirstName + "</FirstName>"

名の列の場合、および姓の列の場合は、次のようになります。

"<LastName> + LastName + </LastName></Person>"

これは、NotesサーバーでHTTPサービスがオンになっていて、ブラウザを介してデータベースにアクセスできることを前提としていることに注意してください。

ただし、他の回答で述べられているように、NotesSQLやCOMなどの他の方法を使用できます。ただし、このソリューションを多くのワークステーションに配置しているようです。NotesSQLでは、各ワークステーションにドライバーをインストールする必要があります。COM方式は、ユーザーのデスクで余分な作業を必要とせずに機能するので、この場合はそのソリューションをお勧めします。

于 2009-06-17T20:57:55.570 に答える
1

ボードへようこそ。ConnectionStringsは確かにあなたの友達ですが、あなたが抱えている問題はあなたがドライバーを持っていないということです:) Lotus Notesはリレーショナルデータベースではなく、ドキュメント指向のデータベースです。そのため、歴史的にはリレーショナルデータベースのようにアクセスする方法はありませんでした。しかし、IBMは最終的に、NotesSQLの形式で一種のトランスレーターを作成するようになりました。リンクをたどってドライバを入手すると、ODBCを使用できるようになります。Notesがそれ自体をCOMに公開していることは注目に値します。したがって、プッシュが発生した場合は、クライアントを自動化できます。

于 2009-06-18T03:16:21.097 に答える
0

1年経っても更新されていなくても、私のニーズに合った素晴らしいサイトのようです。しかし、それでも葉巻はありません。現在、「データソース名が見つからず、デフォルトのドライバが指定されていません」というメッセージが表示されます。

(明らかに、ServerNameGoesHereとDatabaseNameGoesHereは置換です)

Sub dbX()  
     Dim C As adodb.Connection  
     Set C = New adodb.Connection  
     C.Open _  
        "Driver={Lotus NotesSQL 3.01 (32-bit) ODBC DRIVER (*.nsf)};" & _  
        " Server=ServerNameGoesHere;" & _  
        " Database=DatabaseNameGoesHere.nsf;"  
     C.Close
End Sub
于 2009-06-17T21:34:01.427 に答える