Visão Geral Funcional
O utilitário ADAULD descarrega um arquivo Adabas. Os arquivos Adabas são descarregados para
(*) permitir que os dados sejam processados por um programa que não seja da Adabas. Nesse caso, o arquivo também deve ser descompactado após o descarregamento, usando a função DECOMPRESS do utilitário ADACMP.
(*) crie um ou mais arquivos de teste, todos contendo os mesmos dados. Este procedimento requer que um arquivo seja descarregado e, em seguida, recarregado como um arquivo de teste com um número de arquivo diferente.
(*) altere a tabela de definição de campo (FDT). Isso requer que o arquivo seja descarregado, descompactado, compactado usando as definições de campo modificadas e recarregado. Se o utilitário ADADBS for usado para adicionar definições de campo a um arquivo, o arquivo não precisará ser descarregado primeiro.
A sequência na qual os registros são descarregados pode ser Fisica = a ordem em que eles estão fisicamente posicionados no Armazenamento de Dados.
Lógico = uma sequência controlada pelos valores de um descritor especificado pelo usuário.
ISN = sequência ISN ascendente.
Os critérios de seleção (SELCRIT / SELVAL) são opcionalmente usados para indicar um subconjunto de registros a serem descarregados:
(*) Se esse critério não for fornecido, todos os registros serão descarregados em sequência física.
(*) Se um critério de seleção for especificado, mas nenhuma sequência de classificação (SORTSEQ), os registros especificados serão descarregados na sequência ISN.
(*) Se um critério de seleção e uma sequência de classificação forem fornecidos, os registros selecionados serão classificados na área do pool de Trabalho do núcleo e serão descarregados na sequência de classificação especificada.
(*) Se nenhum registro que corresponda aos critérios de seleção for encontrado, o ADAULD criará um arquivo contendo apenas o FDT e emitirá o código de condição 4 no registro 15.
A saída do registro descarregado está no formato compactado. Os registros de saída têm o mesmo formato que os registros produzidos pelo utilitário ADACMP.
Ao usar a opção MODE = SHORT, as entradas do descritor (necessárias para criar o índice normal e o índice superior do arquivo) são omitidas durante o processo de descarregamento. Isso reduz o tempo necessário para descarregar. Observe, no entanto, que a saída criada usando MODE = SHORT possui um FDT diferente do mesmo arquivo descarregado sem MODE = SHORT, pois todas as informações do descritor são removidas.
Nota: Uma execução interrompida do ADAULD UNLOAD FILE deve ser reexecutada desde o início.
FILE
FILE especifica o número do arquivo a ser descarregado. Nem o arquivo do ponto de verificação nem o arquivo de segurança podem ser descarregados.
Parâmetros e subparâmetros opcionais
CODE: Cipher Code
Se o arquivo a ser descarregado for codificado, o CODE deverá fornecer o código de codificação apropriado.
DDISN: Create DD/ISN Output File of Unloaded ISNs
A especificação do parâmetro DDISN instrui o ADAULD a gravar a lista de ISNs não carregados no arquivo de saída sequencial DD/ISN. O DD/ISN está estruturado para que possa ser usado como entrada no ADALOD UPDATE com o objetivo de excluir os registros não carregados.
Se a palavra-chave DDISN for especificada
(*) mas o arquivo DD / ISN está ausente na JCL, ADAULD termina com o erro 081.
(*) e SORTSEQ especifica um hiperdescriptor ou descritor que se refere a um campo de valores múltiplos. ADAULD termina com o erro 133 porque o DD / ISN pode conter ISNs duplicados.
ERRLIM: Error Threshold
ERRLIM define o número máximo de códigos de resposta do núcleo aceitos pelo ADAULD antes do término da operação. A configuração padrão é uma, o que significa que o primeiro erro finaliza ADAULD com o erro 124.
O valor ERRLIM pode ser definido como mais alto que um para tolerar condições que ocorram intermitentemente, como o código de resposta 255 (todos os buffers conectados alocados). Nesse caso, o utilitário termina com o código de retorno 8 e nenhum usuário é encerrado de forma anormal. O arquivo de saída de ADAULD pode ser usado, embora os registros possam estar ausentes, dependendo do código de resposta do núcleo retornado.
ETID: Multiclient File Owner ID
Ao descarregar arquivos multiclientes, o parâmetro ETID pode ser usado para restringir o processamento UNLOAD a apenas os registros pertencentes ao usuário especificado. Se o parâmetro ETID for omitido, todos os registros serão descarregados.
Se os parâmetros SELCRIT/SELVAL forem especificados para um arquivo multicliente, o parâmetro ETID também deverá ser especificado.
LPB: Prefetch Buffer Size
LPB especifica o tamanho do buffer interno de pré-busca. O valor máximo é 32767 bytes.
Por padrão, o ADAULD tenta tornar o buffer de pré-busca o maior possível para obter o melhor desempenho. O parâmetro LPB oferece ao usuário a opção de diminuir o buffer de pré-busca. Isso pode ser aconselhável, por exemplo, se o uso intenso da pré-busca fizer com que o ADAULD consuma muitos recursos do núcleo em relação a outros usuários.
O valor padrão depende do comprimento do buffer intermediário do usuário definido pelo parâmetro ADARUN LU. ADAULD subtrai o espaço necessário para acomodar as informações de controle do Adabas (108 bytes) e o comprimento máximo de registro compactado especificado (LRECL) do valor da LU para determinar o valor padrão da LPB. O resultado deve ser igual ou menor que o valor máximo permitido para LPB; ou seja, 32767 bytes.
O valor padrão para LU é definido como 65535 bytes, o tamanho máximo, para acomodar o buffer de registro de utilitários como ADAULD que precisam do núcleo. Se o valor da LU for muito pequeno, ADAULD poderá reduzir o valor especificado para o parâmetro LPB.
LRECL: Maximum Compressed Record Length
LRECL especifica, em bytes, o tamanho máximo do registro compactado (incluindo DVT) a ser retornado.
Esse comprimento é usado como um tamanho do buffer de registro do Adabas. Se este valor for muito pequeno, ocorre um código de resposta 53. O padrão é 4000 bytes; o máximo permitido é 32760 bytes.
MODE=SHORT: Exclude Descriptor Information
Este parâmetro indica se as informações do descritor usadas para criar o índice normal e o índice superior devem ser incluídas na saída.
Se MODE=SHORT for especificado, nenhuma informação do descritor será descarregada e todas as informações do descritor serão retiradas da tabela de definição de campo (FDT) quando forem gravadas no dataset de saída.
Se a saída for usada como entrada direta no utilitário ADALOD, o arquivo não terá descritores.
No caso de superdescritores, MODE=SHORT os descarrega como supercampos. Se a saída for usada como entrada direta no ADALOD, o arquivo carregado terá supercampos.
NOUSERABEND: Terminando sem Abend
Quando um erro é encontrado enquanto a função está em execução, o utilitário imprime uma mensagem de erro e é encerrado com o usuário abend 34 (com um dump) ou o usuário abend 35 (sem dump).
Se NOUSERABEND for especificado, o utilitário não será encerrado após a impressão da mensagem de erro. Em vez disso, a mensagem "utilitário TERMINATED DUE TO ERROR CONDITION" é exibida e o utilitário termina com o código de condição 20.
NUMOUT: Número de arquivos de saída
NUMOUT especifica o número de arquivos de saída a serem produzidos. Se o número for maior que um, a user exit 9 deverá ser usada para controlar a seleção do arquivo de saída DD/OUT1 ou DD/OUT2. Para obter informações adicionais, consulte a documentação de referência do Adabas DBA. Os valores permitidos são 1 (padrão) e 2.
NUMREC: Número de registros a serem descarregados
NUMREC limita o número de registros a serem descarregados. Nenhum limite entrará em vigor se o parâmetro for omitido.
PASSWORD: Senha do Arquivo
O parâmetro PASSWORD deve ser especificado se o arquivo a ser descarregado estiver protegido por senha.
PLOGNUM: Número do log de proteção
Quando SAVETAPE é especificado e uma fita de salvamento "online" deve ser usada como entrada para ADAULD, o log de proteção correspondente é esperado como um dataset de entrada sequencial DD / PLOG.
Se uma fita de backup on-line criada usando o ADASAV versão 5.1 for usada, os parâmetros adicionais PLOGNUM e SYN1 ou SYN4 deverão ser especificados:
(*) PLOGNUM especifica o número do log de proteção de núcleo usado enquanto a operação ADASAV SAVE estava ativa; e
(*) SYN1 ou SYN4 especifica o número do bloco que contém o checkpoint SYN1 ou SYN4 no qual a operação ADASAV SAVE correspondente foi iniciada.
Para fitas on-line salvas criadas usando o ADASAV versão 5.2 ou superior, essas informações estão incluídas na fita. Você pode especificar PLOGNUM ou SYN1 ou SYN4 para substituir as informações da fita.
SAVETAPE
SAVETAPE é usado para descarregar um arquivo de uma fita salva. Isso é útil ao mover um arquivo de uma fita salva com um tamanho de bloco para um banco de dados com outro, ou ao usar um arquivo de uma fita salva em um ou outro ambiente de teste.
Se uma fita de salvamento "online" for usada, o parâmetro TEMPDEV também deverá ser especificado. Se a fita de salvamento on-line foi criada usando o ADASAV versão 5.1, os parâmetros PLOGNUM e SYN1 ou SYN4 também devem ser especificados. PLOGNUM e SYN1 ou SYN4 podem ser especificados para fitas de salvamento on-line criadas usando o ADASAV versão 5.2 ou superior para substituir as informações incluídas na fita.
Para obter mais informações, consulte a seção Processando uma fita salva como entrada .
Os parâmetros SORTSEQ e SELCRIT não podem ser usados com SAVETAPE.
O parâmetro ETID não pode ser usado com SAVETAPE. A saída 9 do usuário deve ser usada para selecionar registros para um cliente específico de um arquivo multicliente. Para obter mais informações, consulte a seção ADAULD User Exit 9 .
Se o arquivo a ser descarregado da fita salva for codificado, o parâmetro CODE deverá ser especificado como de costume.
Nota: As funções especiais SAVETAPE estão disponíveis para uso com o Adabas Delta Save Facility. Para obter mais informações, consulte a documentação do Adabas Delta Save Facility .
SELCRIT: Critério de seleção
O parâmetro SELCRIT pode ser usado para restringir os registros não carregados àqueles que atendem ao critério de seleção fornecido. O critério de seleção deve ser fornecido usando a sintaxe do buffer de pesquisa, conforme descrito na documentação de referência do comando Adabas .
Para vários critérios, você pode especificar cada critério com uma instrução ADAULD SELCRIT separada, da seguinte maneira:
ADAULD concatena isso para:
Os valores que correspondem ao critério de seleção devem ser fornecidos usando o parâmetro SELVAL.
SELVAL: valores para critérios de seleção
SELVAL especifica os valores correspondentes aos critérios de seleção especificados com o parâmetro SELCRIT. Os formatos de valor são os mesmos que os utilizados para o buffer de valor, conforme descrito na documentação de referência do comando Adabas . Os valores podem estar em várias linhas. Os valores decimais ou binários compactados podem estar no formato hexadecimal, conforme mostrado no exemplo a seguir:
SORTSEQ: descarregar sequência
SORTSEQ especifica a sequência de classificação para ISNs não carregados. Se o SORTSEQ não for especificado, os ISNs serão descarregados na sequência física.
Se um nome de "descritor" for especificado, os registros serão descarregados na sequência lógica ascendente dos valores do descritor. Você pode especificar o nome de um descritor, subdescriptor, superdescriptor ou hiperdescriptor. Não faça referência a um campo em um grupo periódico.
(*) "MU" deve ser especificado se o nome do descritor se referir a um campo de valores múltiplos. Nesse caso, o mesmo registro é descarregado uma vez para cada valor diferente para o descritor no registro em ordem crescente de valor. Se MU não for especificado (o padrão), ADAULD rejeitará os descritores de MU e emitirá uma mensagem de erro.
(*) "NU" deve ser especificado se o nome do descritor se referir a um campo definido com a opção de supressão nula (NU). Nesse caso, os registros do descritor que contêm valores nulos não são descarregados. Se NU não for especificado (o padrão), ADAULD rejeitará os descritores de NU.
Nota: Mesmo quando o campo do descritor não for nulo suprimido, o registro não será representado na lista invertida se o campo do descritor ou um campo a seguir nunca tiver sido inicializado (mantém um valor). Portanto, o registro será descartado quando o utilitário for executado.
Se SORTSEQ = ISN for especificado, os registros serão descarregados na sequência crescente de ISN.
Se SELCRIT / SELVAL e SORTSEQ forem especificados, os registros serão classificados na área do pool de trabalho do núcleo. Portanto, os parâmetros de sessão ADARUN LS e LWP devem fornecer espaço suficiente; consulte a documentação do Adabas Operations para obter descrições dos parâmetros LS e LWP.
STARTISN: Iniciando o ISN
STARTISN é usado com os parâmetros SELCRIT / SELVAL e SORTSEQ para restringir os registros descarregados de acordo com o ISN. Não é permitido especificar STARTISN sozinho.
(*) A especificação de STARTISN com SELCRIT / SELVAL faz com que todos os registros com ISNs iguais ou superiores ao valor especificado STARTISN e com o conteúdo do campo que satisfaz o critério SELCRIT / SELVAL sejam descarregados na sequência crescente de ISN pelo nome do descritor.
(*) A especificação de STARTISN com SORTSEQ = ISN descarrega todos os registros que começam com o registro especificado por STARTISN na sequência ISN.
SYN1 | SYN4: Número do bloco inicial
Quando SAVETAPE é especificado e uma fita de save "online" deve ser usada como entrada para ADAULD, o log de proteção correspondente é esperado como um dataset de entrada sequencial DD / PLOG.
Se uma fita de salvamento on-line criada usando o ADASAV versão 5.1 for usada, os parâmetros adicionais PLOGNUM e SYN1 ou SYN4 deverão ser especificados:
(*) PLOGNUM especifica o número do log de proteção de núcleo usado enquanto a operação ADASAV SAVE estava ativa; e
(*) SYN1 ou SYN4 especifica o número do bloco que contém o ponto de verificação SYN1 ou SYN4 no qual a operação ADASAV SAVE correspondente foi iniciada.
Para fitas on-line salvas criadas usando o ADASAV versão 5.2 ou superior, essas informações estão incluídas na fita. Você pode especificar PLOGNUM ou SYN1 ou SYN4 para substituir as informações da fita.
TEMPDEV: Tipo de dispositivo de armazenamento temporário
Quando SAVETAPE é especificado e uma fita de salvamento "online" deve ser usada como entrada para ADAULD, um conjunto de dados temporário é usado para armazenar dados intermediários durante o processamento. O parâmetro TEMPDEV indica o tipo de dispositivo a ser usado para o conjunto de dados temporário. Este parâmetro é necessário apenas se o tipo de dispositivo a ser usado for diferente do tipo de dispositivo padrão atribuído a Temp pelo parâmetro ADARUN DEVICE.
O tamanho do bloco do conjunto de dados temporário deve ser pelo menos tão grande quanto o maior tamanho do bloco de armazenamento de dados do arquivo a ser descarregado, mais 16 bytes.
TEMPSIZE: Tamanho de armazenamento temporário
TEMPSIZE especifica o tamanho do conjunto de dados temporário para o arquivo. O tamanho pode ser em cilindros ou blocos (seguido de "B").
O conjunto de dados temporário deve ser grande o suficiente para armazenar todos os blocos de armazenamento de dados do log de proteção. Na pior das hipóteses, ele deve ter tantos blocos quanto o arquivo tiver blocos de armazenamento de dados, mas não precisa ser maior que o conjunto de dados PLOG. Se o conjunto de dados temporário for muito pequeno, será retornado o erro ADAULD-136 (conjunto de dados temporário muito pequeno).
TEST: Sintaxe de Teste
Este parâmetro testa a sintaxe da operação sem realmente executar a operação. Somente a sintaxe dos parâmetros especificados pode ser testada; não a validade de valores e variáveis.
UTYPE: Tipo de usuário
O tipo de usuário em vigor para o processo de descarregamento.
(*) Se EXU (o padrão) for especificado, o arquivo não poderá ser atualizado, mas outros usuários poderão ler o arquivo.
(*) Se EXF for especificado, somente ADAULD poderá usar o arquivo; nenhum outro usuário pode ler ou gravar o arquivo.
Exemplos
Exemplo 1:
O arquivo 6 deve ser descarregado. Os registros devem ser descarregados na sequência em que estão fisicamente posicionados no Data Storage.
Exemplo 2:
O arquivo 6 deve ser descarregado. Os valores para o descritor AA devem ser usados para controlar a sequência na qual os registros devem ser descarregados.
Exemplo 3:
O arquivo 6 deve ser descarregado. Os registros devem ser descarregados na sequência crescente do ISN.
Exemplo 4:
O arquivo 6 deve ser descarregado. Os registros devem ser descarregados na sequência crescente do ISN. Apenas os registros com um ISN igual ou superior a 10000 devem ser descarregados.
Exemplo 5:
O arquivo 6 deve ser descarregado. Os registros devem ser descarregados na sequência crescente do ISN. Apenas os registros com um ISN igual ou superior a 10000 devem ser descarregados.
Exemplo 6:
O arquivo 6 deve ser descarregado. Somente registros com AA = A a MM devem ser descarregados. Os registros são retornados na sequência ISN.
Exemplo 7:
O arquivo 6 deve ser descarregado. O tipo de usuário é indicado como EXF, que bloqueia o arquivo durante o processamento do descarregamento, impedindo que outros usuários leiam ou gravem o arquivo.
Processamento de entrada ADAULD
ADAULD é usado para descarregar um arquivo Adabas de
(*) um banco de dados; ou
(*) uma fita salva (se a palavra-chave SAVETAPE for especificada).
Processando uma fita salva como entrada
Se uma fita salva for usada como entrada, é esperado um arquivo seqüencial DD / SAVE. Fitas de salvamento de banco de dados ou arquivo criadas online e offline são aceitáveis. A fita salva deve ter sido criada usando o ADASAV versão 5.1 ou superior.
O DBID do ADARUN especificado para a execução ADAULD deve corresponder ao DBID encontrado na fita salva.
Se o arquivo tiver hyperdescriptors definido, os hyperexits correspondentes deverão ser especificados nos parâmetros ADARUN para ADAULD. Se as rotinas de hyperexit não estiverem mais disponíveis, o arquivo deverá ser descarregado com MODE = SHORT especificado. Consulte a documentação de referência do Adabas DBA para obter mais informações sobre hyperexits.
Para uma fita de salvamento "online":
o log de proteção correspondente é esperado como um conjunto de dados de entrada sequencial DD / PLOG.
um datasets temp (DD/TEMPR1) é necessário como armazenamento intermediário para os blocos de armazenamento de dados no log de proteção. Os parâmetros TEMPSIZE e TEMPDEV devem ser especificados.
Se uma fita de salvamento on-line criada usando o ADASAV versão 5.1 for usada, os parâmetros adicionais PLOGNUM e SYN1 ou SYN4 deverão ser especificados:
PLOGNUM especifica o número do log de proteção de núcleo usado enquanto a operação ADASAV SAVE estava ativa; e
SYN1 ou SYN4 especifica o número do bloco que contém o ponto de verificação SYN1 ou SYN4 no qual a operação ADASAV SAVE correspondente foi iniciada.
Para fitas on-line salvas criadas usando o ADASAV versão 5.2 ou superior, essas informações estão incluídas na fita. Você pode especificar PLOGNUM ou SYN1 ou SYN4 para substituir as informações da fita.
O protocolo do utilitário ADAULD no DD / DRUCK exibe um cabeçalho curto indicando o tipo de fita salva encontrada, quando foi criada, a versão do ADASAV usada para criá-la, o ID do banco de dados encontrado na fita salva e, para as fitas salvas online, o número da sessão do log de proteção correspondente e o número do bloco do ponto de verificação SYN1 / SYN4:
ADAULD primeiro lê o bloco de controle de arquivo (FCB) e a tabela de definição de arquivo (FDT) da fita salva. Então:
(*) para salvar fitas "offline", o ADAULD varre a fita para localizar os RABNs de armazenamento de dados do arquivo, extrai os registros de armazenamento de dados e, para cada registro de armazenamento de dados, gera os valores do descritor de acordo com o FDT.
(*) para salvar fitas "online", o ADAULD varre o log de proteção e copia a versão mais recente de cada bloco de armazenamento de dados do arquivo relevante para o conjunto de dados temporário. A localização de um bloco de armazenamento de dados no conjunto de dados temporários é mantida em um diretório na memória principal. Em seguida, ADAULD varre a fita salva para blocos de armazenamento de dados do arquivo. Se existirem versões mais recentes dos blocos de armazenamento de dados no conjunto de dados temporário, eles serão descarregados para DD / OUT1 ou DD / OUT2. Observe que, nesse caso, são necessárias duas unidades de fita paralelas: não é possível concatenar a fita salva e o log de proteção como no ADASAV RESTONL.
Após abrir os conjuntos de dados de entrada DD / SAVE e DD / PLOG, ADAULD faz uma verificação cruzada para garantir que as fitas de entrada estejam corretas. Se uma fita salva inválida for encontrada, o ADAULD será encerrado e exibirá o erro 134 (fita salva salva inválida fornecida). Se uma fita de log de proteção inválida for encontrada, o ADAULD será encerrado com o erro-135 (log de proteção inválido fornecido).
Processando a Saida do ADAULD
ADAULD descarrega os registros na sequência especificada. Os registros descarregados são gravados em um ou nos dois datasets seqüenciais: DD/OUT1 e DD/OUT2. A gravação nesses datasets de saída é controlada pela user exit 9.
A saída dos registros é idêntica no formato da saída produzida pelo utilitário ADACMP, a menos que a opção MODE=SHORT seja usada. Nesse caso, as entradas do descritor necessárias para o índice normal e o índice superior são omitidas e as informações do descritor são removidas do Adabas FDT. O ISN do registro precede imediatamente o registro de dados compactados e é fornecido como um número binário de quatro bytes.
A especificação do parâmetro DDISN instrui o ADAULD a gravar a lista de ISNs descarregados em um arquivo de saída sequencial DD/ISN. Somente um arquivo DD/ISN é criado, contendo o superconjunto de ISNs gravados em um ou ambos DD/OUT1 e DD/OUT2. Os ISNs rejeitados pelo userexit 9 não são gravados no DD/ISN.
O DD/ISN está estruturado para que possa ser usado como entrada no ADALOD UPDATE com o objetivo de excluir os registros não carregados.
O número de ISNs gravados em DD/ISN é exibido nas estatísticas da ADAULD no protocolo do utilitário DD/DRUCK:
O número de ISNs gravados no DD/ISN deve sempre ser o número de registros lidos menos o número de registros rejeitados pela user exit 9.
Os ISNs no arquivo DD/ISN são ISNs visíveis para aplicativos; ou seja, o ISN interno armazenado em um registro de armazenamento de dados mais o MINISN-1.
ADAULD User Exit 9
A user exit 9 é chamada (quando presente) para cada registro selecionado antes de gravar o registro no dataset de saída. A user exit é fornecida com o endereço de registro e retorna um código de ação da seguinte maneira:
1 - Gravar registro em DD/OUT1;
2 - Gravar registro em DD/OUT2;
3 - Gravar registro em DD/OUT1 e DD/OUT2;
I - Ignore este registro.
Os dataset acima devem ter o mesmo tamanho de bloco. Consulte a documentação de referência do Adabas DBA para obter mais informações sobre saídas do usuário.
O utilitário ADAULD descarrega um arquivo Adabas. Os arquivos Adabas são descarregados para
(*) permitir que os dados sejam processados por um programa que não seja da Adabas. Nesse caso, o arquivo também deve ser descompactado após o descarregamento, usando a função DECOMPRESS do utilitário ADACMP.
(*) crie um ou mais arquivos de teste, todos contendo os mesmos dados. Este procedimento requer que um arquivo seja descarregado e, em seguida, recarregado como um arquivo de teste com um número de arquivo diferente.
(*) altere a tabela de definição de campo (FDT). Isso requer que o arquivo seja descarregado, descompactado, compactado usando as definições de campo modificadas e recarregado. Se o utilitário ADADBS for usado para adicionar definições de campo a um arquivo, o arquivo não precisará ser descarregado primeiro.
A sequência na qual os registros são descarregados pode ser Fisica = a ordem em que eles estão fisicamente posicionados no Armazenamento de Dados.
Lógico = uma sequência controlada pelos valores de um descritor especificado pelo usuário.
ISN = sequência ISN ascendente.
Os critérios de seleção (SELCRIT / SELVAL) são opcionalmente usados para indicar um subconjunto de registros a serem descarregados:
(*) Se esse critério não for fornecido, todos os registros serão descarregados em sequência física.
(*) Se um critério de seleção for especificado, mas nenhuma sequência de classificação (SORTSEQ), os registros especificados serão descarregados na sequência ISN.
(*) Se um critério de seleção e uma sequência de classificação forem fornecidos, os registros selecionados serão classificados na área do pool de Trabalho do núcleo e serão descarregados na sequência de classificação especificada.
(*) Se nenhum registro que corresponda aos critérios de seleção for encontrado, o ADAULD criará um arquivo contendo apenas o FDT e emitirá o código de condição 4 no registro 15.
A saída do registro descarregado está no formato compactado. Os registros de saída têm o mesmo formato que os registros produzidos pelo utilitário ADACMP.
Ao usar a opção MODE = SHORT, as entradas do descritor (necessárias para criar o índice normal e o índice superior do arquivo) são omitidas durante o processo de descarregamento. Isso reduz o tempo necessário para descarregar. Observe, no entanto, que a saída criada usando MODE = SHORT possui um FDT diferente do mesmo arquivo descarregado sem MODE = SHORT, pois todas as informações do descritor são removidas.
Nota: Uma execução interrompida do ADAULD UNLOAD FILE deve ser reexecutada desde o início.
ADAULD [UNLOAD] FILE = numero-do-arquivo
[CODE = cipher-key]
[DDISN]
[ERRLIM = {error-threshold-count} | 1]
[ETID = multiclient-file-owner-id]
[LPB = {maximum-compressed-length | 40000}]
[MODE = SHORT]
[NOUSERABEND]
[NUMOUT = {1 | 2}]
[NUMREC = numero]
[PASSWORD = file-password]
[SAVETAPE]
[PLOGNUM = plog-numero, {SYN1 | SYN4} = plog-block-number]
[TEMPDEV = {tipo-dispositivo | ADARUN-dispositivo}]
[TEMPSIZE = size]
[SELCRIT = 'critério-seleção', SELVAL='critério-seleção-para-valores']
[STARTISN = valor]
+------
| descritor [,MU][,NU]
| SORTSEQ = ISN [,STARTISN = valor]
| sequencia-fisica
+------
[TEST]
[UTYPE = {EXU | EXF}]
Parâmetro essencial
FILE
FILE especifica o número do arquivo a ser descarregado. Nem o arquivo do ponto de verificação nem o arquivo de segurança podem ser descarregados.
Parâmetros e subparâmetros opcionais
CODE: Cipher Code
Se o arquivo a ser descarregado for codificado, o CODE deverá fornecer o código de codificação apropriado.
DDISN: Create DD/ISN Output File of Unloaded ISNs
A especificação do parâmetro DDISN instrui o ADAULD a gravar a lista de ISNs não carregados no arquivo de saída sequencial DD/ISN. O DD/ISN está estruturado para que possa ser usado como entrada no ADALOD UPDATE com o objetivo de excluir os registros não carregados.
Se a palavra-chave DDISN for especificada
(*) mas o arquivo DD / ISN está ausente na JCL, ADAULD termina com o erro 081.
(*) e SORTSEQ especifica um hiperdescriptor ou descritor que se refere a um campo de valores múltiplos. ADAULD termina com o erro 133 porque o DD / ISN pode conter ISNs duplicados.
ERRLIM: Error Threshold
ERRLIM define o número máximo de códigos de resposta do núcleo aceitos pelo ADAULD antes do término da operação. A configuração padrão é uma, o que significa que o primeiro erro finaliza ADAULD com o erro 124.
O valor ERRLIM pode ser definido como mais alto que um para tolerar condições que ocorram intermitentemente, como o código de resposta 255 (todos os buffers conectados alocados). Nesse caso, o utilitário termina com o código de retorno 8 e nenhum usuário é encerrado de forma anormal. O arquivo de saída de ADAULD pode ser usado, embora os registros possam estar ausentes, dependendo do código de resposta do núcleo retornado.
ETID: Multiclient File Owner ID
Ao descarregar arquivos multiclientes, o parâmetro ETID pode ser usado para restringir o processamento UNLOAD a apenas os registros pertencentes ao usuário especificado. Se o parâmetro ETID for omitido, todos os registros serão descarregados.
Se os parâmetros SELCRIT/SELVAL forem especificados para um arquivo multicliente, o parâmetro ETID também deverá ser especificado.
LPB: Prefetch Buffer Size
LPB especifica o tamanho do buffer interno de pré-busca. O valor máximo é 32767 bytes.
Por padrão, o ADAULD tenta tornar o buffer de pré-busca o maior possível para obter o melhor desempenho. O parâmetro LPB oferece ao usuário a opção de diminuir o buffer de pré-busca. Isso pode ser aconselhável, por exemplo, se o uso intenso da pré-busca fizer com que o ADAULD consuma muitos recursos do núcleo em relação a outros usuários.
O valor padrão depende do comprimento do buffer intermediário do usuário definido pelo parâmetro ADARUN LU. ADAULD subtrai o espaço necessário para acomodar as informações de controle do Adabas (108 bytes) e o comprimento máximo de registro compactado especificado (LRECL) do valor da LU para determinar o valor padrão da LPB. O resultado deve ser igual ou menor que o valor máximo permitido para LPB; ou seja, 32767 bytes.
O valor padrão para LU é definido como 65535 bytes, o tamanho máximo, para acomodar o buffer de registro de utilitários como ADAULD que precisam do núcleo. Se o valor da LU for muito pequeno, ADAULD poderá reduzir o valor especificado para o parâmetro LPB.
LRECL: Maximum Compressed Record Length
LRECL especifica, em bytes, o tamanho máximo do registro compactado (incluindo DVT) a ser retornado.
Esse comprimento é usado como um tamanho do buffer de registro do Adabas. Se este valor for muito pequeno, ocorre um código de resposta 53. O padrão é 4000 bytes; o máximo permitido é 32760 bytes.
MODE=SHORT: Exclude Descriptor Information
Este parâmetro indica se as informações do descritor usadas para criar o índice normal e o índice superior devem ser incluídas na saída.
Se MODE=SHORT for especificado, nenhuma informação do descritor será descarregada e todas as informações do descritor serão retiradas da tabela de definição de campo (FDT) quando forem gravadas no dataset de saída.
Se a saída for usada como entrada direta no utilitário ADALOD, o arquivo não terá descritores.
No caso de superdescritores, MODE=SHORT os descarrega como supercampos. Se a saída for usada como entrada direta no ADALOD, o arquivo carregado terá supercampos.
NOUSERABEND: Terminando sem Abend
Quando um erro é encontrado enquanto a função está em execução, o utilitário imprime uma mensagem de erro e é encerrado com o usuário abend 34 (com um dump) ou o usuário abend 35 (sem dump).
Se NOUSERABEND for especificado, o utilitário não será encerrado após a impressão da mensagem de erro. Em vez disso, a mensagem "utilitário TERMINATED DUE TO ERROR CONDITION" é exibida e o utilitário termina com o código de condição 20.
NUMOUT: Número de arquivos de saída
NUMOUT especifica o número de arquivos de saída a serem produzidos. Se o número for maior que um, a user exit 9 deverá ser usada para controlar a seleção do arquivo de saída DD/OUT1 ou DD/OUT2. Para obter informações adicionais, consulte a documentação de referência do Adabas DBA. Os valores permitidos são 1 (padrão) e 2.
NUMREC: Número de registros a serem descarregados
NUMREC limita o número de registros a serem descarregados. Nenhum limite entrará em vigor se o parâmetro for omitido.
PASSWORD: Senha do Arquivo
O parâmetro PASSWORD deve ser especificado se o arquivo a ser descarregado estiver protegido por senha.
PLOGNUM: Número do log de proteção
Quando SAVETAPE é especificado e uma fita de salvamento "online" deve ser usada como entrada para ADAULD, o log de proteção correspondente é esperado como um dataset de entrada sequencial DD / PLOG.
Se uma fita de backup on-line criada usando o ADASAV versão 5.1 for usada, os parâmetros adicionais PLOGNUM e SYN1 ou SYN4 deverão ser especificados:
(*) PLOGNUM especifica o número do log de proteção de núcleo usado enquanto a operação ADASAV SAVE estava ativa; e
(*) SYN1 ou SYN4 especifica o número do bloco que contém o checkpoint SYN1 ou SYN4 no qual a operação ADASAV SAVE correspondente foi iniciada.
Para fitas on-line salvas criadas usando o ADASAV versão 5.2 ou superior, essas informações estão incluídas na fita. Você pode especificar PLOGNUM ou SYN1 ou SYN4 para substituir as informações da fita.
SAVETAPE
SAVETAPE é usado para descarregar um arquivo de uma fita salva. Isso é útil ao mover um arquivo de uma fita salva com um tamanho de bloco para um banco de dados com outro, ou ao usar um arquivo de uma fita salva em um ou outro ambiente de teste.
Se uma fita de salvamento "online" for usada, o parâmetro TEMPDEV também deverá ser especificado. Se a fita de salvamento on-line foi criada usando o ADASAV versão 5.1, os parâmetros PLOGNUM e SYN1 ou SYN4 também devem ser especificados. PLOGNUM e SYN1 ou SYN4 podem ser especificados para fitas de salvamento on-line criadas usando o ADASAV versão 5.2 ou superior para substituir as informações incluídas na fita.
Para obter mais informações, consulte a seção Processando uma fita salva como entrada .
Os parâmetros SORTSEQ e SELCRIT não podem ser usados com SAVETAPE.
O parâmetro ETID não pode ser usado com SAVETAPE. A saída 9 do usuário deve ser usada para selecionar registros para um cliente específico de um arquivo multicliente. Para obter mais informações, consulte a seção ADAULD User Exit 9 .
Se o arquivo a ser descarregado da fita salva for codificado, o parâmetro CODE deverá ser especificado como de costume.
Nota: As funções especiais SAVETAPE estão disponíveis para uso com o Adabas Delta Save Facility. Para obter mais informações, consulte a documentação do Adabas Delta Save Facility .
SELCRIT: Critério de seleção
O parâmetro SELCRIT pode ser usado para restringir os registros não carregados àqueles que atendem ao critério de seleção fornecido. O critério de seleção deve ser fornecido usando a sintaxe do buffer de pesquisa, conforme descrito na documentação de referência do comando Adabas .
Para vários critérios, você pode especificar cada critério com uma instrução ADAULD SELCRIT separada, da seguinte maneira:
ADAULD SELCRIT = 'AA,20,A,D'
ADAULD SELCRIT = 'AB,10,A.'
ADAULD concatena isso para:
«AA, 20, A, D, AB, 10, A.»
Os valores que correspondem ao critério de seleção devem ser fornecidos usando o parâmetro SELVAL.
SELVAL: valores para critérios de seleção
SELVAL especifica os valores correspondentes aos critérios de seleção especificados com o parâmetro SELCRIT. Os formatos de valor são os mesmos que os utilizados para o buffer de valor, conforme descrito na documentação de referência do comando Adabas . Os valores podem estar em várias linhas. Os valores decimais ou binários compactados podem estar no formato hexadecimal, conforme mostrado no exemplo a seguir:
SELVAL = 'PARIS'
SELVAL = X'00149C '
SELVAL = 'AB100'
SORTSEQ: descarregar sequência
SORTSEQ especifica a sequência de classificação para ISNs não carregados. Se o SORTSEQ não for especificado, os ISNs serão descarregados na sequência física.
Se um nome de "descritor" for especificado, os registros serão descarregados na sequência lógica ascendente dos valores do descritor. Você pode especificar o nome de um descritor, subdescriptor, superdescriptor ou hiperdescriptor. Não faça referência a um campo em um grupo periódico.
(*) "MU" deve ser especificado se o nome do descritor se referir a um campo de valores múltiplos. Nesse caso, o mesmo registro é descarregado uma vez para cada valor diferente para o descritor no registro em ordem crescente de valor. Se MU não for especificado (o padrão), ADAULD rejeitará os descritores de MU e emitirá uma mensagem de erro.
(*) "NU" deve ser especificado se o nome do descritor se referir a um campo definido com a opção de supressão nula (NU). Nesse caso, os registros do descritor que contêm valores nulos não são descarregados. Se NU não for especificado (o padrão), ADAULD rejeitará os descritores de NU.
Nota: Mesmo quando o campo do descritor não for nulo suprimido, o registro não será representado na lista invertida se o campo do descritor ou um campo a seguir nunca tiver sido inicializado (mantém um valor). Portanto, o registro será descartado quando o utilitário for executado.
Se SORTSEQ = ISN for especificado, os registros serão descarregados na sequência crescente de ISN.
Se SELCRIT / SELVAL e SORTSEQ forem especificados, os registros serão classificados na área do pool de trabalho do núcleo. Portanto, os parâmetros de sessão ADARUN LS e LWP devem fornecer espaço suficiente; consulte a documentação do Adabas Operations para obter descrições dos parâmetros LS e LWP.
STARTISN: Iniciando o ISN
STARTISN é usado com os parâmetros SELCRIT / SELVAL e SORTSEQ para restringir os registros descarregados de acordo com o ISN. Não é permitido especificar STARTISN sozinho.
(*) A especificação de STARTISN com SELCRIT / SELVAL faz com que todos os registros com ISNs iguais ou superiores ao valor especificado STARTISN e com o conteúdo do campo que satisfaz o critério SELCRIT / SELVAL sejam descarregados na sequência crescente de ISN pelo nome do descritor.
(*) A especificação de STARTISN com SORTSEQ = ISN descarrega todos os registros que começam com o registro especificado por STARTISN na sequência ISN.
SYN1 | SYN4: Número do bloco inicial
Quando SAVETAPE é especificado e uma fita de save "online" deve ser usada como entrada para ADAULD, o log de proteção correspondente é esperado como um dataset de entrada sequencial DD / PLOG.
Se uma fita de salvamento on-line criada usando o ADASAV versão 5.1 for usada, os parâmetros adicionais PLOGNUM e SYN1 ou SYN4 deverão ser especificados:
(*) PLOGNUM especifica o número do log de proteção de núcleo usado enquanto a operação ADASAV SAVE estava ativa; e
(*) SYN1 ou SYN4 especifica o número do bloco que contém o ponto de verificação SYN1 ou SYN4 no qual a operação ADASAV SAVE correspondente foi iniciada.
Para fitas on-line salvas criadas usando o ADASAV versão 5.2 ou superior, essas informações estão incluídas na fita. Você pode especificar PLOGNUM ou SYN1 ou SYN4 para substituir as informações da fita.
TEMPDEV: Tipo de dispositivo de armazenamento temporário
Quando SAVETAPE é especificado e uma fita de salvamento "online" deve ser usada como entrada para ADAULD, um conjunto de dados temporário é usado para armazenar dados intermediários durante o processamento. O parâmetro TEMPDEV indica o tipo de dispositivo a ser usado para o conjunto de dados temporário. Este parâmetro é necessário apenas se o tipo de dispositivo a ser usado for diferente do tipo de dispositivo padrão atribuído a Temp pelo parâmetro ADARUN DEVICE.
O tamanho do bloco do conjunto de dados temporário deve ser pelo menos tão grande quanto o maior tamanho do bloco de armazenamento de dados do arquivo a ser descarregado, mais 16 bytes.
TEMPSIZE: Tamanho de armazenamento temporário
TEMPSIZE especifica o tamanho do conjunto de dados temporário para o arquivo. O tamanho pode ser em cilindros ou blocos (seguido de "B").
O conjunto de dados temporário deve ser grande o suficiente para armazenar todos os blocos de armazenamento de dados do log de proteção. Na pior das hipóteses, ele deve ter tantos blocos quanto o arquivo tiver blocos de armazenamento de dados, mas não precisa ser maior que o conjunto de dados PLOG. Se o conjunto de dados temporário for muito pequeno, será retornado o erro ADAULD-136 (conjunto de dados temporário muito pequeno).
TEST: Sintaxe de Teste
Este parâmetro testa a sintaxe da operação sem realmente executar a operação. Somente a sintaxe dos parâmetros especificados pode ser testada; não a validade de valores e variáveis.
UTYPE: Tipo de usuário
O tipo de usuário em vigor para o processo de descarregamento.
(*) Se EXU (o padrão) for especificado, o arquivo não poderá ser atualizado, mas outros usuários poderão ler o arquivo.
(*) Se EXF for especificado, somente ADAULD poderá usar o arquivo; nenhum outro usuário pode ler ou gravar o arquivo.
Exemplos
Exemplo 1:
O arquivo 6 deve ser descarregado. Os registros devem ser descarregados na sequência em que estão fisicamente posicionados no Data Storage.
ADAULD FILE=6
Exemplo 2:
O arquivo 6 deve ser descarregado. Os valores para o descritor AA devem ser usados para controlar a sequência na qual os registros devem ser descarregados.
ADAULD FILE=6,SORTSEQ=AA
Exemplo 3:
O arquivo 6 deve ser descarregado. Os registros devem ser descarregados na sequência crescente do ISN.
ADAULD FILE=6,SORTSEQ=ISN
Exemplo 4:
O arquivo 6 deve ser descarregado. Os registros devem ser descarregados na sequência crescente do ISN. Apenas os registros com um ISN igual ou superior a 10000 devem ser descarregados.
ADAULD FILE=6,SORTSEQ=ISN,STARTISN=10000
Exemplo 5:
O arquivo 6 deve ser descarregado. Os registros devem ser descarregados na sequência crescente do ISN. Apenas os registros com um ISN igual ou superior a 10000 devem ser descarregados.
ADAULD FILE=6,SORTSEQ=AB,MODE=SHORT
Exemplo 6:
O arquivo 6 deve ser descarregado. Somente registros com AA = A a MM devem ser descarregados. Os registros são retornados na sequência ISN.
ADAULD FILE=6,SELCRIT='AA,1,S,AA,2.',SELVAL='AMM'
Exemplo 7:
O arquivo 6 deve ser descarregado. O tipo de usuário é indicado como EXF, que bloqueia o arquivo durante o processamento do descarregamento, impedindo que outros usuários leiam ou gravem o arquivo.
ADAULD FILE=6,UTYPE=EXF
Processamento de entrada ADAULD
ADAULD é usado para descarregar um arquivo Adabas de
(*) um banco de dados; ou
(*) uma fita salva (se a palavra-chave SAVETAPE for especificada).
Processando uma fita salva como entrada
Se uma fita salva for usada como entrada, é esperado um arquivo seqüencial DD / SAVE. Fitas de salvamento de banco de dados ou arquivo criadas online e offline são aceitáveis. A fita salva deve ter sido criada usando o ADASAV versão 5.1 ou superior.
O DBID do ADARUN especificado para a execução ADAULD deve corresponder ao DBID encontrado na fita salva.
Se o arquivo tiver hyperdescriptors definido, os hyperexits correspondentes deverão ser especificados nos parâmetros ADARUN para ADAULD. Se as rotinas de hyperexit não estiverem mais disponíveis, o arquivo deverá ser descarregado com MODE = SHORT especificado. Consulte a documentação de referência do Adabas DBA para obter mais informações sobre hyperexits.
Para uma fita de salvamento "online":
o log de proteção correspondente é esperado como um conjunto de dados de entrada sequencial DD / PLOG.
um datasets temp (DD/TEMPR1) é necessário como armazenamento intermediário para os blocos de armazenamento de dados no log de proteção. Os parâmetros TEMPSIZE e TEMPDEV devem ser especificados.
Se uma fita de salvamento on-line criada usando o ADASAV versão 5.1 for usada, os parâmetros adicionais PLOGNUM e SYN1 ou SYN4 deverão ser especificados:
PLOGNUM especifica o número do log de proteção de núcleo usado enquanto a operação ADASAV SAVE estava ativa; e
SYN1 ou SYN4 especifica o número do bloco que contém o ponto de verificação SYN1 ou SYN4 no qual a operação ADASAV SAVE correspondente foi iniciada.
Para fitas on-line salvas criadas usando o ADASAV versão 5.2 ou superior, essas informações estão incluídas na fita. Você pode especificar PLOGNUM ou SYN1 ou SYN4 para substituir as informações da fita.
O protocolo do utilitário ADAULD no DD / DRUCK exibe um cabeçalho curto indicando o tipo de fita salva encontrada, quando foi criada, a versão do ADASAV usada para criá-la, o ID do banco de dados encontrado na fita salva e, para as fitas salvas online, o número da sessão do log de proteção correspondente e o número do bloco do ponto de verificação SYN1 / SYN4:
A D A R E P Vv.r SMs DBID = nnnnn STARTED yyyy-mm-dd hh:mm:SS
PARAMETERS:
-----------
ADAULD UNLOAD FILE=3, SAVETAPE
***********************************************************
* *
* UNLOAD FROM ONLINE DATABASE SAVE *
* CREATED AT yyyy-mm-dd hh:mm:ss *
* BY ADASAV VERSION V vr *
* DBIB nnnnn *
* DSID 1 / 0 / yyyy-mm-dd hh:mm:ss *
* PLOG SESSION NR 17 *
* SYN1 BLOCK NR 137 *
* *
***********************************************************
ADAULD primeiro lê o bloco de controle de arquivo (FCB) e a tabela de definição de arquivo (FDT) da fita salva. Então:
(*) para salvar fitas "offline", o ADAULD varre a fita para localizar os RABNs de armazenamento de dados do arquivo, extrai os registros de armazenamento de dados e, para cada registro de armazenamento de dados, gera os valores do descritor de acordo com o FDT.
(*) para salvar fitas "online", o ADAULD varre o log de proteção e copia a versão mais recente de cada bloco de armazenamento de dados do arquivo relevante para o conjunto de dados temporário. A localização de um bloco de armazenamento de dados no conjunto de dados temporários é mantida em um diretório na memória principal. Em seguida, ADAULD varre a fita salva para blocos de armazenamento de dados do arquivo. Se existirem versões mais recentes dos blocos de armazenamento de dados no conjunto de dados temporário, eles serão descarregados para DD / OUT1 ou DD / OUT2. Observe que, nesse caso, são necessárias duas unidades de fita paralelas: não é possível concatenar a fita salva e o log de proteção como no ADASAV RESTONL.
Após abrir os conjuntos de dados de entrada DD / SAVE e DD / PLOG, ADAULD faz uma verificação cruzada para garantir que as fitas de entrada estejam corretas. Se uma fita salva inválida for encontrada, o ADAULD será encerrado e exibirá o erro 134 (fita salva salva inválida fornecida). Se uma fita de log de proteção inválida for encontrada, o ADAULD será encerrado com o erro-135 (log de proteção inválido fornecido).
Processando a Saida do ADAULD
ADAULD descarrega os registros na sequência especificada. Os registros descarregados são gravados em um ou nos dois datasets seqüenciais: DD/OUT1 e DD/OUT2. A gravação nesses datasets de saída é controlada pela user exit 9.
A saída dos registros é idêntica no formato da saída produzida pelo utilitário ADACMP, a menos que a opção MODE=SHORT seja usada. Nesse caso, as entradas do descritor necessárias para o índice normal e o índice superior são omitidas e as informações do descritor são removidas do Adabas FDT. O ISN do registro precede imediatamente o registro de dados compactados e é fornecido como um número binário de quatro bytes.
A especificação do parâmetro DDISN instrui o ADAULD a gravar a lista de ISNs descarregados em um arquivo de saída sequencial DD/ISN. Somente um arquivo DD/ISN é criado, contendo o superconjunto de ISNs gravados em um ou ambos DD/OUT1 e DD/OUT2. Os ISNs rejeitados pelo userexit 9 não são gravados no DD/ISN.
O DD/ISN está estruturado para que possa ser usado como entrada no ADALOD UPDATE com o objetivo de excluir os registros não carregados.
O número de ISNs gravados em DD/ISN é exibido nas estatísticas da ADAULD no protocolo do utilitário DD/DRUCK:
A D A U L D STATISTICS
-----------------------
NUMBER OF OUTPUT DATA SETS = 1
NUMBER OF REQUESTED RECORDS = 16777215
STARTISN = 0
OPTIONS = DVT
UNLOAD SEQUENCE = PHYS SEQ
NUMBER OF RECORDS READ = 1000
NUMBER OF RECORDS WRITTEN = 1000
RECORDS WRITTEN TO DDOUT1 = 1000
RECORDS WRITTEN TO DDOUT2 = 0
RECORDS REJECTED BY USEREXIT = 0
NUMBER OF ISNS WRITTEN TO DDISN = 1000
O número de ISNs gravados no DD/ISN deve sempre ser o número de registros lidos menos o número de registros rejeitados pela user exit 9.
Os ISNs no arquivo DD/ISN são ISNs visíveis para aplicativos; ou seja, o ISN interno armazenado em um registro de armazenamento de dados mais o MINISN-1.
ADAULD User Exit 9
A user exit 9 é chamada (quando presente) para cada registro selecionado antes de gravar o registro no dataset de saída. A user exit é fornecida com o endereço de registro e retorna um código de ação da seguinte maneira:
1 - Gravar registro em DD/OUT1;
2 - Gravar registro em DD/OUT2;
3 - Gravar registro em DD/OUT1 e DD/OUT2;
I - Ignore este registro.
Os dataset acima devem ter o mesmo tamanho de bloco. Consulte a documentação de referência do Adabas DBA para obter mais informações sobre saídas do usuário.
0 comentários:
Enviar um comentário