J'ai créé un programme il y a un certain temps en utilisant C# qui effectue une certaine automatisation pour un programme complètement différent, mais j'ai trouvé que j'avais besoin d'accéder aux données d'une base de données Lotus Notes. Le seul problème est, je ne peux sembler comprendre comment ouvrir la base de données par le nom du serveur (en utilisant session.GetDatabase()) ... Je ne peux pas comprendre comment l'ouvrir par Replica ID. Est-ce que quelqu'un sait comment j'irais à ce sujet? (Je ne veux pas que mon programme va à chaque fois que les changements de serveur.)Ouvrir la base de données Lotus Notes par l'ID de réplique en C#
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;
}
Ce code fonctionne très bien, mais si le serveur changé de NTNOTES1A, alors rien ne va plus travailler.
si triste ... Je ne peux pas croire qu'ils auraient pas ajouté dans cette petite fonctionnalité. Je suppose que si j'allais faire une boucle sur les noms de serveurs, l'ID de réplique sera probablement inutile. Merci pour la réponse ... On dirait que je devrais faire la liste des noms de serveurs quand même. Soupir - Pourquoi les notes ne peuvent-elles jamais être faciles? – Sivvy