Come indicato nel precedente capitolo di questo manuale i tre campi “Dettaglio”, “Dettaglio Mail” e “Dettaglio Stampa” presenti alla pagina “Configurazione Parametri dell’Ordine” del Wizard (tab “Documento”) consentono di definire e personalizzare il template che verrà poi utilizzato per il Dettaglio di Ordini / Bolle / Fatture rispettivamente, in Area Riservata, nelle mail e in fase di Stampa.
Il modo di operare all’interno di ciascuno dei campi in questione è sostanzialmente lo stesso.
In questo senso le uniche differenze da prendere in considerazione sono il fatto che in Area Riservata è disponibile Bootstrap 5 (per cui può essere utilizzato un certo tipo di markup e determinate classi CSS per rendere tutta la pagina perfettamente responsiva) mentre in fase di stampa e/o all’interno delle mail dovrà essere utilizzato un markup diverso e il più standard possibile (tipicamente sarà necessario lavorare con delle tabelle)
In ogni caso, come detto, il modo di operare all’interno dei 3 editor di codice è sempre lo stesso. Volendo è possibile aprire l’editor in modalità full screen utilizzando il tasto funzione F11
Una volta entrati in modalità full screen è poi possibile ritornare alla visualizzazione standard utilizzando il tasto ESC.
Il pulsante “Preview” presente nella parte alta della maschera consente invece di visualizzare un’anteprima del Template che si sta realizzando, dove, ovviamente, al posto dei dati reali relativi ad articoli e clienti, verranno visualizzati appositi segnaposto.
In modalità Preview è possibile selezionare uno qualsiasi degli elementi presenti all’interno del Template.
Cliccandoci sopra si passerà automaticamente alla versione “Sorgente” del template con evidenziata la riga di codice relativa all’elemento selezionato
La possibilità di intervenire direttamente sul codice HTML del template offre, indubbiamente, ampie possibilità di personalizzazione, sia grafiche che a livello di veri e propri contenuti.
Ad esempio la stampa di un ordine e/o il dettaglio di questo stesso documento presente nelle varie mail o visualizzato dagli Agenti in Area Riservata, potrebbe tranquillamente contenere anche informazioni diverse rispetto a quelle presenti nella visualizzazione sul front end del sito del dettaglio di questo stesso documento.
D’altra parte dovendo intervenire direttamente sul codice HTML questo tipo di personalizzazione richiede chiaramente specifiche conoscenze tecniche.
In questo senso Passweb viene comunque in aiuto dell’utente in due modi diversi.
Innanzitutto non è necessario creare da zero l’intero template; volendo, infatti, è anche possibile partire da uno dei modelli preconfigurati messi a disposizione direttamente da Passweb.
In questo senso cliccando sul pulsante “Template” presente in corrispondenza di ciascuna delle sezioni precedentemente esaminate
verrà aperta la relativa galleria dei modelli preconfigurati
Il pulsante “Visualizza” presente in corrispondenza di ciascuno dei modelli presenti in elenco consente di visualizzare, in un nuovo tab del browser, un’ immagine rappresentativa di quello che dovrebbe poi essere il risultato finale.
Il pulsante “Utilizza” consente invece di caricare, nel campo corrispondente, il codice HTML e CSS relativo al modello selezionato.
ATTENZIONE! Per ovvie ragioni i template messi a disposizione da Passweb, non conterranno, ad esempio, né attributi articolo né tanto meno attributi cliente. Potremo trovare in essi la maggior parte dei campi standard relativi agli articoli in ordine (codice, titolo …) agli indirizzi di fatturazione, agli indirizzi di spedizione … campi questi che, comunque, potrebbero anche non dover essere utilizzati nel relativo elemento.
In sostanza dunque è sempre bene ricordare che i template messi a disposizione da Passweb sono soltanto un punto di partenza e, nella maggior parte dei casi, dovranno quindi essere customizzati, sia dal punto di vista grafico che in termini di contenuti, secondo le specifiche esigenze del caso
Nel momento in cui il template messo a disposizione da Passweb non dovesse quindi soddisfare le specifiche esigenze del caso, e ci fosse la necessità di modificarlo e/o integrarlo a livello di contenuti ad esempio con altre informazioni sugli articoli presenti nel documento e/o sul cliente intestatario, sarà possibile sfruttare uno degli appositi segnaposto messi a disposizione da Passweb.
In questo senso una volta posizionato il cursore nel punto del template in cui dovrà essere inserita la nuova informazione, sarà necessario cliccare sul pulsante “Seleziona un segnaposto …” in maniera tale da visualizzare l’elenco di tutti i segnaposto disponibili
Selezionando quindi il segnaposto desiderato tra quelli presenti in elenco, Passweb provvederà poi ad inserire automaticamente nel template tutto il codice necessario per gestire quello specifico tipo di informazione.
E’ possibile selezionare differenti tipologie di segnaposto:
Oltre al nome assegnato all’attributo verrà indicato, tra parentesi, anche il suo ID in maniera da poterlo identificare più facilmente
E’ possibile decidere se inserire o meno queste informazioni all’interno del template ma non in maniera individuale, per cui una volta deciso di utilizzare anche gli Attributi Ordine questi verranno poi inseriti tutti nel template.
In questo senso il segnaposto “CICLO – Articoli Documento”, presente all’interno di questa sezione, consente di inserire l’istruzione necessaria per creare un ciclo di iterazione su questi attributi. Selezionando questo elemento nel Template verranno infatti inserite le seguenti istruzioni
$headerAttributes_entries:{
}$
Fatto questo andranno poi inseriti tra le due parentesi graffe i segnaposto relativi all’etichetta e/o al valore dell’attributo.
ATTENZIONE! nel caso in cui i segnaposto relativi all’etichetta e/o al valore dell’Attributo Documento non siano stati inseriti all’interno di questo ciclo, in fase di generazione del documento non saranno sostituiti con i relativi dati.
E’ possibile decidere di inserire o meno queste informazioni all’interno del template ma non in maniera individuale, per cui una volta deciso di utilizzare anche le “Opzioni Documento” queste verranno poi inseriti tutte nel template.
In questo senso il segnaposto “CICLO – Opzioni Documento”, presente all’interno di questa sezione, consente di inserire l’istruzione necessaria per creare un ciclo di iterazione su queste opzioni. Selezionando questo elemento nel Template verranno infatti inserite le seguenti istruzioni
$headerOptions_entries:{
}$
Fatto questo andranno poi inseriti tra le due parentesi graffe i segnaposto relativi all’etichetta e/o al valore dell’opzione.
ATTENZIONE! nel caso in cui i segnaposto relativi all’etichetta e/o al valore dell’Opzione Documento non siano stati inseriti all’interno di questo ciclo, in fase di generazione del documento non saranno sostituiti con i relativi dati.
ATTENZIONE! Considerando che tali informazioni dovrebbero essere inserite in testata del documento solo nel caso in cui il relativo ordine sia stato generato a partire, effettivamente, da una Lista Regalo è consigliabile inserire tali informazioni all’interno della condizione “Se il documento è relativo ad una lista regalo” condizione questa presente nella sezione “Condizioni Documento”
Anche in questo caso oltre al nome dell’attributo verrà indicato, tra parentesi, anche il suo identificativo.
Ovviamente questo tipo di informazioni andranno ripetute e contestualizzate per ogni singola riga articolo presente nel documento per cui i relativi segnaposto, ed il codice HTML “di contorno”, andrà necessariamente inserito in un apposito ciclo che permetta di ripetere l’informazione per ogni singola riga articolo.
In questo senso il segnaposto “CICLO – Articoli Documento”, presente all’interno di questa sezione, consente di inserire l’istruzione necessaria per gestire questo tipo di ciclo. Selezionando questo elemento nel Template verranno infatti inserite le seguenti istruzioni
$documentItems:{
}$
In questo modo il codice HTML e i segnaposto inseriti tra le due parentesi graffe dell’istruzione sopra evidenziata verranno quindi ripetuti e contestualizzati per ogni singola riga articolo presente nel documento.
ATTENZIONE! nel caso in cui i segnaposto relativi alle informazioni sugli articoli non siano stati inseriti all’interno di questo ciclo, in fase di generazione del documento non potranno poi essere sostituiti con i relativi dati.
In questo senso il segnaposto “CICLO – Taglie Articolo”, presente all’interno di questa sezione, consente di inserire l’istruzione necessaria per creare un ciclo di iterazione su tutte le taglie degli articoli in ordine. Selezionando questo elemento nel Template verranno infatti inserite le seguenti istruzioni
$it.entrySize:{s|
}$
Fatto questo andranno poi inseriti tra le due parentesi graffe i segnaposto relativi alla taglia e/o alla quantità dello specifico articolo. In questo modo sarà quindi possibile inserire nel template del documento la tabellina di dettaglio delle singole taglie e relative quantità.
ATTENZIONE! nel caso in cui i segnaposto relativi alla taglia e/o alla quantità non siano stati inseriti all’interno di questo ciclo, in fase di generazione del documento non saranno sostituiti con i relativi dati.
Tipicamente, infine, il ciclo sulle taglie è preceduto dal segnaposto relativo alla Condizione Riga Documento “Se è un articolo a taglie”
Supponendo dunque di selezionare il segnaposto “Se l’utente appartiene al Gruppo Clienti Agente Rossi” (dove “Clienti Agente Rossi” è un gruppo creato all’interno dell’apposita sezione del Wizard) nel template verranno inserite le seguenti istruzioni
$if(id_gruppo)$
$endif$
In questo modo il codice HMTL e i vari segnaposto inseriti tra le due istruzioni sopra evidenziate verranno visualizzati, per quel che riguarda la Stampa o la visualizzazione del reso in Area Riservata, solo ed esclusivamente nel caso in cui l’utente attualmente loggato appartenga al gruppo indicato nella condizione.
Per quel che riguarda invece il dettaglio del documento di reso merce presente nelle varie mail inviate in automatico dall’applicazione, le informazioni inserite all’interno delle due istruzioni sopra evidenziate verranno effettivamente inserite solo nel momento in cui l’utente che ha generato il documento di reso appartenga al gruppo indicato nella condizione.
Supponendo dunque di selezionare il segnaposto “Se il documento è in stato Evaso” nel template verranno inserite le seguenti istruzioni
$if(isdocumentstatusdone)$
$endif$
In questo modo tutto il codice HMTL e i vari segnaposto inseriti tra le due istruzioni sopra evidenziate verranno visualizzati solo ed esclusivamente nel momento in cui il documento sarà effettivamente in stato “Evaso”.
Allo stesso modo nel momento in cui si dovesse selezionare il segnaposto “Se Mail – Conferma Ordine” nel template verranno inserite le seguenti istruzioni
$if(mail_conferma)$
$endif$
e tutto il codice HTML inserito tra le due istruzioni evidenziate verrà riportato solo all’interno delle mail inviate dall’applicativo e, nello specifico, solo nel caso in cui la mail in questione sia quella di “Conferma Ordine”
Supponendo dunque di selezionare il segnaposto “Se la riga è sospesa” nel template verranno inserite le seguenti istruzioni
$it.entrySuspend$
$endif$
In questo modo tutto il codice HMTL e i vari segnaposto inseriti tra le due istruzioni sopra evidenziate verranno visualizzati solo ed esclusivamente nel momento in la specifica riga articoli sarà effettivamente in stato “Sospeso”.
Supponendo dunque di selezionare il segnaposto “Se l’utente è una Pubblica Amministrazione” nel template verranno inserite le seguenti istruzioni
$if(isuserpubliccompany)$
$endif$
In questo modo tutto il codice HMTL e i vari segnaposto inseriti tra le due istruzioni sopra evidenziate verranno visualizzati solo ed esclusivamente nel momento in cui il destinatario del relativo documento sia effettivamente una Pubblica Amministrazione.
Di seguito vengono infine riportati alcuni consigli utili relativamente alla sintassi da utilizzare nel momento in cui si dovesse decidere di intervenire manualmente sulla personalizzazione del Template.
Esempio di segnaposto
$billing_vat$
Esempio di ciclo
$documentItems:{
}$
Esempio di istruzione condizionale
$if(isdocumentstatusdone)$
$endif$
Esempio
$it.entryCode$ Segnaposto del codice articolo inserito all’interno del ciclo per la gestione delle righe del documento
$if(condizione)$
…………………
$else$
………………….
$endif$
Una volta definito e personalizzato il Template da utilizzare, questo potrà poi essere inserito nel corpo di una qualsiasi mail utilizzando il segnaposto “Dettaglio Documento”.
ATTENZIONE! Nel caso in cui si decida di non utilizzare nel testo di una mail il segnaposto “Dettaglio Documento” i dati del relativo documento verranno inseriti come ultimo elemento della corrispondente mail