Office.AppointmentCompose interface
Office.context.mailbox.item の予定開催者モード。
重要: これは内部 Outlook オブジェクトであり、既存のインターフェイスを介して直接公開されることはありません。 これは、 Office.context.mailbox.item
のモードとして扱う必要があります。 詳細については、「 オブジェクト モデル 」ページを参照してください。
親インターフェイス:
- Extends
プロパティ
body | アイテムの本文を操作するメソッドを提供するオブジェクトを取得します。 |
end | 予定が終了する日時を取得または設定します。
重要: Windows クライアントでは、このプロパティを使用して繰り返しの終了を更新することはできません。 |
item |
インスタンスが表しているアイテムの種類を取得します。
|
location | 予定の場所を取得または設定します。
|
notification |
アイテムの通知メッセージを取得します。 |
optional |
イベントの任意出席者へのアクセスを提供します。 オブジェクトの種類とアクセス レベルは、現在の項目のモードによって異なります。
|
organizer | 指定した会議の開催者を取得します。
|
recurrence | 予定の繰り返しパターンを取得または設定します。
注: 会議出席依頼の 注: 繰り返しオブジェクトが null の場合、これは、オブジェクトが 1 つの予定または単一の予定の会議出席依頼であり、一連の一部ではないことを示します。 |
required |
イベントの必須出席者へのアクセスを提供します。 オブジェクトの種類とアクセス レベルは、現在の項目のモードによって異なります。
|
series |
インスタンスが属する系列の ID を取得します。 Outlook on the web およびデスクトップ クライアントでは、
注:
|
start | 予定を開始する日時を取得または設定します。
重要: Windows クライアントでは、このプロパティを使用して繰り返しの開始を更新することはできません。 |
subject | アイテムの件名フィールドに示される説明を取得または設定します。
|
メソッド
add |
ファイルを添付ファイルとしてメッセージまたは予定に追加します。
その後、
重要: Windows 上の Outlook の最近のビルドでは、このアクションに |
add |
ファイルを添付ファイルとしてメッセージまたは予定に追加します。
その後、
重要: Windows 上の Outlook の最近のビルドでは、このアクションに |
add |
サポートされているイベントのイベント ハンドラーを追加します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。 サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。 |
add |
サポートされているイベントのイベント ハンドラーを追加します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。 サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。 |
add |
メッセージなどの Exchange アイテムを添付ファイルとして、メッセージまたは予定に追加します。
その後、 Office アドインが Outlook on the web および新しい Outlook on Windows で実行されている場合、 |
add |
メッセージなどの Exchange アイテムを添付ファイルとして、メッセージまたは予定に追加します。
その後、 Office アドインが Outlook on the web および新しい Outlook on Windows で実行されている場合、 |
close() | 作成中の現在の項目を閉じます。
Outlook デスクトップ クライアントでは、 |
get |
メッセージの件名または本文から非同期的に選択したデータを返します。 選択範囲がないのにカーソルが本文または件名にある場合、メソッドは選択したデータの空の文字列を返します。 本文または件名以外のフィールドが選択されている場合、 コールバック関数から選択したデータにアクセスするには、 |
get |
メッセージの件名または本文から非同期的に選択したデータを返します。 選択範囲がないのにカーソルが本文または件名にある場合、メソッドは選択したデータの空の文字列を返します。 本文または件名以外のフィールドが選択されている場合、 コールバック関数から選択したデータにアクセスするには、 |
load |
選択されたアイテムのこのアドインのカスタム プロパティを非同期に読み込みます。 カスタム プロパティは、アプリごとに項目ごとにキーと値のペアとして格納されます。 このメソッドはコールバックで CustomProperties オブジェクトを返します。これにより、現在のアイテムと現在のアドインに固有のカスタム プロパティにアクセスするメソッドが提供されます。 カスタム プロパティはアイテムで暗号化されないため、セキュリティで保護されたストレージとして使用しないでください。 カスタム プロパティは |
remove |
メッセージまたは予定から添付ファイルを削除します。
|
remove |
メッセージまたは予定から添付ファイルを削除します。
|
remove |
サポートされているイベントの種類のイベント ハンドラーを削除します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。 サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。 |
remove |
サポートされているイベントの種類のイベント ハンドラーを削除します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。 サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。 |
save |
項目を非同期的に保存します。 予定には下書き状態がないため、作成モードで予定に対して |
save |
項目を非同期的に保存します。 予定には下書き状態がないため、作成モードで予定に対して |
set |
メッセージの本文または件名に非同期的にデータを挿入します。
|
set |
メッセージの本文または件名に非同期的にデータを挿入します。
|
プロパティの詳細
body
アイテムの本文を操作するメソッドを提供するオブジェクトを取得します。
body: Body;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
// This example gets the body of the item as plain text.
Office.context.mailbox.item.body.getAsync(
"text",
{ asyncContext: "This is passed to the callback" },
function callback(result) {
// Do something with the result.
});
// The following is an example of an object that is passed as the result parameter to the callback function.
{
"value": "TEXT of whole body (including threads below)",
"status": "succeeded",
"asyncContext": "This is passed to the callback"
}
end
予定が終了する日時を取得または設定します。
end
プロパティは、協定世界時 (UTC) の日付と時刻の値として表される Time オブジェクトです。
convertToLocalClientTime
メソッドを使用して、end
プロパティの値をクライアントのローカルの日付と時刻に変換できます。
Time.setAsync
メソッドを使用して終了時刻を設定する場合、convertToUtcClientTime
メソッドを使用して、クライアント上のローカルの時刻をサーバーの UTC に変換する必要があります。
重要: Windows クライアントでは、このプロパティを使用して繰り返しの終了を更新することはできません。
end: Time;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
// The following example sets the end time of an appointment in compose mode by
// using the `setAsync` method of the `Time` object.
const endTime = new Date("3/14/2015");
const options = {
// Pass information that can be used in the callback.
asyncContext: {verb: "Set"}
};
Office.context.mailbox.item.end.setAsync(endTime, options, function(result) {
if (result.error) {
console.debug(result.error);
} else {
// Access the asyncContext that was passed to the setAsync method.
console.debug("End Time " + result.asyncContext.verb);
}
});
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-set-end-appointment-organizer.yaml
Office.context.mailbox.item.end.getAsync((result) => {
if (result.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Action failed with message ${result.error.message}`);
return;
}
console.log(`Appointment ends: ${result.value}`);
});
...
Office.context.mailbox.item.start.getAsync((result) => {
if (result.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Get start date failed with message ${result.error.message}`);
return;
}
const end = result.value; // Set end to current start date and time.
end.setDate(end.getDate() + 1); // Set end as 1 day later than start date.
Office.context.mailbox.item.end.setAsync(end, (result) => {
if (result.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Set end date failed with message ${result.error.message}`);
return;
}
console.log(`Successfully set end date and time to ${end}`);
});
});
itemType
インスタンスが表しているアイテムの種類を取得します。
itemType
プロパティは、ItemType
列挙値の 1 つを返します。これは item
オブジェクト インスタンスがメッセージと予定のどちらであるかを示すものです。
itemType: MailboxEnums.ItemType | string;
プロパティ値
Office.MailboxEnums.ItemType | string
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-item-type.yaml
const itemType = Office.context.mailbox.item.itemType;
switch (itemType) {
case Office.MailboxEnums.ItemType.Appointment:
console.log(`Current item is an ${itemType}.`);
break;
case Office.MailboxEnums.ItemType.Message:
console.log(`Current item is a ${itemType}. A message could be an email, meeting request, meeting response, or meeting cancellation.`);
break;
}
location
予定の場所を取得または設定します。
location
プロパティは、予定の場所を取得および設定するために使用されるメソッドを提供する Location オブジェクトを返します。
location: Location;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
const userContext = { value : 1 };
Office.context.mailbox.item.location.getAsync( { context: userContext}, callback);
function callback(asyncResult) {
const context = asyncResult.context;
const location = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-set-location-appointment-organizer.yaml
Office.context.mailbox.item.location.getAsync((result) => {
if (result.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Action failed with message ${result.error.message}`);
return;
}
console.log(`Appointment location: ${result.value}`);
});
...
const location = "my office";
Office.context.mailbox.item.location.setAsync(location, (result) => {
if (result.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Action failed with message ${result.error.message}`);
return;
}
console.log(`Successfully set location to ${location}`);
});
notificationMessages
アイテムの通知メッセージを取得します。
notificationMessages: NotificationMessages;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/35-notifications/add-getall-remove.yaml
// Adds a progress indicator to the mail item.
const id = $("#notificationId").val().toString();
const details =
{
type: Office.MailboxEnums.ItemNotificationMessageType.ProgressIndicator,
message: "Progress indicator with id = " + id
};
Office.context.mailbox.item.notificationMessages.addAsync(id, details, handleResult);
...
// Adds an informational notification to the mail item.
const id = $("#notificationId").val().toString();
const details =
{
type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
message: "Non-persistent informational notification message with id = " + id,
icon: "icon1",
persistent: false
};
Office.context.mailbox.item.notificationMessages.addAsync(id, details, handleResult);
...
// Adds a persistent information notification to the mail item.
const id = $("#notificationId").val().toString();
const details =
{
type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
message: "Persistent informational notification message with id = " + id,
icon: "icon1",
persistent: true
};
Office.context.mailbox.item.notificationMessages.addAsync(id, details, handleResult);
...
// Gets all the notification messages and their keys for the current mail item.
Office.context.mailbox.item.notificationMessages.getAllAsync((asyncResult) => {
if (asyncResult.status === Office.AsyncResultStatus.Failed) {
console.log(asyncResult.error.message);
return;
}
console.log(asyncResult.value);
});
...
// Replaces a notification message of a given key with another message.
const id = $("#notificationId").val().toString();
Office.context.mailbox.item.notificationMessages.replaceAsync(
id,
{
type: Office.MailboxEnums.ItemNotificationMessageType.InformationalMessage,
message: "Notification message with id = " + id + " has been replaced with an informational message.",
icon: "icon2",
persistent: false
},
handleResult);
...
// Removes a notification message from the current mail item.
const id = $("#notificationId").val().toString();
Office.context.mailbox.item.notificationMessages.removeAsync(id, handleResult);
optionalAttendees
イベントの任意出席者へのアクセスを提供します。 オブジェクトの種類とアクセス レベルは、現在の項目のモードによって異なります。
optionalAttendees
プロパティは会議への任意出席者を取得または更新するためのメソッドを提供する Recipients
オブジェクトを返します。 ただし、クライアント/プラットフォーム (Windows、Mac など) によっては、取得または更新できる受信者の数に制限が適用される場合があります。 詳細については、 Recipients オブジェクトを参照してください。
optionalAttendees: Recipients;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
Office.context.mailbox.item.optionalAttendees.setAsync( ['alice@contoso.com', 'bob@contoso.com'] );
Office.context.mailbox.item.optionalAttendees.addAsync( ['jason@contoso.com'] );
Office.context.mailbox.item.optionalAttendees.getAsync(callback);
function callback(asyncResult) {
const arrayOfOptionalAttendeesRecipients = asyncResult.value;
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-optional-attendees-appointment-organizer.yaml
Office.context.mailbox.item.optionalAttendees.getAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
const apptOptionalAttendees = asyncResult.value;
for (let i = 0; i < apptOptionalAttendees.length; i++) {
console.log(
"Optional attendees: " +
apptOptionalAttendees[i].displayName +
" (" +
apptOptionalAttendees[i].emailAddress +
") - response: " +
apptOptionalAttendees[i].appointmentResponse
);
}
} else {
console.error(asyncResult.error);
}
});
...
const email = $("#emailOptional")
.val()
.toString();
const emailArray = [email];
Office.context.mailbox.item.optionalAttendees.setAsync(emailArray, function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("Succeeded in setting optional attendees field.");
} else {
console.error(asyncResult.error);
}
});
organizer
指定した会議の開催者を取得します。
organizer
プロパティは、開催者の値を取得するメソッドを提供する Organizer オブジェクトを返します。
organizer: Organizer;
プロパティ値
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: 予定オーガナイザー
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-organizer-appointment-organizer.yaml
Office.context.mailbox.item.organizer.getAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
const apptOrganizer = asyncResult.value;
console.log("Organizer: " + apptOrganizer.displayName + " (" + apptOrganizer.emailAddress + ")");
} else {
console.error(asyncResult.error);
}
});
recurrence
予定の繰り返しパターンを取得または設定します。
recurrence
プロパティは、アイテムが系列または系列のインスタンスである場合、定期的な予定または会議の要求の繰り返しオブジェクトを返します。
null
は、単一の予定と単一の予定の会議出席依頼に対して返されます。
注: 会議出席依頼の itemClass
値は IPM.Schedule.Meeting.Request
です。
注: 繰り返しオブジェクトが null の場合、これは、オブジェクトが 1 つの予定または単一の予定の会議出席依頼であり、一連の一部ではないことを示します。
recurrence: Recurrence;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/50-recurrence/get-set-recurrence-appointment-organizer.yaml
Office.context.mailbox.item.recurrence.getAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
const recurrence = asyncResult.value;
if (recurrence === null) {
console.log("This is a single appointment.");
} else {
console.log(`Recurrence pattern: ${JSON.stringify(recurrence)}`);
}
} else {
console.error(asyncResult.error);
}
});
...
// Important: Can only set the recurrence pattern of an appointment series.
const currentDate = new Date();
let seriesTimeObject: Office.SeriesTime;
// Set series start date to tomorrow.
seriesTimeObject.setStartDate(currentDate.getFullYear(), currentDate.getMonth(), currentDate.getDay() + 1);
// Set series end date to one year from now.
seriesTimeObject.setEndDate(currentDate.getFullYear() + 1, currentDate.getMonth() + 1, currentDate.getDay());
// Set start time to 1:30 PM.
seriesTimeObject.setStartTime(13, 30);
// Set duration to 30 minutes.
seriesTimeObject.setDuration(30);
const pattern: Office.Recurrence = {
seriesTime: seriesTimeObject,
recurrenceType: Office.MailboxEnums.RecurrenceType.Yearly,
recurrenceProperties: {
interval: 1,
dayOfWeek: Office.MailboxEnums.Days.Tue,
weekNumber: Office.MailboxEnums.WeekNumber.Second,
month: Office.MailboxEnums.Month.Sep
},
recurrenceTimeZone: { name: Office.MailboxEnums.RecurrenceTimeZone.PacificStandardTime }
};
Office.context.mailbox.item.recurrence.setAsync(pattern, (asyncResult) => {
if (asyncResult.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Failed to set recurrence. Error: ${asyncResult.error.message}`);
return;
}
console.log(`Succeeded in setting recurrence pattern ${JSON.stringify(pattern)}`);
});
requiredAttendees
イベントの必須出席者へのアクセスを提供します。 オブジェクトの種類とアクセス レベルは、現在の項目のモードによって異なります。
requiredAttendees
プロパティは会議への必須出席者を取得または更新するためのメソッドを提供する Recipients
オブジェクトを返します。 ただし、クライアント/プラットフォーム (Windows、Mac など) によっては、取得または更新できる受信者の数に制限が適用される場合があります。 詳細については、 Recipients オブジェクトを参照してください。
requiredAttendees: Recipients;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
Office.context.mailbox.item.requiredAttendees.setAsync( ['alice@contoso.com', 'bob@contoso.com'] );
Office.context.mailbox.item.requiredAttendees.addAsync( ['jason@contoso.com'] );
Office.context.mailbox.item.requiredAttendees.getAsync(callback);
function callback(asyncResult) {
const arrayOfRequiredAttendeesRecipients = asyncResult.value;
console.log(JSON.stringify(arrayOfRequiredAttendeesRecipients));
}
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/30-recipients-and-attendees/get-set-required-attendees-appointment-organizer.yaml
Office.context.mailbox.item.requiredAttendees.getAsync(function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
const apptRequiredAttendees = asyncResult.value;
for (let i = 0; i < apptRequiredAttendees.length; i++) {
console.log(
"Required attendees: " +
apptRequiredAttendees[i].displayName +
" (" +
apptRequiredAttendees[i].emailAddress +
") - response: " +
apptRequiredAttendees[i].appointmentResponse
);
}
} else {
console.error(asyncResult.error);
}
});
...
const email = $("#emailRequired")
.val()
.toString();
const emailArray = [email];
Office.context.mailbox.item.requiredAttendees.setAsync(emailArray, function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("Succeeded in setting required attendees field.");
} else {
console.error(asyncResult.error);
}
});
seriesId
インスタンスが属する系列の ID を取得します。
Outlook on the web およびデスクトップ クライアントでは、 seriesId
プロパティは、このアイテムが属する親 (系列) アイテムの Exchange Web サービス (EWS) ID を返します。 ただし、iOS と Android では、seriesId は親アイテムの REST ID を返します。
注: seriesId
プロパティによって返される識別子は、Exchange Web Services アイテム識別子と同じです。
seriesId
プロパティは、Outlook REST API で使用される Outlook ID と同じではありません。 この値を使用して REST API 呼び出しを行う前に、 Office.context.mailbox.convertToRestId
を使用して変換する必要があります。 詳細については、「 Outlook アドインから Outlook REST API を使用する」を参照してください。
seriesId
プロパティは、単一の予定、系列アイテム、会議出席依頼などの親アイテムを持たないアイテムのnull
を返し、会議出席依頼ではないその他のアイテムのundefined
を返します。
seriesId: string;
プロパティ値
string
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/50-recurrence/get-series-id.yaml
const seriesId = Office.context.mailbox.item.seriesId;
if (seriesId === undefined) {
console.log("This is a message that's not a meeting request.");
} else if (seriesId === null) {
console.log("This is a single appointment, a parent series, or a meeting request for a series or single meeting.");
} else {
console.log("This is an instance belonging to series with ID " + seriesId);
}
start
予定を開始する日時を取得または設定します。
start
プロパティは、協定世界時 (UTC) の日付と時刻の値として表される Time オブジェクトです。
convertToLocalClientTime
メソッドを使用して、値をクライアントのローカルの日付と時刻に変換できます。
Time.setAsync
メソッドを使用して開始時刻を設定する場合、convertToUtcClientTime
メソッドを使用して、クライアント上のローカルの時刻をサーバーの UTC に変換する必要があります。
重要: Windows クライアントでは、このプロパティを使用して繰り返しの開始を更新することはできません。
start: Time;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-set-start-appointment-organizer.yaml
Office.context.mailbox.item.start.getAsync((result) => {
if (result.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Action failed with message ${result.error.message}`);
return;
}
console.log(`Appointment starts: ${result.value}`);
});
...
const start = new Date(); // Represents current date and time.
start.setDate(start.getDate() + 2); // Add 2 days to current date.
Office.context.mailbox.item.start.setAsync(start, (result) => {
if (result.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Action failed with message ${result.error.message}`);
return;
}
console.log(`Successfully set start date and time to ${start}`);
});
subject
アイテムの件名フィールドに示される説明を取得または設定します。
subject
プロパティは、電子メール サーバーによって送信されたアイテムの件名全体を取得または設定します。
subject
プロパティは件名を取得および設定するためのメソッドを提供する Subject
オブジェクトを返します。
subject: Subject;
プロパティ値
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/get-set-subject-compose.yaml
Office.context.mailbox.item.subject.getAsync((result) => {
if (result.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Action failed with message ${result.error.message}`);
return;
}
console.log(`Subject: ${result.value}`);
});
...
let subject = "Hello World!";
Office.context.mailbox.item.subject.setAsync(subject, (result) => {
if (result.status !== Office.AsyncResultStatus.Succeeded) {
console.error(`Action failed with message ${result.error.message}`);
return;
}
console.log(`Successfully set subject to ${subject}`);
});
メソッドの詳細
addFileAttachmentAsync(uri, attachmentName, options, callback)
ファイルを添付ファイルとしてメッセージまたは予定に追加します。
addFileAttachmentAsync
メソッドは、指定した URI にあるファイルをアップロードし、新規作成フォーム内のアイテムに添付します。
その後、removeAttachmentAsync
メソッドで識別子を使用して同じセッションの添付ファイルを削除できます。
重要: Windows 上の Outlook の最近のビルドでは、このアクションに Authorization: Bearer
ヘッダーを誤って追加するバグが導入されました (この API または Outlook UI を使用しているかどうか)。 この問題を回避するには、要件セット 1.8 で導入された addFileAttachmentFromBase64
API の使用を試すことができます。
addFileAttachmentAsync(uri: string, attachmentName: string, options: Office.AsyncContextOptions & { isInline: boolean }, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- uri
-
string
メッセージまたは予定に添付するファイルの場所を示す URI。 最大長は 2048 文字です。
- attachmentName
-
string
添付ファイルのアップロード時に表示される添付ファイルの名前。 最大の長さは、255 文字です。
- options
-
Office.AsyncContextOptions & { isInline: boolean }
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
isInline
: true の場合は、添付ファイルがメッセージ本文にインラインで表示され、添付ファイルの一覧に表示されないことを示します。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 成功すると、添付ファイルの識別子が asyncResult.value
プロパティに設定されます。 添付ファイルのアップロードに失敗した場合、asyncResult
オブジェクトには、エラーの説明を提供する Error
オブジェクトが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: 予定オーガナイザー
エラー:
AttachmentSizeExceeded
: 添付ファイルが許可されているよりも大きい。FileTypeNotSupported
: 添付ファイルには、許可されていない拡張機能があります。NumberOfAttachmentsExceeded
: メッセージまたは予定に添付ファイルが多すぎます。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml
const attachmentUrl = $("#attachmentUrl")
.val()
.toString();
Office.context.mailbox.item.addFileAttachmentAsync(
attachmentUrl,
getFileName(attachmentUrl),
{ isInline: false },
(result) => {
console.log(result);
}
);
addFileAttachmentAsync(uri, attachmentName, callback)
ファイルを添付ファイルとしてメッセージまたは予定に追加します。
addFileAttachmentAsync
メソッドは、指定した URI にあるファイルをアップロードし、新規作成フォーム内のアイテムに添付します。
その後、removeAttachmentAsync
メソッドで識別子を使用して同じセッションの添付ファイルを削除できます。
重要: Windows 上の Outlook の最近のビルドでは、このアクションに Authorization: Bearer
ヘッダーを誤って追加するバグが導入されました (この API または Outlook UI を使用しているかどうか)。 この問題を回避するには、要件セット 1.8 で導入された addFileAttachmentFromBase64
API の使用を試すことができます。
addFileAttachmentAsync(uri: string, attachmentName: string, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- uri
-
string
メッセージまたは予定に添付するファイルの場所を示す URI。 最大長は 2048 文字です。
- attachmentName
-
string
添付ファイルのアップロード時に表示される添付ファイルの名前。 最大の長さは、255 文字です。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 成功すると、添付ファイルの識別子が asyncResult.value
プロパティに設定されます。 添付ファイルのアップロードに失敗した場合、asyncResult
オブジェクトには、エラーの説明を提供する Error
オブジェクトが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: 予定オーガナイザー
エラー:
AttachmentSizeExceeded
: 添付ファイルが許可されているよりも大きい。FileTypeNotSupported
: 添付ファイルには、許可されていない拡張機能があります。NumberOfAttachmentsExceeded
: メッセージまたは予定に添付ファイルが多すぎます。
addHandlerAsync(eventType, handler, options, callback)
サポートされているイベントのイベント ハンドラーを追加します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。
サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。
addHandlerAsync(eventType: Office.EventType | string, handler: any, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- eventType
-
Office.EventType | string
ハンドラーを呼び出す必要のあるイベント。
- handler
-
any
イベントを処理する関数。 関数は、オブジェクト リテラルである単一パラメーターを受け入れる必要があります。 パラメーターの type
プロパティは、addHandlerAsync
に渡されるeventType
パラメーターと一致します。
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
function myHandlerFunction(eventarg) {
if (eventarg.attachmentStatus === Office.MailboxEnums.AttachmentStatus.Added) {
const attachment = eventarg.attachmentDetails;
console.log("Event Fired and Attachment Added!");
getAttachmentContentAsync(attachment.id, options, callback);
}
}
Office.context.mailbox.item.addHandlerAsync(Office.EventType.AttachmentsChanged, myHandlerFunction, myCallback);
addHandlerAsync(eventType, handler, callback)
サポートされているイベントのイベント ハンドラーを追加します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。
サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。
addHandlerAsync(eventType: Office.EventType | string, handler: any, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- eventType
-
Office.EventType | string
ハンドラーを呼び出す必要のあるイベント。
- handler
-
any
イベントを処理する関数。 関数は、オブジェクト リテラルである単一パラメーターを受け入れる必要があります。 パラメーターの type
プロパティは、addHandlerAsync
に渡されるeventType
パラメーターと一致します。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
addItemAttachmentAsync(itemId, attachmentName, options, callback)
メッセージなどの Exchange アイテムを添付ファイルとして、メッセージまたは予定に追加します。
addItemAttachmentAsync
メソッドは、指定された Exchange 識別子を持つアイテムを新規作成フォームのアイテムにアタッチします。 コールバック関数を指定した場合、メソッドは、添付ファイル識別子または項目の添付中に発生したエラーを示すコードを含む 1 つのパラメーター asyncResult
で呼び出されます。
options
パラメーターを使用して、必要に応じて状態情報をコールバック関数に渡すことができます。
その後、removeAttachmentAsync
メソッドで識別子を使用して同じセッションの添付ファイルを削除できます。
Office アドインが Outlook on the web および新しい Outlook on Windows で実行されている場合、addItemAttachmentAsync
メソッドは、編集中のアイテム以外のアイテムにアイテムを添付できます。 ただし、これはサポートされていないため、推奨されません。
addItemAttachmentAsync(itemId: any, attachmentName: string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- itemId
-
any
添付するアイテムの Exchange 識別子。 最大長は 100 文字です。
- attachmentName
-
string
添付ファイルのアップロード時に表示される添付ファイルの名前。 最大の長さは、255 文字です。
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
省略可能。 メソッドが完了すると、コールバック パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 成功すると、添付ファイルの識別子が asyncResult.value
プロパティに設定されます。 添付ファイルの追加に失敗した場合、asyncResult
オブジェクトには、エラーの説明を提供する Error
オブジェクトが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: 予定オーガナイザー
エラー:
-
NumberOfAttachmentsExceeded
: メッセージまたは予定に添付ファイルが多すぎます。
例
// The following example adds an existing Outlook item as an attachment
// with the name "My Attachment".
function addAttachment() {
// EWS ID of item to attach (shortened for readability).
const itemId = "AAMkADI1...AAA=";
// The values in asyncContext can be accessed in the callback.
const options = { asyncContext: { var1: 1, var2: 2 } };
Office.context.mailbox.item.addItemAttachmentAsync(itemId, "My Attachment", options, (result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error("Failed to add attachment: " + result.error.message);
return;
}
console.log("Attachment added successfully.");
console.log("var1: " + result.asyncContext.var1);
console.log("var2: " + result.asyncContext.var2);
});
}
addItemAttachmentAsync(itemId, attachmentName, callback)
メッセージなどの Exchange アイテムを添付ファイルとして、メッセージまたは予定に追加します。
addItemAttachmentAsync
メソッドは、指定された Exchange 識別子を持つアイテムを新規作成フォームのアイテムにアタッチします。 コールバック関数を指定した場合、メソッドは、添付ファイル識別子または項目の添付中に発生したエラーを示すコードを含む 1 つのパラメーター asyncResult
で呼び出されます。
options
パラメーターを使用して、必要に応じて状態情報をコールバック関数に渡すことができます。
その後、removeAttachmentAsync
メソッドで識別子を使用して同じセッションの添付ファイルを削除できます。
Office アドインが Outlook on the web および新しい Outlook on Windows で実行されている場合、addItemAttachmentAsync
メソッドは、編集中のアイテム以外のアイテムにアイテムを添付できます。 ただし、これはサポートされていないため、推奨されません。
addItemAttachmentAsync(itemId: any, attachmentName: string, callback?: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- itemId
-
any
添付するアイテムの Exchange 識別子。 最大長は 100 文字です。
- attachmentName
-
string
添付ファイルのアップロード時に表示される添付ファイルの名前。 最大の長さは、255 文字です。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
省略可能。 メソッドが完了すると、コールバック パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 成功すると、添付ファイルの識別子が asyncResult.value
プロパティに設定されます。 添付ファイルの追加に失敗した場合、asyncResult
オブジェクトには、エラーの説明を提供する Error
オブジェクトが含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: 予定オーガナイザー
エラー:
-
NumberOfAttachmentsExceeded
: メッセージまたは予定に添付ファイルが多すぎます。
close()
作成中の現在の項目を閉じます。
close
メソッドの動作は、作成中のアイテムの現在の状態によって異なります。 アイテムに未保存の変更がある場合、クライアントはアクションの保存、破棄、または閉じるようユーザーに求めます。
Outlook デスクトップ クライアントでは、 close
メソッドは閲覧ウィンドウの返信には影響しません。
close(): void;
戻り値
void
注釈
最小アクセス許可レベル: 制限あり
適用される Outlook モード: 予定オーガナイザー
重要: Outlook on the web と新しい Outlook on Windows ではアイテムが予定であり、以前にsaveAsync
を使用して保存されている場合、アイテムが最後に保存されてから変更が発生しなかった場合でも、ユーザーは保存、破棄、または取り消しを求められます。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/25-item-save-and-close/close.yaml
Office.context.mailbox.item.close();
getSelectedDataAsync(coercionType, options, callback)
メッセージの件名または本文から非同期的に選択したデータを返します。
選択範囲がないのにカーソルが本文または件名にある場合、メソッドは選択したデータの空の文字列を返します。 本文または件名以外のフィールドが選択されている場合、InvalidSelection
エラーが返されます。
コールバック関数から選択したデータにアクセスするには、 asyncResult.value.data
を呼び出します。 選択範囲のsource
プロパティにアクセスするには、body
またはsubject
asyncResult.value.sourceProperty
を呼び出します。
getSelectedDataAsync(coercionType: Office.CoercionType | string, options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<any>) => void): void;
パラメーター
- coercionType
-
Office.CoercionType | string
データの形式を要求します。
Text
場合、メソッドはプレーン テキストを文字列として返し、存在するすべての HTML タグを削除します。
HTML
場合、メソッドは選択したテキスト (プレーンテキストまたは HTML) を返します。
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<any>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。
戻り値
void
coercionType
によって決定される形式の文字列として選択されたデータ。
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
// Get selected data.
Office.initialize = function () {
Office.context.mailbox.item.getSelectedDataAsync(Office.CoercionType.Text, {}, getCallback);
};
function getCallback(asyncResult) {
const text = asyncResult.value.data;
const prop = asyncResult.value.sourceProperty;
console.log("Selected text in " + prop + ": " + text);
}
getSelectedDataAsync(coercionType, callback)
メッセージの件名または本文から非同期的に選択したデータを返します。
選択範囲がないのにカーソルが本文または件名にある場合、メソッドは選択したデータの空の文字列を返します。 本文または件名以外のフィールドが選択されている場合、InvalidSelection
エラーが返されます。
コールバック関数から選択したデータにアクセスするには、 asyncResult.value.data
を呼び出します。 選択範囲のsource
プロパティにアクセスするには、body
またはsubject
asyncResult.value.sourceProperty
を呼び出します。
getSelectedDataAsync(coercionType: Office.CoercionType | string, callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- coercionType
-
Office.CoercionType | string
データの形式を要求します。
Text
場合、メソッドはプレーン テキストを文字列として返し、存在するすべての HTML タグを削除します。
HTML
場合、メソッドは選択したテキスト (プレーンテキストまたは HTML) を返します。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。
戻り値
void
coercionType
によって決定される形式の文字列として選択されたデータ。
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/20-item-body/get-selected-data.yaml
Office.context.mailbox.item.getSelectedDataAsync(Office.CoercionType.Text, function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
const text = asyncResult.value.data;
const prop = asyncResult.value.sourceProperty;
console.log("Selected text in " + prop + ": " + text);
} else {
console.error(asyncResult.error);
}
});
loadCustomPropertiesAsync(callback, userContext)
選択されたアイテムのこのアドインのカスタム プロパティを非同期に読み込みます。
カスタム プロパティは、アプリごとに項目ごとにキーと値のペアとして格納されます。 このメソッドはコールバックで CustomProperties オブジェクトを返します。これにより、現在のアイテムと現在のアドインに固有のカスタム プロパティにアクセスするメソッドが提供されます。 カスタム プロパティはアイテムで暗号化されないため、セキュリティで保護されたストレージとして使用しないでください。
カスタム プロパティは asyncResult.value
プロパティの CustomProperties
オブジェクトとして指定されます。 このオブジェクトを使用して、メール アイテムのカスタム プロパティを取得、設定、保存、および削除できます。
loadCustomPropertiesAsync(callback: (asyncResult: Office.AsyncResult<CustomProperties>) => void, userContext?: any): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<Office.CustomProperties>) => void
メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。
- userContext
-
any
省略可能。 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。 このオブジェクトには、コールバック関数の asyncResult.asyncContext
プロパティによってアクセスすることができます。
戻り値
void
注釈
カスタム プロパティの詳細については、「 Outlook アドインのアドイン メタデータを取得して設定する」を参照してください。
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/15-item-custom-properties/load-set-get-save.yaml
Office.context.mailbox.item.loadCustomPropertiesAsync((result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error(`loadCustomPropertiesAsync failed with message ${result.error.message}`);
return;
}
customProps = result.value;
console.log("Loaded the CustomProperties object.");
});
removeAttachmentAsync(attachmentId, options, callback)
メッセージまたは予定から添付ファイルを削除します。
removeAttachmentAsync
メソッドは、指定した識別子の添付ファイルをアイテムから削除します。 ベスト プラクティスとして、同じメール アプリが同じセッションで添付ファイルを追加した場合にのみ、その添付ファイルの識別子を使用して添付ファイルを削除することをお勧めします。 Outlook on the web、モバイル デバイス、および新しい Outlook on Windows では添付ファイル識別子は同じセッション内でのみ有効です。 ユーザーがアプリを閉じると、またはユーザーがインライン フォームの作成を開始すると、その後フォームがポップアップ表示され、別のウィンドウで続行されます。
removeAttachmentAsync(attachmentId: string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- attachmentId
-
string
削除する添付ファイルの識別子。
attachmentId
の最大文字列長は、Outlook on the web と Windows (新規およびクラシック) では 200 文字です。
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 添付ファイルの削除に失敗すると、asyncResult.error
プロパティにはエラー コードとエラーの理由が含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: 予定オーガナイザー
重要*: removeAttachmentAsync
メソッドは、メール アイテムからインライン添付ファイルを削除しません。 インライン添付ファイルを削除するには、まずアイテムの本文を取得し、その内容から添付ファイルの参照を削除します。
Office.Body API を使用して、アイテムの本文を取得および設定します。
エラー:
-
InvalidAttachmentId
: 添付ファイル識別子が存在しません。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/40-attachments/attachments-compose.yaml
Office.context.mailbox.item.removeAttachmentAsync(
$("#attachmentId")
.val()
.toString(),
(result) => {
if (result.status === Office.AsyncResultStatus.Failed) {
console.error(result.error.message);
return;
}
console.log(`Attachment removed successfully.`);
}
);
removeAttachmentAsync(attachmentId, callback)
メッセージまたは予定から添付ファイルを削除します。
removeAttachmentAsync
メソッドは、指定した識別子の添付ファイルをアイテムから削除します。 ベスト プラクティスとして、同じメール アプリが同じセッションで添付ファイルを追加した場合にのみ、その添付ファイルの識別子を使用して添付ファイルを削除することをお勧めします。 Outlook on the web、モバイル デバイス、および新しい Outlook on Windows では添付ファイル識別子は同じセッション内でのみ有効です。 ユーザーがアプリを閉じると、またはユーザーがインライン フォームの作成を開始すると、その後フォームがポップアップ表示され、別のウィンドウで続行されます。
removeAttachmentAsync(attachmentId: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- attachmentId
-
string
削除する添付ファイルの識別子。
attachmentId
の最大文字列長は、Outlook on the web と Windows (新規およびクラシック) では 200 文字です。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。 添付ファイルの削除に失敗すると、asyncResult.error
プロパティにはエラー コードとエラーの理由が含まれます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: 予定オーガナイザー
重要*: removeAttachmentAsync
メソッドは、メール アイテムからインライン添付ファイルを削除しません。 インライン添付ファイルを削除するには、まずアイテムの本文を取得し、その内容から添付ファイルの参照を削除します。
Office.Body API を使用して、アイテムの本文を取得および設定します。
エラー:
-
InvalidAttachmentId
: 添付ファイル識別子が存在しません。
removeHandlerAsync(eventType, options, callback)
サポートされているイベントの種類のイベント ハンドラーを削除します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。
サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。
removeHandlerAsync(eventType: Office.EventType | string, options: Office.AsyncContextOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- eventType
-
Office.EventType | string
ハンドラーを取り消すイベント。
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
removeHandlerAsync(eventType, callback)
サポートされているイベントの種類のイベント ハンドラーを削除します。 注: イベントは、作業ウィンドウの実装でのみ使用できます。
サポートされるイベントについては、「Item オブジェクト モデル のイベント」セクションを参照してください。
removeHandlerAsync(eventType: Office.EventType | string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- eventType
-
Office.EventType | string
ハンドラーを取り消すイベント。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 読み取り項目
適用される Outlook モード: 予定オーガナイザー
saveAsync(options, callback)
項目を非同期的に保存します。
予定には下書き状態がないため、作成モードで予定に対して saveAsync
が呼び出されると、アイテムはユーザーの予定表に通常の予定として保存されます。 以前に保存されていない新しい予定の場合、招待は送信されません。 既存の予定の場合、追加または削除された出席者に更新が送信されます。
saveAsync(options: Office.AsyncContextOptions, callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- options
- Office.AsyncContextOptions
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。 予定 ID は、 asyncResult.value
プロパティで返されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: 予定オーガナイザー
重要:
Outlook on the web、 新しい Outlook on Windows、またはオンライン モード (キャッシュなしモード) の従来の Outlook では、アイテムがサーバーに保存されます。 キャッシュ モードの Outlook では、ローカル キャッシュにアイテムが保存されます。
HTML 形式のコンテンツを操作する場合は、Outlook クライアントがコンテンツを変更する可能性があることに注意することが重要です。 つまり、
Body.getAsync
、Body.setAsync
、saveAsync
などのメソッドに対する後続の呼び出しは、同じコンテンツにならない可能性があります。EWS または REST API で使用するアイテム ID を取得するために、アドインが作成モードでアイテムに
saveAsync
を呼び出す場合は、Outlook がキャッシュ モードの場合、アイテムが実際にサーバーに同期されるまでに時間がかかる場合があることに注意してください。 アイテムが同期されるまで、アイテム ID を使用するとエラーが返されます。Outlook on Mac では、会議の保存をサポートするのはビルド 16.35.308 以降のみです。 それ以外の場合、
saveAsync
メソッドは、会議から新規作成モードで呼び出されると失敗します。 回避策については、「 Office JS API を使用して Outlook for Mac で会議を下書きとして保存できない」を参照してください。
エラー:
-
InvalidAttachmentId
: 添付ファイル識別子が存在しません。
例
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/25-item-save-and-close/save.yaml
Office.context.mailbox.item.saveAsync(function (result) {
if (result.status === Office.AsyncResultStatus.Succeeded) {
console.log(`saveAsync succeeded, itemId is ${result.value}`);
}
else {
console.error(`saveAsync failed with message ${result.error.message}`);
}
});
saveAsync(callback)
項目を非同期的に保存します。
予定には下書き状態がないため、作成モードで予定に対して saveAsync
が呼び出されると、アイテムはユーザーの予定表に通常の予定として保存されます。 以前に保存されていない新しい予定の場合、招待は送信されません。 既存の予定の場合、追加または削除された出席者に更新が送信されます。
saveAsync(callback: (asyncResult: Office.AsyncResult<string>) => void): void;
パラメーター
- callback
-
(asyncResult: Office.AsyncResult<string>) => void
メソッドが完了すると、callback
パラメーターで渡された関数が、Office.AsyncResult
オブジェクトである 1 つのパラメーターasyncResult
で呼び出されます。 予定 ID は、 asyncResult.value
プロパティで返されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: 予定オーガナイザー
重要:
Outlook on the web、 新しい Outlook on Windows、またはオンライン モード (キャッシュなしモード) の従来の Outlook では、アイテムがサーバーに保存されます。 キャッシュ モードの Outlook では、ローカル キャッシュにアイテムが保存されます。
HTML 形式のコンテンツを操作する場合は、Outlook クライアントがコンテンツを変更する可能性があることに注意することが重要です。 つまり、
Body.getAsync
、Body.setAsync
、saveAsync
などのメソッドに対する後続の呼び出しは、同じコンテンツにならない可能性があります。EWS または REST API で使用するアイテム ID を取得するために、アドインが作成モードでアイテムに
saveAsync
を呼び出す場合は、Outlook がキャッシュ モードの場合、アイテムが実際にサーバーに同期されるまでに時間がかかる場合があることに注意してください。 アイテムが同期されるまで、アイテム ID を使用するとエラーが返されます。Outlook on Mac では、会議の保存をサポートするのはビルド 16.35.308 以降のみです。 それ以外の場合、
saveAsync
メソッドは、会議から新規作成モードで呼び出されると失敗します。 回避策については、「 Office JS API を使用して Outlook for Mac で会議を下書きとして保存できない」を参照してください。
エラー:
-
InvalidAttachmentId
: 添付ファイル識別子が存在しません。
例
Office.context.mailbox.item.saveAsync(
function callback(result) {
// Process the result.
});
// The following is an example of the
// `result` parameter passed to the
// callback function. The `value`
// property contains the item ID of
// the item.
{
"value": "AAMkADI5...AAA=",
"status": "succeeded"
}
setSelectedDataAsync(data, options, callback)
メッセージの本文または件名に非同期的にデータを挿入します。
setSelectedDataAsync
メソッドは、指定した文字列を項目の件名または本文のカーソル位置に挿入するか、エディターでテキストが選択されている場合は、選択したテキストを置き換えます。 カーソルが本文または件名フィールドにない場合は、エラーが返されます。 挿入後、カーソルは挿入されたコンテンツの末尾に配置されます。
setSelectedDataAsync(data: string, options: Office.AsyncContextOptions & CoercionTypeOptions, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- data
-
string
挿入されるデータ。 データの最大の長さは 1,000,000 文字です。 1,000,000 文字を超えるデータが渡されると、ArgumentOutOfRange
例外がスローされます。
次のプロパティの 1 つ以上を含むオブジェクト リテラル:- asyncContext
: 開発者は、コールバック関数でアクセスする任意のオブジェクトを指定できます。
coercionType
: テキストの場合、現在のスタイルは Outlook on the web、Windows (新規 およびクラシック)、Mac で適用されます。 フィールドが HTML エディターの場合、データが HTML の場合でもテキスト データのみが挿入されます。 データが HTML で、フィールドが HTML をサポートしている場合 (件名はサポートされていません)、現在のスタイルは Outlook on the web と新しい Outlook on Windows で適用されます。 既定のスタイルは、Outlook on Windows (クラシック) と Mac で適用されます。 フィールドがテキスト フィールドの場合、InvalidDataFormat
エラーが返されます。
coercionType
が設定されていない場合、結果はフィールドによって変わります。フィールドが HTML の場合は HTML が使用されます。フィールドがテキストの場合はプレーン テキストが使用されます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: 予定オーガナイザー
エラー:
-
InvalidAttachmentId
: 添付ファイル識別子が存在しません。
例
Office.context.mailbox.item.setSelectedDataAsync("<b>Hello World!</b>", { coercionType : "html" });
Office.context.mailbox.item.setSelectedDataAsync("Hello World!");
// Link to full sample: https://raw.githubusercontent.com/OfficeDev/office-js-snippets/prod/samples/outlook/90-other-item-apis/set-selected-data.yaml
Office.context.mailbox.item.setSelectedDataAsync("Replaced", function(asyncResult) {
if (asyncResult.status === Office.AsyncResultStatus.Succeeded) {
console.log("Selected text has been updated successfully.");
} else {
console.error(asyncResult.error);
}
});
setSelectedDataAsync(data, callback)
メッセージの本文または件名に非同期的にデータを挿入します。
setSelectedDataAsync
メソッドは、指定した文字列を項目の件名または本文のカーソル位置に挿入するか、エディターでテキストが選択されている場合は、選択したテキストを置き換えます。 カーソルが本文または件名フィールドにない場合は、エラーが返されます。 挿入後、カーソルは挿入されたコンテンツの末尾に配置されます。
setSelectedDataAsync(data: string, callback?: (asyncResult: Office.AsyncResult<void>) => void): void;
パラメーター
- data
-
string
挿入されるデータ。 データの最大の長さは 1,000,000 文字です。 1,000,000 文字を超えるデータが渡されると、ArgumentOutOfRange
例外がスローされます。
- callback
-
(asyncResult: Office.AsyncResult<void>) => void
省略可能。 メソッドが完了すると、 callback
パラメーターで渡された関数が、 Office.AsyncResult
型の 1 つのパラメーターで呼び出されます。
戻り値
void
注釈
最小アクセス許可レベル: 項目の読み取り/書き込み
適用される Outlook モード: 予定オーガナイザー
エラー:
-
InvalidAttachmentId
: 添付ファイル識別子が存在しません。
Office Add-ins