4D Write Pro: un nuovo modo di impostare le tabelle!

Tradotto automaticamente da Deepl

Siamo entusiasti di annunciare un’entusiasmante miglioria in 4D Write Pro! Oltre alle funzionalità che abbiamo introdotto finora, 4D v17 R5 include anche una nuova funzione per le schede.

Grazie al righello orizzontale, impostare le tabulazioni è diventato un compito facile per gli utenti. Possono definire graficamente gli offset, i tipi e persino il carattere iniziale di ciascuna scheda, semplicemente usando il mouse. Ma quando lo stesso compito viene svolto da uno sviluppatore tramite la programmazione, non è così semplice come ci si aspetta. Si dovevano utilizzare tre array, uno per ogni tipo di impostazione. Ebbene, oggi non è più così! Ora le cose sono molto più semplici: l’impostazione delle schede può essere effettuata utilizzando un insieme di stringhe, valori numerici o persino un insieme di oggetti! E non è tutto! Se avete solo bisogno di modificare i valori predefiniti delle schede, potete utilizzare un oggetto con le nuove costanti (aggiunte appositamente per questo scopo).

HDI: 4D Write Pro – Un nuovo modo di impostare le schede

impostazioni predefinite delle schede

Una linguetta è definita da tre valori: offset, tipo e carattere iniziale. Questi tre valori hanno dei valori predefiniti:

  • Valore predefinito offset = 1,25 cm
  • Valore predefinito del tipo = sinistra
  • Valore predefinito del carattere di testa = ” ” (nessuno = stringa vuota)

Pertanto, se si desidera modificare il valore predefinito dell’offset, è sufficiente eseguire questa singola riga di codice:

WP SET ATTRIBUTES(WParea;wk tab default;2) // in this case, 2 is two of the current unit (e.g., cm)

oppure

// In this case, "1.5cm" is a CSS string that will be used (always a dot - not a comma - with no space)
WP SET ATTRIBUTES(WParea;wk tab default; "1,5 cm"
)

Se si desidera modificare anche il tipo di scheda, è possibile creare un oggetto con tre attributi e inviarlo alla stessa funzione.

$tab:=New object
$tab [wk type]:=wk left
$tab [wk offset]:="3cm"
$tab [wk leading]:="."
WP SET ATTRIBUTES ($body;wk tab default;$tab)

Nota: $tab.type è equivalente a $tab[wk type]. La differenza è che si possono usare le costanti con la notazione a parentesi (non è possibile con la notazione a punti), il che aiuta a evitare errori di battitura.

Altre impostazioni delle schede

Per motivi di compatibilità, l’uso degli array è ancora possibile, ma è molto più semplice usare le collezioni. A voi la scelta!
Definire le schede è facile come descriverle: “Voglio tre schede. La prima a 2 cm, la seconda a 8 cm e l’ultima a 13 cm. Ok, facciamo così:

WP SET ATTRIBUTES(WParea;wk tabs;New collection("2cm"; "8cm"; "13cm"))

Fatto!

Aspettate… perché devo specificare il “cm” se è l’unità di misura del mio documento?
In realtà non è necessario! È possibile utilizzare anche valori numerici nella collezione e verrà utilizzata l’unità di misura corrente:

WP SET ATTRIBUTES(WParea;wk tabs;New collection(2;8;13)

Quanto è bello?

Ora voglio che la mia ultima tabulazione sia decimale e che utilizzi un hash (alias segno di cancelletto, segno di numero) come carattere iniziale.
In questo caso, è sufficiente creare un oggetto per la terza scheda:

$tab:=Nuovooggetto
$tab [wk offset]:=13
$tab [wk type]:=wk decimale
$tab [wk leading]:="#"
WP SET ATTRIBUTES (WParea;wk tabs;New collection("2cm"; "8cm";$tab))

Per scoprire le nuove possibilità, consultate l’HDI e, per maggiori dettagli, il doc center 4D.

Roland Lannuzel
- Product Owner ed esperto di 4D - Dopo aver studiato elettronica, Roland è passato all'IT industriale come sviluppatore e consulente, realizzando soluzioni per i clienti con una varietà di database e tecnologie. Alla fine degli anni '80 si è innamorato di 4D e lo ha utilizzato per scrivere applicazioni aziendali che includono sistemi di contabilità, fatturazione e posta elettronica. Entrato a far parte dell'azienda nel 1997, Roland ha dato il suo prezioso contributo progettando specifiche, strumenti di test e demo, oltre a formare e parlare alla comunità 4D in occasione di numerose conferenze. Continua a plasmare attivamente il futuro di 4D definendo nuove funzionalità e strumenti di sviluppo di database.