Questa pagina ha un contenuto tecnico, é destinata in modo particolare ad operatori informatici, consulenti software e responsabili aziendali.
Quante volte succede che si vende/acquista il "miglior gestionale del mondo" ma poi ... poi con il tempo nascono esigenze nuove, servirebbe una funzione che non c'è o che non è proprio come la si vorrebbe … a volte ci si "arrangia con un nuovo report" … ma poi manca un dato, il report non basta … magari si valuta se interfacciare un altro software, si aggiunge un "pezzo esterno", a volte ci si "arrangia con Excel", altre volte si rinuncia e ci si adegua.

Ci troviamo dal cliente … ci chiede un semplice report, si potrebbe fare sul posto .. "SI, MA servirebbe Crystal Report, qui non è installato!" … dovremmo modificare una query, si potrebbe risolvere in pochi minuti ... "SI, MA qui c'è la versione Express di SQL Server, non abbiamo il Management Studio!" … il cliente ci chiede di gestire un campo che nella tabella nel database c'è, ma non è presente sul form … basterebbe un attimo ... "SI, MA questo gestionale non permette di creare o di modificare form!" e potremmo ancora continuare con altri simili casi di quotidiano "SI, MA…". E' la casistica tipica, quanto mai reale, con cui fornitori di software e clienti si misurano quotidianamente. In Wess.Net scripting open source non c'è nulla di cablato, di immodificabile. "Wess.Net Enterprise" è l'esempio principe di come un applicativo gestionale possa essere totalmente pilotato dall'esterno (intervenendo con lo scripting) e di conseguenza possa essere modificato ed adeguato all'occorrenza.

Wess.Net offre vantaggi per tutti gli attori in gioco: il fornitore del software, tipicamente una software-house o un consulente informatico, il personale tecnico che ogni giorno opera "sul campo" e non per ultimo l'azienda utente-finale. Il fornitore del software può soddisfare le richieste del cliente, il cliente può contare sulla flessibilità del software, la risposta a qualsiasi esigenza può essere sempre "OK, si può fare". In Wess.Net scripting open source tutti gli strumenti sono disponibili, sempre e subito. L'eventuale "SI, MA .." è dettato soltanto da valutazioni tecniche e commerciali ... valutazioni tecniche perché non è mai una buona prassi fare le cose al volo, valutazioni commerciali perché è sempre opportuno quantificare attentamente i costi … Il fatidico "SI, MA .." con Wess.Net s.o.s. si trasforma sempre in "OK, analizziamo meglio e si può fare!". E possiamo andare anche oltre. implementando funzionalità ex-novo, interamente "fatte su misura".
Wess.Net scripting open source

Wess.Net s.o.s. è una infrastruttura scripting open source che mette a disposizione di software-house, consulenti informatici ed aziende un insieme di tecnologie e di moduli programmabili, integrati organicamente, equiparandosi a quello che nell'ambito dello sviluppo software si definisce un “ ambiente di sviluppo ”. Questa solida infrastruttura è la base su cui è possibile modellare il gestionale sulle reali esigenze di un'impresa.

Con Wess.Net le aziende possono abbandonare la metodologia di acquisto di un software “adatto” alle proprie esigenze, passando alla soluzione della “totale adattabilità” del software.

Wess.Net é una piattaforma applicativa concepita per superare i limiti dei gestionali tradizionali e per consentire indipendenza, autonomia, economicità e salvaguardia dell'investimento nel tempo . E' una risposta concreta ed innovativa alle crescenti esigenze di tecnologica gestionale al passo con i tempi. Wess.Net é implementato su tecnologie standard di mercato, garantendo indipendenza tecnologica dal produttore e dai consulenti che su di essa creano personalizzazioni e nuove soluzioni. Risponde a criteri di economicità sia in fase di adozione che in fase di adeguamento alle esigenze aziendali, perché usa infrastrutture di sistema e database relazionali di larghissima diffusione.

