Esempio di gruppi

Informazioni su questa attività

Questo esempio mostra uno schema di file flat che analizza un insieme ripetuto di record tramite gruppi. Ogni insieme del record ripetuto contiene record di tipi differenti, come mostrato nei dati di file flat di input di esempio, riportati di seguito:

Figura 1. Un file flat di input di esempio

In questi dati di esempio, i primi, i secondi ed i terzi record dell'insieme ripetuto rappresentano ciascuno un tipo differente di record. Inoltre, questo esempio mostra la modalità con cui i tipi memorizzati nella scheda Libreria di tipi vengono utilizzati in uno schema di file flat. In questo esempio, viene visualizzato e verificato uno schema di file flat esistente invece di crearne uno da zero.

Per aprire, visualizzare e verificare lo schema di file flat utilizzato per analizzare i dati di input visualizzati nella Figura 1:

Procedura

  1. In questo esempio, lo schema di file flat è già integrato nel progetto FlatFileSchemasExample. Per visualizzare lo schema di file flat, è necessario prima estrarre il progetto FlatFileSchemasExample:
    1. Trovare il Percorso di creazione predefinito definito in Studio — la directory in cui vengono creati i nuovi progetti. Per visualizzare il Percorso di creazione predefinito corrente, selezionare File > Preferenze... dal menu della barra degli strumenti di Studio. Viene visualizzata la finestra di dialogo Preferenze. Il Percorso di creazione predefinito corrente viene visualizzato alla fine del pannello. Per impostazione predefinita, il Percorso di creazione predefinito si trova nella seguente directory:

      C:\Documents and Settings\myLogin\My Documents

      Dove myLogin rappresenta il nome di login Windows.

    2. Individuare il file FlatFileSchemasExample.zip che contiene i file che costituiscono il progetto FlatFileSchemasExample. Se durante l'installazione di Studio sono stati accettati i valori predefiniti, questo file sarà reperibile nella seguente directory:

      C:\Program Files\IBM\WebSphere Cast Iron Studio 3.X\Samples\FlatFileSchema

    3. Copiare il file FlatFileSchemasExample.zip dalla directory FlatFileSchema nella directory Percorso di creazione predefinito.
    4. Estrarre il contenuto del file FlatFileSchemasExample.zip nella directory Percorso di creazione predefinito.
  2. Aprire il progetto FlatFileSchemasExample:
    1. Selezionare File > Apri Progetto... dal menu della barra degli strumenti di Studio. Viene visualizzata la finestra di dialogo Apri.
    2. Selezionare il percorso per la directory FlatFileSchemasExample ed aprirla.
    3. Selezionare il file FlatFileSchemasExample.sp3 e fare clic su Apri. Viene visualizzato il progetto.
  3. Aprire lo schema di file flat vegPO esistente. Nella cartella Schemi di file flat della scheda Progetto, fare doppio clic sullo schema di file flat vegPO. I nodi dello schema di file flat vegPO vengono visualizzati nella scheda Layout schema e le proprietà del nodo root vegPO vengono visualizzate nel pannello di destra.
  4. Verificare lo schema di file flat vegPO:
    1. Nel pannello relativo alla verifica, fare clic su Sfoglia. Viene visualizzata la finestra di dialogo Apri file dati di verifica di esempio.
    2. Ricercare il file vegPO.txt che contiene i dati di input. Se durante l'installazione di Studio sono stati accettati i valori predefiniti, questo file sarà reperibile nella seguente directory:

      C:\Program Files\IBM\WebSphere Cast Iron Studio 3.X\Samples\FlatFileSchema

    3. Fare clic su Apri. I dati di input forniti dal file vegPO.txt vengono visualizzati nel pannello a sinistra della scheda Verifica.
    4. Fare clic sull'icona Verifica (Icona Verifica). Nel pannello dei risultati (che si trova sul lato destro del pannello della verifica) viene visualizzato il risultato della conversione come dati XML.
  5. Nella scheda Layout schema, fare clic sul nodo root vegPO. Il nodo root vegPO viene visualizzato con le seguenti proprietà:
    1. La proprietà Struttura equivale a Delimitato - La struttura del nodo root è delimitata.
    2. Delimitatore child equivale a Fine riga- I record child sono delimitati da un delimitatore di fine riga.
    3. Posizione delimitatore child equivale a Dopo - I delimitatori dovrebbero trovarsi dopo ogni record
    4. Il Delimitatore di ripetizione equivale a Fine riga- I record ripetuti sono delimitati anche da un delimitatore di fine riga.
  6. Nella scheda Layout schema, fare clic sul nodo orderingStore. La prima riga dei dati di input è evidenziata nel pannello relativo alla verifica, come mostrato nella seguente figura:
    Figura dell'intestazione VegPO

    Il primo record dello schema di file flat vegPO è un record intestazione denominato orderingStore, che si verifica una sola volta. Nella scheda Layout schema, i campi e il record che costituiscono il record orderingStore vengono visualizzati come elementi child. La prima riga viene analizzata nei campi e record che costituiscono il record orderingStore.

    Dopo il primo record intestazione, iniziano gli insiemi di elementi ripetuti. Ogni insieme di elementi ripetuti contiene tre record child di tipi differenti, come mostrato nella seguente figura:

    VegPO che mostra un insieme di elementi ripetuti, contenenti tre record child di tipi differenti.

    Un record ripetuto che contiene record child di tipi differenti può essere creato nell'Editor schema di file flat tramite gruppi. I gruppi sono richiesti solo quando i dati non forniscono alcun delimitatore aggiuntivo o alcuna struttura per indicare in modo chiaro l'inizio e la fine delle ripetizioni che contengono più di un record. I delimitatori per le ripetizioni vengono ereditati dal record parent o dal nodo root. In questo esempio per il nodo root vegPO, il delimitatore di ripetizione è impostato su fine riga. Il nodo di gruppo orders utilizza il delimitatore di fine riga per analizzare i record ripetuti

  7. Nella scheda Layout schema, fare clic sul nodo di gruppo orders. Notare le seguenti modifiche a livello grafico nei pannelli:
    • Nel pannello secondario a sinistra del pannello di verifica, tutte le righe dopo la riga di intestazione sono evidenziate. L'evidenziazione indica che dopo l'analisi, tutti i dati successivi al primo record vengono assegnati al nodo di gruppo orders.
    • Nel pannello Proprietà di base, le Ricorrenze del gruppo orders sono Senza limiti. Questa impostazione indica che vi possono essere una o più istanze di questo gruppo.
    • Nel pannello Proprietà di base, per il gruppo orders il Tipo equivale a order. Questa impostazione indica che il gruppo orders è basato sul tipo di gruppo order. Il contenuto e le proprietà del tipo di gruppo order sono definite nella scheda Libreria di tipi.
  8. Selezionare la scheda Libreria di tipi. Vengono visualizzati i tipi di record ed i tipi di gruppo utilizzati nello schema di file flat vegPO. Il tipo di gruppo order contiene tre record, come mostrato nella seguente figura:
    Gruppo order vegPO

    L'icona riportata di seguito rappresenta un record che si basa su un tipo di record:

    Icona di record basato su un tipo.

    Il gruppo orders con il tipo di gruppo order definiscono un insieme di record ripetuti di record differenti, a causa delle seguenti caratteristiche:

    • Possono essere presenti da una a numerose istanze del gruppo orders.
    • Il tipo di gruppo order contiene tre record di tipi differenti.
    • Il gruppo orders è basato sul tipo di gruppo order o deriva dallo stesso.
    La relazione di ripetizione tra il gruppo orders e il tipo di gruppo order viene mostrata nella figura riportata di seguito:
    Pattern di ripetizione vegPO
  9. Nella scheda Libreria di tipi, fare clic sul nodo del record id del tipo di gruppo order. Notare le seguenti modifiche a livello grafico nei pannelli:
    • Nel pannello Proprietà di base, il Tipo di record id equivale al tipo di record denominato orderID. Questa impostazione indica che il record id è basato sul tipo di record orderID.
    • Nel pannello secondario a sinistra del pannello di verifica, la prima riga di ogni record ripetuto è evidenziata, come mostrato nella figura riportata di seguito:
      ID verifica VegPO
      Questa evidenziazione indica che la prima riga di ciascun record ripetuto è assegnata al record id.
  10. Nella scheda Libreria di tipi, fare clic sul nodo del record shipdate del tipo di gruppo order. Notare le seguenti modifiche a livello grafico nei pannelli:
    • Nel pannello Proprietà di base, il Tipo di record shipdate equivale al tipo di record denominato shippingDate. Questa impostazione indica che il record shipdate è basato sul tipo di record shippingDate.
    • Nel pannello Proprietà di base, la Struttura del record shipdate è Posizionale. Questa impostazione indica che i campi child del record shipDate sono determinati dalla relativa posizione e lunghezza nel record e non da delimitatori.
    • Nel pannello secondario a sinistra del pannello di verifica, la seconda riga di ogni record ripetuto è evidenziata, come mostrato nella figura riportata di seguito:
      La figura indica che la seconda riga di ogni record (la riga shipDate) è evidenziata.
      Questa evidenziazione indica che la seconda riga di ciascun record ripetuto è assegnata al record shipDate. Il record shipDate contiene tre campi child posizionali (month, day e year) che vengono ereditati dal tipo di record shippingDate.
  11. Nella Libreria di tipi, fare clic sul nodo del campo month del tipo di record shippingDate. Nel pannello secondario a sinistra del pannello di verifica, i valori assegnati al campo month sono evidenziati, come mostrato nella figura riportata di seguito:
  12. Nella Libreria di tipi, fare clic sul nodo di record contents del tipo di gruppo order. Notare le seguenti modifiche a livello grafico nei pannelli:
    • Nel pannello Proprietà di base, il Tipo di record contents equivale al tipo di record denominato orderContent. Questa impostazione indica che il record contents è basato sul tipo di record orderContent.
    • Nel pannello secondario a sinistra del pannello di verifica, la terza riga di ogni record ripetuto è evidenziata, come mostrato nella figura riportata di seguito:
      La figura mostra che la terza riga del record ripetuto (che indica il nome della verdura e il peso in libbre) è evidenziata.
      Il tipo di record orderContent contiene il record vegetables. Il record vegetables contiene un insieme di record vegetable ripetuti. Il record vegetable contiene un campo name e un campo pounds.
  13. Nella Libreria di tipi, fare clic sul nodo del record name del tipo di record orderContent. Nel pannello secondario a sinistra del pannello di verifica, i valori assegnati al campo name sono evidenziati, come mostrato nella figura riportata di seguito:
    Questa figura mostra che i valori assegnati al campo name sono evidenziati.