Hai una domanda?

Inserisci una o più parole chiave e trova la risposta!

Configurazione del contratto di iscrizione tramite modello ODT

Questa mini guida sulla configurazione del contratto di iscrizione della scuola da modello ODT, è suddivisa nei seguenti paragrafi:

  1. INTRODUZIONE
  2. DEFINIZIONE SEGNAPOSTI
  3. LISTE DI SEGNAPOSTI
  4. SEGNAPOSTI IN TABELLE
  5. BLOCCHI CONDIZIONALI
  6. ELENCO SEGNAPOSTI DISPONIBILI
  7. CARICAMENTO A SISTEMA DEL MODELLO ODT
  8. UTILIZZO DEL MODELLO DI CONTRATTO
  9. ESEMPI DI UTILIZZO


1. INTRODUZIONE

Nella direzione di consentire alla singola scuola una gestione autonoma di certificati, attestati, report e documenti di altro tipo, il sistema permette di preparare ed attivare in totale autonomia documenti che saranno poi esportabili per ogni corso e per ogni studente iscritto ai corsi.
Il report dovrà essere un modello in formato .odt, cioè OpenOffice, il contenuto potrà integrare un contenuto dinamico tramite l’utilizzo di segnaposto rispondenti ad una sintassi predefinita, potendo scegliere tra un ampio elenco di entità e di attributi che permettono di generare documenti di vario tipo.
Il sistema permetterà anche di accedere ai campi personalizzati dei corsi e degli utenti, o di inserire tabelle per elencare gli iscritti, con una sintassi piuttosto semplice, permettendo di generare documenti piuttosto ricchi.

La generazione di un report da modello odt permette di generare documenti in formato Open Document Text (documento di testo ODF, estensione .odt), contenenti informazioni dinamiche, utilizzando un file .odt, chiamato modello, nel quale sono inseriti degli appositi segnaposti, che, nel documento finale generato, verrano sostituiti dal valore indicato dal segnaposto.

ATTENZIONE: modello si riferisce, nel contesto di questa documentazione, ad un normale file .odt contente dei segnaposti, il file deve essere in formato documento di testo ODF, estensione .odt.

Il modello per generare il documento finale, da caricare in fase di configurazione del report, è un normale documento odt e dove c’è del testo, lì può essere inserito un segnaposto, all’interno del normale flusso del testo, anche dentro una tabella.

Questa tipologia di report può essere collegata ad un corso o ad uno studente di un corso e permette di generare attestati, certificati e report sul corso, può inoltre essere collegata ad uno studente dell’anagrafica studenti, per generare ad esempio delle schede di iscrizione; altro utilizzo possibile è come modello di contratto, da usare nella gestione degli ordini.

2. DEFINIZIONE DEI SEGNAPOSTI

La sintassi per definire un segnaposto è {oggetto.attributo}, il nome dell’oggetto è la parte del nome a sinistra del punto, il nome dell’attributo è la parte a destra del punto; quindi, ad esempio, per mostrare nel documento finale il nome del corso si usa {course.name}, per mostrare la sede del corso si usa {location.location}.

Se il nome dell’oggetto è plurale, in inglese, significa che è una lista di valori, che può essere utilizzata all’interno di una tabella o per creare un elenco di valori nel documento finale, utilizzando una apposita sintassi per indicare l’inizio e la fine della lista; nella lista dei segnaposti che segue è indicato quando un segnaposto è una lista.

Gli oggetti course, students, student, teachers, teacher, posseggono un attributo che ha un comportamento diverso, l’attributo customfields, la cui sintassi è {oggetto.customfields[codice]}, che serve per mostrare il valore di un campo personalizzato, ad esempio, per mostrare il valore del campo personalizzato del corso con codice _LIVELLO, si usa {course.customfields[_LIVELLO]}.

Riassumendo, se volessimo mostrare il nome, il codice, la sede e il campo personalizzato _LIVELLO, del corso:

