Argomento precedente: Elementi e attributiArgomento successivo: Creazione di un adapter tramite l'interfaccia utente CA Business Service Insight


Lettura dei record dall'origine dati dei file

Se è presente un'interfaccia ODBC per l'origine dati, è possibile configurare un adapter SQL per eseguire query nei file. Per configurare l'adapter alla lettura da file multipli, è necessario utilizzare gli elementi Segment nell'elemento ConnectionString. Per un esempio, consultare la sezione precedente che descrive la stringa di connessione.

Di seguito viene riportato come l'adapter SQL utilizza i file:

  1. In ogni query, l'adapter tenta di leggere il file finché è impossibile recuperare ulteriori record.
  2. L'adapter quindi si sposta sul file successivo di cui tenta di eseguire la lettura.
  3. Quando non sono presenti altri file, l'adapter sospende l'esecuzione della query secondo l'attributo SleepTime attributo.

File schema.ini

Quando viene utilizzato un driver ODBC di testo, il formato del file di testo è determinato dal file delle informazioni di schema (schema.ini). Questo file delle informazioni di schema dovrebbe trovarsi nella stessa directory dell'origine dati del testo.

I file schema.ini sono costituiti da voci, con ogni voce che descrive la struttura di un singolo file di testo. La prima riga di ogni voce è il nome del file di origine di testo, racchiuso tra parentesi quadre.

Quando l'adapter utilizza i file definiti con caratteri jolly, il nome del file viene modificato continuamente. Poiché il nome del file schema.ini non può contenere caratteri jolly, l'adapter, deve modificare il file schema.ini prima di stabilire la connessione al database.

È pertanto necessario aggiungere una riga di indicazione prima della riga della voce del file. Questa riga di indicazione contiene il modello del nome dall'elemento della stringa di connessione nel file di configurazione dell'adapter, racchiuso tra parentesi quadre. L'adapter sostituisce la riga successiva con il nuovo nome del file racchiuso tra parentesi quadre.

Nota: il file schema.ini può contenere più voci. Spetta all'utente aggiungere le righe nella posizione corretta.

Esempio di schema.ini

[sqltes*.txt]
[sqltest2.txt]
ColNameHeader = False
CharacterSet = ANSI
Format = TabDelimited
Col1=id Char Width 30
Col2=idname Char Width 30
----------------------------------------
[report_200*.txt]
[report_2003_09.txt]
ColNameHeader = False
CharacterSet = ANSI
Format = TabDelimited
Col1=date Char Width 30
Col2=service Char Width 30
Col3=responseTime Char Width 30
----------------------------------------

File DataSourceControl

Per ogni query, il file di controllo dell'origine dati contiene il modello del nome di file e il nome del file di input corrente per continuare con lo stesso file durante il riavvio dell'adapter.

Di seguito è riportato un esempio di file di controllo in formato XML:

<AdapterControl Save="end" LastSaveTime="2005/03/23 09:16:15">
   <Data>
      <QueryCollection>
         <Query QueryName="TroubleTickets (on D:\Data\Incidents*.xls)">
            <KeyField Name="INC_CLOSE_DATE">
               <LastValue>7/03/2005 13:06:21</LastValue>
            </KeyField>
            <LastFileName>IncidentsMarch.xls</LastFileName>
         </Query>
      </QueryCollection>
   </Data>

Conservazione dei file di input

Quando l'adapter ha terminato la lettura del file corrente, cerca il file successivo. Il file successivo letto è il primo file che soddisfa il modello del nome e il cui nome è maggiore (in ordine lessicografico) rispetto al nome del file precedente. L'adapter non torna ai file precedenti anche se vengono aggiunti i nuovi record.

L'adapter utilizza l'attributo InitialFileName solo quando questi due attributi sono uguali a "no" e il file di controllo non contiene il nome dell'ultimo file.

Verifica delle query

L'adapter verifica la stringa di connessione e la query solo se esiste il file definito. Se è stato definito utilizzando i caratteri jolly, l'adapter esegue la verifica solo nel primo file.

Possono verificarsi errori quando l'adapter tenta di leggere un nuovo file. In questo caso, l'adapter si interrompe immediatamente se l'attributo critico è uguale a "yes" (sì). Se è uguale a "no", l'adapter non continua a eseguire questa query, ma continua con le altre query. In alternativa, l'adapter lascia il file corrente e si sposta nel file successivo.

Variabili interne dell'adapter

Sono presenti due variabili interne che possono essere utilizzate nel file di configurazione di riferimento per il contesto corrente del nome di file. Queste sono :file_name e :file_name_no_ext, che fanno riferimento, rispettivamente, al nome del file corrente e al nome di file corrente senza l'estensione di file.

Queste variabili possono essere utilizzate nell'elemento SelectStatement, nell'elemento SelectInitialValues e nell'attributo QueryKeyField\Function.

L'adapter sostituisce la variabile con il nome del file nelle query.

Ad esempio: