Просмотр или изменение темы при создании встречи или сообщения в Outlook
API JavaScript для Office предоставляет асинхронные методы (subject.getAsync и subject.setAsync) для получения и задания темы встречи или сообщения, которые создает пользователь. Эти асинхронные методы доступны только для создания надстроек. Чтобы использовать эти методы, убедитесь, что вы настроили манифест только надстройки соответствующим образом, чтобы Outlook активировал надстройку в формах создания.
Свойство subject
доступно для чтения в формах создания и чтения встреч и сообщений. В форме чтения доступ к свойству непосредственно из родительского объекта, как в:
Office.context.mailbox.item.subject;
Но в форме создания, так как пользователь и надстройка могут вставлять или изменять тему одновременно, необходимо использовать getAsync
метод для асинхронного получения темы.
Office.context.mailbox.item.subject.getAsync(callback);
Свойство subject
доступно для доступа к записи только в формах создания, но не в формах чтения.
Совет
Чтобы временно задать содержимое, отображаемое в теме сообщения в режиме чтения, используйте Office.context.mailbox.item.display.subject (предварительная версия).
Как и большинство асинхронных методов в API JavaScript для Office, getAsync
и setAsync
принимают необязательные входные параметры. Дополнительные сведения о том, как указать эти необязательные входные параметры, см. в разделе Передача необязательных параметров в асинхронные методы статьи Асинхронное программирование в надстройках Office.
Получение темы
В этом разделе показан пример кода, получающий и отображающий тему создаваемой встречи или сообщения.
Чтобы использовать item.subject.getAsync
, предоставьте функцию обратного вызова, которая проверяет состояние и результат асинхронного вызова. Вы можете указать любые необходимые аргументы для функции обратного вызова с помощью необязательного asyncContext
параметра. Чтобы получить состояние, результаты и любую ошибку из функции обратного вызова, используйте asyncResult
выходной параметр обратного вызова. Если асинхронный вызов выполнен успешно, используйте свойство AsyncResult.value , чтобы получить тему в виде строки обычного текста.
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;
}
Установка темы
В этом разделе показан пример кода, задающий тему создаваемой встречи или сообщения.
Чтобы использовать item.subject.setAsync
, укажите строку не более 255 символов в параметре data
. При необходимости можно указать функцию обратного вызова и любые аргументы для функции обратного вызова в параметре asyncContext
. Проверьте состояние обратного вызова, результат и любое сообщение об ошибке в выходном asyncResult
параметре обратного вызова. Если асинхронный вызов выполнен успешно, setAsync
вставляет указанную строку субъекта в виде обычного текста, перезаписав все существующие темы для этого элемента.
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;
}
См. также
- Просмотр и изменение данных элемента в форме создания элементов Outlook
- Просмотр и изменение данных элемента Outlook в формах просмотра и создания
- Создание надстроек Outlook для форм создания
- Асинхронное программирование надстроек Office
- Чтение, запись и добавление получателей при создании встречи или сообщения в Outlook
- Вставка данных в основной текст при создании встречи или сообщения в Outlook
- Просмотр или изменение расположения при создании встречи в Outlook
- Просмотр или изменение времени при создании встречи в Outlook
Office Add-ins