Gestione DB di frontiera

Navigation:  Procedure > Generale - sistema >

Gestione DB di frontiera

Previous pageReturn to chapter overviewNext page

Premessa

 

Il DB di frontiera è un database su architettura Postgres che ha come scopo quello di permettere una agevole sincronizzazione dei dati tra il nostro pacchetto Assist e un gestionale presso un cliente con il quale Assist deve dialogare.

Il database è formato allo stato attuale da circa 30 tabelle che coprono principalmente l'ambito anagrafico:

Clienti/fornitori

Indirizzi

Contatti

Articoli

Il mondo prezzi/sconti/gruppi sconto

Tecnici

Matricole di assistenza

e altre che invece riguardano il passaggio di movimentazione:

Movimenti di magazzino

Fatture

Ordini di vendita

Interventi di assistenza

Scadenzario

...

 

Ogni cliente che necessita di un collegamento di questo tipo avrà a disposizione una copia del db di frontiera dedicato a lui.

Su Area, dopo aver configurato la connessione al DB, è possibile configurare, per ogni singolo processo di sincronizzazione, alcuni parametri che permettono di regolare se deve essere eseguito, con quale cadenza, ecc., e di verificare in tempo reale lo stato di sincronizzazione e un eventuale log di errori.

 

La documentazione delle tabelle è qui: DB frontiera

 

Tutto quello che sarà costruito attorno a questo DB dovrà essere progettato in modo che sia semplice nella configurazione, nell'utilizzo, e nella gestione delle problematiche.

 

Architettura

 

Il DB frontiera potrebbe essere potenzialmente di diversi tipi, per agevolare la software house che usa già, per il DB HOST, una determinata tipologia di DB: Oracle, SqlServer, MySql, Postgres, ecc.

 

Quindi Si dovrà utilizzare un linguaggio che permetta di collegarci agevolmente a uno di questi database mantenendo il sorgente inalterato:

 

 

Produttore

Prodotto

Vantaggi

Svantaggi

Microfocus

ACU4GL

Utilizzabile immediatamente con programmi standard