{course.name}

{course.code}

{location.location}

{course.customfields[_LIVELLO]}

3. LISTE DI SEGNAPOSTI

La sintassi per utilizzare una lista di valori, prevede di indicare dove inizia la lista e dove finisce, nel blocco di testo racchiuso tra i due marcatori si inseriscono i segnaposti per mostrare i valori di ogni elemento della lista, ad esempio per elencare i nomi completi e l’indirizzo email di ogni studente del corso:

[!– BEGIN students –]

{students.fullName} {students.email}

[!– END students –]
la riga tra [!– BEGIN students –] e [!– END students –] sarà ripetuta per ogni studente, nel documento finale.

4. SEGNAPOSTI IN TABELLE

La sintassi per utilizzare una lista di valori all’interno di una tabella, prevede di indicare dove inizia la riga della tabella e dove finisce, nel blocco di testo racchiuso tra i due marcatori si inseriscono i segnaposti per mostrare i valori di ogni elemento della lista, ad esempio per elencare i nomi completi, l’indirizzo email ed il telefono mobile di ogni studente del corso, all’interno di una tabella:

[!-- BEGIN row.students --]

{students.fullName}
{students.email}
{students.mobile}

[!-- END row.students --]

la riga della tabella tra [!– BEGIN row.students –] e [!– END row.students –] sarà ripetuta per ogni studente, nel documento finale.

5. BLOCCHI CONDIZIONALI

Il blocco condizionale è una parte del documento, delimitato da appositi marcatori, al quale è associato una condizione, che può essere vera o falsa, se è vera il contenuto del blocco viene incluso nel documento finale, se falsa il contenuto del blocco viene eliminato dal documento finale.

La sintassi per definire il blocco condizionale prevede di indicare l’inizio e la fine del blocco, indicando la condizione associata, ad esempio per definire un blocco condizionale da mostrare solo se l’ordine è scontato:

[!– IF order.isDiscounted –]

Sconto: {order.discount}

[!– ENDIF order.isDiscounted –]

order.isDiscounted è la condizione, se è vera l’ordine è scontato e viene mostrato lo sconto applicato, se è false l’ordine non è scontato e la riga dello sconto non verrà inserita nel documento finale.

6. ELENCO SEGNAPOSTI DISPONIBILI

Azienda che emette la fattura:

SEGNAPOSTO

VALORE

NOTE

{company.address}

indirizzo

{company.cap}

codice di avviamento postale

{company.city}

città

{company.country}

codice della nazione

{company.email}

email

{company.mobile}

telefono mobile

{company.name}

ragione sociale

{company.phone}

telefono fisso

{company.province}

provincia

{company.taxcode}

codice fiscale

{company.vatnumber}

partita iva


Contraente:

SEGNAPOSTO

VALORE

NOTE

{contractor.address}

indirizzo

{contractor.birthdate}

data di nascita

{contractor.birthplace}

luogo di nascita

{contractor .cap}

codice di avviamento postale

{contractor .city}

città

{contractor .customfields[]}

campo personalizzato

tra le parentesi quadre deve essere indicato il codice del campo personalizzato

{contractor .email}

email

{contractor .fullName}

nominativo

{contractor .gender}

genere

{contractor .mobile}

telefono mobile

{contractor .name}

nome

{contractor .pec}

indirizzo di posta elettronica certificata

{contractor .phone}

telefono fisso

{contractor .province}

provincia

{contractor .surname}

cognome

{contractor .taxcode}

codice fiscale

{contractor .vatnumber}

partita iva


Corso, valorizzato solo se c’è un solo corso nell’ordine:

SEGNAPOSTO

VALORE

NOTE

{course.academicYear}

anno accademico

{course.booksTitleList}

libri di testo

ogni titolo è separato con la virgola dal successivo

{course.code}

codice

{course.cost}

costo

