Sumário

Search

  1. Prefácio
  2. Introdução aos Utilitários do PowerExchange
  3. createdatamaps - Utilitário de Criação do Mapa de Dados
  4. DTLCCADW - Utilitário Adabas PCAT
  5. DTLCUIML - Utilitário Marcador do Log do IMS
  6. DTLINFO - Utilitário de Informações de Liberação
  7. DTLINFOX - Enhanced Release Information Utility
  8. DTLREXE - Utilitário de Execução Remota
  9. DTLUAPPL - Utilitário de Token de Reinicialização
  10. DTLUCBRG - Utilitário de Registro em Lotes
  11. DTLUCDEP - Utilitário de Manutenção CDEP
  12. DTLUCSR2 - Utilitário de Registros IDMS SR2 e SR3
  13. DTLUCUDB - Utilitário do DB2 para Linux, UNIX e Windows CDC
  14. DTLULCAT e DTLULOGC - Utilitários de Catálogo de Logs IDMS
  15. DTLURDMO - Utilitário de Mapa de Dados
  16. DTLUTSK - Utilitário de Controle de Tarefa
  17. EDMLUCTR - Utilitário de Digitalização e Impressão de Log
  18. EDMUOPTS - Utilitário Service Aid
  19. EDMXLUTL - Utilitário do Marcador de Eventos
  20. HOSTENT - Utilitário Gerador de Relatórios de Endereços TCP/IP
  21. PWXCATMY - Utilitários de catálogo do MySQL
  22. PWXUCCLPRT - Utilitário de resumo de log de impressão
  23. PWXUCDCT - Utilitário do Agente de Log do PowerExchange para Linux, UNIX e Windows
  24. PWXUCREG - Utilitário de Registro de Captura
  25. PWXUMAP - Utilitário de lista de mapas
  26. PWXUCRGP - Utilitário de Impressão de Registros de Captura
  27. PWXUDMX - Utilitário de Memória ECSA de Hora de Atualização dos Mapas de Dados
  28. Utilitário de relatório PWXUGSK - SSL
  29. PWXUSSL - Utilitário de Relatório SSL do PowerExchange
  30. WRKJRNLCKE - Utilitário de Tabela de Bloqueio de Diário para IBM i
  31. ZOSTOUCH - Utilitário para Definir a Última Data Referenciada do z/OS

Exemplo: Localizando Campos RID

Exemplo: Localizando Campos RID

Este exemplo descreve um arquivo de controle que é configurado para localizar campos RID.
O arquivo de controle inclui as seguintes propriedades globais que controlam a localização de RIDs:
  • cacheConfig (cachePath, flushDataMode)
O arquivo de controle inclui as seguintes propriedades de instâncias de mapa de dados que controlam o processamento RID:
  • findRecordIds
  • ridConfig (readRecordLimit, recordTypeLimit, fieldWidth)
As configurações ridConfig são baseadas nas seguintes suposições sobre os dados:
  • readRecordLimit é definido como 5000 porque todos os tipos de registro devem ocorrer dentro dos primeiros 5000 registros do conjunto de dados.
  • recordTypeLimit é definido como 2 porque não há mais que dois tipos de registros distintos em nenhum conjunto de dados correspondente a esse copybook.
  • fieldWidth é definido como 2 porque os valores de RID de todos os registros de dados têm dois bytes de largura.
