🧩 Macro — propform & onOffice

Le macro sono segnaposto che vengono sostituiti con valori reali al momento dell'esecuzione — ad esempio il nome di un indirizzo caricato, l'UUID di un immobile o la data corrente.

Contenuto

---

Dove è possibile utilizzare le macro?

Posizione Macro attive?
Intestazione / Sottotitolo del modulo
Etichetta campo, nota, segnaposto, tooltip
Valore predefinito, valore obbligatorio
Campi di descrizione (tipo speciale) ✅ — incluse le macro propform come _pfButton, _pfLink
Nota attività
Oggetto e descrizione attività
Destinatario e-mail, CC, BCC
Oggetto e corpo dell'e-mail
URL della pagina di ringraziamento
Valori di destinazione "Scrivi valori"
Nome campo caricamento file
URL pulsante link
Nome personalizzato download file

Macro standard di onOffice |

| L'elenco completo e ufficiale delle macro è disponibile nella Guida di onOffice.

> ⚠️ Attenzione alla grafia: onOffice è inconsistente nell'uso delle maiuscole e delle minuscole. Le macro degli indirizzi sono di norma in CamelCase (prima lettera maiuscola), mentre quelle immobiliari sono minuscole. Atteniti rigorosamente alla grafia ufficiale, altrimenti la macro non verrà risolta.

Macro per indirizzi (CamelCase)

Macro Significato
_Name Cognome
_Vorname Nome
_Email Indirizzo e-mail predefinito
_Email(Art,n) E-mail in base al tipo (aziendale/privata) e alla posizione
_Strasse Via
_PLZ Codice postale
_Ort Località/Città
_Telefon Numero di telefono predefinito
_AdrDatensatznummer Numero di record dell'indirizzo
_Uuidaddress UUID dell'indirizzo
_Sonstige1 Contenuto del campo Altro1

Macro immobiliari (piccole)

Macro Significato
_objektart Tipo di immobile (casa, appartamento ecc.)
_objekttyp Tipo di immobile (casa unifamiliare, villetta a schiera ecc.)
_ort Località dell'immobile
_strasse Via (solo se nell'immobile è attiva l'opzione "Condivisione indirizzo")
_hausnummer Numero civico (solo se nell'immobile è attiva l'opzione "Condivisione indirizzo")
_Objstrasse Via — aggira l'opzione "Non condividere indirizzo" (trucco, solo per via + numero civico)
_Objhausnummer Numero civico — aggira "Non condividere indirizzo"
_plz Codice postale
_kaufpreis Prezzo di acquisto
_wohnflaeche Superficie abitabile
_flaeche Superficie standard per tipo di immobile
_ObjDatensatznummer Numero di record dell'immobile
_Uuidestate UUID dell'immobile

Macro data e ora |

|

Macro Significato
_Datum(format) Formato data variabile — _Datum(DD.MM.YYYY)
_KDatum Data attuale (ad es. 26.04.2026)
_Uhrzeit(Länge, Format, Zone) Ora attuale

Macro di funzione (condizioni, calcoli)

Macro Esempio Significato
_calculate(...) _calculate([kaufpreis]*3) Calcolo matematico
_ifEmpty(_makro;"Text1";"Text2") _ifEmpty(_Sonstige1;"Standard";_Sonstige1) Se la macro è vuota → Testo1, altrimenti Testo2 (scritto anche come _if_empty(...))
_if(Bedingung;"Text1";"Text2") _if([objektart]="haus";"Haus-Anfrage";"Andere") Output condizionale
DATEADD([feld];n;"d") _calculate(DATEADD(TODAY();14;"d")) Aggiungere n giorni alla data (d/w/y)
TODAY() _calculate(TODAY()) Oggi

> 💡 _ifEmpty con campi utente — Modello multi-ufficio: Se ogni sede/ufficio ha un proprio link di valutazione, codice telefonico o simili, crea un campo personalizzato per l'utente (ad es. Benutzerzusatz1Name) e utilizza: _ifEmpty(_OBJBetreuer_Benutzerzusatz1Name;"https://fallback-link.de";_OBJBetreuer_Benutzerzusatz1Name) — se il responsabile ha lasciato il campo vuoto, viene applicato il fallback. Più breve e leggibile rispetto a _calculate(IF([feld]=null;"a";"b")) per i semplici controlli di vuoto.