La piattaforma svolge la funzione di “motore”, affidabile e garantito, che si potrebbe concettualmente assimilare quasi ad un sistema operativo. Il “motore” è pilotato da un linguaggio interno di scripting ( WnScript ) e dal linguaggio SQL disponibile per i database. Il linguaggio WnScript ha una sintassi simile al VB Script, facile ed immediato. Il linguaggio SQL è lo standard di programmazione dei database relazionali. Ambedue i linguaggi sono a livello di “codice sorgente”.

I vantaggi dello scripting open source basato su tecnologie standard di mercato

Wess.Net scripting open source è realizzato su tecnologie di ultimissima generazione, sviluppato con Microsoft Visual Studio 2008 (2010), basato interamente sull'infrastruttura Microsoft .Net Framework e sul database relazionale Microsoft SQL Server 2008.

Cosa implicano queste scelte?

  • L'infrastruttura Microsoft .NET Framework è la tecnologia su cui è e sarà sviluppato tutto il software per le piattaforme Microsoft (applicativi desktop, applicativi client/server, applicazioni WEB, applicativi Mobile per Pocket PC e Smartphone)
  • Il software basato su Microsoft .NET Framework è ottimizzato per gli attuali sistemi operativi a 32-bit. Lo stesso software, senza necessità di alcuna modifica, è immediatamente utilizzabile anche su sistemi operativi a 64bit.
  • Un software basato sul Microsoft .NET Framework è già “pronto” per le nuove generazioni di server e per le future versioni dei sistemi operativi senza necessità di alcun intervento.
  • SQL Server 2008 è il server di database in grado di sfruttare pienamente le potenza delle piattaforme hardware a 32bit ed a 64-bit.
Queste scelte come rispondono ai criteri di indipendenza tecnologica e di economicità?

•  L'infrastruttura .NET Framework non ha costi.
•  SQL Server 2008 Express Edition è gratuito, gestisce database fino a 4GB di dati, limite che soddisfa le esigenze della maggior parte delle piccole e micro imprese, a costo zero.
•  Si tratta di standard industriali, conosciuti da tutti gli sviluppatori e consulenti informatici. La loro gestione è accessibile a tutti gli addetti ai lavori senza legare in modo indissolubile l'azienda acquirente al fornitore del software. Tutti questi elementi insieme determinano minori costi nel breve e medio periodo.
I vantaggi della programmabilità scripting open source e di strumenti integrati

Lo scripting open source , nella sua accezione più estesa, è la “giusta via di mezzo” tra il software totalmente “open” ed il software interamente o praticamente “close”.

In Wess.Net, scripting open source significa un motore consolidato con illimitata programmabilità, ottenuta con:

•  Metadati di sistema che descrivono e contengono gli attributi della base dati.
•  Parametri operativi che modificano il comportamento del software.
•  Parametri che determinano la composizione dei menù/pulsanti e le azioni a questi associate.
•  Parametri che descrivono e determinano l'aspetto, il contenuto e l'operatività dell'interfaccia.
•  Linguaggio di scripting interno (WnScript), in formato sorgente, per programmare il software.
•  Linguaggio di scripting esterno (T/SQL), in formato sorgente, per programmare il database.
•  Interazione tra i due linguaggi di scripting.

In Wess.Net scripting open source, tutto integrato significa avere sempre a disposizione:

•  Editor e debugger integrato del linguaggio di scripting ( WnScript ).
•  Editor integrato del linguaggio SQL.
•  Form e grid designer integrati.
•  Report designer visuale integrato.
•  Strumenti integrati per la manutenzione, la gestione, l'intervento sui database SQL Server.

L'insieme di questi elementi rappresenta vantaggi per tutti gli attori in gioco: il fornitore del software, tipicamente una software-house o un consulente informatico, il personale tecnico che ogni giorno opera “sul campo” e non per ultimo l'azienda utente-finale.

