Date Time : sélecteur de dates et de créneaux horaires pour Salesforce
Choisissez plusieurs dates, faites glisser les heures et enregistrez chaque bloc horaire dans vos propres enregistrements Salesforce. Un sélecteur de créneaux pour les rendez-vous, les plannings d'équipe et les entretiens, configuré dans un assistant.
Ou essayez la démo en direct maintenant, sans connexion →Grille de créneaux, heures par date, aucune double réservation et couleurs de statut. Fonctionne dans les flux d'écran et sur Experience Cloud, sans Apex.
Salesforce a un champ date et un champ heure. Pas de sélecteur de créneaux.
Date Time transforme « ces quatre jours, de 9 h à 12 h » en quatre enregistrements, d'un seul clic sur Enregistrer.
| Ce dont vous avez besoin | Salesforce standard | Avec Date Time |
|---|---|---|
| Plusieurs dates, un seul horaire | ✗Un enregistrement à la fois | ✓Cliquer, glisser ou ajouter une récurrence |
| Choisir une heure visuellement | ✗Taper dans un champ heure | ✓Glisser sur une grille de créneaux |
| Des horaires différents chaque jour | ✗Modifier chaque enregistrement | ✓Une grille pour chaque date |
| Aucune double réservation | ✗Règles de validation ou Apex | ✓Créneaux pris grisés |
| Voir le statut d'un coup d'œil | ✗Ouvrir chaque enregistrement | ✓Des couleurs sur les dates et les créneaux |
| Mise en place | ✗Un développeur et un LWC sur mesure | ✓Assistant de configuration en pointer-cliquer |
Pourquoi c'est plus difficile qu'il n'y paraît : créer un sélecteur de créneaux horaires dans Salesforce.
Le sélecteur de créneaux horaires
Les dates en haut, les heures en dessous. Cliquez ou faites glisser sur les créneaux ; chaque suite de créneaux contigus s'enregistre comme une seule réservation.
- Choisir les dates
- Glisser les heures
- Définir le statut
- Enregistrer
Grille ou liste déroulante
Heures communes ou par date
Dimensionner la journée
- Time Interval : n'importe quel intervalle (15, 30 ou 60 minutes sont courants)
- Earliest / Latest Time : de 08:00 à 18:00 par défaut
- Enable End Time (Activer l'heure de fin) : saisir un début et une fin
Conçu pour une vraie planification des rendez-vous et des équipes
Chacun de ces points est un paramètre, pas un développement sur mesure.
- Détails au survol
- Seconde liste de sélection
- Vue sur deux mois
- Dates bloquées
- Enregistrements nommés automatiquement
- Notification dans le composant
- 9 langues
Vue Semaine : chaque heure, pas seulement chaque date
Les réservations s'affichent aussi hautes que leur durée. Mêmes enregistrements, même logique d'enregistrement ; seule la présentation change.
| Vue (View) | Idéal pour |
|---|---|
| Semaine | Entretiens, rendez-vous, permanences. Faites glisser sur plusieurs jours et plusieurs heures à la fois. |
| Calendrier | Le jour d'abord, l'heure ensuite. La vue par défaut. |
| Agenda | Les 60 prochains jours sous forme de liste, avec heures de début et de fin. |
| Chronologie | Les dates en colonnes, les enregistrements en lignes. Les blocs de plusieurs jours en barres. |
| Occupation | Heatmap de capacité. À associer à Booking. |
Deux paramètres. View (Vue) choisit la présentation à l'ouverture ; Available Views (Vues disponibles) définit le sélecteur de vues, par exemple calendar,week,agenda. Earliest Time et Latest Time bornent aussi la grille de la semaine.
Cas d'usage d'un planificateur de créneaux horaires Salesforce
Quinze façons dont les équipes utilisent Date Time, et les paramètres qui font fonctionner chacune.
Planification des entretiens
Des créneaux différents selon les jours, colorés selon le résultat.
- Créneaux de 30 min
- Heures par date
- Couleurs de statut
Prise de rendez-vous
Heures ouvrables uniquement, sans chevauchement.
- Bloquer les conflits
- De 08:00 à 17:00
- Début et fin
Planification des équipes
Un enregistrement de garde par jour, en un seul glissement.
- Créneaux de 60 min
- Périodes
- Heure de fin
Fenêtres de maintenance
02:00, 03:00, 04:00 deviennent une seule fenêtre de 02:00 à 05:00.
- Plage consolidée
- Bloquer les conflits
Créneaux de livraison
Un sélecteur d'heure simple pour chaque date de livraison.
- Liste déroulante
- Heures par date
Rendez-vous en clinique
Des créneaux fins, les créneaux réservés en couleur.
- Créneaux de 15 min
- Chargement de l'existant
- Statut sur la grille
Planification des rappels
Les commerciaux planifient les rappels clients sans collision.
- Créneaux de 30 min
- Bloquer les conflits
- Nommage automatique
Onboarding client
Huit sessions hebdomadaires posées en deux clics.
- Récurrence
- Nommage automatique
Sessions de formation
Des blocs le matin et l'après-midi, la pause déjeuner enregistrée comme pause.
- Heures par date
- Sous-blocs
Demandes de démo
Les prospects choisissent un créneau sur votre site ; ceux qui sont pris sont grisés.
- Experience Cloud
- Existant en lecture seule
Planification des QBR
Des revues de 90 minutes autour d'une fin de trimestre.
- Vue sur deux mois
- Couleurs de statut
Visites immobilières
Créneaux de visite libres, réservés et retenus, par couleur.
- Grille horaire
- Statut sur la grille
Fenêtres d'intervention
Les interventions terrain réparties en plages horaires, jour par jour.
- Créneaux d'une heure
- Heure de fin
Inscription aux webinaires
Un enregistrement d'inscription par session choisie.
- Liste déroulante
- Autoriser les chevauchements
Sessions de conférence
La keynote et les ateliers de chaque jour en un seul enregistrement détaillé.
- Sous-blocs
- Périodes
Pour aller plus loin : planification des entretiens dans Salesforce et planification des équipes pour l'intérim.
Comment les données s'enregistrent : votre objet, vos champs
Un objet enfant avec une date, un ou deux champs heure, et une référence vers le parent. L'assistant les propose dans des listes déroulantes.
| Champ de votre objet | Type | Paramètre de l'assistant / App Builder |
|---|---|---|
| Date du rendez-vous | Date | Champ Date (Date Field API Name) |
| Heure de début | Heure | Start Time Field API Name |
| Heure de fin | Heure | End Time Field API Name |
| Contact (parent) | Référence | Champ relation (Relationship Field API Name) |
| Statut facultatif | Liste de sélection | Champ de statut (Status Field) |
| Date de fin facultatif | Date | End Date Field API Name |
Enregistrement additif. L'enregistrement insère de nouveaux enregistrements et ne supprime jamais les existants. Load Existing Dates affiche ce qui est déjà réservé, modifiable ou en lecture seule.
L'ajouter à une page Lightning
Dans Lightning App Builder, faites glisser MultiDatePick - Dates & Times sur la page et renseignez Config Name.
| Page | Ce que vous définissez |
|---|---|
| Page d'enregistrement | Config Name. L'enregistrement de la page devient automatiquement le parent. |
| Pages d'application, d'accueil et Experience | Config Name et Static Parent Record Id : l'enregistrement auquel appartiennent les horaires. |
| Experience Cloud | Activez aussi Show In-Component Toast pour que les visiteurs voient l'enregistrement. |
Propre après l'enregistrement. Avec Show Inline (No Button) et Show Done Button in Inline Mode activés, Terminé replie le sélecteur en une carte récapitulative. Cliquez dessus pour le rouvrir.
Pas à pas : Prise en main et Pages d'application, d'accueil et Experience.
Ajouter un sélecteur de créneaux horaires à un flux d'écran Salesforce
Faites glisser le composant sur un écran et renseignez Config Name avec votre configuration de l'assistant. Chaque case à cocher vient de la configuration.
- Écran
- Dates & heures
- Nom de la configuration (Config Name)
- Dates With Times JSON
- Parse Date Entries from JSON
- Boucle
- Créer des enregistrements
| Sortie | Variable de flux | Contenu |
|---|---|---|
Dates With Times JSON selectedDatesWithTimesJson | Texte | Chaque date avec son heure de début et de fin. Transformez-la en entrées à parcourir en boucle avec fromDate, toDate, startTime, endTime. |
Selected Dates selectedDates | Collection de texte | Les dates seules, en chaînes ISO. |
Date Ranges JSON selectedDateRangesJson | Texte | Les dates consécutives regroupées en plages, avec Output Date Ranges as JSON activé. |
Sub-Blocks JSON subBlocksJson | Texte | Les trous entre les créneaux. Même action d'analyse. |
Ou passez-vous de la boucle. Quand la configuration désigne un objet enfant, le composant crée lui-même ses enregistrements avec les heures renseignées. Tout en clics, sans Apex. Toutes les approches sont dans le guide des flux d'écran.
Caractéristiques techniques
L'essentiel, en un tableau.
| Sécurité | Security Review Salesforce AppExchange réussie |
| Données | 100 % natif : vos données restent dans Salesforce. Aucun serveur externe, aucun appel sortant (callout). |
| Éditions Salesforce | Enterprise, Unlimited, Performance, Developer et Salesforce Platform, ainsi que les clouds sectoriels. Pas Essentials ni Professional. |
| Où il s'utilise | Flux d'écran, page d'enregistrement, page d'application, page d'accueil, site Experience Cloud |
| Créneaux horaires | N'importe quel intervalle (15, 30 ou 60 minutes sont courants) ; grille ou liste déroulante ; groupes Matin, Après-midi, Soir en option |
| Modes horaires | Communes à toutes les dates, ou par date |
| Conflits | Bloquer, ignorer ou autoriser ; anticipation de 360 jours par défaut |
| Vues | Calendrier, Semaine, Agenda, Chronologie, Occupation |
| Langues | 9 : anglais, espagnol, français, allemand, italien, japonais, hindi, portugais du Brésil, chinois simplifié |
| Version d'API | 63.0 |
| Propriétés | Plus de 90, toutes réglées en quelques clics. Référence complète |
| Configuration | Assistant de configuration sans code, Lightning App Builder ou Flow Builder |
Une seule offre, toutes les fonctionnalités
Le sélecteur de créneaux n'est pas une option payante. Il est inclus avec chaque licence.
- Essai gratuit de 30 jours
- Sans carte bancaire
- Date, Date Time et Booking
- Toutes les futures mises à jour
Questions sur le sélecteur de date et d'heure Salesforce
Des réponses courtes aux questions que se posent les administrateurs.
Comment ajouter un sélecteur de créneaux horaires à un flux d'écran Salesforce ?
Dans Flow Builder, ouvrez un écran, recherchez MultiDatePick, faites glisser le composant Dates & Times et renseignez Config Name avec la configuration créée dans l'assistant de configuration. Chaque case à cocher vient de la configuration. Le composant crée lui-même ses enregistrements quand la configuration désigne un objet enfant ; sinon, reliez Dates With Times JSON (Output) à une variable texte, exécutez l'action Parse Date Entries from JSON, parcourez les entrées avec une boucle et créez un enregistrement pour chacune.
Chaque date peut-elle avoir des heures différentes ?
Oui. Activez Allow Different Times Per Date (Autoriser des heures différentes) et chaque date sélectionnée reçoit sa propre grille horaire ou sa propre liste déroulante, regroupées par semaine. Laissez l'option désactivée et une grille commune applique les mêmes heures à toutes les dates choisies.
Évite-t-il les doubles réservations ?
Oui. Conflict Behavior (Comportement en cas de conflit) est réglé par défaut sur Bloquer : les créneaux déjà pris par des enregistrements existants de ce calendrier sont grisés et ne peuvent pas être choisis. Ignorer enregistre les créneaux libres et signale ceux qui sont pris, ce qui convient à une sélection en lot sur de nombreuses dates. Autoriser désactive le contrôle. Conflict Look-Ahead Days fixe jusqu'où porte la vérification, 360 jours par défaut.
Peut-on utiliser des listes déroulantes au lieu d'une grille horaire ?
Oui. Réglez Time Display Mode (Mode d'affichage des heures) sur dropdown pour des sélecteurs d'heure de début et de fin, ou gardez grid pour des créneaux cliquables à faire glisser. Time Interval (Intervalle horaire) fixe la taille des créneaux en minutes, à la valeur de votre choix (15, 30 ou 60 sont courants), et Earliest Time et Latest Time bornent la journée, de 08:00 à 18:00 par défaut.
Le sélecteur de date et d'heure Salesforce fonctionne-t-il sur les pages Experience Cloud, d'application et d'accueil ?
Oui. Sur les pages d'application, d'accueil et Experience Cloud, renseignez Config Name ainsi que Static Parent Record Id, l'enregistrement auquel appartiennent les horaires. Sur Experience Cloud, activez Show In-Component Toast pour que les visiteurs voient la confirmation d'enregistrement.
Combien coûte le composant MultiDatePick Date Time ?
MultiDatePick, c'est une seule offre à $20 par utilisateur et par mois, avec un essai gratuit de 30 jours sans carte bancaire. Date Time, Date et Booking sont tous inclus, avec toutes les fonctionnalités.
Tous les paramètres, pour les administrateurs qui veulent le détail
Les libellés tels qu'ils apparaissent dans l'assistant de configuration, App Builder et Flow Builder, avec le nom d'API en dessous.
Référence de toutes les propriétés
Configuration
| Paramètre | Par défaut | Rôle |
|---|---|---|
Config NameconfigName | - | Charge tous les paramètres depuis une configuration enregistrée dans l'assistant. |
Viewview | calendar | Présentation à l'ouverture : calendar, week, agenda, timeline ou utilization. |
Available ViewsavailableViews | all | Les vues proposées par le sélecteur, séparées par des virgules. |
Agenda FieldsagendaFields | - | Champs supplémentaires sur chaque ligne de l'agenda. Vide : reprend Hover Popover Fields. |
Affichage
| Paramètre | Par défaut | Rôle |
|---|---|---|
Button Labellabel | Sélectionner les dates & les heures (Select Dates & Times) | Texte du bouton qui ouvre le sélecteur. |
Calendar TitlemodalTitle | Sélectionner les dates & les heures (Select Dates & Times) | Titre au-dessus du calendrier. |
Show Inline (No Button)showInline | false | Calendrier toujours visible, sans bouton. |
Two-Month ViewtwoMonthView | false | Deux mois côte à côte. |
Calendar SizecalendarSize | medium | tiny, xsmall (Very Small), small, medium ou large. Tiny et Very Small conviennent aux barres d'utilitaires, aux barres latérales et aux vignettes de tableau de bord. |
Day Header FormatdayHeaderFormat | 3 | 3 = DIM, 2 = DI, 1 = D. |
Week Starts on MondayweekStartsOnMonday | false | Les semaines commencent le lundi au lieu du dimanche. |
Show Recurring Pattern ButtonshowRecurringPattern | true | Jours de la semaine, intervalles de semaines et occurrences mensuelles. |
Show Selection SummaryshowSelectedSummary | true | Le nombre de dates sélectionnées, et leurs plages. |
Show Done Button in Inline ModeshowDoneButtonInline | true | Terminé replie le sélecteur en une carte récapitulative. |
Requiredrequired | false | Le flux ne peut pas avancer sans une date. |
Sélection de l'heure
| Paramètre | Par défaut | Rôle |
|---|---|---|
Time Display ModetimeDisplayMode | grid | grid : des créneaux cliquables à faire glisser. dropdown : des sélecteurs d'heure de début et de fin. |
Time Interval (Minutes)timeInterval | 30 | Taille des créneaux en minutes. N'importe quel intervalle ; 15, 30 ou 60 sont courants. |
Earliest TimeminTime | 08:00 | Premier créneau, au format 24 h HH:mm. |
Latest TimemaxTime | 18:00 | Dernier créneau, au format 24 h HH:mm. |
Allow Different Times Per DateallowDifferentTimes | false | Chaque date a sa propre grille ou sa propre liste déroulante, au lieu d'un jeu d'heures commun. |
Enable End TimeenableEndTime | true | Saisit une heure de fin en plus de l'heure de début. |
Group Time Slots by PeriodgroupTimeSlotsByPeriod | false | Des sections Matin, Après-midi et Soir. |
Max Time SlotsmaxTimeSlotSelection | 0 | Nombre total de créneaux qu'un utilisateur peut choisir sur l'ensemble des dates. 0 = illimité. |
Allow Whole-Day (No Times)allowWholeDayNoTimes | false | Une date sans créneau s'enregistre comme un enregistrement sur la journée entière. |
Start Time Field API NamestartTimeField | - | Champ heure du début. |
End Time Field API NameendTimeField | - | Champ heure de la fin. |
Grille horaire uniquement (Time Grid Only)
| Paramètre | Par défaut | Rôle |
|---|---|---|
Time Grid OnlytimeGridOnly | false | Masque le calendrier et n'affiche que la grille pour une date implicite. Les créneaux s'enregistrent sur l'enregistrement hôte. |
Time Grid DatetimeGridDate | - | Date explicite, au format YYYY-MM-DD. |
Time Grid Date FieldtimeGridDateField | - | Champ date de l'enregistrement hôte dans lequel lire la date. |
Ordre de la date implicite : Time Grid Date, puis Time Grid Date Field, puis aujourd'hui.
Conflits et plages horaires
| Paramètre | Par défaut | Rôle |
|---|---|---|
Conflict BehaviorconflictBehavior | block | block : créneaux pris grisés. skip : enregistrer les créneaux libres, signaler les autres. allow : aucun contrôle. |
Buffer Between Bookings (Minutes)bufferMinutes | 0 | Temps de battement laissé libre après chaque enregistrement existant avant que le suivant puisse commencer. |
Conflict Look-Ahead DaysconflictLookAheadDays | 360 | Jusqu'où vérifier les enregistrements existants. |
Consolidate Time SpanconsolidateTimeSpan | false | Fusionne les créneaux sélectionnés en un seul début et une seule fin ; les trous s'enregistrent comme sous-blocs. |
Show Sub-Block Toggle ButtonshowSubBlockButton | false | Permet aux utilisateurs de marquer des créneaux comme sous-blocs à la main. |
Statut et affichage
| Paramètre | Par défaut | Rôle |
|---|---|---|
Status FieldstatusField | - | La liste de sélection qui pilote les couleurs. |
Status ColorsstatusColors | - | par exemple Confirmed:green,Pending:orange,Cancelled:red. |
Status Color DisplaystatusColorDisplay | both | grid, calendar ou both. |
Ignored StatuseshideBookingsWithStatus | - | Les enregistrements ayant ce statut disparaissent de la grille. |
Status Field LabelstatusFieldLabel | - | Libellé personnalisé du sélecteur de statut. |
Second Picklist FieldsecondStatusField | - | Une seconde liste de sélection choisie à l'enregistrement, par exemple un motif. Sans code couleur. |
Second Picklist LabelsecondStatusFieldLabel | - | Libellé de la deuxième liste de sélection. |
Selectable Second-Picklist ValuesselectableSecondStatuses | - | Valeurs autorisées. S'il n'y en a qu'une, elle s'applique automatiquement et le sélecteur disparaît. |
Hover Popover FieldshoverFields | - | Champs affichés au survol. |
Show In-Component ToastshowSuccessToast | false | Affiche la notification d'enregistrement dans le composant. Nécessaire sur Experience Cloud. |
Show Add to Calendar After SavingshowAddToCalendar | false | Après l'enregistrement, un fichier .ics avec tous les horaires créés, pour Outlook, Google ou Apple. |
Success Toast Message (optional)successToastMessage | - | Texte de confirmation personnalisé. |
Mode édition
| Paramètre | Par défaut | Rôle |
|---|---|---|
Enable Edit ModeenableEditMode | true | Gérer les enregistrements existants sur place. |
Edit Button LabeleditButtonLabel | - | Libellé personnalisé du bouton Modifier. |
Edit Record DisplayeditRecordDisplay | name, status, time | Les détails affichés sur chaque ligne, dans l'ordre : name (nom), status (statut), time (heure), date. |
Enregistrement et sorties
| Paramètre | Par défaut | Rôle |
|---|---|---|
Static Parent Record IdstaticRecordId | - | L'enregistrement parent sur les pages d'application, d'accueil et Experience. |
Load Existing DatespreloadExistingDates | true | Affiche les enregistrements déjà créés. |
Existing Dates ModepreloadMode | editable | editable ou readonly. |
Append Date/Time to Record NameappendDateTimeToName | true | Nomme automatiquement chaque enregistrement avec sa date et son heure. |
Selected Dates (Output)selectedDates | - | Dates ISO, sans heures. |
Dates With Times JSON (Output)selectedDatesWithTimesJson | - | Chaque date avec ses heures. À transmettre à Parse Date Entries from JSON. |
Date Ranges JSON (Output)selectedDateRangesJson | - | Les dates consécutives en plages, avec Output Date Ranges as JSON activé. |
Sub-Blocks JSON (Output)subBlocksJson | - | Les enregistrements de trous, même action d'analyse. |
Également disponibles, en commun avec Date : Max Dates Allowed, Allow Past Dates, Earliest et Latest Selectable Date, Book Up To (Days Ahead), Minimum Notice (Hours), Pre-Selected Dates, Blocked Dates, Only These Dates Are Selectable, Auto-Jump to First Available Date, Record Name Field, Default Record Name, Save Button Label, les noms d'API Child Object, Date, End Date et Relationship Field, Parent Record Id Field, les paramètres de l'objet Blocked Dates et ceux de l'objet sous-bloc.
Dates et heures, choisies ensemble, enregistrées pour vous
Bientôt disponible sur Salesforce AppExchange. Essayez la démo en direct dès maintenant, ou dites-nous où envoyer l'annonce du lancement.
100 % natif Salesforce. Vos données et votre configuration ne quittent jamais votre org.