少し前に、C# を使用してまったく別のプログラムを自動化するプログラムを作成しましたが、Lotus Notes データベースのデータにアクセスする必要があることがわかりました。唯一の問題は、(session.GetDatabase() を使用して) サーバーの名前でデータベースを開く方法しか理解できないように見えることです... レプリカ ID でデータベースを開く方法がわかりません。誰かが私がそれについてどうするか知っていますか? (サーバーが変更されるたびにプログラムがダウンするのは望ましくありません。)
public static string[] GetLotusNotesHelpTickets()
{
NotesSession session = new NotesSession();
session.Initialize(Password);
// 85256B45:000EE057 = NTNOTES1A Server Replica ID
NotesDatabase database = session.GetDatabase("NTNOTES1A", "is/gs/gshd.nsf", false);
string SearchFormula = string.Concat("Form = \"Call Ticket\""
, " & GroupAssignedTo = \"Business Systems\""
, " & CallStatus = \"Open\"");
NotesDocumentCollection collection = database.Search(SearchFormula, null, 0);
NotesDocument document = collection.GetFirstDocument();
string[] ticketList = new string[collection.Count];
for (int i = 0; i < collection.Count; ++i)
{
ticketList[i] = ((object[])(document.GetItemValue("TicketNumber")))[0].ToString();
document = collection.GetNextDocument(document);
}
document = null;
collection = null;
database = null;
session = null;
return ticketList;
}
このコードは問題なく動作していますが、サーバーが NTNOTES1A から変更された場合、何も機能しなくなります。