Salesforce AppExchange で近日公開

トラブルシューティング

画面に表示されている内容を探して、解決策の手順に従ってください。画像はすべて実際のコンポーネントです。

保存ボタンが表示されない

原因: 日付を保存する先の親レコードがありません。アプリケーションページ、ホームページ、Experience ページには、そのページ自体のレコードがありません。

解決策

  1. Static Parent Record Id に、日付を紐付けるレコードの Id を設定します。
  2. オブジェクト、日付項目、リレーション項目が入力されているか確認するか、Config Name(設定名) を設定します。

フローでは保存ボタンが表示されないのが正常です。フローの [次へ] ボタンが日付を引き渡します。

親レコードが設定されていないアプリケーションページ上の Salesforce 日付ピッカー: すべてクリア、元に戻す、キャンセルのボタンはあるが、保存ボタンがない
すべてクリア、元に戻す、キャンセルはあるのに、保存がない。

黄色のバナー: 「この設定には適切でないコンポーネントです」

黄色の「この設定には適切でないコンポーネントです」バナーを表示した Salesforce カレンダー: Booking 用の設定を Date コンポーネントに配置した状態
Booking 用の設定を Date コンポーネントで読み込んだ状態。カレンダーは非表示のままです。

原因: Config Name が、別のコンポーネント用に保存された設定を指しています。

解決策

  1. Config Name を、このコンポーネント用に作成した設定に変更する、または
  2. その設定に合ったコンポーネントに入れ替える、または
  3. セットアップウィザードで設定を開き、コンポーネント種別を変更します。

黄色のバナー: 「設定が一致しません」

黄色の「設定が一致しません」バナーを表示した Salesforce カレンダー: 設定は Event レコードを想定しているが、ページは Resource レコードのもの
設定は日付を Event に保存しますが、ページのレコードは Resource です。

原因: ページのレコード、または Static Parent Record Id のオブジェクトが、設定のリレーション項目の参照先オブジェクトと異なります。

解決策

  1. バナーに表示されたオブジェクトのレコードページにコンポーネントを配置する、または
  2. Static Parent Record Id にそのオブジェクトのレコードを設定する、または
  3. このページのオブジェクト用に作成した設定を使います。

赤いバナー: 「このコンポーネントはデータを読み込めませんでした」

赤い「このコンポーネントはデータを読み込めませんでした」バナーと、その下に具体的な原因 (オブジェクトに存在しない日付項目名) を表示した Salesforce カレンダー
灰色のボックスに具体的な問題が表示されます。この例では、存在しない日付項目です。

原因: 設定の項目名またはオブジェクト名が間違っているか、ユーザーがオブジェクト、その項目、または MultiDatePick の Apex クラスを参照できません。

解決策

  1. 灰色のボックスを確認します。失敗した項目、オブジェクト、またはアクセス権が表示されています。
  2. 名前の誤り: [設定] の [オブジェクトマネージャー] から正確な API 参照名をコピーします。
  3. アクセス権がない: 権限セット MultiDatePick - User を割り当て、自社のオブジェクトへのアクセス権も付与します。公開 Experience サイトでは、ゲストユーザーに MultiDatePick - Guest を割り当て、自社のオブジェクトへの参照権限を付与します。

Booking に「設定が必要です」と表示される

原因: Booking には、リソースオブジェクト、予約オブジェクト、予約日項目、予約リソース項目が必要です。不足しているものがパネルに一覧表示されます。

解決策

  1. Config Name にセットアップウィザードで作成した Booking 用の設定を指定する、または
  2. パネルに表示されたプロパティをすべて入力します。
「設定が必要です」パネルを表示した Salesforce 予約カレンダー: リソースオブジェクト、予約オブジェクト、予約日項目、予約リソース項目の 4 つの未設定項目を一覧表示
1 行が、まだ設定されていないプロパティ 1 つです。

Booking に「利用可能なリソースがありません」と表示される

原因: リソースの一覧が空で返されました。多くの場合、どのレコードにも一致しないフィルター、誤ったリソースオブジェクト、またはリソースレコードがまだないことが原因です。

解決策

  1. Resource Filter Field と Resource Filter Value(リソースフィルター値) を実際のレコードと照らし合わせて確認します。
  2. Resource Object API Name と Resource Name Field(リソース名項目) を確認します。
  3. リソースレコードを 1 件以上作成します。