Necessita di una licenza aggiuntiva con un costo (pero' dovrebbe essere sufficiente 1 licenza)

Microfocus

ACUSql

Non necessita di licenze aggiuntive

Necessita di implementare programmi specializzati che lavorano direttamente con comandi SQL

Occorre impiegare un po' di tempo per farsi le ossa con questo strumento

Veryant

Iscobol (SQL)

Giovanni ha già esperienza nella realizzazione di programmi in questo ambiente

Necessita di implementare programmi specializzati che lavorano direttamente con comandi SQL

Necessita di installare un ambiente aggiuntivo Iscobol

E' necessaria una licenza aggiuntiva per Iscobol

Veryant

Iscobol (EasyDB)

Utilizzabile immediatamente con programmi standard (verificare)

Necessita di installare un ambiente aggiuntivo Iscobol

Necessita di una licenza aggiuntiva con un costo (pero' dovrebbe essere sufficiente 1 licenza)

Eurosystem

Librerie Postgres di Giovanni

 

 

 

Configurazioni di base

 

E' necessario definire:

Tipologia DB (Oracle, SqlServer, ecc): Non necessario se ci limitiamo a Postgres

Parametri di connessione (Indirizzo, porta, Nome DB, Utente, Password) o in alternativa stringa di connessione già completa

Pulsante di accensione: permette di attivare/disattivare con una sola operazione tutti i processi configurati

Indirizzo di posta a cui inviare segnalazioni "gravi" (se questo compito viene effettuato da una funzione interna al gestionale)

 

Gruppo

Parametro

Note

dbfront

sincro-attiva

"Pulsante di accensione"

dbfront

email-segnalazioni

Indirizzo a cui inviare segnalazioni "gravi"

dbfront


Indirizzo a cui inviare informazioni da evidenziare

dbfront

db-tipo

Previsto per sicurezza, ma attualmente sarà solo Postgres

dbfront

db-conn-string

Stringa di connessione al database

dbfront

db-ddl-conn-string

 

dbfront

db-ddl-grant-role-string

 

dbfront

db-log-level

 

 

 

Pannello di controllo

 

Pannello dove è presente una griglia di controllo dei vari processi; una riga corrisponde al processo di sincronizzazione di una singola tabella, o di un insieme di tabelle che per la loro natura devono essere trattate insieme (es. documenti di magazzino).

 

Per ciascuna riga saranno presenti le informazioni:

 

Colonna

Contenuto

Modificabile?

Nome

Nome del processo

 

Descrizione

Descrizione breve del processo

 

Attivo?

Campo a valori fissi che permette di attivare/disattivare il singolo processo:

"N":Non attivo

"S":Attivo

"I":Attivo solo "Import"

"E":Attivo solo "Export"

NB: le modalità "I" e "E" valgono solo quando il processo è utilizzabile in entrambi i sensi

Si

Timer

Tempo di attesa tra 2 schedulazioni dello stesso processo, in minuti.

Puo' andare da 1 a 99999999

Si

Forzo schedulazione

Se spuntato, permette di fare partire immediatamente la schedulazione di questo processo, una tantum

Si

Data/ora ultima schedulazione

Data/ora dell'ultima schedulazione del processo

 

Data/ora prossima schedulazione

Data/ora della prossima schedulazione pianificata

 

In corso?

Indica se il processo è correntemente in esecuzione

 

N.Errori

Numero di errori segnalati nell'ultima esecuzione

 

Messaggio

Ultimo messaggio di errore segnalato

 

Livello Log

Livello di log previsto sul processo

0: Vengono registrati solo gli errori

1...99999: segnalazioni standard, il cui livello è quello indicato

Si

Ultimo aggiornamento

Data/ora ultimo aggiornamento, utilizzato solo per i processi in cui è possibile l'export

Si

Limita righe

Se questo dato contiene un numero > 0, significa che l'elaborazione viene limitata alle prime "n" righe da sincronizzare.

Utile in fase di impostazione iniziale del sistema, quando si vuole eseguire il test della sincronizazione, o quando si vuole distribuire meglio la sincronizzazione senza lasciare in coda per troppo tempo le elaborazioni successive

Si

Limita errori

Se questo dato contiene un numero > 0, significa che l'elaborazione viene limitata alle prime "n" segnalazioni di errore.

Utile in fase di impostazione iniziale del sistema, quando si vuole eseguire il test della sincronizazione.

Si

 

La gestione dei processi sarà definita dall'insieme delle tabelle COGDBFPR - Processi di sincronizzazione DB frontiera (tabella di sistema fornita da noi) e COGDBFST - Stato processi di sincronizzazione DB frontiera, che verrà gestita sull'ambiente di produzione.

 

Elenco dei processi previsti

 

 

Nome

Descrizione

Import

Export

Programma

Operazione

ANAGR

Import anagrafiche clienti/fornitori

DFANAGR

 

DBF001 - Sincronizzazione clienti/fornitori

 

INDIR

Import indirizzi

DFINDIR

 

DBF002 - Sincronizzazione destinazioni

 

CONTATTI

Import contatti

DFCONTATTI

 

DBF003 - Sincronizzazione contatti

 

MERCI

Import anagrafica merci

DFMERCIPREST

 

DBF004 - Sincronizzazione articoli

 

PREZZI

Import prezzi di vendita/acquisto

DFPREZZI

 

DBF005 - Sincronizzazione listini

 

GRUPPISCONTO

Import gruppi sconto

DFGRUPPISCONTO

 

 

DBF006 - Sincronizzazione testata gruppi sconto

 

SCONTI

Import dettaglio gruppi di sconto

DFSCONTI

 

DBF007 - Sincronizzazione dettaglio sconti

 

ANAGRSCONTI

Import gruppi sconto per anagrafica

DFANAGRSCONTI

 

DBF008 - Sincronizzazione gruppi sconto per anagrafica

 

MAGAZ

Import magazzini

DFMAGAZZINI

 

DBF009 - Sincronizzazione magazzini

 

GIACENZE

Import giacenze di magazzino

DFGIACENZE

 

DBF010 - Sincronizzazione giacenze

 

MATR-ASSI

Import matricole di assistenza

DFMATRICOLEASSI

 

DBF011 - Sincronizzazione matricole assistenza

 

KITINTTES

Import testata kit di intervento

DFKITINTTES

 

DBF012 - Sincronizzazione kit di intervento

 

KITINTDET

Import dettaglio kit di intervento

DFKITTINTDET

 

DBF013 - Sincronizzazione dettaglio kit intervento

 

UBICAZIONI

Import ubicazioni articoli

DFUBICAZIONI

 

DBF014 - Sincronizzazione ubicazioni

 

POSTIT

Import note post-it

DFPOSTIT

 

DBF015 - Sincronizzazione note post-it

 

SETTIPICO

Import set tipico per un cliente

DFSETTIPICO

 

DBF016 - Sincronizzazione set tipico

 

BACKORDER

Import backorder per cliente

DFBACKORDER

 

DBF017 - Importazione backorder

 

BUDGETOMAGGI

Import budget omaggi per agente

DFBUDGETOMAGGI

 

DBF018 - Importazione budget omaggi

 

DISTINTAMATR

Import distinta base matricole

DFDISTINTAMATR

 

DBF019 - Importazione distinta matricole

 

TECNICI

Importazione tecnici

DFTECNICI

 

DBF020 - Importazione tecnici

 

SCADEX

Importazione scadenzario extracontabile

DFSCADENZARIO

 

DBF021 - Importazione scadenzario extracontabile

 

DOCMAG

Import/export documenti di magazzino

DFDOCTES

DFDOCDET

DFDOCTES

DFDOCDET

DBF100 - Import/export documenti di magazzino

 

ORDINI

Import/export ordini di vendita

DFDOCTES

DFDOCDET

DFDOCTES

DFDOCDET

DBF101 - Import/export ordini

 

SETTIPICOVAR

Export variazioni sul set tipico

 

DFSETTIPICOVAR

DBF102 - Export variazioni su set tipico

 

BACKORDERVAR

Export variazioni sul backorder

 

DFBACKORDERVAR

DBF103 - Export variazioni su back order

 

CHIAMATE

Import/export chiamate-interventi

DFCHIAMATE

DFCHIAMATEDOC

DFINTERVENTI

DFCHIAMATE

DFCHIAMATEDOC

DFINTERVENTI

DBF104 - Import/export chiamate/interventi

 

SCADEXPAG

Export pagamenti scadenzario extracontabile

 

DFSCADENZARIOEXT

DBF105 - Export pagamenti scadenzario extracontabile

 

FATTURECLI

Esportazione delle fatture/note accredito verso clienti

 

DFDOCTES

DFDOCDET

DBF106 - Esportazione fatture/note accredito clienti

 

Operazioni secondarie

ANAGR

Import anagrafica clienti/fornitori

Impostazione flag di cancellazione su anagrafiche non più esistenti sul db frontiera

DFANAGR

 

DBF001 - Sincronizzazione clienti/fornitori

SETTIMANALE

MERCI

Import anagrafica merci

Impostazione flag di cancellazione su merci non più esistenti sul db frontiera

DFMERCIPREST

 

DBF004 - Sincronizzazione articoli

SETTIMANALE

SETTIPICO

Import set tipico per un cliente

Pulizia dati per clienti non più referenziati

DFSETTIPICO

 

DBF016 - Sincronizzazione set tipico

"SETTIMANALE"

BACKORDER

Import backorder per cliente

Pulizia su AREA dei dati non esistenti sul DBF

DFBACKORDER

 

DBF017 - Importazione backorder

"SETTIMANALE"

SCONTI

Import dettaglio gruppi di sconto

Pulizia su AREA dei dati non esistenti sul DBF

DFSCONTI

 

DBF007 - Sincronizzazione dettaglio sconti

"SETTIMANALE"

ANAGRSCONTI

Import gruppi sconto per anagrafica

Pulizia su AREA dei dati non esistenti sul DBF

DFANAGRSCONTI

 

DBF008 - Sincronizzazione gruppi sconto per anagrafica

"SETTIMANALE"

 

La definizione dei processi sarà registrata su una tabella di sistema chiamata COGDBFPR - Processi di sincronizzazione DB frontiera

 

Schedulatore

 

I processi verranno schedulati da PgAGENT

Il pannello di controllo potra' alimentare la tabella che permette a PgAGENT di lavorare.

Ogni singolo processo dovra' leggere il record di configurazione (pannello di controllo) e decidere se deve essere eseguito oppure no.

 

Caratteristiche di ogni singolo processo

 

Nessuna interfaccia o interazione con il video

Gestione log di processo, con attivazione log in funzione del livello previsto

Ogni messaggio deve essere rediretto sul log usando l'apposita variabile di configurazione

Aggiornamento dei dati sulla tabella "Pannello di controllo"

Possibilità di ricevere una richiesta di sincronizzazione di una singola riga: la chiave da sincronizzare dipenderà dal processo, e dovrà corrispondere all'id presente sul gestionale "AREA"; ad esempio, se voglio forzare la sincronizzazione di un cliente, dovrò ricevere in input DF_ANA_AREA_TIP e DF_ANA_AREA_COD

 

Altri programmi

 

Nome

Descrizione

 

GESDBFPR - Processi di sincronizzazione con DB frontiera

Programma ad uso interno che crea la tabella che contiene i processi eseguibili

GESDBFST - Pannello di controllo

Programma a menu che permette di configurare, attivare e controllare le sincronizzazioni

DFLANCIO - Esecuzione processi di sincronizzazione

Programma da attivare su PgAgent per la schedulazione dei processi previsti