logo
Email Module

Disponibile dalla versione v3.0

Utilizziamo le email quasi per ogni tipo di notifica digitale e non. Perché dovrebbe essere complicato fornire il proprio sistema di un robusto sistema di invio email? E se questo sistema fornisse il supporto ai template, agli invio multipli, alle notifiche di invio, alle ricevute di ritorno e al reinvio in caso di errore? Ecco il famoso Email Module, usato da anni in sistemi mission critical!

Email Module :: Funzionalità principali

  • Invio email con allegati
  • Invio email massivo basato su template, sia per il testo della mail che per gli allegati
  • Gestisce utenti multipli per gli invii con ruoli diversi
  • Monitora le email in coda
  • Invia email nel futuro! La funzionalità del delayed emailing permette di pianificare l’invio di una o più email senza inviarla subito.
  • Supporta SSL e PEC
  • Robusto, solido, usato da anni in sistemi mission critical

Report Module

Disponibile dalla versione v3.1

In tutti i sistemi è necessario generare un qualche tipo di report. Alcuni sono molto complessi altri sono relativamente semplici e devono poter essere personalizzati direttamente dall’utente finale senza troppi sforzi. Quanto sarebbe utile se l’utente finale avesse a disposizione tutta la potenza di uno strumento a lui familiare come MS Word (o LibreOffice) per personalizzare in autonomia tutti i suoi report? Il Report Module ha proprio questo scopo!

Report Module :: Funzionalità principali

  • Permette di generare report PDF di alta qualità a partire da modelli DOCX e dati in JSON
  • Può generare un solo PDF o più report PDF in funzione della struttura dei dati
  • Supporta tutte le caratteristiche avanzate di MS Word e LibreOffice Writer
  • Supporta report master/detail con annidamento arbitrario
  • L’utente finale può modificare il report con uno strumento a lui familiare come MS Word e/o LibreOffice Writer
  • Supporta un gran numero di filtri built-in per personalizzare il report e permette di definire ulteriori filtri custom con semplici in Python
  • Supporta la generazione asincrona dei report
  • Permette di generare report ed inviarli per email appena pronti.

logo
logo
Excel Module

Disponibile dalla versione v3.1

È inutile negarlo, prima o poi tutti gli utenti chiederanno una esportazione MS Excel per i loro dati. L’Excel Module ti permette di rispondere velocemente e proattivamente a questa esigenza.

Excel Module :: Funzionalità principali

  • Permette di generare file Excel a partire da un JSON strutturato
  • Supporta tutti gli elementi di formattazione e le formule
  • Supporta la generazione di molteplici worksheet in un solo workbook
  • Supporta la generazione di grafici Sparkline
  • È estremamente veloce, anche in caso di file excel di grandi dimensioni
  • Non richiede MS Excel né sul client né sul server

Single-Sign-On Module

Disponibile dalla versione v3.

Davvero vuoi reimplementare e manutenere l’ennesima gestione utenti? Non reinventare la ruota e sfrutta i migliori design pattern a disposizione!

Single-Sign-On Module :: Funzionalità principali

  • Eseguire l’accesso a più sistemi con un singolo nome utente e password
  • Centralizzare la gestione utenti di più sistemi diversi in maniera semplice
  • Definire Context applicativi per profilare gli accessi e i privilegi di ogni tuo utente
  • Gestire gli utenti direttamente da DMSContainer attraverso la comoda amministrazione web
  • Utilizzare i data context per distribuire configurazione gerarchica per gli utenti

logo
logo
Event Streams Module

Disponibile dalla versione v4.0.

Vuoi davvero disaccoppiare le componenti del tuo sistema e/o comunicare con altri sistemi in maniera efficace ed efficiente? No, polling e/o data storage condiviso non sono la strada giusta! Il modulo Event Streams (disponibile in DMSContainer 4.0.x) ti permetterà di risolvere tutti i problemi di integrazione e notifica tra sistemi anche eterogenei. Comunicare usando notifiche push non sarà più complicato e difficile, ma diventerà un modo semplice ed efficiente per elevare l’architettura di base della tua soluzione software.

EventStreams Module :: Funzionalità principali

  • Inviare messaggi ad una o più code, anche in maniera transazionale
  • Integrare sistemi eterogenei senza creare dipendenze che sporcano l’architettura del sistema (es. Desktop/Mobile o Web/Mobile)
  • Permette ad un componente del sistema di eseguire operazioni a fronte di un evento generato da un qualsiasi altro componente dello stesso
  • Implementa evoluti sistemi di “Queues Purging” per evitare problemi di spazio
  • Rimanere in ascolto di “eventi” generati da microservizi ospitati da DMSContainer e reagire di conseguenza
  • Rimanere in ascolto di “eventi” generati da sistemi esterni integrati con DMSContainer e reagire di conseguenza
  • Offre soluzioni già pronte per i casi più diffusi ed è molto semplice da usare

“Probabilmente non esiste un sistema non triviale che non possa beneficiare del EventStreams Module.” – cit Un Utente

ATTENZIONE DMSContainer Standard prevedere la versione light del modulo EventStreams. EventStreams “light” ha le seguenti limitazioni rispetto alla versione fornita con DMSContainer Professional:

  • Non supporta il TTL dei messaggi
  • Non sono disponibili le API EnqueueMultipleMessages e EnqueueMessageTTL

Synch Utils Module

Disponibile dalla versione v4.1.

Una delle situazioni più comuni nei sistemi distribuiti quella di avere una risorsa condivisa; un record di database, una fattura, un ordine, un generico aggregate-root, un file, un dispositivo hardware, un file di log etc. Insomma, in tutte le situazioni in cui non deve essere possibile iniziare a modificare una entità se qualcun’altro la sta ià modificando, il modulo SynchUtils è la soluzione! Il modulo Synch Utils (disponibile in DMSContainer 4.1) permette di risolvere tutti i problemi di sincronizzazione tra sistemi distribuiti che condividono l’accesso a una risorsa condivisa.

SynchUtils Module :: Funzionalità principali

SynchUtils gestisce lock di tipo esclusivi. Con questo tipo di lock (concettualmente simili a alle CriticalSection offerte dai sistemi operativi) è facile implementare il design pattern che prende il nome di pessimistic offline lock (blocco pessimistico off-line). Questo tipo di design pattern impedisce gli aggiornamenti simultanei delle risorse in carico al sistema.

  • Le risorse potrebbero essere record, file, strutture complesse (grafi) o altro che in maniera concorrente potrebbe essere letto e/o modificato da più di un client
  • I lock eclusivi di SyhcUtils sono distribuiti e accessibili tramite una comoda API JSON-RPC
  • Quando un utente vuole aggiornare una risorsa condivisa, tenta di acquisire un lock; se lo acquisisce, nessun altro utente potrà modificare la stessa risorsa fino a quando il lock non verrà rilasciato o non scadrà.
  • Un vantaggio del modello di blocco pessimistico è rappresentato dal fatto che esso evita il problema della risoluzione dei conflitti impedendo che si verifichino.
  • Gli aggiornamenti sono serializzati e ogni aggiornamento successivo inizia con le modifiche apportate dall’utente precedente.
  • Offre soluzioni già pronte per i casi più diffusi ed è molto semplice da usare

logo