Dans onOffice, les profils de recherche constituent un module à part entière : un acheteur/locataire décrit le bien immobilier qu’il recherche (région, type de bien, fourchette de prix, surface habitable, etc.), et onOffice effectue ensuite des correspondances automatiques avec les biens immobiliers correspondants. propform permet de créer des profils de recherche complets via un formulaire — y compris pour plusieurs régions, des champs de fourchette et une liaison automatique avec l’adresse.
_pfGetSearchCriteria*)Dans onOffice, un profil de recherche est un enregistrement autonome — lié à une adresse, mais qui n'est pas un champ de l'adresse. Une adresse peut avoir plusieurs profils de recherche (par exemple « Recherche d'un appartement en copropriété à Berlin » + « Recherche d'un immeuble d'investissement dans toute l'Allemagne »).
Conséquence pour propform :
Configuration :
Champs de critères de recherche types :
objektart (Appartement / Maison / Terrain / Local commercial)vermarktungsart (Achat / Location / Bail)kaufpreis (Champ de plage — propform affiche automatiquement deux champs de saisie « de » / « à »)kaltmiete (Champ de plage)wohnflaeche (champ de plage)anzahl_zimmer (champ de plage)regionaler_zusatz (sélection multiple de régions)> 💡 Champs de plage : Les champs ci-dessus s'appellent simplement kaufpreis, wohnflaeche, etc. — et non kaufpreis_von / kaufpreis_bis. propform reconnaît automatiquement qu'il s'agit d'un champ de plage et affiche deux champs de saisie.
> ⚠️ Important : pour qu'un champ apparaisse dans le module des critères de recherche, il doit être explicitement défini comme champ de critères de recherche dans onOffice (Outils → Paramètres → Administration → Module des critères de recherche). Sinon, propform ne l'affiche pas.
Les critères de recherche fonctionnent généralement avec des valeurs de plage (prix de 200 000 à 500 000, surface habitable de 80 à 120 m²). Il suffit d'ajouter le champ avec son nom de base (par exemple kaufpreis) — propform reconnaît automatiquement qu'il s'agit d'un champ de plage et affiche deux champs de saisie (« de » / « à »).
> ⚠️ Le curseur de plage ne fonctionne pas ici : le champ spécial « Range Slider » n'existe que pour les champs numériques normaux, pas pour les champs de plage de critères de recherche. Pour les critères de recherche, on s'en tient à deux champs de saisie.
## Sélection multiple : régions et types d'objets
Dans les champs de critères de recherche classiques tels que regionaler_zusatz ou objektart, l'utilisateur souhaite souvent cocher plusieurs valeurs (par exemple « Berlin-Mitte ET Berlin-Friedrichshain »). propform le fait automatiquement via le champ de sélection multiple.
Conseils pour la sélection multiple dans les critères de recherche :
Dans onOffice, il existe deux méthodes fondamentalement différentes pour effectuer une recherche géographique — chacune a ses avantages :
L'utilisateur indique une adresse de référence (code postal, ville, rue) ainsi qu'un rayon en kilomètres. Le système fait correspondre les biens immobiliers situés à l'intérieur de ce cercle.
Avantages :
Champs : umkreis_ort, umkreis_plz, umkreis_strasse, umkreis_radius
L'utilisateur effectue sa sélection à partir d'une hiérarchie régionale à sélection multiple (Länder → districts → quartiers). Cela suppose que vos régions soient gérées dans onOffice et que les biens immobiliers aient été correctement classés.
Avantages :
Champ : regionaler_zusatz (sélection multiple)
| Quand | Choix |
|---|---|
| Formulaire client final général, tous sites | Rayon |
| Agence immobilière locale avec des districts clairement définis | Supplément régional |
| Profils de recherche premium, pertinents pour le reporting | Supplément régional |
| Configuration rapide sans gestion des régions dans onOffice | Rayon |
> ⚠️ Le passage d'une variante à l'autre n'est pas anodin — les profils de recherche créés avec un rayon ne peuvent pas être convertis à l'identique en suppléments régionaux (type de données différent). Il est préférable de choisir une variante dès le début et de l'utiliser de manière cohérente.
propform lie automatiquement les profils de recherche à l'adresse que le formulaire est en train de modifier ou de créer — vous n'avez pas besoin de configuration supplémentaire pour la liaison des enregistrements.
Workflow type :
> 💡 Un enregistrement d'adresse peut avoir autant de profils de recherche que souhaité. Si le même demandeur crée plusieurs recherches, un nouveau profil de recherche est ajouté à chaque fois, tous pour la même adresse.
Il existe des macros spécifiques à propform pour les e-mails de confirmation ou les affichages récapitulatifs :
| Macro | Effet |
|---|---|
_pfGetSearchCriteriaInformation |
Génère le profil de recherche vient d'être créé sous forme de tableau complet (toutes les valeurs) |
_pfGetSearchCriteriaField(<feldname>) |
Affiche une seule valeur — par exemple _pfGetSearchCriteriaField(objektart) |
_pfGetSearchCriteriaUUID |
UUID crypté du profil de recherche — pour des liens inter-formulaires sécurisés |
_pfButton(<URL>;<Beschriftung>) |
Génère un lien sous forme de bouton formaté dans les e-mails/PDF — accepte n'importe quelle URL, y compris les UUID résolus par macro (par exemple, un lien de modification vers le profil de recherche) |
Exemple d'e-mail de confirmation après soumission :
Hallo _Vorname _Name,
vielen Dank für deine Suchanfrage. Wir haben folgendes Suchprofil angelegt:
_pfGetSearchCriteriaInformation
Wir melden uns, sobald passende Immobilien verfügbar sind.
→ Le tableau complet des critères de recherche est automatiquement inséré dans le corps du message.
📖 Pour en savoir plus, consultez Macros — spécifiques à propform.
propform permet non seulement de créer de nouveaux profils de recherche, mais aussi de lire, modifier et désactiver ceux qui existent déjà — idéal pour les processus en libre-service (« Gérez vous-même vos profils de recherche »).
Workflow en libre-service très robuste pour les acheteurs/locataires :
0. Avec Auto-Submit (voir Auto-Submit & Routing) — l'utilisateur clique sur le lien dans l'e-mail et le formulaire est envoyé sans interaction avec l'interface utilisateur → la page de remerciement s'affiche immédiatement._bScRek_("status:1") (voir ci-dessous) et les macros _pfGetSearchCriteriaUUID + _pfButton(...) pour les boutons d'action> 💡 Meilleure pratique : la macro _pfButton prend automatiquement en charge la mise en page (style des boutons) — vous n'avez pas besoin de formater en HTML.
Si un utilisateur dispose de plusieurs profils de recherche et que vous souhaitez les répertorier tous dans un e-mail ou sur une page récapitulative, vous pouvez utiliser la boucle de critères de recherche :
_bScRek_("status:1")
Suche: _pfGetSearchCriteriaField(objektart) in _pfGetSearchCriteriaField(ort)
Preis bis: _pfGetSearchCriteriaField(kaufpreis_bis)
Link: _pfLink("https://example.com?id=_pfGetSearchCriteriaUUID", "Suchprofil öffnen")
_eScRek_
Filtre status:1 : uniquement les profils de recherche actifs. Sans filtre : tous (y compris les profils désactivés).
📖 Syntaxe complète et options de filtrage sous Macros → Boucle de critères de recherche.
Dans certaines versions d'onOffice, il existe un champ dédié « Profil de recherche Premium » (souvent prio ou champ personnalisé) — un indicateur permettant de repérer les acheteurs/locataires particulièrement importants qui doivent être informés plus rapidement / de manière plus détaillée des nouveaux biens immobiliers.
Configuration propform pour le marquage Premium :
> 💡 Si vous n’avez pas de concept Premium, cela n’est pas nécessaire — le workflow standard des profils de recherche suffit alors.
Dans onOffice, sous Outils → Paramètres → Administration → Critères de recherche, vous pouvez définir plusieurs modèles — par exemple un modèle « Acheteurs de biens immobiliers résidentiels », un autre « Locataires commerciaux », etc.
> ⚠️ Piège : l'API onOffice lit exclusivement le modèle par défaut (modèle standard). Les autres modèles sont complètement ignorés.
Symptôme : vous ajoutez un nouveau champ de critères de recherche dans un autre modèle, propform ne le « trouve » pas. Frustrant.
Solution :
Si le formulaire utilise à la fois objektart et objekttyp, les valeurs doivent être compatibles. Les combinaisons incompatibles (par exemple, type d'objet = Wohnung + type d'objet = Mehrfamilienhaus) entraînent la non-création silencieuse du critère de recherche — aucun message d'erreur, aucun enregistrement.
Conseil : lors de la création du formulaire, teste la logique des valeurs avec différentes combinaisons avant de le déployer.
Le profil de recherche est toujours associé à une adresse. Si votre formulaire crée un nouveau profil de recherche, mais que l'adresse n'existe pas encore (le contrôle des doublons échoue, une nouvelle adresse est créée), la création de l'adresse s'effectue en premier, puis celle du profil de recherche.
→ Cela fonctionne sans problème dans la plupart des cas. Le profil de recherche ne peut échouer qu'en cas d'erreurs de validation très inhabituelles sur l'adresse.