domingo, fevereiro 06, 2011

Adabas Utilities - ADACMP

ADACMP COMPRESS é usado para editar e comprimir registros de dados a ser carregado no banco de dados usando o utilitário ADALOD;

ADACMP DECOMPRESS é usado para descompactar arquivos individuais para a estrutura de dados ou mudanças de definição de campos (alfa para numerico), serve também para ser pegar os dados de um arquivo adabas e descarregar para outro banco de dados que não seja Adabas.

Compress - Imput - Os dados de entrada do ADACMP devem estar em um dataset seqüencial/arquivo. Sequenciais de entrada e VSAM cadastradas não podem ser usados. Os registos podem ser fixos, variáveis, ou de duração indefinida. O comprimento máximo de registro de entrada permitida depende do sistema operacional. O comprimento máximo do registro de compactado é limitado pelo tamanho do bloco de armazenamento de dados em uso e o comprimento máximo de registro comprimido definido para o arquivo. Os registros de entrada pode ser em qualquer formato bloqueado ou desbloqueado.

É possível omitir os dados de entrada definido se o parâmetro NUMREC=0 é fornecido.

A estrutura lógica e as características dos dados de entrada para comprimir são descritos com demonstrações de campo das definições (FNDEF para definir campos ou grupos de campos; SUBFN e SUPFN para definir sub-ou supercampos, respectivamente; COLDE, HYPDE, PHONDE e SUPDE para definir os vários tipos de descritores). Definições de campo são utilizadas para criar No Adabas field definition table (FDT).

Por padrão, os registros de dados de entrada são processadas na ordem das instruções de definição de campo. O parâmetro de formato permite que você altere a ordem de processamento do campo ou ignorar campos.

Para dar support universal encoding (UES) - (suporte a codificação universal), os parâmetros permitem que você especificar a arquitetura de dados e codificações de user encodings do arquivo desejado e user encodings para usar durante a compressão.

Processando - ADACMP COMPRESS comprime edições e os registros de dados.

Edição inclui a verificação de cada campo definido com um packed (P) or unpacked (U) para garantir que o valor do campo é numérico e no formato correto. Qualquer registro que contém dados inválidos são gravados os dados de erro ADACMP definido e não é escrito para o arquivo compactado set. Na saida do Adabas User Exit 6 pode ser usado para especificar a edição adicionais a serem executadas durante o processamento ADACMP COMPRESS.

Compressão inclui a remoção de espaços em branco de campos alfanuméricos; remover os zeros à esquerda dos campos numéricos; remover os zeros à direita em campos de formato de ponto flutuante; e packing numeric e campos unpacked. Os campos com a opção (FI) fixo não são comprimidas, e os campos vazios localizados no final do registro é armazenado nem comprimidos. Campos de valores nulos são tratados de forma diferente dependendo das opções a ser utilizado. Processamento SQL valor nulo é suportado.

Se a codificação universal encoding support (UES) for especificado, compressão inclui a conversão da entrada para a codificação especificada para arquivos compactados.

Output

Registros processados dos dados são escritos em conjunto com as informações de arquivo de definição para um conjunto de dados sequencial com a variável bloqueado formato de gravação. Este conjunto de dados, ou vários conjuntos de dados de tais múltiplas execuções ADACMP, pode ser usado como entrada para o utilitário ADALOD. O conjunto de dados pode ser usado como entrada para ADALOD mesmo que não contém registros, o que significa que não há registros foram fornecidos dados sobre o conjunto de entrada ou todos os registros foram rejeitados durante a edição.

O relatório de processamento ADACMP indica a quantidade aproximada de espaço necessária no armazenamento de dados para os registros comprimido por tipo de dispositivo (especificado com o parâmetro DEVICE) e por fatores de preenchimento de dados de armazenamento entre 5 e 30 por cento. A taxa de compressão é calculada com base no valor real dos dados utilizados como entrada para a rotina de compactação.

Descompress - ADACMP DECOMPRESS aceita como registros de entrada de dados de arquivos existentes Adabas, quer directamente, sem separar arquivo de descarga, ou já descarregados com o utilitário ADAULD. Se um arquivo for descomprimido diretamente, ele é descarregado sem informação FDT como parte do processo de descompressão, que podem poupar tempo ao descompactar arquivos maiores.

Direto de descompressão de arquivos multiclient pode ser limitado a registros de um usuário específico apenas quando um proprietário de identificação válido (parâmetro ETID) é especificado.

O parâmetro format pode ser utilizado para descomprimir o registro para um formato diferente do que o especificado pelo FDT. Isso é particularmente útil quando o FDT de um arquivo existente tem que ser alterado.