Parliamo di una infrastruttura scripting open source programmabile con linguaggi a sorgente aperto. Sono questi linguaggi a determinare il comportamento del software, a partire dall'interfaccia utente fino alle elaborazioni più complesse. In sintesi si dispone di un organico, solido ed affidabile KIT di sviluppo comprensivo di tutti gli strumenti sempre a disposizione, anche quando ci si trova presso il cliente utente-finale.

In Wess.Net scripting open source non c'è nulla di cablato, di immodificabile. “Wess.Net Enterprise” è l'esempio principe di come un applicativo gestionale possa essere totalmente pilotato dall'esterno (intervenendo con lo scripting) e di conseguenza possa essere modificato ed adeguato all'occorrenza.

Il fornitore del software può soddisfare le richieste del cliente, il cliente può contare sulla flessibilità del software, la risposta a qualsiasi esigenza può essere sempre “OK, si può fare”.

Le tecnologie usate per Wess.Net

Wess.Net s.o.s. necessita di Microsoft .Net Framework 3.5 SP1 (o versione successiva) su ciascun PC utilizzato come client di rete e di Microsoft SQL Server 2008 sul SERVER di rete (qualsiasi edizione compresa la Express Edition). E' sviluppato interamente con Microsoft Visual Studio 2008 (--> 2010). La maggior parte del codice è scritto in Visual Basic .Net (CLS Compliant) con un minimo apporto di codice scritto in linguaggio C#. I componenti software nativi (EXE/DLL) hanno una occupazione su disco di circa 6 MB e fanno uso di alcuni componenti di terze parti per una occupazione totale su disco di 20 MB circa. Ciascun client di rete impegna mediamente 20/25 MB di RAM mantenendo questo consumo tendenzialmente costante anche in presenza di un'attività intensamente interattiva. Per mantenere il consumo di risorse ad un livello ottimale, il “motore” della piattaforma colloquia con il sistema operativo ed all'occorrenza forza il rilascio della memoria utilizzata in eccesso.

Tutta l'infrastruttura si basa essenzialmente su due database di sistema con denominazione fissa più un database con denominazione variabile per ciascuna “azienda” gestita. Oltre ad SQL Server 2008 sono presenti ed utilizzati piccoli database SQL-like (VistaDB) utilizzati per archiviare parametri di protezione e parametri di accesso ad SQL Server stesso.

La struttura delle tabelle è fortemente “normalizzata” riducendo quasi a zero la ridondanza delle informazioni ed é fortemente “tipizzata” con un uso accorto dei tipi di campo. Di conseguenza la dimensione dei file di database è mantenuta al minimo indispensabile e si traduce in minori costi di I/O su disco, maggior velocità nell'accesso ai dati, maggior velocità nei backup. Le novità tecniche presenti in SQL Server 2008 consentono inoltre la compressione dinamica delle pagine di dati. L'uso congiunto di tutte le caratteristiche utili alla riduzione del consumo di risorse si traduce in una minore occupazione su disco, in un consumo ottimizzato della memoria RAM sia sul server che sui client e, non per ultimo, in un ridotto traffico di rete, contribuendo ad un generale positivo riflesso sulle prestazioni.

Grazie alle potenti caratteristiche presenti in SQL Server 2008 è possibile leggere e manipolare dati di origine diversa, come ad esempio file su disco, dati presenti in database eterogenei, ad esempio ORACLE o MySQL. È possibile eseguire query SQL per restituire risultati in formato XML anziché come set di righe standard. Le query possono essere eseguite direttamente, essere incapsulate in procedure o in funzioni definite dall'utente. Una configurazione con server collegati consente ad SQL Server di eseguire comandi e query distribuite ampliando a dismisura l'applicabilità di Wess.Net per esigenze peculiari.

La tecnologia interna di Wess.Net

A corredo dei file EXE/DLL che svolgono la funzione di “motore” (pilotato dai linguaggi di scripting) sono disponibili strumenti di gestione e di ampliamento della piattaforma.

