TaskBuilder.net: sviluppare verticali e add-on di Mago.net

TaskBuilder.net: sviluppare verticali e add-on di Mago.net

TaskBuilder.net è una piattaforma di sviluppo pensata per realizzare applicazioni ERP flessibili e robuste. È la piattaforma utilizzata per realizzare Mago.net, ma non è stata progettata solo per questo: permette anche la realizzazione da parte dei partner di soluzioni integrate con Mago.net.


Con TaskBuilder.net è possibile:

  • sviluppare applicazioni che lavorino in parallelo a Mago.net, con le proprie tabelle di database, Business Objects, finestre di inserimento dati, menu, report;
  • usare i Business Objects di Mago.net per compiere azioni già previste dall'applicazione standard, come, ad esempio, registrare un ordine cliente oppure calcolare il saldo di un conto contabile;
  • estendere o modificare in modo dinamico il comportamento di Mago.net senza modificare il codice sorgente originale.

TaskBuilder.net: principali caratteristiche

Concetti Generali

Alcune caratteristiche importanti da ricordare su TaskBuilder.net:

  • non si tratta di un linguaggio o piattaforma proprietaria. È basato su linguaggi di programmazione standard (C++ e C#) e si utilizzanno ambienti di sviluppo standard (MS Visual Studio);
  • non è una piattaforma di sviluppo generica. È principalmente orientata allo sviluppo di soluzioni e applicazioni di tipo ERP;
  • non è una piattaforma chiusa. Dal momento che usa linguaggi e ambienti di sviluppo standard, lascia lo sviluppatore libero di integrare altre componenti software per arrichire la propria personalizzazione;
  • non è stata pensata solo per personalizzare Mago.net, ma è la piattaforma su cui Mago.net è costruito. Questo significa che gli sviluppatori lavorano allo stesso livello e con le stesse potenzialità del team di sviluppo di Microarea.

Architettura

Ecco alcuni concetti chiave dell'architettura generale di TaskBuilder.net:

  • Componenti: TaskBuilder.net fornisce un ampio insieme di componenti software orientati alle soluzioni ERP: control, maschere, gestione del DBMS, astrazione dei Business Objects, e così via.
  • Tools: Radar, Security, Path Finder, Auditing ... TaskBuilder.net contiene moltissimi tool che aiutano l'utente ad integragire con l'applciazione, ad es.: per navigare e cercare i dati, gestire i diritti di accesso alle funzioni, tracciare le attività, e così via
  • Applicazioni: le applicazioni sono costruite basandosi sugli elementi della piattaforma. Mago.net stesso è costituito da varie applicazioni, tra cui il cuore ERP del sistema, ma il tutto è concepito per consentire agevolmente l'aggiunta di applicazioni di terze parti.
  • Web Services: tutta la comunicazione e orchestrazione dei componenti avviene utilizzando i Web Services. Questo significa che il supporto ai Web Services non è stato aggiunto solo a specifici oggetti con una interfaccia limitata, ma che i Web Services sono il protocollo di comunicazione usato da tutti gli oggetti e componenti che costituiscono taskBuilder.Net e le applciazioni con esso realizzate. Il risultato è che tutte le funzioni e componenti applicativi sono in modo trasparente raggiungibili tramite Web Services, permettendo l'uso per via programmativa dei Business Objects sviluppati con la piattaforma.

Sviluppare applicazioni

TaskBuilder.net introduce il concetto di Applicazione Dinamica. Questo significa che la soluzione ERP installata all'utente non è un singolo blocco, ma è composta da più applicazioni indipendenti che si coordinano dinamicamente per eseguire le azioni richieste dall'utente.

Nella stessa installazione possono trovare posto applicazioni fornite da diversi produttori e rivolte a diverse aree aziendali, che vengono caricate dinamicamente al momento del loro uso. Visto che tutte condividono l'ambiente e i mattoni fondamentali forniti da TaskBuilder.net, l'utente ha sul video un insieme coerente di interfaccie e comportamenti, nonostante siano forniti da componenti indipendenti.

Le applicazioni a loro volta non sono monolitiche, ma composte da moduli che possono essere installati opzionalmente, come avviene per i vari moduli applicativi di Mago.net.

Business Objects

TaskBuilder.net non solo è sviluppato con linguaggi Object Oriented, ma incoraggia un rigoroso approccio OOD (Object Oriented Design) per lo sviluppo di applicazioni. Ogni componente viene ottenuto per specializzazione di componenti astratti, integrandolo con altri. I componenti astratti contenuti nella piattaforma incorporano numerosi comportamenti predefiniti che diventano patrimonio del componente specializzato.

Ad esempio, un componente astratto che gestisce una form di inserimento dati è già in grado di:

  • salvare,caricare, ritrovare i dati in esso contenuti nel database
  • esportarsi o importarsi in formato XML
  • essere usato per via programmativa da altri componenti
  • rendersi accessibile tramite Web Services
  • usato in modo interattivo dall'utente può essere creato, modificato, cancellato, navigato, ecc.
  • ... e molto altro ancora

In molti casi basta mettere in relazione il compnente astratto con i dati che deve manipolare per ottenere un nuovo componente gestionale perfettamente funzionante.

Reporting

Le applicazioni sviluppate con TaskBuilder.net si avvalgono di un tool esclusivo per il reporting: Woorm (Windows Object Oriented Report Maker). Woorm è uno strumento potente e sofisticato di reportistica che fa anche parte della dotazione standard di Mago.net.

Gestione del Database

TaskBuilder.net fornisce una ampia gamma di componenti software che permettono di manipolare i dati dal codice applicativo. Tali componenti incapsulano gli OLEDB Provider gestiti da TaskBuilder.net (ad oggi MS SQL Server ed Oracle) con una semplice interfaccia programmativa che evita allo sviluppatore di entrare nel merito della complessità di costruzione di statements SQL compatibili tra i database.

Grazie a tali componenti è semplice comporre delle query dal proprio codice applicativo ed ottenere il risultato direttamente all'interno delle strutture di memoria utilizzate nello sviluppo.

Anche tutti gli altri aspetti dell'interazione con il DBMS (transazioni, livello di isolamento, connessioni, ecc.) sono manipolati tramite specifici componenti software forniti dalla piattaforma.

Collaborazione Dinamica tra Oggetti

TaskBuilder.net introduce un esclusivo ed innovativo approccio per estendere le applicazioni ERP, quali Mago.net, senza modificare il loro codice sorgente: il modello di Collaborazione Dinamica tra Componenti.

Infatti, la possibilità di costruire nuovi Business Objects facendo uso per via programmativa di quelli già presenti è sicuramente una caratteristica importante per realizzare applicazioni personalizzate o verticali. Tuttavia, spesso per soddisfare le esigenze del cliente o del mercato vanno estesi o modificati i comportamenti delle funzioni standard.

Chi utilizza TaskBuilder.net ha anche a disposizione tutti i sorgenti di Mago.net, che in teoria può modificare per ottenere i comportamenti desiderati. Questo viene però di norma sconsigliato, in quanto limita se non impedisce le possibilità di seguire il percorso di aggiornamento del prodotto ed impedisce di installare le nuove versioni quendo queste vengono pubblicate.

Il modello di Collaborazione Dinamica tra Componenti permette di soddisfare entrambe le esigenze e consente di cambiare dinamicamente il comportamento dei Business Objects standard senza modificare il loro source code.

Nell'implementare queste estensioni dinamiche, i Business Objects vengono collegati a run-time alle loro estensioni, e ruotano a questi tutti gli eventi significativi del loro ciclo di vita operativa. Le estensioni possono intervenire e aggiungere azioni quali calcoli, messaggi, controlli aggiuntivi, ecc. Possono anche arricchire l'interfaccia aggiungendo bottoni, finestre, gestire dati su tabelle di database di propria competenza, ecc.

Il modello di Collaborazione Dinamica non è concepito per le sole personalizzazioni: molte delle funzioni di Mago.net sono realizzate con lo stesso principio, come la gestione Agenti, molte funzioni della Produzione, ecc.

Task Builder Wizard

TaskBuilder Wizard è uno strumento di facile apprendimento ed uso che aiuta il programmatore a definire in modo interattivo e guidato nuove applicazioni basate su TaskBuilder.net.

Dall'interno della sua interfaccia semplice ed intuitiva è possibile definire e tenere sotto controllo tutti gli aspetti di un'applicazione sviluppata con TaskBuilder, guidando nella correlazione logica tra le componenti e predisponendo in modo automatico tutto l'ambiente necessario alla sua esecuzione.

TaskBuilder Wizard si rivela un grande aiuto soprattutto nella fase iniziale di design di una nuova applicazione o modulo di estensione: genera e manutiene script SQL di definizione del database, metadati XML, codice sorgente, ecc., e predispone i necessari punti di iniezione per inserire la business logic specifica della personalizzazione. Consente un notevole risparmio di tempo e rende gli sviluppatori produttivi fin dall'inizio.

Localizzazione

Le applicazioni realizzate con TaskBuilder.net sono facilmente localizzabili. Le caratteristiche di localizzazione sono state alle fondamenta nella progettazione della piattaforma.

Per quanto riguarda la localizzazione linguistica, le applicazioni realizzate con TaskBuilder.net sono facilmente traducibili in tutte le lingue, grazie al completo supporto dello standard UNICODE, che permette di gestire ogni grafia, compresa quella delle lingue dell'Estremo Oriente.

L'applicazione viene sviluppata con tutti gli elementi testuali (maschere, messaggi, ecc.) in una lingua base (di solito, l'Inglese), quindi tradotta in ogni lingua desiderata, grazie ad uno specifico strumento: TBLocalizer.

TBLocalizer supporta il processo di traduzione con la possibilità di applicare glossari, ripetere traduzioni già applicate altrove, avere una preview delle maschere per controllare l'aspetto visivo, e così via.

Gli elementi tradotti vengono memorizzati in database XML (detti "dizionari") che vengono caricati dinamicamente durante l'utilizzo del programma. Questo significa che l'applicazione può essere visualizzata in lingue differenti da parte di diversi utenti della stessa organizzazione. L'attributo della lingua di interfaccia, infatti, può essere impostato a livello di installazione, azienda o di singolo utente.

"Il gestionale per tutti"

Maggiori informazioni


"La base applicativa su cui sviluppare nuovi progetti"

Maggiori informazioni

"La piattaforma per creare applicazioni flessibili e robuste"

Maggiori informazioni