Sumário

Search

  1. Prefácio
  2. Introdução ao Navegador do PowerExchange
  3. Mapas de Dados
  4. Mapas de Dados para Fontes de Dados Específicas
  5. Copybooks
  6. Grupos de Registro e Registros de Captura
  7. Grupos de Extração e Mapas de Extração
  8. Metadados Pessoais
  9. Teste de Linha de Banco de Dados
  10. Exemplos do Navegador do PowerExchange
  11. Funções do PowerExchange para Campos Definidos pelo Usuário
  12. Programas de Método de Acesso do Usuário
  13. Grupos de Aplicativos e Aplicativos
  14. Propriedades do Mapa de Dados
  15. Propriedades do Registro, Campo e Tabela
  16. Carimbos de Data/Hora DTL__CAPXTIMESTAMP
  17. Rastreamento para criar um mapa de memória ao importar um copybook COBOL

Guia do Usuário do Navegador

Guia do Usuário do Navegador

Vínculo do Programa PL/I - Exemplo

Vínculo do Programa PL/I - Exemplo

O código a seguir exibe um exemplo de vínculo do programa PL/I:
PROC(NUMBER_ARGUMENTS, FAILURE_CODE, MESSAGE_BUFFER_PTR, MESSAGE_BUFFER_LENGTH, TEXT_AREA_PTR, TEXT_AREA_LENGTH, NUMBER1, NUMBER1_LENGTH) OPTIONS(FETCHABLE) REORDER; /*---------------------*/ /* LINKAGE FROM CALLER */ /*---------------------*/ DCL NUMBER_ARGUMENTS FIXED BIN(31); DCL FAILURE_CODE FIXED BIN(31); DCL MESSAGE_BUFFER_PTR PTR; DCL 1 MESSAGE_BUFFER_STR BASED(ADDR(MESSAGE_BUFFER_PTR)), 4 MESSAGE_BUFFER CHAR(255); DCL MESSAGE_BUFFER_LENGTH FIXED BIN(31); DCL TEXT_AREA_PTR PTR; DCL 1 TEXT_AREA_STR BASED(ADDR(TEXT_AREA_PTR)), 4 TEXT_AREA CHAR(15); DCL TEXT_AREA_LENGTH FIXED BIN(31); DCL NUMBER1 FIXED BIN(31); DCL NUMBER1_LENGTH FIXED BIN(31);
No exemplo de programa, dois campos são passados para o programa.
  • O primeiro campo é chamado TEXT e seu tamanho máximo é de 15 bytes. Os dados podem ser movidos dele e para ele usando o campo PL/I TEXT-AREA. Se não for um campo de tamanho fixo, TEXT-AREA-LENGTH deverá ser usado para determinar o tamanho real. Se o programa quiser alterar o tamanho, ele deverá armazenar o valor necessário no campo TEXT-AREA-LENGTH.
  • O segundo campo é numérico, que, no Navegador, é definido como NUM32. Os dados podem ser movidos dele e para ele usando o campo NUMBER1. Não é comum querer usar o campo NUMBER1-LENGTH.
    Se o campo não for anulável, ele conterá um valor de 4 na entrada para o programa PL/I.
    Se o campo NUMBER1-LENGTH for NULL, ele será definido para 0. Essa situação poderá ocorrer se o campo era NULL antes do programa ser chamado. Se o programa definir o campo NULL, ele também definirá NUMBER1-LENGTH para 0.