{course.customfields[]}

campo personalizzato

tra le parentesi quadre deve essere indicato il codice del campo personalizzato

{course.endDate}

data fine

{course.hours}

numero di ore

{course.lessons}

numero di lezioni

{course.locationCompleteAddress}

indirizzo completo sede corso

{course.locationName}

nome sede corso

{course.name}

nome

{course.startDate}

data inizio

{course.subject}

materia di studio

{course.teachersFullNameList}

nominativi docenti

ogni nominativo è separato con la virgola dal successivo


Corsi, valorizzato solo se c’è più di un corso nell’ordine (lista):

SEGNAPOSTO

VALORE

NOTE

{courses.academicYear}

anno accademico

{courses.booksTitleList}

libri di testo

ogni titolo è separato con la virgola dal successivo

{courses.code}

codice

{courses.cost}

costo

{courses.customfields[]}

campo personalizzato

tra le parentesi quadre deve essere indicato il codice del campo personalizzato

{courses.endDate}

data fine

{courses.hours}

numero di ore

{courses.lessons}

numero di lezioni

{courses.locationCompleteAddress}

indirizzo completo sede corso

{courses.locationName}

nome sede corso

{courses.name}

nome

{courses.startDate}

data inizio

{courses.subject}

materia di studio

{courses.teachersFullNameList}

nominativi docenti

ogni nominativo è separato con la virgola dal successivo


Data corrente:

SEGNAPOSTO

VALORE

NOTE

{currentDate.date}

data corrente

{currentDate.year}

anno corrente

{currentDate.day}

giorno corrente

da 01 a 31

{currentDate.month}

mese corrente

da 1 a 12

{currentDate.monthName}

nome mese corrente

{currentDate.weekDay}

giorno della settimana


Azienda cliente:

SEGNAPOSTO

VALORE

NOTE

{customerCompany.address}

indirizzo

{customerCompany.cap}

codice di avviamento postale

{customerCompany.city}

città

{customerCompany.country}

codice della nazione

{customerCompany.email}

email

{customerCompany.mobile}

telefono mobile

{customerCompany.name}

ragione sociale

{customerCompany.phone}

telefono fisso

{customerCompany.province}

provincia

{customerCompany.taxcode}

codice fiscale

{customerCompany.vatnumber}

partita iva


Elementi (righe) dell’ordine (lista):

SEGNAPOSTO

VALORE

NOTE

{details.type}

tipo

{details.amount}

importo

{details.description}

descrizione

{details.netAmount}

importo al netto dell’iva

{details.note}

note

{details.studentFullName}

nominativo studente

{details.vat}

aliquota iva

{details.vatAmount}


Beni/servizi dell’ordine (lista):

SEGNAPOSTO

VALORE

NOTE

{goodsServices.name}

nome

{goodsServices.description}

descrizione

{goodsServices.price}

prezzo


Pagamenti rateizzati (lista):

SEGNAPOSTO

VALORE

NOTE

{installments.amount}

importo rata

{installments.description}

descrizione

{installments.expiry}

data scadenza

{installments.number}

numero rata

{installments.paid}

se pagata

{installments.paymentDate}

data pagamento

{installments.remaining}

ammontare ancora da pagare

{installments.stampAmount}

importo bollo

{installments.status}

stato rata

CONDIZIONE

VALORE

NOTE

installments.isAbandoned

vero se la rata è abbandonata, falso altrimenti

installments.isCanceled

vero se la rata è cancellata, falso altrimenti

installments.isNotPaid

vero se la rata è da pagare, falso altrimenti

installments.isPaid

vero se la rata è pagata, falso altrimenti

installments.isPartiallyPaid

vero se la rata è pagata parzialmente, falso altrimenti


Pacchetti di lezioni (lista):

SEGNAPOSTO

VALORE

NOTE

{lessonPackets.cost}

costo

{lessonPackets.hours}

