Excel Data Engine

Navigation:  Il Package: lavorazione dei dati > Acquisizione dei dati > Altri metodi per l'acquisizione dei dati > Excel Engine >

Excel Data Engine

Previous pageReturn to chapter overviewNext page

Gli aspetti definitori dell'Excel Engine, in qualità di Data Engine, sono impostabili nei tab:

Source, in cui indicare gli estremi del file da richiamare come libreria esterna;

Settings, espone proprietà specifiche per l'utilizzo del file sorgente come libreria esterna;

Input Query, in cui specificare una query per generare eventuali dati di input per il file sorgente.

 

Il riquadro Input Data del tab Settings mette a disposizione diverse opzioni di elaborazioni dei dati in input attraverso il file Excel sorgente, elencate nella tabella seguente.

 

Opzione

Descrizione

Write to Range

Range di un foglio Excel sorgente in cui inserire i dati di input (utilizzare la sintassi propria di Excel®). Tale campo è editabile solo in presenza di una input query.

Loop for each Input Data row

Determina la modalità di processamento, tramite Excel, dei dati ricavati mediante input query:

itera l'inserimento dei dati in input riga per riga, leggendo il risultato dopo ogni inserimento (flag attivo);

processa tutti i record in input insieme in una singola elaborazione (flag non attivo).

Tanspose

Se flaggato, scambia righe con colonne e viceversa, prima della scrittura sul file sorgente.

 

Nel tab Input Query, l'utente può specificare istruzioni T-SQL, con cui alimentare il file sorgente,

manualmente, nell'editor di testo del tab Query oppure mediante il Query Builder (accessibile con il pulsante Builder QueryBuilder16);

graficamente, mediante il SQL Visual Editor (accessibile attivando Visual Mode con il pulsante SQLEditorMode16).

Inoltre, è possibile eseguire in anteprima il listato SQL mediante il pulsante Preview Input Query RunText16, presente nella tendina sotto il tasto Preview  corrente.

 

Il dataset ottenuto mediante Input Query ha lo scopo di alimentare le celle dal file Excel sorgente, specificate nel campo Write to Range dal tab Settings. Tali dati sono utilizzati come input di funzioni e macro presenti nel file Excel stesso.

 

ex

ESEMPIO: UTILIZZARE UN FILE EXCEL COME LIBRERIA ESTERNA

Supponiamo di avere a disposizione la tabella ClosedProjects, che descrive venti progetti portati a termine dalla nostra azienda. Tale tabella espone sia la data di apertura (OpeningDate) sia la data di chiusura (ClosingDate) di ciascun progetto.

Per ottenere una tabella, che restituisce il numero di giorni lavorativi richiesti per ognuno dei progetti terminati, è possibile utilizzare un Excel Engine che invoca un file Excel come libreria esterna, come segue.

Creare un file di Excel vuoto.

Inizializzare la cella D1 dello Sheet1 di tale file mediante la formula

  = GIORNI.LAVORATIVI.TOT(B1;C1)

Salvare il file Excel.

Creare un Excel Engine che referenzia tale file Excel.

Alimentare il file sorgente con la seguente Input Query

SELECT 

ProjectName, OpeningDate, ClosingDate

FROM 

ClosedProjects

Impostare il riquadro Input Data del tab Settings nel seguente modo:

Loop for each Input Data row: attivo

Write to Range: Foglio1!A:C

Impostare il riquadro Result del tab Settings nel seguente modo:

Header row: Absent

Read from Range: Foglio1!A:D

Empty row: Stop

Le colonne A, B e C espongono i dati forniti ad Excel mediante Input Query, mentre la colonna D mostra l'esito dell'elaborazione effettuata.

 

Oltre alle funzioni, un file di Excel può contenere macro definite dall'utente. Esse possono essere utilizzate in modo analogo all'esempio precedente per processare i dati in input.

Per consentire l'accesso di un Excel Engine alle macro presenti nel file Excel sorgente, è necessario impostare due specifiche proprietà presenti nella Property Grid (tasto F4):

Use Excel (valorizzato a True), consente l'utilizzo dal file Excel sorgente come libreria esterna e l'accesso alle macro in esso contenute.

Macro Name, corrispondente al campo Call Macro del tab Settings. Essa specifica il nome della macro da utilizzare per il processamento dei dati in input.

 

warning

L'utilizzo di un file Excel come libreria esterna richiede l'installazione di Microsoft Excel® sul client corrente.

 

info

Lo Use Excel è inoltre necessario per acquisire commenti relativi alle celle del file sorgente, mediante l'utilizzo delle funzionalità proprie del provider Extra di un Excel Engine.

 

warning

Nel caso dell'utilizzo di un Excel Engine da Workflow, con valorizzazione a True della Property Use Excel, si fa presente che Microsoft non raccomanda e non supporta l'uso di automazioni da parte di qualsiasi applicazione o componente client inattesa e non interattiva. Per ulteriori dettagli, si può consultare la documentazione disponibile al link https://support.microsoft.com/en-us/kb/257757.

 

L'Excel Engine dispone di ulteriori proprietà di configurazione non esposte direttamente nella corrispondente UI. Per gestirle è possibile utilizzare il visualizzatore della Property Grid (tasto F4).

La principale property avanzata di un Excel Engine in qualità di Data Engine è l'Excel Culture. Essa consente di impostare i regional settings con cui aprire Excel (es. en-US, it-IT).