Wess.Net è sostanzialmente costituito da due file eseguibili: WnLogin.exe che gestisce l'autenticazione utente, il setup e gli aggiornamenti e WnMain.exe che svolge la funzione di applicativo principale. I due file eseguibili a loro volta usano quattro DLL in cui sono incapsulate le funzionalità del “motore”.

IN QUESTI FILE COMPILATI SONO PRESENTI UNICAMENTE FUNZIONI GENERICHE, integralmente pilotate dall'esterno tramite gli strumenti scripting open source : il linguaggio di scripting nativo (WnScript) ed il linguaggio SQL, ambedue a sorgente “aperto”.

L'installazione è completamente automatizzata. Può essere eseguita su qualsiasi versione desktop di Windows a partire Windows XP SP2 e su qualsiasi versione server a partire da Windows Server 2003. In ambedue i casi l'unico prerequisito è la presenza di Microsoft .Net Framework. Sul server di rete o sul PC che svolge la funzione di server è necessario installare Microsoft SQL Server 2008. Sui client di rete non sono necessari setup, è sufficiente un collegamento all'eseguibile di start-up presente nella cartella di installazione previa condivisione in rete della stessa e previa configurazione delle policy di sicurezza. L'aggiornamento di una installazione è totalmente automatizzato con allineamento dei database e di tutte le componenti software. Gli aggiornamenti garantiscono il mantenimento delle personalizzazioni ed implementazioni realizzate per un cliente finale.

La cartella di installazione ha una struttura estremamente semplice, fondamentalmente composta dalla cartella di primo livello e da una sola sotto-cartella indispensabile all'operatività del software. La cartella di installazione occupa meno di 200 Megabyte, per la maggior parte impegnati dalla cartella in cui sono presenti i file di database utilizzati in fase di setup.
Linguaggio di scripting nativo ed integrato, interazione bi-direzionale con il linguaggio SQL

La piattaforma mette a disposizione moduli programmabili per i quali esiste soltanto uno “scheletro”. Il “vero” modulo software è costruito a run-time in base alle tabelle di parametri che lo definiscono e le sue funzionalità sono programmata esternamente, tramite WnScript o tramite SQL.

Le procedure SQL, quando previsto, ricevono una stringa codificata, composta di coppie campo-valore, in cui sono condensati i valori dei campi in gestione . Il valore di ritorno della procedura può essere un'unica stringa composita di tipo MIX ( “ Me ssaggio <> ReturnValues <> ReturnSQL <> ReturnSCRIPT” ) oppure una query SQL.

Le procedure SQL possono ritornare messaggi opportunamente formattati all'applicativo in modo asincrono . Un messaggio che inizia con <script> viene considerato il testo di uno script (WnScript). Lo script può eseguire qualsiasi operazioni come se fosse stato lanciato da una voce di menù.

Da questo si può intuire l'enorme flessibilità di cui si dispone. Si tratta di una reale comunicazione bidirezionale, il linguaggio WnScript può delegare al linguaggio SQL operazioni di qualsiasi complessità e viceversa.

Cosa si può fare quando una qualsiasi esigenza non trovasse una "s.o.s. solution"

Cosa si può fare se una qualsiasi esigenza non fosse “programmabile” né con WnScript né con SQL? In questo improbabile caso, una immediata soluzione è fornita da SQL Server stesso, che è in grado di ospitare ed eseguire codice esterno scritto in uno dei linguaggi che fanno uso del CRL (Common Language Runtime). E' sicuramente una potente soluzione, ma in alcuni casi può presentare difficoltà tecniche.

