Tous les articles
Sonstiges

« Guide du filtre Calendar-Loop » (avec invite de copier-coller)

« Guide du filtre Calendar-Loop » (avec invite de copier-coller)

Calendar-Loop : guide des filtres (MECE) pour _bCalendarRek_(...)

La boucle Calendar te permet d'afficher dynamiquement des rendez-vous (onOffice Appointments), par exemple tous les créneaux horaires futurs d'un bien immobilier. Pour t'aider à créer rapidement des filtres corrects, voici la référence complète et clairement structurée.


1) Démarrage rapide : exemple minimal

Période uniquement (obligatoire) :

 
 
_bCalendarRek_("startDate:2026-02-26;endDate:2026-12-31")
... Affichage des rendez-vous ...
_eCalendarRek_
 

Exemple standard (futur, non terminé, non annulé) :

 
 
_bCalendarRek_("startDate:2026-02-26;endDate:2027-12-31;isCancelled:false;isDone:false")
...
_eCalendarRek_
 

2) Syntaxe du filtre (grammaire)

_bCalendarRek_("key:value;key2:op:value2;key3:a,b,c")

  • ; signifie ET (toutes les conditions doivent être remplies)

  • , signifie OU au sein d'une clé (au moins une valeur suffit)

  • key:value est identique à key:=:value

  • Pour like , tu utilises des caractères génériques : %TERMIN-SLOT%


3) MECE : quels sont les filtres disponibles ?

A) Paramètres obligatoires (exactement ces deux-là)

  1. startDate:YYYY-MM-DD

  2. endDate:YYYY-MM-DD

Astuce : « Uniquement futur » = startDate définir sur « aujourd’hui ».


B) Filtres API (côté serveur, performants)

B1) Indicateurs booléens (les valeurs sont MECE : {true,false})
  • isCancelled:true|false

  • isDone:true|false

  • isRecurrent:true|false

B2) Filtres de participants (listes)
  • userIds:1,2,3

  • groupIds:10,11

B3) Filtres texte/type/créateur (opérateurs SQL)

Ces clés prennent en charge les opérateurs :

  • subject

  • notes

  • type

  • createdBy

Opérateurs SQL (liste MECE) :
=, !=, <, <=, >, >=, between, like, not like, in, not in

Exemples :

 
 
subject:like:%TERMIN-SLOT%
notes:not like:%intern%
type:=:Visite
createdBy:=:max.mustermann
 

C) Filtres Propform/PHP (également possibles sur les champs de données)

Tout ce qui est contenu dans les data champs de l'AppointmentList peut faire l'objet d'un filtrage supplémentaire – y compris de manière imbriquée via la notation par points.

Exemples typiques :

  • estate.id:12345 (Rendez-vous pour un bien immobilier)

  • status.value:active

  • confirmationStatus:sent

  • private:false

Règle à retenir : l'API filtre ce qu'elle est capable de filtrer. Tout le reste est filtré par Propform par la suite.


4) Valeurs autorisées (MECE) pour les champs typiques

status.value

Valeurs autorisées :

  • active

  • completed

  • canceled

  • participantsAvailable

Exemple :

 
 
status.value:active
 

confirmationStatus

Valeurs autorisées :

  • canceled

  • confirmed

  • confirmed and canceled

  • not-set

  • sent

Exemple :

 
 
confirmationStatus:sent
 

Booléens

Autorisé : true ou false (recommandé : écrire exactement comme ceci)


5) Exemples pratiques (copier/coller)

5.1 Dates futures d'un bien immobilier, créneaux horaires uniquement

 
 
_bCalendarRek_("startDate:2026-02-26;endDate:2027-12-31;estate.id:_Id;subject:like:%TERMIN-SLOT%;isCancelled:false;isDone:false")
_DateHeureRendez-vous –
_ObjetRendez-vous_eCalendarRek_
 

5.2 Rendez-vous futurs d'un bien immobilier fixe

 
 
_bCalendarRek_("startDate:2026-02-26;endDate:2027-12-31;estate.id:12345;isCancelled:false;isDone:false")
...
_eCalendarRek_
 

5.3 Uniquement les rendez-vous d'un utilisateur / d'un groupe

 
 
_bCalendarRek_("startDate:2026-02-26;endDate:2026-12-31;userIds:31;isCancelled:false;isDone:false")
...
_eCalendarRek_
 
 
 
_bCalendarRek_("startDate:2026-02-26;endDate:2026-12-31;groupIds:219;isCancelled:false;isDone:false")
...
_eCalendarRek_
 

5.4 L'objet doit autoriser plusieurs termes (OU)

 
 
_bCalendarRek_("startDate:2026-02-26;endDate:2026-12-31;subject:like:%TERMIN-SLOT%,%BESICHTIGUNG%;isCancelled:false;isDone:false")
...
_eCalendarRek_
 

5.5 Rendez-vous récurrents vs rendez-vous ponctuels

 
 
_bCalendarRek_("startDate:2026-02-26;endDate:2026-12-31;isRecurrent:true")
...
_eCalendarRek_
 

6) Invite de copier/coller pour l'IA (afin que les utilisateurs obtiennent des filtres clairs)

Modèle de message (il suffit de copier et de remplir) :

 
 
Créez-moi un filtre propform Calendar-Loop pour _bCalendarRek_(...), avec cette syntaxe
:- Obligatoire : startDate, endDate (AAAA-MM-JJ)
- AND = ; OR à l'intérieur d'une clé = ,
- Opérateurs : =, !=, <, <=, >, >=, between, like, not like, in, not in-
like avec %...%
- De plus, les filtres PHP sur les champs de données sont autorisés (par ex. estate.id, status.value, confirmationStatus, private)

Objectif
:- Période : [START] à [END]
- Bien immobilier : estate.id = [ESTATE_ID] (ou _Id)
- L'objet contient : [STRING]
- Facultatif : isCancelled/isDone/isRecurrent, userIds, groupIds, confirmationStatus, status.value

Donnez-moi :
1) la chaîne de filtrage entre guillemets
2) un petit extrait de code avec _bCalendarRek_ ... _eCalendarRek_
 

7) Pièges courants (en bref)

  • startDate / endDate sont obligatoires, sinon (selon l'implémentation) des périodes par défaut s'appliquent ou aucun résultat n'est trouvé.

  • Si tu utilises des macros telles que _Id dans le filtre, les arguments de boucle doivent être résolus au préalable (propform le fait automatiquement si tu as activé la logique de pré-résolution).

  • conflicts Le champ data champ peut, selon la configuration, entraîner des réponses vides → à omettre si nécessaire.

Envie d'essayer propform.io ?

Premier formulaire gratuit, sans carte bancaire.

Commencer gratuitement