EZEDLPSB contém o nome do PSB do DL/I a ser programado para acessar banco de dados do DL/I. O padrão é o nome de PSB especificado para o programa.
Quando um programa executa uma função DL/I sob o CICS e não há PSB programado no momento, o programa planeja o PSB indicado em EZEDLPSB.
EZEDLPSB pode ser utilizado como qualquer um dos seguintes:
As características de EZEDLPSB são as seguintes:
Você pode usar EZEDLPSB para fazer qualquer dos seguintes:
Um PSB é programado quando a primeira função de E/S de DL/I do programa é executada. Se EZEDLPSB mudar, o novo PSB será programado quando a primeira função de E/S do DL/I for executada após um COMMIT ou ROLLBACK.
Quando EZEDLPSB é passado como um parâmetro, o nome de 8 bytes é seguido por um campo de endereço de 4 bytes.
Você não pode passar EZEDLPSB e EZEDLPCB na mesma instrução CALL.
Para suportar a portabilidade de programas entre ambientes IMS e não-IMS, EZEDLPSB pode ser incluído a lista de parâmetros chamados de programas que não incluem funções de processamento do DL/I explícitas (DL/I funções ou chamadas CSPTDLI).
Pelo uso de EZEDLPSB na lista de parâmetros chamados, é possível implementar o processamento de arquivo serial usando o PSB (filas de mensagem ou GSAM) nos ambientes IMS e outros recursos em ambientes não-IMS.
Em programas não-DL/I, o parâmetro EZEDLPSB é ignorado, de modo que qualquer argumento pode ser passado como EZEDLPSB ao programa chamado.
Ambiente | Considerações de compatibilidade |
---|---|
VM CMS | Ignorado. |
VM batch | Ignorado. |
CICS para MVS/ESA | Quando se passa EZEDLPSB numa CALL, se o PSB estiver programado, o campo
de endereço apontará para o bloco da interface de usuário (UIB) do
CICS. Se o PSB não estiver programado, o campo de endereço será
0.
Quando o endereço do UIB for passado ao programa, este acessará a lista de endereços PCB usando o UIB - e não tentará reprogramar o PSB. |
MVS/TSO | EZEDLPSB não é usado para programação PSB porque PSBs não são programados
em ambiente CICS. É usado um único PSB, especificado na chamada do
programa. Programas que rodam juntos usando CALL, DXFR e XFER têm que
compartilhar o mesmo PSB.
O conteúdo de EZEDLPSB é usado como campo identificador do ponto de verificação do CHKP usado para implementar a função EZECOMIT em ambiente de batch do DL/I. EZEDLPSB ou EZEDLPCB terá que ser passado como parâmetro para um programa chamado que emite chamadas DL/I. Está incluído aí o uso de CSPTDLI ou arquivos GSAM. Quando EZEDLPSB é passado entre um programa não-VisualAge Generator e um programa, o endereço de 4 bytes passado depois do PSB de 8 bytes tem que apontar para um UIB do CICS. O UIB simulado tem 6 bytes:
|
MVS batch | EZEDLPSB não é usado na programação do PSB porque este está especificado
no JCL da fase do job de batch. Programas que rodam juntos numa fase de
job única usando CALL, DXFR e XFER têm que compartilhar o mesmo PSB.
O conteúdo de EZEDLPSB é usado como campo identificador do ponto de verificação do CHKP usado para implementar a função EZECOMIT em ambiente de batch do DL/I. Ou EZEDLPSB ou EZEDLPCB têm que ser incluídos na lista de parâmetros chamados sempre que ocorre uma chamada DL/I nesse ambiente. Está incluído aí o uso de CSPTDLI ou arquivos GSAM. Quando EZEDLPSB é passado entre um programa não-VisualAge Generator e um programa, o endereço de 4 bytes passado depois do PSB de 8 bytes tem que apontar para um UIB do CICS. O UIB simulado tem 6 bytes:
|
IMS/VS | EZEDLPSB não é usada em programação de PSB porque o IMS programa o PSB
automaticamente para transações IMS. Programas que rodam juntos numa
transação IMS individual usando CALL ou DXFR têm que compartilhar o mesmo
PSB.
Se for passado um novo valor para EZEDLPSB, esse valor será ignorado. EZEDLPSB ou EZEDLPCB terá que ser passado como parâmetro para um programa chamado que emite chamadas DL/I. Está incluído aí o uso de CSPTDLI ou arquivos GSAM. Quando EZEDLPSB é passado entre um programa não-VisualAge Generator e um programa, o endereço de 4 bytes passado depois do PSB de 8 bytes tem que apontar para um UIB do CICS. O UIB simulado tem 6 bytes:
|
IMS BMP | EZEDLPSB não é usado na programação do PSB porque este foi especificado
no JCL correspondente à fase do job de batch. Programas que rodam
juntos numa fase de job única usando CALL, DXFR e XFER têm que compartilhar o
mesmo PSB.
No caso de BMP orientado por batch, o conteúdo de EZEDLPSB é usado como identificador de ponto de verificação na chamada CHKP emitida para processamento EZECOMIT. Em BMP orientado por transação, o conteúdo de EZEDLPSB é ignorado. EZEDLPSB ou EZEDLPCB terá que ser passado como parâmetro para um programa chamado que emite chamadas DL/I. Está incluído aí o uso de CSPTDLI ou arquivos GSAM. Quando EZEDLPSB é passado entre um programa não-VisualAge Generator e um programa, o endereço de 4 bytes passado depois do PSB de 8 bytes tem que apontar para um UIB do CICS. O UIB simulado tem 6 bytes:
|
CICS para VSE | Igual a CICS para MVS/ESA. |
VSE batch | Igual a MVS batch. |
CICS para OS/2 | Se um programa chamar um programa servidor remoto que acessa bancos de dados do DL/I, o programa que faz a chamada terá que passar EZEDLPSB como parâmetro para o programa servidor remoto. O PSB é programado no primeiro programa servidor remoto e o endereço UIB do CICS é passado de volta ao parâmetro EZEDLPSB para ser usado em chamadas subseqüentes a programas DL/I remotos. Numa unidade de trabalho simples, os programas servidores remotos têm que ir para o mesmo sistema de destino. |
OS/400 | Ignorado. |
OS/2 (GUI) | Não suportado. |
Windows (GUI) | Não suportado. |
Java (GUI) | Não suportado. |
OS/2 (C++) | Ignorado. |
AIX | Ignorado. |
HP-UX | Ignorado. |
Solaris | Ignorado. |
CICS for Solaris | Se um programa fizer muitas chamadas dentro da mesma unidade de trabalho
para um programa servidor remoto que acessa bancos de dados do DL/I, o
programa que faz a chamada terá que passar o EZEDLPSB ao programa
servidor. O PSB é programado no primeiro programa servidor e o endereço
UIB do CICS é passado de volta no parâmetro EZEDLPSB para ser usado em
chamadas subseqüentes a programas DL/I servidores.
Dentro de uma unidade de trabalho lógica simples, todas as chamadas a programas servidores remotos do DL/I têm que ir para o mesmo sistema de destino. |
CICS for AIX | Se um programa fizer muitas chamadas dentro da mesma unidade de trabalho
para um programa servidor remoto que acessa bancos de dados do DL/I, o
programa que faz a chamada terá que passar o EZEDLPSB ao programa
servidor. O PSB é programado no primeiro programa servidor e o endereço
UIB do CICS é passado de volta no parâmetro EZEDLPSB para ser usado em
chamadas subseqüentes a programas DL/I servidores.
Dentro de uma unidade de trabalho lógica simples, todas as chamadas a programas servidores remotos do DL/I têm que ir para o mesmo sistema de destino. |
Windows NT | Igual a CICS for AIX. |
CICS para Windows NT | Igual a CICS for AIX. |
Dispositivo de Teste | EZEDLPSB pode ser transmitido em uma chamada para outro programa
carregado no imagem.
Quando EZEDLPSB é passado para outro programa carregado no imagem, os 12 bytes passados incluem o nome do PSB atualmente no EZEDLPSB (8 bytes) e um indicador NULL UIB (4 bytes). Os dados passados de volta no ponteiro UIB são preservados para chamadas subseqüentes, mas não são usados pelo dispositivo de teste. |
CALL MYPROG EZEDLPSB;