Presto disponibile su Salesforce AppExchange

Evitare le doppie prenotazioni in Salesforce

Le regole di convalida non vedono gli altri record. È per questo solo limite che quasi tutti i sistemi di prenotazione in Salesforce scoprono i conflitti con un giorno di ritardo.

Pubblicato il 21 luglio 2026 · Aggiornato il 21 ottobre 2026 · MultiDatePick

La doppia prenotazione è un problema di tempismo. Quando qualcosa in Salesforce standard riesce a dirti che la sala è occupata, l'utente l'ha già scelta, ha compilato il resto del modulo ed è passato oltre.

Perché gli strumenti ovvi non funzionano

StrumentoCosa può farePerché non basta
Regola di convalidaControllare i campi del record che si sta salvandoNon può interrogare nessun altro record
Regola duplicatiTrovare corrispondenze tra campi uguali9:00-10:00 e 9:30-10:30 si sovrappongono ma non corrispondono
Flusso attivato da recordInterrogare e bloccare al salvataggioScatta dopo che l'utente ha confermato; non regge le operazioni in blocco se scritto in modo ingenuo
Codice personalizzatoControllo totale, logica di sovrapposizione correttaRifiuta comunque al salvataggio, e ora il codice è tuo da mantenere

Hanno tutti la stessa forma: rifiutano l'utente dopo la scelta. Anche una soluzione personalizzata corretta produce "quella fascia è occupata, riprova", un'esperienza peggiore che non offrire mai la fascia.

Sovrapposizione non è uguaglianza

Le regole duplicati sono una tentazione, quindi ecco la regola. Due prenotazioni sono in conflitto quando una inizia prima che l'altra finisca e finisce dopo che l'altra è iniziata. Una prenotazione dalle 9:00 alle 10:00 e una dalle 9:30 alle 10:30 si sovrappongono per mezz'ora senza avere nessun valore di campo identico. Qualsiasi approccio basato sulla corrispondenza dei valori la mancherà ogni volta.

Conflitto e capacità sono problemi diversi

Spesso vengono trattati come una cosa sola.

Un conflitto

Due richieste in competizione per una risorsa che ne regge una. Una sala, chi conduce un colloquio, un veicolo.

Capacità

Una risorsa che ne regge diverse. La domanda è quanti posti restano. Un corso con venti posti, un turno che richiede quattro infermieri, un'area con sessanta postazioni.

Trattare una risorsa a capacità come una risorsa a conflitto significa non riuscire mai a prenotare la seconda persona. Trattare una risorsa a conflitto come capacità uno tecnicamente funziona, ma perde i conteggi su cui probabilmente vuoi fare report.

Demo animata della heatmap di utilizzo di MultiDatePick in Salesforce: consulenti sul lato con il prenotato sulla capacità di ogni giorno, passaggio del mouse su un giorno pieno, poi clic per aprire la settimana di quel consulente
La capacità di un intero team: prenotati su capacità per ogni giorno, con i giorni in overbooking cerchiati in arancione.

Tre comportamenti sensati

"Bloccalo" non è sempre la risposta giusta. Quando qualcuno seleziona dodici date e due sono in conflitto, rifiutare l'intero invio è ostile. I sistemi utili offrono una scelta:

Block

Rifiuta il salvataggio e segnala il conflitto. Giusto quando ogni data conta.

Skip

Salva le dieci libere e segnala le due che non lo erano. Di solito l'impostazione più umana per le selezioni in blocco.

Allow

Consente la sovrapposizione di proposito. Alcune aziende fanno overbooking volutamente.

Calendario prenotazioni Salesforce con badge di capacità e rilevamento dei conflitti che impedisce le doppie prenotazioni su ogni fascia
Conteggi della capacità in tempo reale su ogni fascia, così il conflitto si vede prima che qualcuno faccia clic.

La vera soluzione arriva prima

Tutti i meccanismi visti sopra agiscono al momento del salvataggio. La soluzione è spostare il controllo al momento della scelta: leggere ciò che esiste già quando il calendario si carica, mostrarlo sulla griglia e non offrire mai una fascia già presa. I controlli al salvataggio restano attivi come rete di sicurezza per la vera concorrenza, quando due persone guardano la stessa fascia libera, ma smettono di essere la difesa principale.

Come lo fa MultiDatePick. Legge i record esistenti quando il calendario viene visualizzato, mostra come occupate le fasce occupate, conta la capacità con un badge in tempo reale dei prenotati sulla capacità e ricontrolla i conflitti al salvataggio. Conflict Behavior (Comportamento conflitto) imposta block, skip o allow. In un flusso su schermo (Screen Flow), gli output Conflict Dates e Successful Bookings Count dicono alla schermata successiva esattamente cosa è successo.

Ferma le doppie prenotazioni nel momento della scelta

Prenota una fascia nella demo live e guarda gli orari occupati sparire dalla griglia.

  • $20/utente/mese, tutte le funzionalità
  • Prova gratuita di 30 giorni, senza carta
  • 100% nativo Salesforce
  • Senza Apex
  • Presto disponibile su Salesforce AppExchange