Con Wess.Net è disponibile un'altra strada per rispondere ad esigenze particolarmente complesse e non implementabili tramite i soli linguaggi di scripting: l'esecuzione di un file eseguibile esterno comunicante con SQL Server. Sfruttando la possibilità offerta da Visual Studio di generare programmi di tipo “ console ”, ovvero privi di interfaccia utente, è possibile risolvere qualsiasi problema, sempre in modo completamente “ open ”. In Wess.Net sono disponibili strumenti di interfacciamento con gli applicativi di tipo “ console ” perché possano essere agevolmente utilizzati con il comando xp_cmdshell @sCmd [, ‘no_output'] . Gli applicativi console r icevono parametri e ritornano dati come output diretto della procedura che li richiama.
La programmabilità s.o.s. tradotta in reale applicazione software gestionale

Ad ulteriore riprova della programmabilità tradotta in reale applicazione software si consideri il fatto che il software gestionale “Wess.Net Enterprise” é interamente implementato sulla piattaforma Wess.Net scripting open source.

Le funzionalità gestionali presenti in Wess.Net Enterprise:

•  NON sono programmate in VB.Net.
•  NON sono compilate nelle DLL della piattaforma.
•  NON hanno una sola riga di codice che NON SIA a livello di sorgente aperto , scritta con WnScript o con il linguaggio SQL

“Wess.Net Enterprise” è un software gestionale a sorgente aperto implementato su Wess.Net scripting open source.

Apro lo schedario clienti con il linguaggio di scripting?

@0$ = "%"
Show("CliAna{0}")

Apro una fattura dalla griglia delle fatture emesse?

Dim iUniq = ValueGet("Uniq")
If iUniq > 0 Then
    Dim iDocTip = ValueGet ("DocTip")
    Dim sSigla$ = DbRead("uspDD_sigla_ifexist", "", iDocTip, iUniq. ToString())
    Dim sForm$ = "doc" & sSigla$ & "{0}"
    ShowDoc(iUniq, sForm$, iDocTip, "docVE" )
EndIf

Lancio un file eseguibile esterno?

Dim sPath$ = AppInfoGet("pathserver")
Dim sFile$ = sPath $ & "\doc\WessHelp.chm"
RunFile(sFile$)

Wess.Net scripting open source é un generatore di business

Ci pare evidente da quanto fin qui detto che il grado di innovazione sia notevole sotto gli aspetti strategici, commerciali e tecnici. Wess.Net scripting open source rappresenta un approccio decisamente nuovo alle problematiche del software gestionale e si pone in antitesi rispetto alle tradizionali politiche di produzione e di distribuzione adottate finora dalle software-house.

Wess.Net scripting open source rompe lo stretto legame, molto spesso vissuto come vincolo vessatorio, a cui è stata finora costretta l'azienda-cliente verso l'azienda fornitrice. Wess.Net è contemporaneamente un gestionale pronto all'uso ed una piattaforma su cui implementare. Non per ultimo, Wess.Net scripting open source risponde a criteri di economicità .

Se è pur vero che molti gestionali in commercio dispongono di strumenti di personalizzazione, è altrettanto vero che tali strumenti sono quasi sempre esterni. In Wess.Net tutti i “designer” sono nativi ed integrati, sempre immediatamente disponibili. La presenza del linguaggio di scripting interno garantisce la pilotabilità totale, a partire dall'interfaccia utente fino alle elaborazioni più complesse.

In sintesi Wess.Net scripting open source coniuga in una unica solida ed affidabile piattaforma applicativa a sorgente aperto, in modalità nativa ed integrata, tutti gli strumenti utili e necessari al raggiungimento dell'obiettivo prefissatoci: la “totale adattabilità” del software alle esigenze dei nostri clienti. E' adottabile da altre software-house come “nucleo” su cui realizzare verticalizzazioni per specifici settori produttivi. Consente la valorizzazione del know-how tecnologico degli operatori del settore, l'azienda-cliente che adotta Wess.Net può avvalersi di tecnici informatici di fiducia con skill specifici sulla realtà settoriale in cui l'azienda opera. Usando questa infrastruttura con la funzione di “motore” affidabile e garantito, entità terze possono costruire “LA soluzione software”, esattamente così come necessita a ciascuna azienda, dando vita ad un “generatore di business condiviso”.



Panoramica sulle funzionalità gestionali

Panoramica sugli strumenti integrati

Schema dell'infrastruttura di sistema

DOWNLOAD

Wess.Net EXPERTs