Come si personalizza SIGLA

Da SIGLAkb.
Versione del 24 apr 2013 alle 11:22 di Paolo (Discussione)
(diff) ← Versione meno recente | Versione attuale (diff) | Versione più recente → (diff)

Dp-ingranaggio3.png L’architettura di SIGLA® ed in particolare l’apertura della sua base di dati (gestita via ODBC) permette il facile sviluppo di applicazioni esterne in grado di operare sulla stessa base di dati del pacchetto.

Con questa logica è possibile la realizzazione di procedure che appaiano all’utilizzatore come icone separate rispetto a SIGLA®.
Dp-schema personalizzazioni sigla.png

Il tracciato record di tutte le tabelle è documentato in un apposito manuale che contiene le informazioni necessarie per comprendere il contenuto dei campi delle finestre, le relazioni fra le tabelle, la chiave primaria e così via.
Il manuale in oggetto si chiama tecnotes.chm ed è presente alla pagina "Documentazione Tecnica" dell'area riservata ai rivenditori del sito di Delta Phi SIGLA srl.

In molti casi, tuttavia, è auspicabile raggiungere un maggior grado di integrazione fra l’applicazione principale e le sue customizzazioni. Per consentire di raggiungere questo risultato il pacchetto esegue, in punti prestabiliti, delle chiamate a funzioni contenute in una libreria a link dinamico (SIGPPDLL.DLL) della quale viene rilasciato il sorgente (scritto in C++). Le chiamate alle funzioni esterne vengono effettuate sia dall’applicazione SIGLA® che dal programma di Configurazione.

Modificando opportunamente e ricompilando la libreria SIGPPDLL.DLL è possibile intervenire sul comportamento standard dell’applicazione e sostituire o aggiungere voci di menù. In particolare è possibile, utilizzando strumenti adeguati come Delphi o altri linguaggi in grado di generare librerie a link dinamico, realizzare delle funzioni aggiuntive o sostitutive di quelle di SIGLA® e agganciare tali funzioni al pacchetto. Le funzioni aggiuntive devono essere contenute in una libreria a link dinamico perché si possa garantire la perfetta sincronicità fra il programma chiamante (SIGLA®) e il programma chiamato (customizzazione).

In alternativa alla libreria SIGPPDLL.DLL è disponibile la libreria SPPFRAME.DLL, sviluppata interamente in Delphi, che permette di ottenere un livello di integrazione maggiore e non richiede la conoscenza del linguaggio C++.

Come ulteriore possibilità di personalizzazione SIGLA® consente di aggiungere campi di input in alcune finestre di dialogo dell'applicativo.

Un altro elemento di personalizzazione dell'applicativo è dato dalla possibilità di disegnare i moduli di stampa dei documenti gestisti dall'applicativo, modificare i report di stampa esistenti o crearne di nuovi report, operando attraverso un ambiente grafico dall'utilizzo estremamente intuitivo.

Le possibilità di personalizzazione offerte da SIGLA® sono pertanto le seguenti:

  • aggiunta di nuove voci di menù
  • sostituzione delle voci di menù standard
  • interazione con il funzionamento delle varie procedure (personalizzazione a runtime)
  • personalizzazione di alcune finestre di dialogo
  • personalizzazione dei moduli di stampa
  • creazione di report di stampa personalizzati

Per agevolare lo sviluppo di applicazioni esterne le principali funzioni di basso livello di SIGLA® (registrazione movimenti contabili, registrazione movimenti di magazzino, ecc.) sono rese disponibili all’interno della libreria a link dinamicoSPPSERV.DLL.

La libreria SIGPPDLL.DLL

La libreria è stata realizzata in C++ e compilata utilizzando Microsoft Visual C++ versione 4.1. Il sorgente della procedura è contenuto nel file SIGPPDLL.CPP e utilizza gli header files SIGPPDLL.H e DPDBASE.H.

Per modificare e ricompilare la libreria è necessario disporre delle seguenti componenti software:

  • compilatore C++ a 32 bit in funzione della versione da ricompilare
  • ODBC SDK 2.01 (contenuto nei CD d’installazione dei compilatori Microsoft® o acquistabile separatamente) per la versione Client/Server
  • libreria CodeBase 6.x per la versione START (la libreria in questione è necessaria per gli header files che sono indispensabili per la ricompilazione).

Dp-Pointing256.png Per i dettagli vedi la voce La libreria SIGPPDLL.DLL.

La libreria SPPFrame.DLL

Il metodo di personalizzazione che si basa sulla possibilità di intervenire sulla libreria a link dinamico SIGPPDLL.DLL presenta i seguenti svantaggi:

  • la reimplementazione della DLL in questione richiede una certa conoscenza del linguaggio C++ e delle tecniche di programmazione ad esso relative
  • la ricompilazione della DLL per START® versione 3 richiede l'acquisto della libreria Codebase che è necessaria solo per disporre degli header files indispensabili per la compilazione
  • occorre in ogni caso disporre di un compilatore C++, anche se lo sviluppo vero e proprio delle nuove implementazioni avviene con un linguaggio di alto livello
  • i tempi necessari allo sviluppo di add-on, soprattutto in installazioni a basso valore aggiunto, riducono la concorrenzialità economica dell'offerta.

