Abrufen oder Festlegen des Betreffs, wenn Sie einen Termin oder eine Nachricht in Outlook verfassen
Die Office JavaScript-API stellt asynchrone Methoden (subject.getAsync und subject.setAsync) zum Abrufen und Festlegen des Betreffs eines Termins oder einer Nachricht bereit, die der Benutzer erstellt. Diese asynchronen Methoden sind nur zum Verfassen von Add-Ins verfügbar. Um diese Methoden zu verwenden, stellen Sie sicher, dass Sie das Nur-Add-In-Manifest entsprechend eingerichtet haben, damit Outlook das Add-In in Erstellformularen aktivieren kann.
Die subject
-Eigenschaft ist für den Lesezugriff sowohl in Der Form zum Verfassen als auch zum Lesen von Terminen und Nachrichten verfügbar. Greifen Sie in einem Leseformular direkt über das übergeordnete Objekt auf die Eigenschaft zu, wie in:
Office.context.mailbox.item.subject;
In einem Erstellformular müssen Sie jedoch die -Methode verwenden getAsync
, um den Betreff asynchron abzurufen, da sowohl der Benutzer als auch das Add-In den Betreff gleichzeitig einfügen oder ändern können.
Office.context.mailbox.item.subject.getAsync(callback);
Die subject
-Eigenschaft ist für den Schreibzugriff nur in Formularen zum Verfassen und nicht in Leseformularen verfügbar.
Tipp
Verwenden Sie Office.context.mailbox.item.display.subject (Vorschau), um den im Betreff einer Nachricht angezeigten Inhalt vorübergehend im Lesemodus festzulegen.
Wie bei den meisten asynchronen Methoden in der Office JavaScript-API, getAsync
und setAsync
verwenden Sie optionale Eingabeparameter. Weitere Informationen zum Angeben dieser optionalen Eingabeparameter finden Sie unter "Übergeben optionaler Parameter an asynchrone Methoden" unter Asynchrone Programmierung in Office-Add-Ins.
Abrufen des Betreffs
In diesem Abschnitt sehen Sie das Beispiel eines Codes, der den Betreff des/der vom Benutzer erstellten Termins/Nachricht abruft und den Betreff anzeigt.
Um zu verwenden item.subject.getAsync
, stellen Sie eine Rückruffunktion bereit, die den Status und das Ergebnis des asynchronen Aufrufs überprüft. Sie können alle erforderlichen Argumente für die Rückruffunktion über den optionalen asyncContext
Parameter bereitstellen. Verwenden Sie asyncResult
den Ausgabeparameter des Rückrufs, um den Status, die Ergebnisse und alle Fehler aus der Rückruffunktion abzurufen. Wenn der asynchrone Aufruf erfolgreich ist, verwenden Sie die Eigenschaft AsyncResult.value , um den Betreff als Nur-Text-Zeichenfolge abzurufen.
let item;
// Confirms that the Office.js library is loaded.
Office.onReady((info) => {
if (info.host === Office.HostType.Outlook) {
item = Office.context.mailbox.item;
getSubject();
}
});
// Gets the subject of the item that the user is composing.
function getSubject() {
item.subject.getAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
write(asyncResult.error.message);
return;
}
// Display the subject on the page.
write(`The subject is: ${asyncResult.value}`);
});
}
// Writes to a div with id="message" on the page.
function write(message) {
document.getElementById("message").innerText += message;
}
Festlegen des Betreffs
In diesem Abschnitt sehen Sie das Beispiel eines Codes, der den Betreff des/der vom Benutzer erstellten Termins/Nachricht festlegt.
Um zu verwenden item.subject.setAsync
, geben Sie eine Zeichenfolge mit bis zu 255 Zeichen im Parameter an data
. Optional können Sie eine Rückruffunktion und alle Argumente für die Rückruffunktion im asyncContext
-Parameter angeben. Überprüfen Sie den Rückrufstatus, das Ergebnis und alle Fehlermeldungen asyncResult
im Ausgabeparameter des Rückrufs. Wenn der asynchrone Aufruf erfolgreich ist, setAsync
fügt die angegebene Betreffzeichenfolge als Nur-Text ein und überschreibt alle vorhandenen Betreffs für dieses Element.
let item;
// Confirms that the Office.js library is loaded.
Office.onReady((info) => {
if (info.host === Office.HostType.Outlook) {
item = Office.context.mailbox.item;
setSubject();
}
});
// Sets the subject of the item that the user is composing.
function setSubject() {
// Customize the subject with today's date.
const today = new Date();
const subject = `Summary for ${today.toLocaleDateString()}`;
item.subject.setAsync(
subject,
{ asyncContext: { optionalVariable1: 1, optionalVariable2: 2 } },
(asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
write(asyncResult.error.message);
return;
}
/*
The subject was successfully set.
Run additional operations appropriate to your scenario and
use the optionalVariable1 and optionalVariable2 values as needed.
*/
});
}
// Writes to a div with id="message" on the page.
function write(message) {
document.getElementById("message").innerText += message;
}
Siehe auch
- Abrufen und Festlegen von Elementdaten in einem Erstellformular in Outlook
- Abrufen und Festlegen von Outlook-Elementdaten in Formularen zum Lesen oder Verfassen
- Erstellen von Outlook-Add-Ins für Entwurfsvorlagen
- Asynchrone Programmierung in Office-Add-Ins
- Abrufen, Festlegen oder Hinzufügen von Empfängern beim Erstellen eines Termins oder einer Nachricht in Outlook
- Einfügen von Daten in den Textkörper bei der Erstellung eines Termins oder einer Nachricht in Outlook
- Abrufen oder Festlegen des Orts, wenn Sie einen Termin in Outlook verfassen
- Abrufen oder Festlegen der Uhrzeit, wenn Sie einen Termin in Outlook verfassen
Office Add-ins