Configurando un tipo schema tabelle esterne di tipo OLEDBConnection c'è la possibilità di eseguire import e/o export con OLEDBProvider di tipo generico. In teoria possono essere gestiti tutti i tipi di database che accettano come sintassi di query SELECT (per import) INSERT e UPDATE (per export) con sintassi SQL SERVER (vedi, ad esempio, il formato dei campi Datetime da utilizzare nelle query). Per il momento è possibile gestire i soli database SQL SERVER indicando come stringa di connessione ad esempio: Provider=SQLOLEDB;Data Source=NB-16;Initial Catalog= PROVA20;User Id=sa;Password=nts; Sia per i profili di import che per quelli di export non viene utilizzato il percorso del file fisico, ma il database e le tabelle da leggere/scrivere devono già esistere all'avvio dell'elaborazione. Ad oggi in fase di import non è possibile eseguire una query complessa che preleva i dati da più tabelle del database esterno collegate in join. In fase di export non sono gestite le transazioni.
Per l'impostazione delle tabelle esterne, nello specifico, il nome della tabella/campi nello schema deve essere uguale al nome fisico della tabella/campi nel database esterno, il tipo di campo deve essere mappato correttamente (char, int, ...), così come la chiave primaria, mentre la dimensione del campo è ininfluente. Ad esempio:
Immaginiamo che nell'esempio indicato sopra della tabella TABHHDE, vogliamo inserire l'elenco dei gruppi e relativi sottogruppi:
Procediamo a definire quindi un nuovo profilo di export, che dalle tabelle di Business dei gruppi e sottogruppi, popolerà la tabella TABHHDE definita nel precedente schema tabelle esterne.
Quindi impostiamo nel programma di impostazione del profilo (8-2) di esportare:
- i dati di TABGMER (tabella gruppi) in TABHHDE (inserendo come filtro WHERE : codditt = 'PROVA')
- i dati di TABSGME (tabella sottogruppi) in TABHHDE
Impostiamo poi per le due corrispondenze tabelle, la relativa corrispondenza campi, ad esempio:
Impostiamo inoltre per la prima corrispondenza tabella (tabgmer->tabhhde), la relazione con la seconda corrispondenza tabella (tabsgme->tabhhde), nel modo indicato:
A questo punto lanciando l'export andremo a popolare la tabella TABHHDE, con i gruppi e i relativi sottogruppi della ditta PROVA (filtrati dalla calusola WHERE inserita nell'impostazione del profilo).
Verificando da SQL Server il contenuto di TABHHDE troveremo:
|