I vantaggi riconosciuti sono invece i seguenti:

  • è possibile effettuare implementazioni con qualunque linguaggio di alto livello in grado di generare DLL
  • le personalizzazioni restano confinate in DLL esterne all'applicazione e consentono di mantenere l'utente finale all'interno del circuito degli aggiornamenti del pacchetto standard.

La SPPFrame si affianca alla SIGPPDLL come componente del sistema di sviluppo senza sostituirla. Il suo intento è quello di migliorare il sistema di sviluppo eliminando, per quanto possibile, gli svantaggi e arricchendolo di potenzialità. La SPPFrame è sviluppata interamente in Delphi e non richiede pertanto l'utilizzo del compilatore C++.

La SPPFrame consente di effettuare interventi anche pesanti di personalizzazione, come:

  • essere aggiunte e gestite nuove voci di menù
  • essere create finestre non modali all'interno della task window di SIGLA®
  • essere prodotte stampe totalmente integrate nel sistema di archiviazione/blocco/anteprima di SIGLA®
  • invocare direttamente alcune funzionalità di SIGLA®
  • produrre software in grado di essere scambiato fra aziende diverse.

Dp-Pointing256.png Per i dettagli vedi la voce La libreria SPPFrame.DLL.

Personalizzazione delle finestre

In SIGLA® è possibile personalizzare in modo semplice ed immediato le finestre di alcune anagrafiche, aggiungendo alcuni campi personalizzati che l’utente riempirà con i valori opportuni.

I campi aggiuntivi possono essere di due tipi diversi, automatici o manuali.
Per i campi automatici la memorizzazione ed il reperimento delle informazioni è eseguito automaticamente da SIGLA®, mentre per i secondi, indicati anche con il termine di campi normali, la gestione della memorizzazione e del recupero dell'informazione dalla base dati è demandata al personalizzatore che dovrà operare una reimplementazione della funzione SIGLAPPSaveObject contenuta nella libreria SIGPPDLL.DLL/SPPFROLD.DLL.

L'operazione avviene definendo in un file ASCII, il cui nome varia in funzione della finestra di dialogo che si desidera personalizzare, un insieme di istruzioni in grado di descrivere i campi da aggiungere. La funzione SIGLAPPSaveObject contenuti nella libreria SIGPPDLL.DLL/SPPFROLD.DLL consente, se opportunamente reimplementata, di effettuare controlli sui campi aggiunti e/o di acquisirne/modificarne il valore a video.

Dp-Pointing256.png Per i dettagli vedi la voce Personalizzazione delle finestre.
Dp-Preview256.png Per approfondire, vedi la voce Esempio di personalizzazione dell'anagrafica articoli di magazzino.

Personalizzazione a runtime

SIGLA® prevede alcuni automatismi: ad esempio, durante l'immissione della riga di un documento selezionando il codice articolo vengono decodificati e impostati negli appositi campi tutta una serie di "default". Infatti immettendo il prezzo verrà calcolato in automatico il valore dell'imposta IVA e del totale documento, ecc.
Può capitare che tali valori predefiniti o calcolati in automatico non siano quelli desiderati dall'utente, in quanto, ad esempio, é prevista una gestione particolare dell'imposta (come l'IVA per autotrasportatori, per l'editoria, ecc).
In questo caso è opportuno intervenire a "runtime" modificando i valori proposti.
La metodologia di personalizzazione in questo caso opera attraverso una Dll che consente di intervenire al verificarsi di una determinata azione, come ad esempio la pressione di un pulsante o l'impostazione di un campo.
Gli aspetti funzionali in cui è possibile intervenire sono moltissimi e distribuiti in tutti i moduli di SIGLA®.

Dp-pdf-pointing256.png Per approfondire, vedi: Manuale tecnico.

Tuttavia esistono ambienti particolarmente sensibili nei quali se ne concentrano la maggior parte. La procedura nella quale esistono le maggiori possibilità di effettuare questo tipo di personalizzazione è la gestione documenti.

Dp-Preview256.png Per approfondire, vedi la voce Esempio di personalizzazione nella gestione documenti.

Tra gli strumenti di personalizzazione è disponibile anche la libreria SPPSERV.DLL che esporta una serie di funzioni di utilità mirate a consentire ad uno sviluppatore una facile implementazione di azioni di inserimento/cancellazione negli archivi di SIGLA®.

Bibliografia

Collegamenti esterni

Voci correlate

Configurazione
Gestione documenti
La libreria SIGPPDLL.DLL
La libreria SPPFrame.DLL
La libreria SPPSERV.DLL