ore di lezione

{lessonPackets.minutesPerHours}

durata dell’ora di lezione

in minuti

{lessonPackets.name}

nome

{lessonPackets.type}

tipo

1 se pacchetto aperto, 0 altrimenti


Tessera di iscrizione:

SEGNAPOSTO

VALORE

NOTE

{membership.cost}

costo

{membership.description}

descrizione

{membership.studentFullName}

cognome e nome studente


Modello del corso, valorizzato se vi è un solo corso nell’ordine:

SEGNAPOSTO

VALORE

NOTE

{model.name}

nome modello

{model.rate}

costo mensile


Modelli dei corsi, valorizzato se vi sono due o più corsi nell’ordine (lista):

SEGNAPOSTO

VALORE

NOTE

{models.name}

nome modello

{models.rate}

costo mensile


Dati ordine:

SEGNAPOSTO

VALORE

NOTE

{order.amount}

importo totale dell’ordine

{order.amountPaid}

importo pagato

{order.amountPaidOnOrder}

importo pagato all’ordine

{order.amountToPay}

importo ancora da pagare

{order.customfields[]}

campo personalizzato

tra le parentesi quadre deve essere indicato il codice del campo personalizzato

{order.date}

data

{order.discount}

sconto

{order.installmentsAmount}

importo singola rata

{order.installmentsCounter}

numero di rate

{order.note}

note

{order.paymentsCounter}

numero di pagamenti effettuati

{order.status}

stato pagamento

{order.teachingYear}

anno accademico

{order.type}

tipo

{order.year}

anno

CONDIZIONE

VALORE

NOTE

order.isDiscounted

vero se ordine scontato, falso altrimenti

order.isNotDiscounted

vero se ordine non scontato, falso altrimenti

order.isNotStudentSameAsContractor

vero se il contraente e lo studente non sono la stessa persona, falso altrimenti

order.isNotVatAdded

vero se l’ordine è senza iva, falso altrimenti

order.isPartiallyPaid

vero se l’ordine è parzialmente pagato, falso altrimenti

order.isStudentSameAsContractor

vero se il contraente e lo studente sono la stessa persona, falso altrimenti

order.isVatAdded

vero se l’ordine è con iva, falso altrimenti


Pagamenti (lista):

SEGNAPOSTO

VALORE

NOTE

{payments.amount}

importo

{payments.date}

data

{payments.method}

metodo di pagamento


Offerte cumulative (lista):

SEGNAPOSTO

VALORE

NOTE

{packageOffers.cost}

costo

{packageOffers.name}

nome

{packageOffers.note}

note

{packageOffers.selfSubscription}

sottoscrizione autonoma studente

1 se lo studente si può iscrivere autonomamente, 0 altrimenti

{packageOffers.type}

tipo di offerta

1 se offerta di tipo interno, 0 altrimenti


Studente, valorizzato solo se l’ordine è relativo ad un solo studente:

SEGNAPOSTO

VALORE

NOTE

{student.address}

indirizzo

{student.birthday}

data di nascita

{student.birthplace}

luogo di nascita

{student.cap}

codice di avviamento postale

{student.city}

città

{student.customfields[]}

campo personalizzato

tra le parentesi quadre deve essere indicato il codice del campo personalizzato

{student.email}

email

{student.fullName}

nominativo

{student.gender}

genere

{student.mobile}

telefono mobile

{student.name}

nome

{student.phone}

telefono fisso

{student.province}

provincia

{student.surname}

cognome

{student.taxcode}

codice fiscale

{student.vatnumber}

partita iva


Studenti, valorizzato solo se l’ordine è relativo a più studenti (lista):

SEGNAPOSTO

VALORE

NOTE

{students.address}

indirizzo

{students.birthday}

data di nascita

{students.birthplace}

luogo di nascita

{students.cap}

codice di avviamento postale

{students.city}

città

{students.customfields[]}