リソースのフィルターに一致する会議室がなく、「利用可能なリソースがありません」と表示された Salesforce 会議室予約カレンダー
会議室が 1 つもないフロアの会議室をフィルターで指定しています。

黄色のバナー: 「定員には開始時刻と終了時刻の両方が必要です」

予約の開始時刻と終了時刻の項目が未設定のため、黄色の「定員には開始時刻と終了時刻の両方が必要です」バナーを表示した Salesforce 予約コンポーネント
カレンダーは非表示のままなので、定員の上限を超える予約は入りません。

原因: Capacity Field(定員項目) は設定されていますが、予約の開始時刻または終了時刻の項目が空のため、定員を適用できません。

解決策

  1. Booking Start Time Field と Booking End Time Field の両方を設定する、または
  2. Capacity Field を空にします。

日付は保存されるのに、次に開くと表示されない

原因: Load Existing Dates がオフになっています。レコードは保存されていますが、カレンダーは毎回空の状態で開きます。

解決策

  1. Load Existing Dates をオンにします。
  2. ページを再読み込みします。保存済みの日付が表示され、状況項目が設定されていれば状況の色で表示されます。
Load Existing Dates をオンにした Salesforce カレンダー: 保存済みの会議室予約 1 か月分を状況の色で表示
Load Existing Dates をオンにすると、カレンダーを開いた時点で保存済みの予約が表示されます。

これ以上日付を選べない

原因: コンポーネントに日付数の上限があります。Max Dates Allowed (Date と Date Time) または Max Dates Per Booking (Booking) です。

解決策

  1. 日付の選択を 1 つ解除してから別の日付を選ぶ、または
  2. 上限を引き上げるか、0 に設定して上限をなくします。
3 つの日付を選択し、「最大選択数 3 件に達しました。別の日付を選択するには日付の選択を解除してください。」と表示された Salesforce 日付ピッカー
上限 3 件で 3 つの日付を選択した状態。

一部の日や時間がグレー表示になっている

原因: 予約ルールによって受付が閉じられています。Minimum Notice (Hours) は開始が近すぎる枠を、Book Up To (Days Ahead) は予約可能期間より先の日を閉じます。それ以外は、Earliest / Latest Selectable Date、ブロック日付、各リソースの営業時間によるものです。

解決策

  1. コンポーネントまたは設定でこれらを確認します。0 にすると事前通知と予約可能期間の制限がなくなります。
  2. 閉じている時間枠をクリックすると、閉じている理由が表示されます。

予約の直後の時間枠が予約済みと表示される

原因: Buffer Between Bookings (Minutes) により、同じリソースの予約のあとに、片付けや準備のための時間が確保されています。

解決策

  1. バッファーを短くするか、0 にして予約を連続で入れられるようにします。
  2. Conflict Behavior(競合の動作) の設定は引き続き有効です。Skip の場合、バッファーにかかる枠はスキップされ、ほかの競合と同じように報告されます。

「次の選択は予約可能期間外になりました」

原因: ページを開いたままにしている間に、選択した日や時刻が Minimum Notice の期間内に入りました。保存時にルールを再チェックするため、古いページから直前の予約が入ることはありません。

解決策

  1. メッセージに表示された日付を外すか、もっと遅い時刻を選びます。
  2. もう一度保存します。

保存後に「カレンダーに追加」ボタンが表示されない

原因: Show Add to Calendar After Saving(保存後に「カレンダーに追加」を表示) がオフになっています。初期設定ではオフです。

解決策

  1. コンポーネントのプロパティまたは設定でオンにしてから、レコードを保存します。トーストの下のバーにボタンが表示されます。
  2. 代わりに「Google カレンダーに追加」が表示される場合は、ブラウザーがファイルの作成をブロックしています。そのため、予定が 1 件のときは Google カレンダーへのリンクが表示されます。

フロー画面でウィザードの設定が反映されない

原因: Config Name が空か、つづりが間違っています。名前が間違っていてもエラーは表示されず、コンポーネントは何も言わずに既定の設定で動作します。

解決策

  1. Config Name に、セットアップウィザードで保存したとおりの設定名を正確に入力します。
  2. オン/オフの入力はそのままにします。チェックボックスはすべて設定から読み込まれます。

サイトメンバーが自分で作成したレコードを参照できない

原因: Experience Cloud の共有設定です。サイトユーザーには、共有によってアクセス権が与えられたレコードしか表示されません。

