2

ある時点で、Lotus Notes を使用していくつかのレポートを送信する必要があるアプリをコーディングする必要があります。

私の質問は次のとおりです。

  1. Lotus Notes クライアント、または Lotus Notes に関連するもの (コマンド ライン ツールなど) を介してメールを送信できますか? もしそうなら、これに関連する情報はどこで見つけることができますか? C/C++ でそれを行う必要はありませんが、他のオプションが存在しない場合は、それで十分です。

  2. サーバーのアドレスを調べるにはどうすればよいですか? GUI は直感的ではなく、サーバーのアドレスがわかりません。サーバーはネットワーク上の別のコンピューターにあります。

4

8 に答える 8

3

はい、Lotus Notes クライアントから電子メールを送信できます。多くのクライアントが Lotus Notes を使用していたため、以前は .NET アプリケーションでこれを行う必要がありました。

Lotus Notes は、これを行うための SDK を公開しています。

ここにリンクがあります。

Interop を使用して動作させました。また、必ず正しいバージョンの SDK を選択してください。クライアントが使用する Lotus Notes のバージョンと一致する必要があります。間違ったものを使用すると、それらのマシンでは機能しません。

于 2009-06-22T14:08:58.573 に答える
3

ロータス ノーツについてはわかりません。しかし、コードから電子メールを送信するために、クライアントが必要な理由がわかりません。Exchange の場合は、サーバーの詳細 (または任意の SMTP サーバー) だけが必要で、必要な言語でコーディングします。サーバーの詳細を調べるには、Lotus Notes クライアントがメール アカウント用に構成されている場所に移動する必要があります。

于 2009-06-22T14:11:53.747 に答える
3

以下は、Notes OLE オブジェクトを使用して Excel VBA から Notes メールを送信する 5 年前の古いコードの例です。お好みのプラットフォームのほとんどで使用できると思います。

Dim session As Object
Dim maildb As Object
Dim maildoc As Object
Dim body As Object

Public Sub send(subject, recipient, filename)
    On Error GoTo errorhandler
    Const EMBED_ATTACHMENT = 1454
    Call maildb.OpenMail

    If Not maildb.IsOpen Then Call maildb.Open("", "")

    Set maildoc = maildb.createdocument
    Set body = maildoc.createrichtextitem("body")

    Call maildoc.replaceitemvalue("form", "memo")
    Call maildoc.replaceitemvalue("subject", subject)

    Call body.EmbedObject(EMBED_ATTACHMENT, "", filename, subject)
    Call maildoc.send(false,recipient)
End Sub

Private Sub Class_Initialize()
    Set session = CreateObject("Notes.NotesSession")
    Set maildb = session.getDatabase("", "")
End Sub

さまざまな Notes オブジェクトのドキュメントは、次の場所にあります。Lotus Domino Designer のドキュメント

于 2009-06-22T14:27:51.437 に答える
2

https://rubygems.org/gems/notes_mailerを試してください (免責事項: 私は著者です)

3<

于 2010-11-10T07:05:05.557 に答える
1

SMTPメッセージを送信するためのコマンドラインツールは次のとおりです。SMTPサーバーのIPアドレスを構成ファイルに配置し、コマンドラインステートメントを使用して、送信に使用される出力ファイルを作成するだけです。

注意:実際にNotesクライアントを使用するコードを作成する場合は、このコードを実行するすべての場所にクライアントをインストールする必要があります。

http://glob.com.au/sendmail/

SMTPサーバーのアドレスについては、組織内でメッセージングを扱っている人に連絡することをお勧めします。企業は、この目的のためだけに別の内部SMTPサーバーを確保している場合があります。それ以外の場合は、Notesディレクトリの[構成]、[サーバー]、[すべてのサーバードキュメント]セクションを調べて、SMTPサーバーのアドレスを見つける必要があります。

于 2009-06-22T14:32:21.647 に答える
1

メールオプションの詳細が必要ですが、最も簡単なのは次のとおりです。

1) @関数を使用する - 例 @MailSend これは、フォームで使用できるメモの組み込み関数です。ボタンを押したり、ドキュメントを保存したりするときのように。Lotus Notes Designer を開いて、すべての情報についてヘルプを参照できます。

2) ロータス スクリプトを使用して、独自のカスタム メール送信を作成できます。

これは、あなたが求めている答えがあるメモフォーラムへのリンクです。 http://www-10.lotus.com/ldd/46dom.nsf?OpenDatabase

于 2009-06-26T14:33:32.023 に答える
1

ノーツ バージョン 6.5 以降のドミノ .NET アセンブリがあります。これは、.NET アプリケーションでロータス ノーツ オブジェクト モデルを使用するかなり簡単な方法を提供します (したがって、C# コードを記述できます)。ただし、オブジェクト モデル自体に関する一般的な知識が必要です。 Notes クラスのプログラミング方法。ただし、IBM for Lotus の DeveloperWorks (http://www.notes.net) で多くの回答を見つけることができます。

また、データを HDD に置き、LotuScript ローカル エージェントを作成して、それを取得し、電子メールで送信することもできます。これには、LotusScript の知識が必要です。ローカル エージェントは簡単にスケジュールできますが、ノーツ クライアントは常にそのマシンで実行する必要があります。

Notes コード (.NET アプリまたは LotusScript コード) からメールを送信する場合、サーバーアドレスは必要ありません。すべてのアドレスは、場所と接続と呼ばれる Notes 設定文書で設定されます。これらのドキュメントは、ローカル アドレス帳アプリケーションの [詳細] セクションにあります。ファイルメニューから場所を管理することもできます(バージョン8以降だと思います)。かなりシンプルですが、「Microsoft スタイル」ではありません。そのため、「直感的ではない」と呼ばれています。

しかし、ノーツ アプリケーション自体とのユーザーの対話中に行われない限り、ノーツ クライアントは通常、自動メールの送信に使用されません。メールを送信する必要がある場合は、Domino サーバーと統合し、スケジュールされたエージェントを使用してそこからメールを送信できます。ただし、.NET コードを使用する場合は、クライアント API を使用してこれを行うこともできますが、メールを送信するアプリケーションを実行するマシンに Notes クライアントをインストールする必要があります。

最後のオプションは、SMTP 経由で送信することです。これには、サーバーでの SMTP リレー構成が必要であり、Lotus Notes/Domino によって「すぐに」提供される暗号化はサポートされません。

于 2010-10-22T09:42:19.420 に答える
0

質問 2 に答えるには、サーバーの名前 (Lotus Notes の名前) を次のように取得できます。

Private Sub Class_Initialize()

    Set session = CreateObject("Notes.NotesSession")
    dim strServerName as string
    strServerName = session.CurrentDatabase.Server
    If ( strServerName  = "" ) Then
        Messagebox( "This database is local." )
    Else
       Messagebox( "This database is on a server named "+ strServerName +"." )
    End If

End Sub
于 2010-05-18T05:34:16.930 に答える