campo personalizzato

tra le parentesi quadre deve essere indicato il codice del campo personalizzato

{students.email}

email

{students.fullName}

nominativo

{students.gender}

genere

{students.mobile}

telefono mobile

{students.name}

nome

{students.phone}

telefono fisso

{students.province}

provincia

{students.surname}

cognome

{students.taxcode}

codice fiscale

{students.vatnumber}

partita iva


Anno accademico:

SEGNAPOSTO

VALORE

NOTE

{teachingYear.endDate}

data finale

{teachingYear.firstLesson}

data prima lezione

{teachingYear.lastLesson}

data ultima lezione

{teachingYear.name}

nome anno accademico

{teachingYear.startDate}

data iniziale

7. CARICAMENTO A SISTEMA DEL MODELLO DI CONTRATTO

Per inserire il modello del contratto di iscrizione nel sistema navigare su Configurazione → Reports e cliccare il pulsante “Aggiungi report“.
Dalla prossima schermata compilare i seguenti campi:

  • Nome*: il nome del report (ad esempio “Contratto standard”, “Contratto corsi estivi”, “Contratto corsi di lingua”, etc)
  • Descrizione: eventuale descrizione del contratto di iscrizione
  • Tipo di report: scegliere l’opzione “Modello di contratto” per poter caricare il proprio modello
  • Sezione in cui mostrare il report *: Ordini
  • Estensione del modello: OpenOffice Write (.odt)
  • Modello del report: caricare il modello di contratto in formato ODT
  • Seleziona tipo: selezionare il tipo di estensione del file che dovrà avere il contratto in sede di scaricamento o invio al cliente,  potendo scegliere tra:
    • OpenOffice Write (.odt)
    • Portable Document Format (.pdf)
  • Ordine *: l’ordine di elencazione dei report (es. 1, 2, 3, etc)

Cliccare il pulsante “Aggiungi report” per salvare l’operazione.

Dopo aver caricato il modello, entrare in modifica dello stesso (cliccando l’icona con la pennetta di modifica) e spuntare il checkbox “Abilitato” per abilitare l’esportazione del report dai corsi e cliccare uno dei due pulsanti in fondo alla pagina per salvare l’operazione.

 

Infine, cliccare l’icona sulla riga del modello caricato, per abilitare gli account amministrativi che potranno utilizzare il modello inserito, sia in sede di iscrizione, sia in sede di scaricamento o invio del contratto al cliente.

8. UTILIZZO DEL MODELLO DI CONTRATTO

In fase di iscrizione dello studente, molto semplicemente, sarà possibile scegliere quale modello di contratto utilizzare tra quelli inseriti ed abilitati, e procedere poi con la ordinaria emissione dell’ordine.

Successivamente, navigando alla voce di menù Gestione finanziaria → Gestione degli ordini, alla voce “Modello di contratto“, il sistema indicherà il modello di contratto che è stato scelto in sede di iscrizione dello studente.

Sarà possibile quindi scaricare il file dell’ordine emesso (nel formato scelto durante la configurazione del modello di contratto) oppure inviarlo tramite email, cliccando l’icona  .

Ora, dal prossimo pop-up mostrato dal sistema, sarà possibile:

  • Modello di contratto: scegliere di scaricare/inviare al cliente il contratto di iscrizione, utilizzando un diverso modello rispetto a quello scelto in fase di iscrizione, tramite il relativo menù a tendina. Di default il sistema preseleziona il modello di contratto scelto in fase di iscrizione
  • Scarica: scaricare il file del contratto di iscrizione (nell’estensione che è stata scelta in fase di configurazione, quindi PDF oppure ODT)
  • Invia al cliente: inviare al cliente il contratto di iscrizione tramite email

 

9. ESEMPI DI UTILIZZO

1. Esempio modello di contratto standard

 

Lascia un commento

Devi essere loggato per lasciare un commento.