解決策

  1. 日付の保存先オブジェクトに共有ルール (メンバーの場合は共有セット) を追加する、または
  2. そのオブジェクトのデフォルトの外部アクセス権を広げます。

アクセスエラー

カレンダーは各ユーザー自身の権限で動作します。まず適切な権限セットを割り当て、そのうえで自社のオブジェクトと項目へのアクセス権を付与します。

権限セット割り当て先
MultiDatePick - Userカレンダーを使うすべてのユーザー
MultiDatePick - Setup設定を作成する管理者。セットアップウィザードも含みます。
MultiDatePick - All Access設定を作成し、利用もする管理者
MultiDatePick - Guest公開 Experience Cloud サイトのゲストユーザー

エラーメッセージには、何が問題なのか (項目、オブジェクト、入力規則) が表示されます。メッセージの最後に 詳細: がある場合、その部分は Salesforce 自身による説明です。管理者または当社に送っていただければ、どこを確認すべきかが正確にわかります。

「このカレンダーを使用するには MultiDatePick ライセンスが必要です」

原因: MultiDatePick はユーザー単位のライセンスで、このユーザーにはまだ割り当てられていません。カレンダーの代わりにこのお知らせが表示され、保存も拒否されます。サイトのゲストにライセンスは不要です。

解決策

  1. [設定] で [インストール済みパッケージ] を開き、MultiDatePick の横にある [ライセンスの管理] をクリックします。
  2. [ユーザーを追加] をクリックしてユーザーを追加します。次にページを読み込んだときからカレンダーが表示されます。

レコードが開かない、または「権限が不十分です」と表示される

原因: ユーザーが親オブジェクトを参照できないか、共有設定によってそのレコードが見えなくなっています。

解決策

  1. MultiDatePick - User を割り当てます。
  2. 権限セットで親オブジェクトの参照権限を付与します。
  3. 共有によってユーザーがそのレコードにアクセスできるか確認します。

「オブジェクト『Y』の項目『X』への読み取りアクセス権がありません」

原因: カレンダーが表示する項目 (状況、ホバー、日付、時刻の項目) に対して、ユーザーに項目レベルセキュリティの参照権限がありません。

解決策

  1. メッセージに表示された項目の参照権限を付与します。
  2. 管理者にも付与してください。新しいカスタム項目は、権限セットで付与されるまで、システム管理者を含むすべてのユーザーに非表示です。

項目名とともに「Time group failed to save」(時間グループを保存できませんでした) または「予約の作成に失敗しました」と表示される

原因: ユーザーは項目を参照できますが、保存時に書き込む項目のいずれかを編集できません。あとから追加した状況、2 つ目の選択リスト、時刻の項目でよく起こります。

解決策

  1. カレンダーが書き込むすべての項目 (日付、開始時刻と終了時刻、状況、2 つ目の選択リスト、名前項目、親への参照項目) に編集権限を付与します。
  2. レコードの保存先オブジェクトに作成権限を付与します。

「この操作を行う権限がありません」と「insufficient access rights on cross-reference id」が表示される

原因: 新しいレコードが、ユーザーが参照できないレコード (親またはリソース) を指しています。

解決策

  1. 親オブジェクトとリソースオブジェクトに少なくとも参照権限を付与し、それらのレコードへの共有を設定します。
  2. 公開サイトでは、ゲストの予約はカスタムオブジェクトに保存してください。Salesforce はゲストによる取引先責任者と取引先へのアクセスを制限しています。

ゲストに空のカレンダーが表示される

原因: ゲスト用の共有ルールがまだ有効になっていないか、ゲストプロファイルの手順が抜けています。

解決策

  1. オブジェクトのデフォルトの外部アクセス権を [非公開] に設定し、[設定] の [共有設定] で [再計算] をクリックします。
  2. ゲストユーザーに権限セット MultiDatePick - Guest を割り当て、自社の各オブジェクトと項目の参照権限を付与します。
  3. サイトを有効化します。公開するだけでは不十分です。

ゲスト向けの 5 ステップのチェックリストはユーザーガイドに掲載しています。

まだ解決しない場合は

表示されている画面のスクリーンショットをお送りください。解決までサポートします。

サポートにメール ユーザーガイドを読む ライブデモを試す

MultiDatePick をまだお使いでない方へ。Salesforce AppExchange で近日公開予定です。

公開時に通知を受け取る