Alternativamente, é possível especificar as propriedades findRecordIds e ridConfig no nível global, em vez de no nível de instância de mapa de dados.
Linha de Comando
Para executar esse exemplo na máquina dos serviços Informatica, insira o seguinte comando na linha de comando:
Informatica_services_installation_directory
\isp\bin\infacmd pwx createDatamaps
-pwxLocation
pwx_location
-datamapOutputDir
Output -controlFile seq_rid.xml -logFile Output\seq_rid.log
-verbosity
INFO
Para o parâmetro -pwxLocation, especifique o Ouvinte do PowerExchange como especificado em uma instrução NODE no arquivo de configuração DBMOVER do PowerExchange.
Arquivo de Controle
O arquivo de controle para este exemplo, seq_rid.xml, contém as seguintes linhas:
<?xml version="1.0" encoding="UTF-16LE"?> <DatamapGeneration xmlSchemaVersion="1.0" xmlns="http://com.informatica.cmd.pwx.createdatamaps/DatamapGeneration"> <seqGen> <!-- New for 10.0. Data cache configuration. Global setting only. --> <cacheConfig> <cachePath>c:\temp\imgcache</cachePath> <flushDataMode>e</flushDataMode> </cacheConfig> <globalGenConfig> <schemaName>SEQRID</schemaName> <datamapName>MAP</datamapName> </globalGenConfig> <datamapInstances> <seqDatamapInstance> <genConfig> <!-- New for 10.0. Flag triggers new behaviour. --> <findRecordIds>true</findRecordIds> </genConfig> <importCopybookDetails> <filePath> <zosPath>DEV.IMG.COBOL(RID1)</zosPath> </filePath> </importCopybookDetails> <datamapProperties> <seqFileName> <zosPath>DEV.IMG.DATA(RID1)</zosPath> </seqFileName> <!-- New for 10.0. Skip records and record ID configuration --> <skipRecordCount>0</skipRecordCount> <ridConfig> <readRecordLimit>5000</readRecordLimit> <recordTypeLimit>2</recordTypeLimit> <fieldWidth>2</fieldWidth> </ridConfig> </datamapProperties> </seqDatamapInstance> </datamapInstances> </seqGen> </DatamapGeneration>
Arquivo de Copybook COBOL
O copybook COBOL para o mapa de dados neste exemplo, DEV.IMG.COBOL(RID1), contém as seguintes linhas:
01 NAME_REC. 04 ACCOUNT PIC 9(3). 04 RECTYPE PIC X(2). 04 NAME PIC X(20). 04 SEX PIC X. 04 ITEMCT PIC 9. 04 ITEMS OCCURS 3 DEPENDING ON ITEMCT PIC X(10). 04 FILLER PIC X. 01 ACCOUNT_REC. 04 ACCOUNT PIC 9(3). 04 RECTYPE PIC X(2). 04 AMOUNT PIC 9(9)V99. 04 POLICY_DATE PIC X(8). 04 FILLER PIC X.
O copybook inclui dois registros de nível 01 e nenhuma instrução REDEFINE. O copybook define dois layouts de registro: um para cada registro de nível 01.
Arquivo de Dados
O arquivo de dados neste exemplo, DEV.IMG.DATA(RID1), contém as seguintes linhas:
00501Mark Jones M3apple orange pear . 005020000012345087-12-31. 01001Shirley Wong F1raspberry . 010020000000025657-07-04. 02001John Jackson M2pansy daisy . 03001Donald Leary M0. 030020000000004566-01-12. 04001David Wu M1fox . 05001Jean Connor F3dog cat rabbit . 050020000000091196-02-29. 06001Ronald Rose M2horse pony . 060020000100000001-01-01. 07001Betsy Martin F1wolf . 070020000064000141-12-07.
Os primeiros três caracteres de cada registro nesse arquivo são o campo ACCOUNT. Os próximos dois caracteres de cada registro são o campo RECTYPE.
Identificando Campos RID
Para cada registro de nível 01, o utilitário createdatamaps passa por um processo de três etapas para identificar o campo RID e associar seus valores com layouts de registros específicos.
Para o registro
NAME_REC
, o utilitário passa pelas seguintes etapas:
A
Etapa 1
examina o modelo de metadados para localizar campos RID candidatos.
A tabela a seguir mostra os resultados da Etapa 1 para o registro NAME_REC:
Campo no Registro NAME_REC
Campo RID Candidato?
ACCOUNT
Não - o campo excede a largura máxima
REC_TYPE
Sim
NAME
Não - o campo excede a largura máxima
SEX
Sim
ITEMCT
Sim
ITEMS
No - o campo excede a largura máxima; o campo RID não pode ser um campo com comprimento variável
Com base nesses achados, o utilitário createdatamaps determina o deslocamento e o comprimento dos campos RID candidatos.
A
Etapa 2
lê registros de dados do conjunto de dados DEV.IMG.DATA(RID1) que é especificado no arquivo de controle. Usando os deslocamentos dos campos candidatos da Etapa 1, a Etapa 2 salva os valores de dados de cada campo RID candidato. O utilitário compara o número de valores de dados distintos com o valor de recordTypeLimit no arquivo de controle. Devido a recordTypeLimit=2, o utilitário rejeita campos candidatos com mais de dois valores de dados distintos no arquivo de dados.
O resultado pode ser um campo RID selecionado entre os candidatos. Neste exemplo, ambos os campos REC_TYPE e SEX atendem aos critérios de recordTypeLimit=2 e permanecem campos candidatos válidos. O utilitário escolhe o primeiro campo candidato, REC_TYPE, como campo RID.
A
Etapa 3
gera todos os possíveis layouts de registros. Como o copybook COBOL neste exemplo não inclui instruções REDEFINE, a Etapa 3 gera apenas um layout de registro para o tipo de registro ACCOUNT_REC.
Após concluir a Etapa 3 para o tipo de registro ACCOUNT_REC, o utilitário repetirá as três etapas para o tipo de registro
NAME_REC
.
A
Etapa 1
examina o modelo de metadados para localizar campos RID candidatos.
A tabela a seguir mostra os resultados da Etapa 1 para o registro ACCOUNT_REC:
Campo no registro ACCOUNT_REC
Campo RID Candidato?
ACCOUNT
Não - o campo excede a largura máxima
REC_TYPE
Sim
AMOUNT
Não - o campo excede a largura máxima
POLICY_DATE
Não - o campo excede a largura máxima
A
Etapa 2
lê registros de dados do conjunto de dados DEV.IMG.DATA(RID1). O utilitário compara o número de valores de dados distintos com o valor de recordTypeLimit (2, neste exemplo) no arquivo de controle. O resultado pode ser um campo RID selecionado entre os candidatos. Neste exemplo, o campo REC_TYPE é o único candidato da Etapa 1 e também atende aos critérios da Etapa 2.
A
Etapa 3
gera todos os possíveis layouts de registros. Como o copybook COBOL neste exemplo não inclui instruções REDEFINE, a Etapa gera apenas um layout de registro para o tipo de registro ACCOUNT_REC.
Após executar as três etapas para cada registro de nível 01, o utilitário criará um mapa de dados com os seguintes registros:
Registro
Valor REC_TYPE
NAME_REC
01
ACCOUNT_REC
02
Arquivo de Log
O arquivo de log para este exemplo, seq_rid.log, contém as seguintes linhas:
2015-10-09 12:10:41 INFO [MDO_34613] Configuration for this run: location=MyListener, user name=, datamap directory=Output, control file=seq_rid.xml 2015-10-09 12:10:46 INFO [MDAdapter_34100] Finding metadata. Path filter = DEV.IMG.COBOL(RID1) 2015-10-09 12:10:46 INFO [MDAdapter_34101] Fetching file DEV.IMG.COBOL(TST101) 2015-10-09 12:10:47 INFO [MDAdapter_34100] Finding metadata. Path filter = DEV.IMG.DATA(RID1) 2015-10-09 12:10:47 INFO [MDO_34641] Metadata record 'NAME_REC' - Candidate record id field 'RECTYPE' found. 2015-10-09 12:10:47 INFO [MDO_34641] Metadata record 'NAME_REC' - Candidate record id field 'SEX' found. 2015-10-09 12:10:47 INFO [MDO_34641] Metadata record 'NAME_REC' - Candidate record id field 'ITEMCT' found. 2015-10-09 12:10:48 INFO [MDO_34643] Metadata record 'NAME_REC' - Valid record id field 'RECTYPE' found from reading the data records. 2015-10-09 12:10:48 INFO [MDO_34612] Copybook 'NAME_REC' has 1 possible layouts (Maximum configured limit is 2). 2015-10-09 12:10:48 INFO [MDO_34641] Metadata record 'ACCOUNT_REC' - Candidate record id field 'RECTYPE_1' found. 2015-10-09 12:10:48 INFO [MDO_34643] Metadata record 'ACCOUNT_REC' - Valid record id field 'RECTYPE_1' found from reading the data records. 2015-10-09 12:10:48 INFO [MDO_34612] Copybook 'ACCOUNT_REC' has 1 possible layouts (Maximum configured limit is 2). 2015-10-09 12:10:48 INFO [JDMX2_34801] 2 records imported. 2015-10-09 12:10:48 INFO [JDMX2_34802] 12 fields imported. 2015-10-09 12:10:48 INFO [JDMX2_34803] 2 tables imported. 2015-10-09 12:10:48 INFO [MDO_34619] Datamap file 'Output\SEQ_RID.MAP.dmp' was written. 2015-10-09 12:10:48 INFO [MDO_34614] Run complete: 1 datamap(s) created. 0 error and 0 warning messages.
Arquivos de Mapa de Dados
Esse exemplo cria um mapa de dados com o seguinte nome de arquivo e caminho relativo:
  • Saída\SEQ_RID.MAP.dmp