Per poter utilizzare lo strumento di import/export, occorre precedentemente impostare alcune tabelle,al fine di poter dire alla procedura quali sono i dati da importare/esportare, come eseguire l'operazione, dove anadarli a salvare. Le fasi da seguire sono i seguenti:
Creazione del profilo di import/export:
Innanzitutto occorre creare un profilo, ovvero dare un nome alla procedura che andremo a costruire (ex: Importazione anagrafica clienti/fornitori, Esportazione documenti di magazzino, ecc.)
Il programma da utilizzare è DEFINIZIONE PROFILI DI IMPORT/EXPORT, dove occorre inserire un nuovo record indicando un numero di profilo (superiore a 1000), una descrizione ed indicare se si riferisce ad una operazione di importazione o di esportazione.
Definizione dello schema delle tabelle esterne:
Una volta creato il profilo, occorre impostare lo schema di come i dati sono organizzati nel file di importazione, oppure di come devono essere salvati in fase di esportazione. Il programma da utilizzare è DEFINIZIONE SCHEMA TABELLE ESTERNE, ed è suddiviso in 2 sezione:
- nell'ELENCO TABELLE troveremo tutte le tabelle già dichiarate/utilizzate da altri profili; in coda andremo ad aggiungere un nuovo record relativo al file che dovremo andare a gestire. In fase di esportazione, allo stato attuale, è possibile utilizzare come tipo tabelle solo ASCII TEXT FILE e Jet di tipo Microsoft Access. I valori da dover andare a riempire sono :
nome tabella (nome che verrà utilizzato da Business per riferirsi al nostro file)
nome file (nome del file esterno da creare).
In fase di importazione il formati accettati sono Microsoft Access e JET ISAM TEXT. Mentre per il primo non è necessario impostare altre informazioni oltre al nome tabella e nome file, per il secondo occorre definire:
l'impostazione del tipo di campi = può essere o FixedLength (i campi del file sono tutti a lunghezza fissa) o una delle altre opzioni (i campi della tabella sono delimitati da un apposito carattere)). In fase di importazione, oltre ai campi sopra indicati, occorre andare a specificare anche:
Proprietà CollNameHeader =False,
Proprietà MaxScanRows = 0,
Proprietà CharacterSet = OEM,
Proprietà NumberLeadingZeros = 1,
Formato data/ora = il formato con cui è stata espressa la data nel file di importazione (ex: ddmmyyyy )
- nell'ELENCO CAMPI troveremo tutte le informazioni relative ad ogni singolo campo del file,per cui Ordinamento = ordine con cui appaiono i campi del file, Nome Campo = nome che verrà utilizzato da Business per riferirsi a quel campo specifico, Tipo campo = tipo di dato contenuto in quel campo (in esportazione sempre CHAR), Dimensione = lunghezza del campo per i file a campi a lunghezza fissa, per i file con campi al unghezza variabile un qualsiasi valore diverso da 0. Come primo record è consigliabile inserire un campo così definito: ordinamento = 0, nome campo = (Nessuno), tipo campo = Char, dimensione = 0. Gli altri campi nella tabella sono utilizzati solo per file esterni di tipo Microsoft Access e permettono di impostare le caratteristiche di ogni singolo campo.
N.B.: per i tracciati su file MSACCESS non occorre definire una tabella esterna per l'import ed una per l'export: un solo schema tabella esterna può essere utilizzato sia per import che per export.
Standard utilizzati in esportazione dati su file ASCII
Nella codifica dei profili standard 'Business import' e 'Business export' sono stati utilizzati i seguenti standard:
- I campi stringa vengono esportati integralmente, per la totale lunghezza (tipo campo Char).
- I campi memo vengono esportati come stringhe della lunghezza massima di 100 caratteri (i successivi verranno trovati in esportazione) con tipo campo Char.
- I campi data vengono esportati come stringa di 8 (con format ddmmyyyy) oppure 14 (con format ddmmyyyyhhnnss) a seconda del fatto che sia significativo l'orario all'interno del campo data; in esportazione il tipo campo è Char, in importazione il tipo campo è Datetime. Nella colonna 'Formato Data/Ora' nella definizione della tabella esterna, in importazione deve essere riportata la stringa di formattazione corrispondente: pertando all'interno della stessa tabella si può definire un solo tipo di campo data ora (o da 8 o da 14).
- I campi numerici interi vengono esportati come stringa di 4 caratteri, senza alcuna formattazione; in esportazione il tipo campo è Char, in importazione il tipo campo è Short.
- I campi numerici interi lunghi vengono esportati come stringhe di 9 caratteri, senza alcuna formattazione; in esportazione il tipo campo è Char, in importazione il tipo campo è Long.
- I campi numerici valuta vengono esportati come stringa di 17 caratteri:
- la cui stringa di formattazione è 000000000000.0000;-00000000000.0000 per i campi prezzo che possono contenere anche 4 decimali (i valori esportati pertanto saranno tra -99.999.999.999,9999 e 999.999.999.999,9999);
- senza stringa di formattazione se si tratta di campi valore monetario dove implicitamente vengono salvati 2 decimali (i valori esportati pertanto saranno tra -9.999.999.999.999,99 e 99.999.999.999.999,99);
in esportazione il tipo di campo è Char, in importazione il tipo di campo è Double.
- I campi numerici a precisione doppia o singola vengono esportati come:
- stringa di 15 caratteri, se si tratta di campo quantità, la cui stringa di formattazione è 00000000000.000;-0000000000.000 in modo da conservare 3 decimali sulle quantità (i valori esportati pertanto saranno tra -9.999.999.999,999 e 99.999.999.999,999);
- stringa di 6 caratteri, se si tratta di campo percentuale, la cui stringa di formattazione è 000.00;-00.00 in modo da conservare 2 decimali sulle percentuali (i valori esportati pertanto saranno tra -99,99% e 100,00%);
- stringa di 15 caratteri, se si tratta di campo cambio, la cui stringa di formattazione è 00000.000000000;-0000.000000000 in modo da conservare 9 decimali sui valori cambio delle valute (i valori esportati pertanto saranno tra -9.999,999999999 e 99999,999999999 anche se comunque saranno sempre valori positivi);
- stringa di 15 caratteri, se si tratta di campo tempi, la cui stringa di formattazione è 0000000000.0000;-000000000.0000 in modo da conservare 4 decimali sui tempi (i valori esportati pertanto saranno tra -999.999.999,9999 e 9.999.999.999,9999);
in esportazione il tipo campo è Char, in importazione il tipo campo è Double.
Tag utilizzati nell'import export da file XML:
Il file XML che viene costruito dal profilo ha le seguenti caratteristiche:
- Inizia con elemento root: <?xml version="1.0" encoding="utf-8" standalone="yes"?>, dove la presenza dell'attributo standalone="yes" è assoggettata alla presenza di questa stringa in Definizione schema tabelle nel campo Stringa di connessione.
- Il tag che racchiude tutto è il nome della tabella principale preso sempre da Definizione schema tabelle, campo Descrizione. Se ci sono delle tabelle messe in relazione con questa, si troveranno all'interno del tag 2 in quantita uguale alle righe corrisposte dalla relazione, per esempio [1] testata--> [N] righe del corpo.
- All'interno del tag descritto nel punto 2 si trova il terzo tag che è preso dala campo Definizione schema tabelle-->Nome Tabella - solo questo tag viene esposto in Maiuscolo.
- All'interno del tag descritto al punto 3 si trovano dei tag che corrispondono ai nomi dei campi, questi tag racchiudono i rispettivi valori. Nel caso in cui il campo contiene una stringa vuota, questa verrà segnata col attributo xml:space="preserve""
Impostazione dello strumento di import/export:
A questo punto occorre andare a definire un legame tra i campi di Business e quelli del file esterno. Il programma da utilizzare è IMPOSTAZIONE IMPORT/EXPORT; le fasi da seguire sono:
- Profilo: selezionare il profilo a cui agganciare le tabelle da trattare (quello creato in precedenza come primo steps)
- nella CORRISPONDENZA TABELLE occorre specificare a quale tabella di Business deve essere legata la tabella esterna (tabella Business - tabella esterna) , l'ordinamento da seguire per riempire le tabelle, se la tabella di Business è contenuta nell archivio Procedura o nell'archivio Azienda,e tutta una serie di informazioni legate al trattamento delle tabelle in quanto tali (ex: se segnalare l'assenza di record da trattare, se i dati da importate/esportare sono da accodarsi a quelli esistenti o da sostituirli, se in fase di esportazione deve venir proposta una schermata dove porter inserire dei filtri al fine di selezionare i dati da esportate, se eseguire delle procedure dopo aver letto/scritto i dati ecc.).
- nella CORRISPONDEZA CAMPI si indicheranno, per ogni tabella di Business selezionata, i rispettivi valori dei files esterni. (N.B.: per i profili di esportazione, l'ordinamento con cui verrannno salvati i dati è quello indicato in questa tabella, non quello indicato in Schema tabelle esterne!!!). Le altre colonne possono venir utilizzate qualora il dato da importare/esportare deve essere trattato prima di venir memorizzato (ex: il valore può essere moltiplicato, diviso, convertito in un altro oppure essere la risultante di una procedura).
- qualora alcune delle tabelle indicate in corrispondenza tabelle siano legate da vincoli di integrità referenziale (oppure abbiano campi comuni che permettano il loro aggiornamento in contemporanea), la cartella RELAZIONI TABELLE permette di collegare due o più tabelle tra di loro in modo che ad ogni lettura di un record, la procedura provveda ad aggiornare non solo la tabella direttamente, ma esegua l'aggiornamento anche delle tabelle legate dalle relazioni tabelle. I campi da compilarsi sono Tabella di Business, tabella esterna, ordine di relazione e tempo di valutazione (scegliere se l'analisideve essere fatta prima o dopo la scrittura del record).
- se sono state indicate delle relazioni tra tabelle nella cartella precedente, occorre compilare anche RELAZIONE CAMPI, dove andremo ad indicare, per ogni tabella in relazione con quella di Business, i campi (sia di Business che della tabella esterna) che legano le due tabelle in analisi.
Transcodifica dei campi:
Da utilizzarsi qualora i campi trattati dall'import/export debbano essere tradotti in valori diversi (e comunque conosciuti a priori). è possibile con DEFINIZIONE TRANSCODIFICA CAMPI andare ad inserire tante tipologie di transcodifica, ed assegnare ad ognuna di esse dei valori in ingresso ed il relativo valore in uscita (ex: convertire i valori in input 0/1 in S/N). Per poter poi richiamare tali procedure occorre andare in impostazione import/export - corrispondeza campi e: spuntare il flag 'TRANSCODIFICA' ed indicare il codice della transcodifica da utilizzare.
Definizione di procedure:
Qualora occorra far eseguire delle procedura prima, durante o dopo l'operazione di import/export, oppure manipolare i dati trattati in maniera diversa da quella che può essere una transcodifica (ex: convertire una data da aammgg in ggmmaa) è possibile scrivere delle procedure e dichiarare in impostazione import/export in corrispondenza tabelle piuttosto che in corrispondeza campi il codice della funzione da eseguire (in precedenza occorre aver spuntato in corrispondenza tabelle il flag 'USA SCRIPT ENGINE'. Il programma per poter andare a scrivere queste procedure è DEFINIZIONE PROCEDURE DI IMPORT/EXPORT.
Una volta creato un nuovo profilo, è possibile utilizzarlo mediante lo STRUMENTO DI IMPORT/EXPORT oppure schedulare l'importazione /esportazione in modo che avvenga in automatico ad intervalli preimpostati (vedi in merito la guida analitica sullo 'Strumentodi import/export').
N.B.: I campi descritti sono quelli normalmente utilizzati per profili standard. Per ulteriori informazioni ed approfondimenti in merito ai programmi ed ai campi, rimandiamo ai capitoli specifici nella sezione GUIDA ANALITICA.
|