Sobre Esta Tarefa
Este exemplo mostra como construir um Esquema de Arquivo Simples para
analisar uma combinação de dados posicionais e delimitados. Para criar um Esquema
de Arquivo Simples, você deve primeiro analisar seus dados do Arquivo Simples para determinar os
campos e nós a serem incluídos no Esquema de Arquivo Simples. Neste exemplo,
você cria um Esquema de Arquivo Simples para as duas linhas de dados a seguir:
BuyRight
Pharmacy;USACAMVI334;!389!22;34980;
Taylor
Drugs;USANJWLB128;!778!23!523;5667;
Use uma abordagem
descendente para definir os registros e campos do Esquema de Arquivo Simples,
conforme mostrado as etapas a seguir:
- Crie um nó-raiz:
- Na guia Projeto, clique com o botão direito do mouse
na pasta Esquemas de Arquivo Simples e selecione Novo
Esquema de Arquivo Simples. A caixa de diálogo Assistente
Básico é aberta.
- Insira Order no campo Nome.
- Clique em OK. O Editor de Esquema de Arquivo Simples é aberto e o Esquema de Arquivo Simples é exibido sob a pasta Esquemas de Arquivo Simples na guia Projeto.
Além disso, um nó-raiz com o mesmo nome é mostrado na guia
Layout do Esquema.
- Determine o nível mais alto de estrutura nos dados. Neste
exemplo, a estrutura maior é cada uma das duas linhas que representa
um registro. Os dois registros nestes dados de Arquivo Simples são
delimitados por um fim de linha que está localizado entre os dois
registros, conforme mostrado em
Figura 1:
Figura 1. Exemplo combinado 1: os registros do arquivo são delimitados pelo
fim da linha que está localizado entre os caracteres que constituem o
registro.
- Configure o nó-raiz chamado Order para
analisar os registros filhos de repetição usando os seguintes critérios:
- Separe os dados em registros usando um delimitador.
- Presuma que o documento termine com um EOS (End Of Stream) porque
o último registro não termina com um delimitador.
- Use o delimitador de fim de linha para delimitar quaisquer registros filhos.
- Presuma o delimitador entre os dados.
- Presuma registros filhos de repetição.
- Use o delimitador de fim de linha para delimitar os registros filhos
de repetição.
Usando estes critérios, especifique os valores a seguir para a área de
janela Propriedades Básicas e
Delimitadores do nó Order
conforme mostrado em
Figura 2:
Figura 2. Área de janela
de exemplo combinado 1, em que a Estrutura é Delimitada e o Documento termina com
a caixa EOS assinalada. A opção Fim da Linha é selecionada e a posição
Delimitador Filho é configurada como Entre
- Inclua um nó-filho no nó-raiz para representar os registros.
Na guia Layout do Esquema, clique com o botão direito do mouse no nó Order.
No menu, selecione , insira purchaseOrder e
clique em OK.
- Determine o próximo nível de estrutura nos dados. Neste exemplo, o
próximo nível da estrutura são os campos delimitados por ponto e vírgulas,
conforme mostrado em
Figura 3:
Figura 3. Exemplo combinado 2: Os campos individuais do registro são
delimitados por ponto e vírgulas.
- Configure o nó purchaseOrder para
analisar esses campos conforme descrito pelos seguintes critérios:
- O nó purchaseOrder pode ter uma
ou mais ocorrências.
- Analise os dados do registro em campos-filhos usando um delimitador.
- Use o ponto e vírgula como o delimitador entre os dados.
- Presuma o delimitador após os dados.
Usando estes critérios, especifique os valores a seguir para a área de
janela Propriedades Básicas e Delimitadores do nó
purchaseOrder, conforme mostrado em
Figura 4:
Figura 4. Área de janela
de exemplo combinado 2: A Estrutura é configurada como Delimitada, opções Máximo Ilimitado
e Caractere selecionadas.
A Posição do Delimitador Filho é configurada como Após.
- Inclua os campos do nó purchaseOrder, clicando
com o botão direito do mouse no nó purchaseOrder na
guia Layout do Esquema e selecionando a opção Novos
Filhos na lista. A caixa de diálogo Inclusão em Massa é
exibida.
- Na caixa de diálogo Inclusão em Massa, inclua todos os registros e campos
filhos do nó purchaseOrder:
- Clique em Incluir e altere field1 para storeName.
Deixe o Tipo de Nó configurado como Campo.
- Clique em Incluir e altere field2
para OriginCode. Altere o Tipo de Nó para Registro.
- Clique em Incluir e altere field3 para items.
Altere o Tipo de Nó para Registro.
- Clique em Incluir e altere field4 para orderID.
Deixe o Tipo de Nó configurado como Campo.
- Clique em OK.
- Determine o próximo nível de estrutura nos dados. Neste exemplo, o
próximo nível da estrutura é um conjunto de dados posicionais localizados
no registro originCode, conforme mostrado em
Figura 5:
Figura 5. Exemplo
combinado 3: originCode é uma seção de dados posicionais no registro
delimitado.
- Configure o registro originCode como
posicional:
- Na guia Layout do Esquema, selecione o nó originCode.
As Propriedades Básicas são exibidas.
- Na lista Estrutura, selecione Posicional.
- Inclua os campos posicionais do nó originCode,
clicando com o botão direito do mouse no nó originCode na guia Layout
do Esquema e selecionando a opção Novos Filhos na
lista. A caixa de diálogo Inclusão em Massa é
aberta.
- Na caixa de diálogo Inclusão em Massa, inclua todos
os registros e campos filhos do nó originCode:
- Clique em Incluir e altere field1 para countryCode.
Deixe o Tipo de Nó configurado como Campo.
- Clique em Incluir e altere field2 para stateCode.
Deixe o Tipo de Nó configurado como Campo.
- Clique em Incluir e altere field3 para cityCode.
Deixe o Tipo de Nó configurado como Campo.
- Clique em Incluir e altere field4 para storeCode.
Deixe o Tipo de Nó configurado como Campo.
- Clique em OK.
- Configure as Propriedades Posicionais de
cada campo posicional. Para cada nó filho do nó originCode, clique no nó na guia Layout do Esquema; no final da área de janela de propriedades, configure os valores de Deslocamento de Campo e Comprimento de Campo conforme mostrado na lista a seguir:
- countryCode -
- stateCode -
- cityCode -
- storeCode -
O Deslocamento do Campo é calibrado a partir
do local do caractere atual enquanto a cadeia originCode está
sendo processada, e não a partir do início da cadeia originCode de
cada campo. Neste exemplo, o countryCode é
processado e os três primeiros caracteres de originString são
designados ao countryCode. Quando o
stateCode é processado, o local do caractere atual
já está no local do caractere 3, portanto, o Deslocamento do
Campo igual a 1 de stateCode é incluído
no local do caractere atual para obter o ponto de início para processar a
sequência stateCode, conforme mostrado em
Figura 6:
Figura 6. O Exemplo Combinado 4 mostra o local do cursor atual e o Deslocamento do Campo.
- Determine o próximo nível de estrutura nos dados. Neste exemplo, o
próximo nível da estrutura são os campos de repetição delimitados por
pontos de exclamação, conforme mostrado em
Figura 7:
Figura 7. Exemplo combinado 5, em que os dados delimitados
são indicados por pontos de exclamação.
- Configure o nó items para analisar
registros filhos de repetição usando os seguintes critérios:
- Separe os dados em campos usando um delimitador.
- Use pontos de exclamação como delimitadores para delimitar quaisquer
campos-filhos.
- Presuma o delimitador antes dos dados.
- Presuma um ou mais campos-filhos de repetição.
- Use pontos de exclamação como delimitadores para delimitar os campos-filhos
de repetição.
Usando estes critérios, especifique os valores a seguir para a área de
janela Propriedades Básicas e Delimitadores do nó de itens, conforme
mostrado em
Figura 8:
Figura 8. Área de janela de exemplo combinado 3, em que
a Posição do Delimitador Filho é configurada coma Antes.
- Inclua o campo-filho de repetição no nó items,
clicando com o botão direito do mouse no nó items na guia Layout
do Esquema e selecionando a opção na
lista. A caixa de diálogo Novo Campo é
aberta.
- Em Nome do Campo, insira item e
clique em OK.
- Configure o nó item para conter uma ou mais
ocorrências, conforme mostrado em
Figura 9:
Figura 9. Área de janela de exemplo combinado 4, em que
Máximo de Repetições é configurado para Ilimitado.
O
Esquema de Arquivo Simples está concluído e pronto para ser testado.
- Cole o seguinte texto na subárea de janela esquerda da
área de janela de teste:
BuyRight Pharmacy;USACAMVI334;!389!22;34980;
Taylor
Drugs;USANJWLB128;!778!23!523;5667;
Esses dados também
são fornecidos no arquivo
mixedData.txt. Se você
aceitou os padrões durante a instalação do Studio, este arquivo está
localizado no diretório a seguir:
C:\Arquivos de
Programas\IBM\WebSphere Cast Iron Studio
3.X\Samples\FlatFileSchemaAtenção: Não inclua um retorno de linha após a última linha.
- Clique no ícone Testar.
A caixa de diálogo Confirmação de Salvamento é
aberta.
- Clique em Sim. A representação de XML a seguir
dos dados é mostrada na área de janela de teste:
<?xml version="1.0" encoding="UTF-8"?>
<Order>
<purchaseOrder>
<storeName>BuyRight Pharmacy</storeName>
<originCode>
<countryCode>USA</countryCode>
<stateCode>CA</stateCode
<cityCode>MVI</cityCode>
<storeCode>334</storeCode>
</originCode>
<items>
<item>389</item>
<item>22</item>
</items>
<orderId>34980</orderId>
</purchaseOrder>
<purchaseOrder>
<storeName>Taylor Drugs</storeName>
<originCode>
<countryCode>USA</countryCode>
<stateCode>NJ</stateCode>
<cityCode>WLB</cityCode>
<storeCode>128</storeCode>
</originCode>
<items>
<item>778</item>
<item>23</item>
<item>523</item>
</items>
<orderId>5667</orderId>
</purchaseOrder>
</Order>
- Na guia Layout do Esquema, clique no nó
item. Na subárea de janela direita da área de
janela de teste, os dados analisados no nó item são
destacados conforme mostrado em
Figura 10:
Figura 10. O Nó de Item é Destacado
- Clique no nó state para visualizar os dados
designados para o nó de estado.
Nota: Uma implementação
de referência do Esquema de Arquivo Simples
Order é
fornecida no projeto FlatFileSchemasExample. Para visualizar e abrir
o projeto FlatFileSchemasExample, siga as etapas 1 e 2 no
Exemplo de Grupo e clique duas vezes no Esquema de Arquivo Simples
Order. Os nós do Esquema de Arquivo Simples Order são exibidos
na guia
Layout do Esquema e as propriedades
do nó-raiz
Order são mostradas na área de janela direita.