Se o suporte a codificação universal (UES) é utilizado, as características de codificação para o arquivo descompactado são passados no cabeçalho da entrada comprimido sequencial. Os parâmetros permitem substituir essas características de codificação.

Registros processados os dados são gravados em um conjunto de dados sequencial com a variável bloqueado formato de gravação. Registros de dados rejeitadas são gravados os dados de erro definida. ADACMP DECOMPRESS
MEMBER=ADACM091 000019 REC SAVE:25.05.2005 15:03 BY   USERID AA01055  R=00000001
DSN=AAB.DIBD.JCLS                                LIB=S3 VOL=PRL303 UNIT=1126
....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
//AAFAD080 JOB (AAFA,DIBD),CLAU,CLASS=S,MSGCLASS=A,TYPRUN=HOLD
//*UQ ALLOW
//* --------------------------------------------------------------
//*       DESCOMPRIME ARQUIVOS COMPACTADOS E GRAVA EM UM PS
//* --------------------------------------------------------------
//ADACMP   EXEC AAFAU222
//DDEBAND  DD DSN=ADABAS.ULD.F091.DB222,DISP=OLD,UNIT=SYSDA,
//          VOL=SER=PRD005  ===> ENTRADA
//DDAUSBA  DD DSN=ADABAS.DEC.F091,UNIT=SYSDA,DISP=(NEW,CATLG,DELETE),
//         VOL=SER=PRD007,SPACE=(CYL,(300,2)),
//         DCB=(LRECL=80,BLKSIZE=6160,RECFM=VB,DSORG=PS)
//DDFEHL   DD DSN=&&FEHL,UNIT=SYSDA,DISP=(NEW,DELETE),
//         SPACE=(TRK,1)
//DDCARD   DD   *
ADARUN PROG=ADACMP,DBID=222
/*
//DDKARTE  DD  *
ADACMP DECOMPRESS
ADACMP COMPRESS
MEMBER=ADACM090 000019 REC SAVE:25.05.2005 15:03 BY   USERID AA01055  R=00000001
DSN=AAB.ADABAS.JCLS                                LIB=S3 VOL=PRL303 UNIT=1126
....+....1....+....2....+....3....+....4....+....5....+....6....+....7....+....8
//AAFAD080 JOB (AAFA,DIBD),CLAUD,CLASS=S,MSGCLASS=A,TYPRUN=HOLD
//*UQ ALLOW
//* --------------------------------------------------------------
//*       COMPRESS ARQUIVOS 
//* --------------------------------------------------------------
//STEP01.DDCARD DD *
ADARUN PROGRAM=ADACMP
ADARUN DATABASE=001
ADARUN DEVICE=3380
ADARUN MODE=MULTI
ADARUN SVC=253
//STEP01.DDKARTE  DD  *
ADACMP COMPRESS
ADACMP FILE=45
ADACMP NUMREC=0
ADACMP FNDEF='01,CU,008,A,DE'
ADACMP FNDEF='01,SZ'
ADACMP FNDEF='02,ST,002,A,DE'
ADACMP FNDEF='02,ZI,005,U'
ADACMP FNDEF='01,CY,020,A,DE'
ADACMP FNDEF='01,PH,012,A'
ADACMP FNDEF='01,NA,060,A'
ADACMP FNDEF='01,CN,030,A'
ADACMP FNDEF='01,AD,040,A'
ADACMP FNDEF='01,CI,025,A'
ADACMP FNDEF='01,FO,006,U'
ADACMP FNDEF='01,SL,PE'
ADACMP FNDEF='02,LI,0014,U'
ADACMP FNDEF='02,SI,0030,A'
ADACMP FNDEF='01,BR,0025,A,MU(10)'
ADACMP SUPDE='SP=ST(1,2),ZI(1,2)'
ADACMP SUBDE='SB=ZI(1,2)'
//STEP02.DDCARD   DD  *
ADARUN PROGRAM=ADALOD
ADARUN DATABASE=001
ADARUN DEVICE=3380
ADARUN MODE=MULTI
ADARUN SVC=253
//STEP02.DDKARTE  DD  *
ADALOD LOAD FILE=45
ADALOD      DSSIZE=5B
ADALOD      NAME=CUSTOMERS
ADALOD      MAXISN=100
ADALOD      DSDEV=3380
ADALOD      TEMPDEV=3380
ADALOD      SORTSIZE=5
ADALOD      TEMPSIZE=5

0 comentários:

Enviar um comentário