Event
サポートされているコール
create()、delete()、describeLayout()、describeSObjects()、getDeleted()、getUpdated()、query()、retrieve()、search()、undelete()、update()、upsert()
項目
| 項目 | 詳細 |
|---|---|
| AcceptedEventInviteeIds | |
| AccountId |
|
| ActivityDate | |
| ActivityDateTime |
|
| ClientGuid |
|
| CurrencyIsoCode | |
| DeclinedEventInviteeIds | |
| Description |
|
| Division |
|
| DurationInMinutes |
|
| EndDateTime |
|
| EventSubtype | |
| EventWhoIds | |
| GroupEventType |
|
| IsAllDayEvent |
|
| IsArchived |
|
| IsChild |
|
| IsClientManaged |
|
| IsGroupEvent |
|
| IsPrivate |
|
| IsRecurrence |
|
| IsRecurrence2 |
|
| IsRecurrence2Exception |
|
| IsRecurrence2Exclusion |
|
| IsReminderSet | |
| IsVisibleInSelfService |
|
| Location |
|
| OwnerId |
|
| Recurrence2PatternStartDate |
|
| Recurrence2PatternText |
|
| Recurrence2PatternTimeZone |
|
| Recurrence2PatternVersion |
|
| RecurrenceActivityId |
|
| RecurrenceDayOfMonth |
|
| RecurrenceDayOfWeekMask |
|
| RecurrenceEndDateOnly |
|
| RecurrenceInstance |
|
| RecurrenceInterval |
|
| RecurrenceMonthOfYear |
|
| RecurrenceStartDateTime |
|
| RecurrenceTimeZoneSidKey |
|
| RecurrenceType |
|
| ReminderDateTime | |
| ShowAs |
|
| StartDateTime |
|
| Subject |
|
| Type |
|
| UndecidedEventInviteeIds | |
| WhatCount |
|
| WhatId |
|
| WhoCount |
|
| WhoId |
|
使用方法
Event を使用して、カレンダーの予定を管理します。
行動のクエリと絞り込み
行動に関するクエリは、大きすぎるデータを使用する場合、タイムアウトする前に拒否されます。そのような場合、例外コード OPERATION_TOO_LARGE が返されます。OPERATION_TOO_LARGE を受け取った場合、より少量のデータをスキャンするか、クエリを再構成します。
- ActivityDate 項目が協定世界時 (UTC) タイムゾーンの 2003 年 2 月 14 日に等しい。
- ActivityDateTime 項目がローカルタイムゾーンの 2003 年 2 月 14 日の午前 0 時以降、かつユーザのローカルタイムゾーンの 2003 年 2 月 15 日午前 0 時以前の値。
また、バージョン 13.0 以降では、StartDateTime で絞り込み、特定の期日の行動を検索することができます。たとえば、期日が 2003 年 2 月 14 日であるすべての行動を検索するには、ローカルタイムゾーンの 2003 年 2 月 14 日の午前 0 時以降、かつユーザのローカルタイムゾーンの 2003 年 2 月 15 日午前 0 時以前の StartDateTime で絞り込みます。
EventRelation オブジェクトの EventId 項目は必ずマスターレコードを指し示します。グループ行動の招待者はEventRelation オブジェクトを照会して、マスターレコードを参照できます。
- 複数日の行動はバージョン 13.0 以降で使用できます。また、以前のバージョンの SOQL クエリは、複数日の行動を返しません。
- 複数日の行動を有効にするには、ユーザインターフェースの [設定] から [クイック検索] ボックスに「活動設定」と入力し、[活動設定] を選択します。
- 複数日の行動機能が有効な場合、API バージョン 13.0 以降では、DurationInMinutes 項目の 1440 を超える値をサポートします。API バージョン 12.0 以前では、DurationInMinutes が 1440 を超える行動オブジェクトにはアクセスできません。
- 複数日の行動は 14 日を超えることができません。
Lightning Experience では、複数回発生する行動を一連の行動と呼び、IsRecurrence2 項目を true に設定して示します。Salesforce Classic では、複数回発生する行動を定期的な行動と呼び、IsRecurrence 項目を true に設定して示します。どちらの項目も、同じ行動に対して true に設定できません。
- Lightning Experience の一連の機能は、API バージョン 44.0 以降で使用できます。Salesforce Classic の定期的な行動は、バージョン 7.0 以降で使用できます。
- 行動を作成した後、IsRecurrence2 または IsRecurrence の値を true から false (またはその逆) に変更することはできません。
- IsRecurrence が true に設定されている行動で IsRecurrence2 に関連付けられた項目は設定できません (その逆もできません)。
- Lightning Experience の一連の行動で IsRecurrence2 が true の場合、一連の行動を削除すると、将来の行動のみが削除されます。Salesforce Classic の定期的な行動で IsRecurrence が true の場合、API で定期的な行動を削除すると、過去と将来の一連の行動がすべて削除されます。ただし、ユーザインターフェースで定期的な行動を削除すると、将来の行動だけが削除されます。
- Lightning Experience の一連の行動は作成時に 24 時間以下にする必要があります。Salesforce Classic の定期的な行動を作成する場合、行動の時間は 24 時間以下である必要があります (DurationInMinutes の値または RecurrenceStartDateTime と EndDateTime の間が 24 時間を超えてはいけません)。Salesforce Classic の定期的な行動を作成すると、複数日の行動が有効な場合は、個々の行動時間を 24 時間以上に延長できます。詳細は、「複数日の行動」を参照してください。
- Lightning Experience の一連の行動の場合、Recurrence2PatternText および Recurrence2PatternVersion に値を入力する必要があります。Salesforce Classic の定期的な行動の場合、RecurrenceStartDateTime、RecurrenceEndDateOnly, RecurrenceType, および特定の繰り返し種別に関連付けられたプロパティ (「Recurrence Field Usage for Salesforce Classic Recurring Events」(Salesforce Classic の定期的な行動の繰り返し項目の使用) 表を参照) に値を入力する必要があります。
- Salesforce Classic の定期的な行動を更新する際、定期的な行動オブジェクトの EventRelation と、個々の行動オブジェクトの EventRelation を同時に更新することはできません。
- Lightning Experience の一連の行動 (IsRecurrence2 が true) には ID がないため、一連の行動内の他の行動を検索することができません。Salesforce Classic の定期的な行動では、RecurrenceActivityId を使用して他の行動を検索できます。
- Lightning Experience の一連の行動と Salesforce Classic の定期的な行動のどちらも、行動が毎日、毎月、または毎年繰り返す場合、行動を 1 日、1 か月、または 1 年に 1 回のみスケジュールできます。毎週オプションを使用すると、1 週間の複数日に行動をスケジュールできます。
Lightning Experience の一連の行動の制限および Salesforce Classic の定期的な行動の制限も適用されます。
| 繰り返しパターン | rrule の例 |
|---|---|
| 5 日間毎日 | RRULE:FREQ=DAILY;INTERVAL=1;COUNT=5 |
| 毎週月曜日、火曜日、水曜日、木曜日、および金曜日 | RRULE:FREQ=WEEKLY;INTERVAL=1;BYDAY=MO,TU,WE,TH,FR |
| 隔週水曜日と金曜日を 10 回 | RRULE:FREQ=WEEKLY;INTERVAL=2;BYDAY=MO,FR;WKST=SU;COUNT=10 |
| 2020 年 1 月まで毎月 1 日 | RRULE:FREQ=MONTHLY;INTERVAL=1;BYMONTHDAY=1;UNTIL=20200101T190000Z |
| 毎年 7 月 1 日を 3 回 (この例では、日付は StartDateTime を使用して指定) | RRULE:FREQ=YEARLY;INTERVAL=1;BYMONTH=1;COUNT=3 |
次の表では、Salesforce Classic の定期的な行動の繰り返し項目の使用について説明します。それぞれの繰り返しのタイプでは、すべてのプロパティが指定されている必要があります。未使用のプロパティはすべて null に設定する必要があります。
| RecurrenceType の値 | プロパティ | パターンの例 |
|---|---|---|
| RecursDaily | RecurrenceInterval | 1 日おき |
| RecursEveryWeekday | RecurrenceDayOfWeekMask | 土曜、日曜以外のすべての平日 |
| RecursMonthly | RecurrenceDayOfMonth RecurrenceInterval | 1 か月おき、月の 3 日目 |
| RecursMonthlyNth | RecurrenceInterval RecurrenceInstance RecurrenceDayOfWeekMask | 1 か月おき、月の最終金曜日 |
| RecursWeekly | RecurrenceInterval RecurrenceDayOfWeekMask | 2 週間おきの水曜日と金曜日 |
| RecursYearly | RecurrenceDayOfMonth RecurrenceMonthOfYear | 毎年 3 月の 26 日 |
| RecursYearlyNth | RecurrenceDayOfWeekMask RecurrenceInstanceRecurrenceMonthOfYear | 毎年 10 月の第 1 土曜日 |
被招集者と招待者
GroupEventType 項目は、ミーティング参加者が行動に含まれていることを示します。Lightning Experience では、この表示ラベルは「被招集者」、Salesforce Classic では、この表示ラベルは「招待者」です。
Lightning Sync による行動の同期
API による EventRelation への変更では、Microsoft® Exchange または Google への同期はトリガされません。ただし、EventRelation は、行動の他の同期項目が変更された場合は同期します。
- JunctionIdList
-
JuncionIdList を使用して行動を作成するため、関連取引先責任者から ID が取得され、行動と EventRelation レコードの両方が 1 つの API コールで作成されます。すべての処理が 1 回の API コールで行われるため、EventRelation に失敗した場合は、行動がロールバックされます。
1public void createEventNew(Contact[] contacts) { 2 String[] contactIds = new String[contacts.size()]; 3 for (int i = 0; i < contacts.size(); i++) { 4 contactIds[i] = contacts[i].getID(); 5 } 6 Event event = new Event(); 7 event.setSubject("New Event"); 8 event.setEventWhoIds(contactIds); 9 SaveResult[] results = null; 10 try { 11 results = connection.create(new Event[] { 12 task 13 }); 14 } catch (ConnectionException ce) { 15 ce.printStackTrace(); 16 } 17}