Macro utente (dipendente che esegue l'azione)

Macro Significato
_UserAdr* Segnaposto per qualsiasi macro di indirizzo dell'utente corrente — ad es. _UserAdrName, _UserAdrEmail, _UserAdrTelefon
_Benutzervorname / _Uservorname Nome dell'utente
_Benutzername / _Username Cognome dell'utente
_Benutzeremail / _Useremail E-mail dell'utente

## Macro specifiche di propform

Queste macro sono disponibili solo su propform.io — non nella versione standard di onOffice. Funzionano nei moduli, nelle attività, nelle attività e nelle e-mail scritte tramite propform (modalità di risoluzione delle macro "alternativa" in onOffice).

Pulsanti e link nei campi di descrizione

Macro Descrizione
_pfButton("Label", "URL", "Style", "Target") Pulsante completamente personalizzato con lo stile propform. Stili: rounded, rounded-0, rounded-pill. Destinazione: _parent o _blank.
_pfLink("URL", "Label", "Target") Semplice collegamento ipertestuale. Se non viene specificata alcuna etichetta, l'URL viene utilizzato come testo del collegamento.

Esempi:

_pfButton("Weiter zum Formular", "https://example.com", "rounded-pill", "_blank")
_pfLink("https://example.com", "Hier klicken", "_blank")

Macro dei criteri di ricerca

Macro Descrizione
_pfGetSearchCriteriaInformation Visualizza il criterio di ricerca completo in formato tabellare.
_pfGetSearchCriteriaField(Feldname) Visualizza un singolo valore del criterio di ricerca, ad es. _pfGetSearchCriteriaField(objektart)
_pfGetSearchCriteriaUUID UUID crittografato del criterio di ricerca (per collegamenti cross-form sicuri — ad es. nei pulsanti "Modifica" e "Disattiva" nelle e-mail di riepilogo)

> 💡 Modello self-service per i profili di ricerca: le tre macro, insieme a _pfButton(...) e al ciclo _bScRek_("status:1"), formano un flusso di lavoro self-service completo: l'e-mail di riepilogo elenca tutti i profili di ricerca attivi + pulsanti con un solo clic per modificare/disattivare. Configurazione completa in Modifica/disattiva profili di ricerca.

Macro percorso file (per immagini/firme nei modelli PDF)

Macro Descrizione
_dateipfadAdressfeld(<Feldname>;<Breite>;<Höhe>;<Einheit>;<Typ>) Inserisce l'immagine da un campo file dell'indirizzo nel modello PDF (tipicamente per firme, scansioni di documenti d'identità)
_dateipfadObjektfeld(<Feldname>;<Breite>;<Höhe>;<Einheit>;<Typ>) Analogo per i campi file immobiliari

Parametri:

  • Nome campo: nome interno onOffice del campo del file (ad es. unterschrift_kaeufer)
  • Larghezza: Valore nell'unità selezionata (ad es. 400 — valore predefinito per le firme)
  • Altezza: valore fisso oppure variabel per l'altezza automatica
  • Unità: px o mm
  • Tipo: mail o html

Esempio — Inserire la firma dell'acquirente:

_dateipfadAdressfeld(unterschrift_kaeufer;400;variabel;mail;html)

Modello multi-sig per più acquirenti/proprietari:

All'interno del ciclo di indirizzi (_buyerbrek_1__buyererek_1_, vedi sotto) puoi inserire un campo file con la firma per ogni acquirente. Se non tutti gli acquirenti hanno già firmato, avvolgilo sempre con _ifEmpty(...) — altrimenti si creerà uno spazio vuoto nel PDF:

_buyerbrek_1_
_BuyerVorname _BuyerName
_ifEmpty(unterschrift_kaeufer;"";"_dateipfadAdressfeld(unterschrift_kaeufer;400;variabel;mail;html)")
_buyererek_1_

> 💡 Disponibilità dei campi file: le macro del percorso file funzionano solo se il file si trova in un campo file onOffice del record — non nella scheda generale "File". Il campo file deve essere creato nell'amministrazione di onOffice prima dell'utilizzo.


Macro attività e appuntamenti

Macro Descrizione
_pfGetAgentslogInformation Visualizza in formato tabellare l'attività appena inserita tramite propform (tipo di azione, categoria di azione, commento)
_pfGetSellingPriceOffer Visualizza l'offerta di prezzo di acquisto presentata dal potenziale cliente
_pfGetCalendarUUID UUID crittografato dell'appuntamento corrente (all'interno del ciclo del calendario)

Deep link a onOffice-enterprise

Macro Descrizione
_getAddressLink Deep link diretto al record di indirizzi in onOffice — funziona solo per gli utenti che hanno effettuato l'accesso
_getEstateLink Deep link diretto all'immobile

Newsletter e accordo |

| Macro | Descrizione | | |-------|--------------| | _NewsletterDOILink | Macro standard di onOffice: link di conferma per il double opt-in della newsletter. Se il campo della newsletter è impostato su 3 (DOI in sospeso) e l'utente clicca, viene impostato su 1 (confermato). Utilizzo nell'e-mail di conferma della newsletter. | | _AgreementLink(Parameter1,Parameter2,...) | Macro propform per il link all'accordo (contratto/informativa sul diritto di recesso/protezione dei dati). I parametri controllano quali contenuti vengono visualizzati quando si richiama l'accordo. Parametri possibili: URL, Vertrag, Belehrung, Musterwiderruf, Datenschutzerklärung, Beginn, Eigentum, Finanzierung, Newsletter. | | _NewsletterLink | Standard onOffice: link di iscrizione/cancellazione per la mailing list della newsletter (cliccando si apre la pagina di iscrizione/cancellazione su onOffice). |

> 💡 Suggerimento per il link all'accordo: invece di utilizzare parametri fissi nel modello di email, puoi gestire un campo personalizzato nell'immobile (ad es. agreement_link_parameter) e fornirvi dinamicamente diversi parametri tramite la formula _calculate(IF([provisionsfrei]=null;"Vertrag,Belehrung,Musterwiderruf,Datenschutzerklärung,Beginn,Eigentum,Finanzierung,Newsletter,URL";"URL")) — ad es. senza contratto/revoca per gli immobili senza provvigione. Il modello di email richiamerà quindi solo _AgreementLink(_agreement_link_parameter).

Modalità di risoluzione delle macro di indirizzo "alternativa"

Nella configurazione e-mail di propform è presente l'impostazione "Risoluzione macro di indirizzo: normale vs. alternativa":

Modalità Effetto
Normale (predefinita) _Vorname, _Name, _Email ecc. vengono risolti nel destinatario dell'e-mail
Alternativa La risoluzione avviene nell'indirizzo del modulo (= indirizzo che ha appena elaborato il modulo)

Quando si usa "alternativo"? Sempre quando l'e-mail viene inviata a qualcuno che non è il richiedente — ad es. notifica interna alla contabilità riguardo a un nuovo indirizzo. Altrimenti nell'e-mail sarebbero presenti i dati della contabilità anziché quelli del richiedente.

---

Cicli — Ciclo dei criteri di ricerca

Con _bScRek_ e _eScRek_ è possibile scorrere tutti i criteri di ricerca di un indirizzo e generare macro per ogni singolo criterio di ricerca — analogamente ai noti cicli del registro agenti in onOffice.

Sintassi

_bScRek_("filter")
   ... beliebige Suchkriterien-Makros ...
_eScRek_

Filtro opzionale

Con l'argomento filtro puoi limitare quali criteri di ricerca vengono presi in considerazione:

_bScRek_("status:1")

→ Solo criteri di ricerca attivi (Stato = 1).

Esempio completo

_bScRek_("status:1")
Objektart: _pfGetSearchCriteriaField(objektart)
Ort: _pfGetSearchCriteriaField(ort)
Wohnfläche: _pfGetSearchCriteriaField(wohnflaeche)
Link: _pfLink("https://example.com?id=_pfGetSearchCriteriaUUID", "Suchkriterium öffnen")
_eScRek_

---

Cicli — Ciclo calendario

Con _bCalendarRek_ e _eCalendarRek_ è possibile scorrere gli appuntamenti nel periodo specificato — ad es. per visualizzare gli slot liberi in un modulo di prenotazione.

Sintassi

_bCalendarRek_("startDate:YYYY-MM-DD;endDate:YYYY-MM-DD;weitere:filter")
   ... beliebige onOffice-Termin-Makros + _pfGetCalendarUUID ...
_eCalendarRek_

Filtro di esempio

_bCalendarRek_("startDate:2026-02-25;endDate:2026-12-31;subject:like:%TERMIN-SLOT%;estate.id:_Id")

→ Tutti gli appuntamenti nel periodo il cui oggetto contiene "TERMIN-SLOT" e che sono collegati all'immobile corrente.

Approfondimenti

Puoi trovare istruzioni dettagliate con suggerimenti copia/incolla nel blog: Guida ai filtri Calendar-Loop.

---

Cicli — Ciclo indirizzi (acquirenti / proprietari)

Con le macro del ciclo indirizzi è possibile scorrere tutti gli acquirenti o i proprietari collegati all'immobile — caso d'uso tipico: un modulo di panoramica che elenca tutte le persone relative a un immobile più i pulsanti "Modifica"/"Collega altri".

Sintassi

Ciclo Inizio Fine
Acquirente _buyerbrek_1_ _buyererek_1_
Proprietario _ownerbrek_1_ _ownererek_1_

> All'interno del ciclo si utilizzano le pre-macro _Buyer* o _Owner* (vedi sezione successiva). _1_ è un contatore interno del ciclo — da incrementare solo se hai bisogno di più cicli indipendenti di acquirenti/proprietari nello stesso campo di descrizione.

Esempio — elencare tutti gli acquirenti di un immobile

_buyerbrek_1_
_BuyerVorname _BuyerName, _BuyerStrasse, _BuyerPLZ _BuyerOrt, _BuyerEmail
_buyererek_1_

📖 Tutorial completo con modulo di panoramica + modifica ed esempi di codice: Collegare più record con un modulo


Pre-macro (riferirsi a record collegati)

Le pre-macro accedono ai record di indirizzi collegati a un immobile — tipicamente all'interno di modelli PDF, e-mail o cicli di indirizzi.

Pre-macro per gli acquirenti

Macro Significato
_BuyerVorname Nome dell'acquirente
_BuyerName Cognome dell'acquirente
_BuyerTitel Titolo (ad es. Dr.)
_BuyerStrasse, _BuyerPLZ, _BuyerOrt Indirizzo
_BuyerTelefon, _BuyerEmail Contatto
_BuyerName2, _BuyerVorname2, _BuyerStrasse2 ecc. Dati anagrafici 2 (secondo indirizzo all'interno del record — se attivato in onOffice)
_BuyerUuidaddress UUID del record dell'indirizzo dell'acquirente (per collegamenti tra moduli)
_Kaeufer / _Buyer Prefisso pre-macro nei modelli PDF, ad es. _KaeuferVorname (senza trattino basso tra prefisso e nome del campo)

Pre-macro per il proprietario

Macro Significato
_OwnerVorname Nome del proprietario
_OwnerName Cognome del proprietario
_OwnerTitel Titolo
_OwnerStrasse, _OwnerPLZ, _OwnerOrt Indirizzo
_OwnerTelefon, _OwnerEmail Contatto
_OwnerName2, _OwnerVorname2, _OwnerStrasse2 ecc. Dati anagrafici 2
_OwnerUuidaddress UUID del record di indirizzo del proprietario
_Eigent / _Owner Prefisso pre-macro nei modelli PDF, ad es. _EigentVorname (senza trattino basso tra prefisso e nome del campo)
_Mieter / _Renter Prefisso pre-macro per inquilini, ad es. _MieterVorname

> 💡 Buyer/Owner vs. Kaeufer/Eigent: _Buyer*/_Owner* vengono utilizzati soprattutto all'interno di loop di indirizzi e nel campo di descrizione. _Kaeufer*/_Eigent* (con nomi in tedesco) sono le classiche pre-macro dei modelli PDF che onOffice riconosce direttamente. Per i modelli PDF → vedi I valori non vengono trasferiti al PDF.


Accesso diretto al collegamento del tipo di contatto

Invece di scorrere tutti gli indirizzi collegati a un immobile, puoi anche rivolgerti direttamente a un determinato tipo di contatto, ad esempio il notaio o l'amministrazione di tale immobile:

_XAPKontaktart#NAME#FELD
Esempio Significato
_XAPKontaktart#Notar#Name Cognome dell'indirizzo collegato al tipo di contatto "Notario"
_XAPKontaktart#Notar#Email E-mail del notario
_XAPKontaktart#Notar#Uuidaddress UUID del record dell'indirizzo del notario
_XAPKontaktart#Verwalter#Telefon Numero di telefono dell'amministrazione
_XAPKontaktart#indMulti28075Select28075#Firma1 Ragione sociale dell'indirizzo con il valore chiave specifico (in caso di opzioni personalizzate per il tipo di contatto)

> 💡 Trovare il valore chiave: puoi trovare il nome esatto del tipo di contatto in onOffice in Strumenti → Impostazioni → Amministrazione → Indirizzi → campo "Tipo di contatto" → il valore chiave è indicato accanto alla rispettiva opzione (spesso indXXXX).


Precaricamento dell'UUID senza campo nel modulo

Anche se un modulo non contiene campi relativi all'indirizzo o all'immobile, puoi "fornire" un record tramite parametri URL — l'attività creata dopo l'invio sarà quindi collegata a questo record.

https://formular.deine-domain.de/dokumenten-upload?address[ID]=_Uuidaddress&estate[Id]=_Uuidestate

Caso d'uso: Un modulo di caricamento documenti per un inquilino (indirizzo) che deve però mantenere il riferimento all'immobile — il file caricato e l'attività saranno quindi collegati a entrambi i record, anche se nel modulo stesso sono presenti solo campi per il caricamento dei file.

> 💡 Funziona anche per le chiamate _AgreementLink e in tutti i punti in cui propform si aspetta parametri UUID.


Vai a Emoji e simboli per onOffice 👉