Domingo 14 Agosto 2022

Descrição:

ADDRESS ​​acessa as seguintes áreas:

  • O elemento do ambiente de controle de acesso (ACEE)
  • A área de comunicação disponível para o programa invocado (COMMAREA)
  • A área de trabalho comum (CWA)
  • O bloco de interface EXEC (EIB)
  • A área de usuário da tabela de controle de terminal (TCTUA)
  • A área de trabalho da transação (TWA)

Na linguagem assembler, não mais que quatro opções podem ser especificadas em um comando ADDRESS.

 

Opções:

ACEE(ptr-ref)

retorna um ponteiro para o elemento do ambiente de controle de acesso, o bloco de controle gerado por um gerenciador de segurança externo (ESM) quando o usuário entra. Se o usuário não estiver conectado, o endereço da ACEE do CICS DFLTUSER será retornado. Se um ACEE não existir, o CICS configurará a referência do ponteiro para o valor nulo, X'FF000000 ' .

Para obter informações sobre como mapear a área de dados ACEE, consulte a macro de mapeamento IHAACEE fornecida em SYS1.MACLIB.

Nota: Tome cuidado ao endereçar um ACEE em um programa de servidor chamado por um link de programa distribuído. O endereço ACEE retornado depende da segurança do link e pode não ser o mesmo que o endereço do usuário conectado no sistema local.

 

COMMAREA(ptr-ref)

retorna uma referência de ponteiro, definida como o endereço da área de comunicação (COMMAREA) disponível para o programa atualmente em execução. COMMAREA é usado para passar informações entre programas aplicativos. Se o COMMAREA não existir, a referência do ponteiro será configurada para o valor nulo, X'FF000000 ' .

Em C, você deve usar ADDRESS COMMAREA para obter o endereço da área de comunicação, porque isso não é passado como argumento para uma função principal de C.

 

CWA(ptr-ref)

retorna uma referência de ponteiro, definida como o endereço da área de trabalho comum (CWA). Esta área disponibiliza informações para aplicativos em execução em um único sistema CICS. Se um CWA não existir, o CICS configurará a referência do ponteiro para o valor nulo, X'FF000000 ' .

 

EIB(ptr-ref)

retorna um conjunto de referência de ponteiro para o endereço do bloco de interface EXEC (EIB). Você deve usar esta opção para obter endereçamento para o EIB em rotinas de aplicativos diferentes da primeira invocada pelo CICS (em que o endereçamento para o EIB é fornecido automaticamente). Se o programa aplicativo for convertido com SYSEIB na lista de parâmetros XOPTS, esta opção retornará o endereço do EIB do sistema.

Se TASKDATALOC (ANY) estiver definido na definição da transação, o endereço dos dados poderá estar acima ou abaixo da linha de 16 MB.

 

Se TASKDATALOC (ABAIXO) estiver definido na definição da transação e os dados residirem acima da linha de 16 MB, os dados serão copiados abaixo da linha de 16 MB e o endereço desta cópia será retornado.

 

As funções C devem usar ADDRESS EIB para obter o endereço do bloco de interface EXEC, porque esse endereço não é passado como argumento para uma função principal C. Você deve codificar uma instrução ADDRESS EIB no início de cada aplicativo se desejar acessar o EIB ou se estiver usando um comando que inclua a opção RESP ou RESP2.

 

TCTUA(ptr-ref)

retorna uma referência de ponteiro, definida como o endereço da área de usuário da tabela de controle de terminal (TCTUA) para a instalação principal, não para qualquer instalação alternativa que possa ter sido alocada. Essa área é usada para passar informações entre programas aplicativos, mas apenas se o mesmo terminal estiver associado aos programas aplicativos envolvidos. Se um TCTUA não existir, a referência do ponteiro será configurada para o valor nulo, X'FF000000 ' .

 

TWA(ptr-ref)

retorna uma referência de ponteiro, definida como o endereço da área de trabalho da transação (TWA). Essa área é usada para passar informações entre programas aplicativos, mas apenas se eles estiverem na mesma tarefa. Se um TWA não existir, a referência do ponteiro será configurada para o valor nulo, X'FF000000 ' .

Se TASKDATALOC (ANY) estiver definido na definição da transação, o endereço dos dados poderá estar acima ou abaixo da linha de 16 MB.

 

Se TASKDATALOC (ABAIXO) estiver definido na definição da transação e os dados residirem acima da linha de 16 MB, os dados serão copiados abaixo da linha de 16 MB e o endereço desta cópia será retornado.