Come funziona
In breve
Voi descrivete l'applicazione. L'applicazione funziona a partire da quella descrizione.
Non esiste un passaggio intermedio in cui la descrizione viene trasformata in codice. È la descrizione stessa, conservata in un database, quella che il sistema in esecuzione legge. Da questa sola decisione discende ogni altra proprietà di GTSuite, comprese quelle che nella pagina precedente sembrano troppo belle per essere vere.
I pezzi
| Pezzo | Che cos'è | Chi lo tocca |
|---|---|---|
| Il Designer | Un'applicazione desktop per descrivere pagine, dati e comportamenti | Chi costruisce e mantiene l'applicazione |
| Le definizioni | Pagine, campi, disposizione, regole, interrogazioni, menu, permessi, traduzioni, conservate come dati | Prodotte nel Designer, pubblicate sul server |
| Il server | Node.js: serve le definizioni, esegue le interrogazioni, applica le regole | Installato una volta, poi lasciato in pace |
| Il client | Angular e Ionic: un'unica applicazione generica che disegna qualsiasi pagina dalle sue definizioni | I vostri utenti, nel browser o sul telefono |
| Il vostro database | I dati aziendali, in un database relazionale standard | Vostri, leggibili con i vostri strumenti |
Notate cosa manca da quell'elenco: un archivio di codice sorgente per la vostra applicazione. La vostra applicazione non è un programma da compilare, versionare e distribuire. È un insieme di righe.
Cosa succede quando qualcosa deve cambiare
- Si descrive la modifica nel Designer: il campo in più, la regola nuova, la disposizione diversa.
- Si verifica. Il Designer conosce la forma che una definizione valida deve avere, quindi buona parte di quello che altrove sarebbe un errore viene intercettato prima di pubblicare.
- Si pubblica. Le definizioni vanno al server.
- Si ricarica. Alla prossima apertura, la pagina è la pagina nuova.
Nessuna compilazione, nessuna finestra di rilascio, nessun bisogno di concordare un fermo con chi sta cercando di lavorare. E poiché la pubblicazione avviene per pagina, modificare una schermata non può disturbare le altre.
I limiti, detti onestamente
Le pagine standard, che sono la grande maggioranza di qualsiasi applicazione gestionale, non richiedono codice: elenchi, schede, testata e righe, filtri, ricerche, cruscotti. Sono tutte disegnate dallo stesso client generico a partire dalle loro definizioni.
Alcune cose però sono davvero codice, e non facciamo finta del contrario. Una pagina con un'interazione insolita, un calcolo particolare o un collegamento con un sistema esterno può avere un proprio componente accanto a quello generico. Quello che conta sono le proporzioni: l'eccezione resta eccezione, invece di diventare il modo normale di aggiungere una schermata.
I vostri dati restano vostri
Le definizioni e i dati aziendali sono cose distinte in luoghi distinti. Ordini, fatture, movimenti e clienti vivono in un database relazionale standard, in tabelle con nomi che significano qualcosa.
La conseguenza pratica va detta chiaramente: i vostri strumenti di analisi continuano a funzionare, il vostro amministratore di database può leggere lo schema, i vostri salvataggi sono normali salvataggi di database, e se un giorno le nostre strade si dividessero i dati non resterebbero ostaggio di nulla. Lo stesso vale per le definizioni, che sono righe di tabelle leggibili ed esportabili.
Nota tecnica: la piattaforma può anche appoggiarsi a un database che avete già. Diversi dei sistemi che oggi girano su GTSuite lavorano su schemi che li precedono di anni, ed è questo che la rende utilizzabile come nuova interfaccia su un gestionale esistente, invece che come sostituzione di tutto in una volta sola.
Dove gira
La stessa installazione funziona sul nostro servizio ospitato o dentro la vostra infrastruttura, e può passare dall'una all'altra. Il luogo fisico dei vostri dati resta una decisione vostra, non una conseguenza del software che avete scelto.
Il modo migliore per capirlo
È guardare una pagina comparire senza che nessuno scriva codice. Confermate un indirizzo email e avrete un sistema vero da usare, la documentazione tecnica che ci sta dietro e gli esercizi guidati che accompagnano nella costruzione di pagine funzionanti partendo da niente.