CSPTDLI permite emitir qualquer chamada DL/I que seja suportada pelo ambiente de execução.
.-,---------------. V | >>-CSPTDLI--função----+--------+------+-----------+--+--;------>< '-,pcbno-' '-argumento-'
Atributo | Descrição |
---|---|
função | O nome de uma variável de 4 caracteres ou um literal contendo um código de função DL/I. |
pcbno | O nome de uma variável binária de 2 bytes contendo o número do PCB a ser usado na chamada DL/I ou IMS/DC. O PCB de E/S é o PCB 0. Todos os outros PCBs são numerados de acordo com a ordem em que aparecem no PSB. |
argumento | Um parâmetro de chamada de DL/I. O parâmetro de argumento pode ser um caracter, um literal misto ou DBCS, um registro, um mapa ou um item de dados. A definição e conteúdos do argumento devem corresponder-se à definição dos parâmetros que são necessários para o código da função. Você pode usar um máximo de 28 argumentos. |
Pode-se usar o serviço CSPTDLI para executar qualquer função do DL/I, inclusive as que são suportadas através de opções de E/S ou de palavras de função especial. Num ambiente específico, só as funções do DL/I suportadas no ambiente são executadas corretamente. O DL/I retorna um código de status não em-branco no PCB para chamadas que não são suportadas no ambiente de execução.
Para verificar as informações de status retornadas pelo DL/I ou pelo IMS/DC depois da chamada, o programa deve passar o PCB para uma área de armazenamento de trabalho usando a palavra de função especial EZEDLPCB.
É preciso um PSB para que o programa possa usar o CSPTDLI.
VisualAge Generator não valida a chamada DL/I. É preciso codificar uma chamada DL/I válida.
Ambiente | Considerações de Compatibilidade |
---|---|
VM CMS | Não suportado. |
VM batch | Não suportado. |
CICS para MVS/ESA | Não use CSPTDLI para programar (código de função do PCB ) ou liberar
(código de função de TERM) um PSB. O VisualAge Generator manipula
automaticamente a programação do PSB.
Só PCBs de DB podem ser usados com o CSPTDLI no ambiente CICS. Especifique o número do PCB com base na ordem que ele ocupa na definição da parte do PSB. Parâmetros de chamada do DL/I têm que endereçáveis de 24 bits se IMS/VS for o produto que suporta chamadas DL/I. A opção de instalação do IMS/ESA tem que ser definida para Não quando se usa o IMS/VS com VisualAge Generator Server for MVS, VSE, and VM. Consulte o documento VisualAge Generator Server Guide for MVS, VSE, and VM para saber como definir a opção de instalação do IMS/ESA. |
MVS/TSO | Nenhum. |
MVS batch | Nenhum. |
IMS/VS | Em programa de transação ou de batch que seja chamado por um programa de
transação, não use:
|
IMS BMP | Nenhum. |
CICS para VSE | Não use CSPTDLI para programar (código de função do PCB ) ou liberar
(código de função de TERM) um PSB. O programa gerado manipula
automaticamente a programação de PSB.
Especifique o número do PCB com base na ordem que ele ocupa na definição da parte do PSB. Não ajuste o número de nenhum PCB de TP na definição da parte do PSB que não está incluída no PSB do DOS/VS do DL/I. Só códigos de função suportados por DOS/VS do DL/I são executados corretamente. Consulte o manual de programação de programas DOS/VS do DL/I para ver a descrição dos códigos suportados. |
VSE batch | Só códigos de função suportados por DOS/VS do DL/I são
executados corretamente. Consulte o manual de programação de programas
DOS/VS do DL/I para ver a descrição dos códigos suportados.
Especifique o número do PCB com base na ordem que ele ocupa na definição da parte do PSB. Não ajuste o número de nenhum PCB de TP na definição da parte do PSB que não está incluída no PSB do DOS/VS do DL/I. |
CICS para OS/2 | Não suportado. |
OS/400 | Não suportado. |
OS/2 (GUI) | Não suportado. |
Windows (GUI) | Não suportado. |
OS/2 (C++) | Não suportado. |
AIX | Não suportado. |
CICS for AIX | Não suportado. |
HP-UX | Não suportado. |
Solaris | Não suportado. |
CICS for Solaris | Não suportado. |
Windows NT | Não suportado. |
CICS para Windows NT | Não suportado. |
Dispositivo de Teste | Chamadas a PCBs de E/S ou TP usando CSPTDLI não podem ser testadas nem emuladas na estação de trabalho. |
Para emitir uma chamada de reinicialização (XRST) num BMP orientado por batch, defina os seguintes itens de dados:
Nome Tipo Comprimento Descrição IOPCB# BIN 2 Número do PCB de E/S IOASIZE BIN 4 Comprimento da área de E/S (registro em fila de mensagens) CHKPID CHA 8 ID do ponto de verificação AREALEN1 BIN 4 Comprimento da primeira área de dados DATA CHA 50 Primeira área de dados a restaurar
Nota: | Você pode restaurar até 7 áreas de dados. Esse exemplo somente usa
uma. O exemplo também assume que você especificaria a ID de ponto de
verificação no campo PARM do JCL do programa, não pela codificação dele no
programa.
/* inicializar valores */ MOVE 0 TO IOPCB#; MOVE 12 TO IOASIZE; MOVE 50 TO AREALEN1; MOVE " " TO CHKPID; CSPTDLI "XRST",IOPCB#,IOASIZE,CHKPID,AREALEN1,DATA; MOVE EZEDLPCB(0) TO IOPCB; /* Usando item no registro DLIIOPCB */ /* que o VisualAge Generator */ /* envia e depois verifique os */ /* códigos de status e a ID do ponto de verificação */ |