Tivoli Service Desk 6.0 Developer's Toolkit - Guia do Criador de Interface

Capítulo 8: Referência a Comandos de CPIC

Retornar ao Índice


Introdução

Visão Geral

Esta seção define as instruções internas de CPIC, descreve sua utilização e inclui notas que podem ser úteis.

As instruções estão listadas em ordem alfabética.

Muitas das instruções utilizam constantes definidas pelo sistema do Tivoli Service Desk (TSD) Developer's Toolkit.

Para cada instrução, são fornecidas as seguintes informações, quando disponíveis:

CPICAccept

Descrição

Aceita uma conversação de entrada CPIC ou APPC.

Parâmetros

conv: CONVERSATION

Notas do parâmetro

Parâmetro Descrição
conv Identificador de conversação a ser inicializado com características da conversação de entrada

Tipo de retorno

INTEGER

Notas

Esta chamada inicializa valores para diversas características de conversação. O responsável pela chamada desta função é considerado o "receptor" da conversação.

Cada conversação CPIC é determinada pelo identificador CONVERSATION, que é inicializado por CPICAccept. O aplicativo TSD Script utiliza este identificador em chamadas CPIC destinadas a essa conversação. O aplicativo deve emitir uma instrução CPICAccept antes que outras chamadas possam se referir à conversação.

Atualmente, a CPIC permite que um aplicativo aceite somente uma conversação, embora não exista limite para o número de conversações que podem ser alocadas por um aplicativo.

Exemplo

Os dois aplicativos a seguir, FIRST e SECOND, transferem um arquivo de texto. SECOND é o iniciador da conversação.

-- FIRST.KB
-- Este aplicativo é o receptor de uma transferência de arquivo.
-- O arquivo será enviado como uma linha de texto de cada vez.
-- Após a conclusão da transferência, a rotina
   enviará de volta todo o arquivo em um buffer
   (esta transferência de retorna só funcionará para arquivos < 32K).
KNOWLEDGEBASE FIRST; 
ROUTINES 
   PROCEDURE GetConversation; 
PRIVATE 
TYPES 
FileRec IS RECORD 
LineNbr:INTEGER; 
Buff:STRING; 
END; 
ROUTINES 
PROCEDURE GetConversation IS 
VARIABLES 
   Conv :CONVERSATION; 
    Buff :STRING; 
   FileLine :FileRec; 
   TotalBuff:STRING; 
    DataRcvd :INTEGER; 
    StatRcvd :INTEGER; 
    ReqTSRcvd:INTEGER; 
   didreqts :BOOLEAN; 
    rc :INTEGER; 
   count :INTEGER; 
ACTIONS 
   rc := CPICAccept(Conv); 
   TotalBuff := ''; 
   count := 0; 
               didreqts := FALSE; 
   while (rc = 1) and (not(StatRcvd = 1)) do 
          rc := CPICReceive(Conv,'FILEREC.DDF',
                            FileLine,DataRcvd,StatRcvd,
                                         ReqTSRcvd); 
       if ((DataRcvd = $CPICDataReceived) or 
          (DataRcvd = $CPICCompleteDataReceived)) then 
         TotalBuff := TotalBuff & FileLine.Buff; 
 end; 
       count := count + 1; 
                       if ((StatRcvd = $CPICConfirmReceived) or 
                          (StatRcvd = $CPICConfirmSendReceived)) then 
                          rc := CPICConfirmed(Conv); 
 end; 
       if (count = 3) then 
          rc := CPICRequestToSend(Conv); 
          didreqts := TRUE; 
 end; 
       if (((StatRcvd = $CPICConfirmSendReceived) or 
            (StatRcvd = $CPICSendReceived)) and 
            (didreqts)) then 
               Buff     := 'DATA SENT BY FIRST.KB AFTER 
                            REQUEST TO SEND'; 
               rc       := CPICSend(Conv,'STD3.DDF',
                     Buff,ReqTSRcvd); 
               Buff     := 'DO RAY ME FA LA SO.'; 
               rc       := CPICSend(Conv,'STD3.DDF',
                     Buff,ReqTSRcvd); 
rc := CPICPrepareToReceive(Conv); 
               didreqts := FALSE; 
               StatRcvd := 0; 
       end; 
 end; 
       rc := CPICSend(Conv,'TOTALBUF.DDF',TotalBuff, 
                                         ReqTSRcvd); 
 rc := CPICDeallocate(Conv); 
END; 
    -- SECOND.KB 
    -- Este arquivo faz a leitura em um arquivo de texto, transmitindo cada
       linha para FIRST.
    -- Quando concluir, SECOND receberá de FIRST todo o arquivo
       em um buffer.
KNOWLEDGEBASE SECOND; 
ROUTINES 
    PROCEDURE DoConversation(VAL Args:List of String); 
    (* Expecting sdn, infile *) 
PRIVATE 
ROUTINES 
PROCEDURE RcvData(VAL Conv:Conversation) IS 
VARIABLES 
    Buff :STRING; 
    DataRcvd :INTEGER; 
    StatRcvd :INTEGER; 
    ReqTSRcvd:INTEGER; 
    rc :INTEGER; 
ACTIONS 
    rc := 1; 
    while (rc = 1) and (not((StatRcvd =
                        $CPICSendReceived) or 
                       (StatRcvd =
                        $CPICconfirmSendReceived))) do 
                       rc := CPICReceive(Conv,'STD.DDF',
                                         Buff,DataRcvd,StatRcvd,
                                         ReqTSRcvd); 
                       if ((StatRcvd = $CPICConfirmReceived) or 
                          (StatRcvd = $CPICConfirmSendReceived)) then 
                          rc := CPICConfirmed(Conv); 
    end; 
 end; 
END; -- RcvData 
PROCEDURE DoConversation(VAL Args:List of String) IS 
VARIABLES 
   Conv :Conversation; 
    Buff :STRING; 
    DataRcvd :INTEGER; 
    StatRcvd :INTEGER; 
    ReqTSRcvd:INTEGER; 
    rc :INTEGER; 
   inf :file; 
ACTIONS 
   if (ListLength(Args) < 3) then 
       WinMessageBox($DESKTOP,'Oops',$MBOK,
       'KML SECOND SDN INFILE'); 
      Exit; 
 end; 
   FOpen(inf,Args[2],$Read); 
   rc := CPICInitialize(Conv,Args[1]); 
   rc := CPICSetSyncLevel(Conv, $CPICConfirm); 
   rc := CPICSetTPName(Conv,'RUNRCV '); 
   rc := CPICSetPartnerLUName(Conv,'SAI.DVORJAK '); 
   rc := CPICSetConvType(Conv,$CPICBasicConversation); 
   rc := CPICAllocate(Conv); 
   rc := CPICSetSendType(Conv, $CPICBufferData); 
   rc := CPICSetPrepareToReceiveType
         (Conv,$CPICPrepToReceiveFlush); 
   while (FReadLn(inf,Buff) > 0) do 
      Buff:= Buff & Char(13) & Char(10); -- add on CR LF 
      rc := CPICSend(Conv,'FILEREC.DDF',
                     Buff,ReqTSRcvd); 
       if (ReqTSRcvd = $CPICReqToSendReceived) then 
           RcvData(Conv); 
 end; 
   -- the confirms have been randomized 
      for this example 
   if (random(1,10) < 2) then 
       CPICConfirm(Conv,ReqTSRcvd); 
       if (ReqTSRcvd = $CPICReqToSendReceived) then 
           RcvData(Conv); 
    end; 
 end; 
 end; 
 FClose(inf); 
 rc := CPICPrepareToReceive(Conv); 
 rc := CPICReceive(Conv,'TOTALBUF.DDF',
                   Buff,DataRcvd,StatRcvd,ReqTSRcvd); 
 rc := CPICDeallocate(Conv); 
END; 

Consulte também

CPICAllocate

Descrição

Estabelece uma conversação básica ou mapeada com um aplicativo parceiro.

Parâmetros

conv : CONVERSATION EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv A conversação que foi inicializada e deve ser alocada

Tipo de retorno

INTEGER

Notas

Depois de emitir esta chamada, um aplicativo fica no estado Enviar.

Um aplicativo deve emitir o comando CPICInitialize (com a mesma variável CONVERSATION) antes de tentar CPICAllocate.

O aplicativo parceiro está especificado na característica de nome do TP do SDN das informações secundárias de CPIC designadas na chamada para CPICInitialize. Antes de emitir CPICAllocate (e depois de emitir CPICInitialize), um aplicativo TSD Script poderá emitir uma das seguintes chamadas:

A LU local pode armazenar em buffer um pedido de alocação até que acumule informações suficientes para transmissão (de uma ou mais chamadas CPICSend) ou até que o aplicativo TSD Script local emita uma chamada que explicitamente esvazie o buffer.

O aplicativo local pode emitir uma CPICFlush imediatamente após CPICAllocate para confirmar a conexão.

Depois de aceitar a conversação, o aplicativo remoto fica no estado Receber.

Erros de alocação

Um erro de alocação resultante de uma falha na LU local é relatado na chamada para CPICAllocate.

Um erro de alocação resultante da rejeição do pedido na LU parceira é relatado em uma chamada de conversação subseqüente.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICConfirm

Descrição

Solicita confirmação (da recepção de dados) do aplicativo parceiro e, em seguida, aguarda uma resposta.

Parâmetros

conv : CONVERSATION EXPRESSION
reqTSRcvd: INTEGER PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv A conversação que foi inicializada e deve ser alocada
reqTSRcvd Indica se o parceiro solicitou ou não o envio de dados. Esta variável possui o valor $CPICRequestToSendReceived ou $CPICRequestToSendNotReceived:
  • $CPICRequestToSendReceived significa que o parceiro emitiu CPICRequestToSend. Este é um pedido para que o aplicativo local entre no estado de recepção.
  • $CPICRequestToSendNotReceived significa que o parceiro não emitiu CPICRequestToSend. O aplicativo local pode permanecer no estado de envio.

Tipo de retorno

INTEGER

Notas

O aplicativo local faz uma pausa no processamento adicional até que o aplicativo parceiro responda a este pedido. O buffer de envio da LU local é esvaziado por esta chamada.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICConfirmed

Descrição

Responde a um pedido de confirmação do parceiro.

Parâmetros

conv : CONVERSATION EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv A conversação que foi inicializada e deve ser alocada

Tipo de retorno

INTEGER

Notas

Esta função só deve ser chamada quando o parceiro solicitar confirmação.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICConfirm

CPICDeallocate

Descrição

Encerra uma conversação e libera os recursos dedicados a essa conversação.

Parâmetros

conv : CONVERSATION EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv A conversação que foi inicializada e deve ser alocada

Tipo de retorno

INTEGER

Notas

O buffer de envio da LU local é esvaziado por esta função.

O parceiro recebe notificação de desalocação através de um código de retorno ou do parâmetro statusReceived de CPICReceive.

Se o parâmetro statusReceived for $CPICConfirmDeallocReceived, significa que o aplicativo local emitiu CPICDeallocate com:

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICDeleteSideInfo

Descrição

Exclui a entrada designada de informações secundárias de CPIC.

Parâmetros

keylock : STRING EXPRESSION
symDestName : STRING EXPRESSION

Notas do parâmetro

Parâmetro Descrição
keylock A chave do Communications Manager, quando o dispositivo de bloqueio do Communications Manager está ativado. Especifique ' ' (oito espaços em branco) quando você não utilizar este recurso.
symDestName O SDN da entrada nas informações de configuração do Communications Manager

Tipo de retorno

INTEGER

Se o código de retorno for algo diferente de um, isto indica que a entrada não foi excluída.

Notas

Esta chamada não afeta uma conversação ativa. A entrada é removida imediatamente, indicando que as chamadas CPICInitialize subseqüentes feitas com o SDN serão rejeitadas. Enquanto o Communications Manager estiver removendo a entrada, qualquer tentativa do aplicativo em CPICInitialize será suspensa até que a remoção seja concluída.

Consulte também

CPICExtractConvSecurityType

Descrição

Obtém o tipo de segurança para a conversação.

Parâmetros

conv: CONVERSATION 
convSecurityType: INTEGER PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv Especifica a conversação para a qual o tipo de segurança está sendo verificado
convSecurityType Contém o inteiro que representa o TSD Script do tipo de segurança que possui constantes do sistema que são mnemônicos para esses tipos:
  • $CPICSecurityNone
  • $CPICSecuritySame
  • CPICSecurityProgram

Tipo de retorno

INTEGER

Notas

O tipo de segurança para uma conversação é definido como um valor padrão na chamada para CPICInitialize. Pode ser alterado com uma chamada para CPICSetConvSecurityType.

Consulte também

CPICExtractConvSecurityUserID

Descrição

Obtém o ID do usuário de segurança associado a uma conversação.

Parâmetros

conv : CONVERSATION EXPRESSION
securityUserID : STRING PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv O identificador de conversação para o ID do usuário de segurança
securityUserID Contém o ID do usuário com acesso à conversação

Tipo de retorno

INTEGER

Notas

O ID do usuário de segurança está definido como um valor padrão na chamada para CPICInitialize. Pode ser alterado com uma chamada para CPICSetConvSecurityUserID.

Consulte também

CPICExtractConvState

Descrição

Obtém o estado da conversação especificada.

Parâmetros

conv : CONVERSATION EXPRESSION
state: INTEGER PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv O identificador de conversação do qual você deseja saber o estado
state Contém o estado da conversação para o qual as constantes do sistema TSD Script do parceiro local são:
  • $CPICInitState
  • $CPICSendState
  • $CPICReceiveState
  • $CPICSendPendingState
  • $CPICConfirmState
  • $CPICConfirmSendState
  • $CPICConfirmDeallocateState

Tipo de retorno

INTEGER

CPICExtractConvType

Design

Obtém o tipo da conversação especificada.

Parâmetros

conv : CONVERSATION PARAMETER 
convType: INTEGER PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv Identificador de conversação cujo tipo é desejado.
convType Contém o tipo da conversação. O valor pode ser uma das seguintes constantes do sistema TSD Script:
  • $CPICBasicConversation
  • $CPICMappedConversation

Tipo de retorno

INTEGER

Notas

O tipo da conversação assume o padrão de $CPICMappedConversation durante o processamento de CPICInitialize.

Chamar CPICSetConvType depois que CPICInitialize é chamado (e antes de CPICAllocate ser chamado) altera o tipo da conversação.

Consulte também

CPICSetConvType

CPICExtractModeName

Descrição

Obtém o nome do modo para a conversação especificada.

Parâmetros

conv : CONVERSATION EXPRESSION 
modeName : STRING PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv O identificador de conversação para o qual o nome do modo é desejado
modeName Contém o nome do modo da conversação. Designa as propriedades da rede para a sessão que contém a conversação.

Tipo de retorno

INTEGER

Consulte também

CPICSetModeName

CPICExtractPartnerLUName

Descrição

Obtém o nome da LU do aplicativo parceiro.

Parâmetros

conv : CONVERSATION EXPRESSION 
partnerLUName : STRING PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv Indica a conversação com o aplicativo parceiro para o qual você deseja o nome da LU
partnerLUName Contém o nome da LU do parceiro

Tipo de retorno

INTEGER

Consulte também

CPICSetPartnerLUName

CPICExtractSideInfo

Descrição

Obtém os parâmetros para o SDN indicado.

Parâmetros

entryNbr : INTEGER EXPRESSION 
symDestName : STRING EXPRESSION 
partnerLUName : STRING PARAMETER 
TPNameType : INTEGER PARAMETER 
TPName : STRING PARAMETER 
modeName : STRING PARAMETER 
convSecurityType: INTEGER PARAMETER 
securityUserID : STRING PARAMETER 

Notas do parâmetro

Parâmetro Descrição
entryNbr O número de índice na tabela de Informações Secundárias de CPIC para a qual os valores são necessários. Se este número for 0, o Communications Manager fará a pesquisa com base no SDN fornecido.
symDestName Quando você especifica 0 para entryNbr, este valor é utilizado para pesquisar a tabela de Informações Secundárias de CPIC.
partnerLUName O nome da LU parceira especificado na entrada de informações secundárias de CPIC.
TPNameType Um inteiro que indica o tipo do TP. As constantes do sistema TSD Script para estes tipos são $CPICApplicationTP e $CPICSNAServiceTP.
TPName O nome do TP.
modeName O modo utilizado em conversações alocadas utilizando este SDN.
convSecurityType O tipo de segurança utilizada para conversações alocadas com esta entrada de informações secundárias de CPIC.
securityUserID O ID do usuário de acesso de segurança para a conversação. É transmitido para a LU parceira durante um pedido de alocação, quando o tipo de segurança é CPICSecurityProgram.

Tipo de retorno

INTEGER

Notas

A senha de segurança da entrada da tabela não é retornada.

Enquanto o Communications Manager estiver executando este comando, todas as outras chamadas do aplicativo para alterar essas informações serão suspensas.

O número de entrada especifica um índice na lista atual de entradas internas de Informações Secundárias de CPIC. Se as entradas forem excluídas, os índices serão alterados.

Consulte também

CPICExtractSyncLevel

Descrição

Obtém o nível de sincronização atual para a conversação.

Parâmetros

conv : CONVERSATION EXPRESSION 
SYNCLEVEL: INTEGER PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv O identificador de conversação para o qual o nível de conversação é requerido.
SYNCLEVEL O nível de sincronização atual da conversação especificada.

Os mnemônicos das constantes do sistema TSD Script para esses valores são:

Tipo de retorno

INTEGER

Notas

Um valor de nível de sincronização de $CPICNone indica que os parceiros não executam o processamento de confirmação.

Um valor de nível de sincronização de $CPICConfirm significa que os aplicativos executam o processamento de confirmação. Ou seja, eles emitem chamadas de confirmação apropriadas e reconhecem os parâmetros retornados relacionados à confirmação.

Consulte também

CPICSetSyncLevel

CPICFlush

Descrição

Faz com que o Communications Manager envie qualquer tipo de dados para os buffers internos.

Parâmetros

conv : CONVERSATION EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv O identificador de conversação para dados removidos

Tipo de retorno

INTEGER

Notas

Quando um aplicativo emite um CPICAllocate, CPICSend ou CPICSendError, o Communications Manager pode armazenar dados internamente para tornar o tráfego na rede o mais eficiente possível. O Communications Manager retém os dados até que o buffer interno fique cheio ou até que o aplicativo force um esvaziamento. Se não houver dados no buffer interno, nenhum dado será enviado para o aplicativo parceiro.

Um aplicativo pode forçar um esvaziamento explicitamente, com CPICFlush, ou implicitamente, com CPICConfirm, CPICPrepareToReceive, CPICDeallocate, etc.

Se você estiver planejando o esvaziamento depois de cada CPICSend, poderá utilizar o CPICSetSendType para definir o tipo de envio como $CPICSendAndFlush. Esteja ciente de que ao fazer isto você estará obstruindo as medidas de eficiência que o Communications Manager tentará executar.

Consulte também

CPICInitialize

Descrição

Configura e prepara recursos internos para uma conversação. Muitas características são definidas como valores padrão e associadas ao identificador de conversação especificado.

Parâmetros

conv : CONVERSATION PARAMETER
symDestName : STRING EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv O identificador de conversação a ser preparado para uma conversação.
symDestName O SDN de uma entrada na tabela de Informações Secundárias de CPIC a ser utilizado na definição de características para a conversação.

Tipo de retorno

INTEGER

Notas

Um aplicativo pode substituir os atributos inicializados nesta chamada, executando as chamadas CPICSet apropriadas. Lembre-se de que estas chamadas definidas devem ser feitas antes da chamada para CPICAllocate.

O identificador de conversação configurado por este comando é utilizado em todas as chamadas subseqüentes para os comandos de CPIC. Um aplicativo pode conter várias conversações, chamando CPICInitialize uma vez para cada conversação a ser alocada.

Se a tabela de Informações Secundárias de CPIC fornece informações inválidas para a conversação, esta condição será detectada na chamada para CPICAllocate.

Um aplicativo pode fornecer um symDestName vazio para esta função. Fazendo isto, o aplicativo se torna responsável por chamar as funções do TSD Script para definir as características da conversação.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICPrepareToReceive

Descrição

Altera o fim local da conversação do estado Enviar para o estado Receber, como uma preparação para receber dados.

Parâmetros

conv : CONVERSATION EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv O identificador que determina a conversação a ser colocada no estado Receber.

Tipo de retorno

INTEGER

Notas

Se o tipo de preparação para recepção da conversação for $CPICPrepareToReceiveConfirm, ou o tipo de preparação para recepção for $CPICPrepareToReceiveSyncLevel e o nível de sincronização for $CPICConfirm, o Communications Manager enviará um pedido de confirmação para o aplicativo parceiro.

O aplicativo local aguarda até que seja recebida uma resposta confirmada. Este comando força implicitamente um esvaziamento.

O aplicativo remoto recebe notificação do controle de envio através do parâmetro de status recebido.

Para um valor de status recebido de $CPICSendReceived, o aplicativo local emitiu o comando CPICPrepareToReceive sem solicitação de confirmação.

Para $CPICConfirmSendReceived, o aplicativo local emite o comando com solicitação de confirmação--isto é feito havendo um tipo de preparação para recepção definido como $CPICPrepToReceiveConfirm, ou $CPICPrepToReceiveSyncLevel com o nível de sincronização definido como $CPICConfirm.

O fim da conversação do aplicativo remoto inicia um estado Enviar ou Enviar-Pendente.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICReceive

Descrição

Recebe dados de entrada da conversação especificada.

Parâmetros

conv : CONVERSATION EXPRESSION 
DDFName : STRING EXPRESSION 
buffer : ANY PARAMETER 
dataReceived : INTEGER PARAMETER 
statusReceived: INTEGER PARAMETER
reqTSRcvd: INTEGER PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv O identificador de conversação do qual os dados são obtidos.
DDFName O nome do DDF que define a estrutura do bloco de bytes de entrada.
buffer Uma variável do TSD Script de um tipo simples (INTEGER, BOOLEAN, TIME, DATE, STRING) ou um tipo de registro definido pelo usuário. Esta variável está estritamente relacionada ao parâmetro DDFName, porque o DDFName deve especificar um DDF que descreve adequadamente o formato do buffer.
dataReceived Especifica se o aplicativo recebeu dados.

As constantes do sistema TSD Script para este valor são as seguintes:

  • $CPICNoDataReceived significa que não foram enviados bytes de dados. O status pode ter sido recebido.
  • $CPICCompleteDataReceived significa que foi recebido um registro de dados completo.
  • statusReceived indica o status da conversação. São aplicadas as seguintes constantes do sistema TSD Script:
    • $CPICNoStatusReceived significa que não foi recebido nenhum status de conversação. Os dados podem ter sido recebidos.
    • $CPICSendReceived significa que o aplicativo remoto agora está no estado Receber, colocando o aplicativo local no estado Enviar-Pendente (se os dados também tivessem sido recebidos nesta chamadas) ou no estado Enviar (se os dados não tivessem sido recebidos). O aplicativo local agora pode enviar dados em utilização.
    • CPICSend.$CPICConfirmReceived significa que o aplicativo remoto solicitou confirmação dos dados enviados. O aplicativo local deve responder emitindo CPICConfirmed, CPICSendError ou CPICDeallocate com o tipo de desalocação definido como $CPICDeallocateAbend.
    • $CPICConfirmSendReceived significa que o aplicativo remoto entrou no estado Receber com solicitação de confirmação.
    • $CPICConfirmDeallocReceived significa que o aplicativo remoto desalocou a conversação com o pedido de confirmação. Durante a emissão de CPICConfirmed, o aplicativo local agora está no estado Redefinir.
reqTSRcvd Indica se o parceiro solicitou ou não o envio de dados. Esta variável possui o valor $CPICRequestToSendReceived ou $CPICRequestToSendNotReceived. $CPICRequestToSendReceived significa que o parceiro emitiu CPICRequestToSend. Este é um pedido para que o aplicativo local entre no estado Receber.
  • $CPICRequestToSendNotReceived significa que o parceiro não emitiu CPICRequestToSend. O aplicativo local pode permanecer no estado Enviar.

Tipo de retorno

INTEGER

Notas

Se o tipo de recepção estiver definido como $CPICReceiveAndWait (o padrão, o aplicativo TSD Script é bloqueado (aguarda) até que os dados sejam recebidos. O limite de tempo para esta espera está definido no NDF (arquivo de definições do nó) no diretório do Communications Manager.

Nota: O padrão do Communications Manager para este valor é INFINITE.

Consulte a seção sobre DDFs no capítulo que discute a utilização de CPIC para obter uma discussão detalhada sobre a utilização correta dos DDFs. Este comando implicitamente faz com que o buffer interno seja esvaziado. O aplicativo pode receber dados e status da conversação na mesma chamada.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICRequestToSend

Descrição

Emite um pedido de envio de dados para o aplicativo parceiro.

Parâmetros

conv : CONVERSATION EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv A conversação para a qual você deseja entrar no estado Enviar.

Tipo de retorno

INTEGER

Notas

O aplicativo remoto é notificado da chegada do pedido pelo parâmetro reqTSRcvd de um dos comandos CPICSend, CPICSendError, CPICConfirm ou CPICTestRequestToSendReceived.

O valor é $CPICReqToSendReceived.

Depois de entrar no estado Receber (emitindo os comandos apropriados), o aplicativo remoto fica no estado Enviar ou Enviar-Pendente. A LU remota retém somente um pedido de envio de cada vez por conversação. As notificações adicionais são descartadas até que o aplicativo remoto seja notificado durante uma chamada de CPIC.

Lembre-se de que isto significa que um aplicativo pode emitir mais chamadas CPICRequestToSend do que pode ser indicado para o aplicativo remoto.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICSend

Descrição

Envia dados para o aplicativo parceiro na conversação especificada.

Parâmetros

conv : CONVERSATION EXPRESSION 
DDFName : STRING EXPRESSION 
buffer : ANY EXPRESSION 
reqTSRcvd: INTEGER PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv A conversação através da qual os dados são enviados.
DDFName O DDF a ser utilizado na extração de valores do buffer e na compilação de um bloco de bytes a ser transmitido.
buffer A variável de TSD Script que contém os dados a serem enviados. O tipo desta variável pode ser um tipo simples de TSD Script (INTEGER, REAL, BOOLEAN, TIME, DATE) ou um tipo de registro definido pelo usuário.
reqTSRcvd Indica se o parceiro solicitou ou não o envio de dados.

Esta variável possui os valores:

  • $CPICRequestToSendReceived significa que o parceiro emitiu CPICRequestToSend. Este é um pedido para que o aplicativo local entre no estado Receber.
  • $CPICRequestToSendNotReceived significa que o parceiro não emitiu CPICRequestToSend. O aplicativo local pode permanecer no estado Enviar.

Tipo de retorno

INTEGER

Notas

A LU local armazena os dados a serem enviados para a LU remota até que haja uma quantidade suficiente para transmissão, ou até que o aplicativo force um esvaziamento (de forma explícita ou implícita). A quantidade de dados suficientes para transmissão depende das características da sessão alocada para suportar a conversação.

Quando reqTSRcvd indica $CPICReqToSendReceived, o aplicativo remoto solicita que o aplicativo local entre no estado Receber. Se, freqüentemente, você utiliza CPICSend juntamente com CPICFlush, CPICConfirm, ou CPICPrepareToReceive, consulte a utilização de CPICSetSendType. A utilização deste comando definido provavelmente é mais eficiente.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICSendError

Descrição

Informa ao aplicativo remoto que o aplicativo local detectou um erro durante a conversação.

Parâmetros

conv : CONVERSATION EXPRESSION 
reqTSRcvd: INTEGER PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv A conversação na qual é indicado o erro.
reqTScvd Indica se o parceiro solicitou ou não o envio de dados.

Esta variável possui os valores:

  • $CPICRequestToSendReceived significa que o parceiro emitiu um comando CPICRequestToSend. Este é um pedido para que o aplicativo local entre no estado Receber.
  • $CPICRequestToSendNotReceived significa que o parceiro não emitiu um comando CPICRequestToSend. O aplicativo local pode permanecer no estado Enviar.

Tipo de retorno

INTEGER

Notas

A LU local pode atrasar o envio imediato da notificação de erro. Se isto ocorrer, a notificação ficará armazenada no buffer até que haja uma quantidade suficiente de dados para transmissão, ou até que o aplicativo local force um esvaziamento, de forma explícita ou implícita. Para garantir que o aplicativo parceiro receberá a notificação de erro imediatamente, o aplicativo pode emitir um CPICFlush.

O aplicativo local entra no estado Enviar ao emitir esta chamada a partir do estado Receber, Confirmar, Confirmar-Enviar, Confirmar-Desalocar ou Enviar-Pendente. Quando esta chamada é emitida do estado Enviar, não ocorre alteração do estado.

Consulte também

CPICSetErrorDirection

CPICSetConvSecurityPassword

Descrição

Define a senha de segurança a ser enviada para o parceiro.

Parâmetros

conv : CONVERSATION EXPRESSION 
securityPassword: STRING EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv A conversação para a qual você deseja definir a senha.
securityPassword A nova senha de segurança. A LU parceira utiliza esta senha e o ID do usuário de segurança para verificar a identidade do solicitante.

Tipo de retorno

INTEGER

Notas

Esta chamada só pode ser feita quando o tipo de segurança da conversação for $CPICSecurityProgram. Esta chamada deve ser feita depois de CPICInitialize e antes de CPICAllocate.

A senha é definida como uma característica padrão (definida na entrada Informações Secundárias de CPIC) no momento da inicialização.

A especificação de uma senha inválida não é detectada nesta chamada. É detectada pela LU parceira quando ela recebe o pedido de alocação. O aplicativo local recebe uma indicação do erro em uma chamada de CPIC subseqüente.

Consulte também

CPICSetConvSecurityType

Descrição

Define o tipo de segurança para a conversação.

Parâmetros

conv : CONVERSATION EXPRESSION 
convSecurityType: INTEGER EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv O identificador da conversação para o qual você deseja definir o tipo de segurança.
convSecurityType O INTEGER que indica o tipo de segurança. As constantes do sistema TSD Script são:
  • $CPICSecurityNone
  • $CPICSecuritySame
  • $CPICSecurityProgram

Tipo de retorno

INTEGER

Notas

Durante o processamento de CPICInitialize, o tipo de segurança é definido como um valor padrão (especificado na entrada Informações Secundárias de CPIC).

Para o tipo de segurança de $CPICSecurityNone, o pedido de alocação é enviado para a LU parceira sem informações sobre segurança.

Para o tipo de segurança de $CPICSecuritySame, o pedido de alocação contém o mesmo nível de informações de segurança de acesso (nenhum ou o ID do usuário) como o utilizado para iniciar o aplicativo, desde que a LU parceira aceite informações de segurança já verificadas. Se o parceiro não aceitar informações de segurança já verificadas, o pedido de alocação não conterá informações de segurança.

Para o tipo de segurança de $CPICSecurityProgram, o pedido de alocação contém o ID do usuário e a senha dos atributos de conversação correspondentes, desde que o parceiro aceite as informações de segurança da LU local.

Se o aplicativo TSD Script definir o tipo de segurança como $CPICSecurityProgram, ele poderá chamar CPICSetConvSecurityPassword e CPICSetConvSecurityUserID.

Se o aplicativo TSD Script não definir o tipo de segurança como $CPICSecurityProgram, os valores serão obtidos da entrada Informações secundárias de CPIC.

Consulte também

CPICSetConvSecurityUserID

Descrição

Define o ID do usuário de segurança para a conversação. Este ID do usuário é necessário para conversações com tipo de segurança de $CPICSecurityProgram.

Parâmetros

conv : CONVERSATION EXPRESSION 
securityUserID : STRING EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv A conversação para a qual o ID do usuário de segurança está definido.
securityUserID O ID do usuário de segurança. A LU parceira utiliza a senha de segurança para verificar a identidade do solicitante.

Tipo de retorno

INTEGER

Notas

O valor inicial para o ID do usuário vem da entrada Informações Secundárias de CPIC durante o processamento de CPICInitialize.
A especificação de um ID do usuário de segurança inválido não é detectada nesta chamada. A LU parceira a detecta quando recebe o pedido de alocação. O aplicativo local recebe a notificação em uma chamada de CPIC subseqüente.

Consulte também

CPICSetConvType

Descrição

Define o tipo de conversação.

Parâmetros

conv : CONVERSATION PARAMETER 
convType: INTEGER EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv O identificador da conversação para a qual você deseja alterar o tipo de conversação.
convType Um inteiro que indica o tipo de conversação. As constantes do sistema TSD Script são:
  • $CPICBasicConversation
  • $CPICMappedConversation

Tipo de retorno

INTEGER

Notas

Durante o processamento de CPICInitialize, o tipo de conversação é definido como $CPICMappedConversation. Seu aplicativo precisa chamar esta função depois de CPICInitialize para alterar o tipo para $CPICBasicConversation. As conversações básicas devem ser consideradas como uma técnica de programação avançada.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

CPICSetDeallocateType

Descrição

Define o tipo de processamento de desalocação a ser executado.

Parâmetros

conv : CONVERSATION EXPRESSION 
deallocateType: INTEGER EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv O identificador da conversação para o qual o tipo de desalocação está sendo definido
deallocateType Um inteiro que indica o tipo de desalocação desejada. As constantes do sistema TSD Script são:
  • $CPICDeallocateSyncLevel
  • $CPICDeallocateFlush
  • $CPICDeallocateConfirm
  • $CPICDeallocateAbend

Tipo de retorno

INTEGER

Notas

O atributo do tipo de desalocação é utilizado pela CPIC quando você chama a função CPICDeallocate.

Se for recebida uma resposta bem-sucedida, a conversação será desalocada normalmente. Se for recebida uma resposta sem êxito, o estado da conversação será determinado pelo código de retorno.

Observe que o tipo de $CPICDeallocateConfirm só pode ser utilizado quando o nível de sincronização for $CPICConfirm.

Consulte também

CPICSetErrorDirection

Descrição

Define o atributo de direção do erro para uma conversação.

Parâmetros

conv : CONVERSATION EXPRESSION 
errorDirection: INTEGER EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv O identificador da conversação para a qual será definida a direção do erro.
errorDirection Um inteiro que indica a direção do fluxo de dados em que o erro foi detectado. As constantes do sistema TSD Script são $CPICReceiveError e $CPICSendError.

Tipo de retorno

INTEGER

Notas

Um valor de $CPICReceiveError indica que o aplicativo local detectou um erro nos dados recebidos do parceiro. Quando o aplicativo local emite CPICSendError, o aplicativo remoto recebe um código de retorno de -22 (CM_PROGRAM_ERROR_PURGING). Um valor de $CPICSendError indica que o aplicativo local encontrou um problema ao preparar os dados para serem enviados ao parceiro. Quando o aplicativo local emite CPICSendError, o aplicativo remoto recebe um código de retorno de -21 (CM_PROGRAM_ERROR_NO_TRUNC).

Este atributo de direção do erro só é utilizado quando o aplicativo está no estado Enviar-Pendente (a única vez em que é difícil verificar se é um erro de recepção ou de envio). Um aplicativo fica no estado Enviar-Pendente após um CPICReceive em que foram recebidos dados e um status de $CPICSendReceived. A direção do erro assume o padrão de $CPICReceiveError.
Quando a direção do erro é alterada, o novo valor permanece em vigor até que o aplicativo o altere novamente.

Consulte também

CPICSendError

CPICSetModeName

Descrição

Define o nome do modo a ser utilizado para a conversação.

Parâmetros

conv : CONVERSATION EXPRESSION 
modeName : STRING EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv O identificador da conversação para a qual você deseja definir o nome do modo
modeName O nome do modo a ser utilizado para a conversação. O nome do modo especifica as propriedades da rede para a sessão que contém a conversação. Estas propriedades da rede incluem uma classe de serviço e determina se os dados devem ser codificados.

Tipo de retorno

INTEGER

Notas

Um nome de modo inválido não é detectado nesta chamada. A CPICAllocate subseqüente retorna um erro.

Consulte também

CPICSetPartnerLUName

Descrição

Define o nome da LU parceira para a conversação.

Parâmetros

conv : CONVERSATION EXPRESSION 
partnerLUName : STRING EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv A conversação para a qual o nome da LU parceira é alterado
partnerLUName O novo nome da LU parceira para a conversação. Este é o nome da LU em que o aplicativo remoto está localizado. Este nome da LU representa qualquer nome pelo qual a LU local reconhece a LU remota com objetivo de alocar uma conversação.

Tipo de retorno

INTEGER

Notas

Esta chamada deve ser emitida depois de CPICInitialize, mas antes de CPICAllocate. A emissão desta chamada não altera as informações na entrada Informações Secundárias de CPIC.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICSetPrepareToReceiveType

Descrição

Define o atributo a ser utilizado quando CPICPrepareToReceive for chamado.

Parâmetros

conv : CONVERSATION EXPRESSION 
prepToRcvType: INTEGER EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv A conversação para a qual o tipo de preparação para recepção é definido.
prepToRcvType Um inteiro que indica o tipo de processamento de preparação para recepção a ser executado. As constantes do sistema TSD Script são $CPICPrepToReceiveSyncLevel, $CPICPrepToReceiveFlush e $CPICPrepToReceiveConfirm.

Tipo de retorno

INTEGER

Notas

Para $CPICPrepToReceiveFlush, o buffer é esvaziado e o aplicativo entra no estado Receber.

Para $CPICPrepToReceiveConfirm, é enviado um pedido de confirmação. Se for bem-sucedido, o aplicativo entrará no estado Receber. Se for malsucedido, o estado da conversação será determinado pelo código de retorno.

Para $CPICPrepToReceiveSyncLevel, o processamento depende do nível de sincronização. Se ele for $CPICNone, as ações serão as mesmas para $CPICPrepToReceiveFlush.

Se for $CPICConfirm, o processamento será o mesmo para $CPICPrepToReceiveConfirm.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICSetReceiveType

Descrição

Define o tipo de operação de recepção a ser executado.

Parâmetros

conv : CONVERSATION EXPRESSION 
rcvType: INTEGER EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv A conversação para a qual o tipo de recepção é alterado
rcvType Um inteiro que indica o tipo de processamento de recepção. As constantes do sistema TSD Script são $CPICReceiveAndWait e $CPICReceiveImmediate.

Tipo de retorno

INTEGER

Notas

Esta função pode ser chamada a qualquer momento após CPICInitialize (para o iniciador da conversação) ou CPICAccept (para o receptor da conversação).

Um valor de $CPICReceiveAndWait significa que uma chamada para a função CPICReceive aguarda até que cheguem as informações. $CPICReceiveImmediate significa que a função CPICReceive recebe quaisquer dados que estejam disponíveis, mas não aguarda mais informações.

Consulte também

CPICReceive

CPICSetReturnControl

Descrição

Define o atributo de controle de retorno para a conversação. É utilizado em uma chamada para CPICAllocate.

Parâmetros

conv : CONVERSATION EXPRESSION 
returnControl: INTEGER EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv A conversação para a qual o controle de retorno é alterado
returnControl Um inteiro que indica quando o aplicativo TSD Script reassume o controle sobre a chamada para CPICAllocate. As constantes do sistema TSD Script são $CPICWhenSessionAllocated e $CPICImmediate.

Tipo de retorno

INTEGER

Notas

Para $CPICWhenSessionAllocated, o aplicativo TSD Script aguarda até que a sessão seja alocada. Para $CPICImmediate, a sessão só será alocada se uma sessão livre se tornar disponível imediatamente. É relatado um erro de alocação resultante de falha da LU local em obter uma sessão para conversação na chamada CPICAllocate. É relatada em uma chamada de conversação subseqüente uma rejeição da LU parceira.

Consulte também

CPICAllocate

CPICSetSendType

Descrição

Envia o atributo de tipo de envio para a conversação.

Parâmetros

conv : CONVERSATION EXPRESSION 
sendType: INTEGER EXPRESSION 

Notas do parâmetro

Parâmetros Descrição
conv A conversação para a qual o tipo de envio é alterado.
sendType Um inteiro que indica as ações a serem executadas em cada chamada para CPICSend. As constantes do sistema TSD Script são:
  • $CPICBufferData
  • $CPICSendAndFlush
  • $CPICSendAndConfirm
  • $CPICSendAndPrepToReceive
  • $CPICSendAndDeallocate

Tipo de retorno

INTEGER

Notas

Com $CPICBufferData (o padrão), nenhuma ação adicional é necessária além do envio de dados. Além disso, os dados podem ser armazenados internamente até que tenha sido acumulada uma quantidade suficiente para transmissão através de várias chamadas CPICSend.

$CPICSendAndFlush indica que é executada uma operação de esvaziamento após cada CPICSend.

$CPICSendAndConfirm indica que é enviado um pedido de confirmação após cada CPICSend.

$CPICSendAndPrepToReceive indica que o aplicativo local concede o controle de envio ao aplicativo remoto na chamada para CPICSend.

$CPICSendAndDeallocate indica que a conversação é desalocada após o envio de dados.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICSetSideInfo

Descrição

Adiciona ou substitui uma entrada Informações Secundárias de CPIC na tabela Informações Secundárias de CPIC.

Parâmetros

keylock : STRING EXPRESSION 
symDestName : STRING EXPRESSION 
partnerLUName : STRING EXPRESSION 
TPNameType : INTEGER EXPRESSION 
TPName: STRING EXPRESSION 
modeName : STRING EXPRESSION 
convSecurityType: INTEGER EXPRESSION 
securityUserID : STRING EXPRESSION 
securityPassword: STRING EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
keylock A chave principal ou de serviço, quando o dispositivo de bloqueio do Communications Manager preencheu com segurança esta chave com espaços em branco para oito caracteres, se necessário.
symDestName O SDN da entrada. Este valor é utilizado como a chave da tabela. Se forem encontrados na tabela, os valores serão atualizados. Caso contrário, será criada uma nova entrada na tabela.
partnerLUName O nome da LU do aplicativo remoto.
TPNameType Um inteiro que indica o tipo de TP. As constantes do sistema TSD Script são $CPICApplicationTP e $CPICSNAServiceTP.
TPName O nome do aplicativo de transação que é o parceiro desta conversação. Se você especificou $CPICSNAServiceTP, deverá especificar o nome no formato '\xhhaaa', em que hh é considerado um valor hexadecimal e os outros caracteres são considerados alfanuméricos.
modeName O nome do modo a ser utilizado para a conversação.
convSecurityType Um número inteiro que indica o tipo de segurança para qualquer conversação alocada com esta entrada de informações secundárias. As constantes do sistema TSD Script são $CPICSecurityNone, $CPICSecuritySame, $CPICSecurityProgram.
securityUserID O ID do usuário a ser enviado ao parceiro para verificação. Este valor deverá ser definido se convSecurityType for $CPICSecurityProgram.
securityPassword A senha a ser enviada ao parceiro durante a verificação de segurança. Este valor só será necessário se convSecurityType for $CPICSecurityProgram.

Tipo de retorno

INTEGER

Notas

Esta chamada não altera o arquivo de configuração do Communications Manager. Portanto, as modificações feitas na entrada Informações Secundárias só existirão se o aplicativo local estiver em execução.

Nesta chamada, não é verificada a validação dos valores de cadeia transmitidos para esta função.

Esta função não afeta as conversações ativas. Enquanto o Communications Manager estiver atualizando a entrada Informações Secundárias de CPIC, qualquer outra chamada do aplicativo para alterar ou extrair informações da entrada será suspensa até que esta função seja concluída. Isto inclui outra chamada do aplicativo para CPICInitialize.

Consulte também

CPICSetSyncLevel

Descrição

Define o atributo do nível de sincronização para uma conversação.

Parâmetros

conv : CONVERSATION EXPRESSION 
SYNCLEVEL: INTEGER EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv O identificador da conversação para a qual o nível de sincronização é alterado.
SYNCLEVEL Um inteiro que indica o nível de sincronização a ser utilizado para a conversação. As constantes do sistema TSD Script são $CPICNone e $CPICConfirm.

Tipo de retorno

INTEGER

Notas

$CPICNone significa que os aplicativos não executam nenhum processamento de confirmação nesta conversação. $CPICConfirm significa que os aplicativos podem executar o processamento de confirmação. O nível de sincronização só pode ser definido após CPICInitialize, mas antes de CPICAllocate. Somente o iniciador de uma conversação pode utilizar esta função.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICSetTPName

Descrição

Define o nome do TP para a conversação. Ele é fornecido para a LU parceira como o nome do aplicativo de transação a ser executado como o aplicativo remoto da conversação.

Parâmetros

conv : CONVERSATION EXPRESSION 
TPName: STRING EXPRESSION 

Notas do parâmetro

Parâmetro Descrição
conv A conversação para a qual o nome do TP é alterado.
TPName O novo nome do TP para a conversação. Observe que este deve ser um TP do aplicativo, não um TP de serviço SNA.

Tipo de retorno

INTEGER

Notas

Esta função só pode ser utilizada para definir nomes de TP de aplicativos, não nomes de TP de serviços SNA.

Exemplo

Consulte o segmento de código de CPICAccept para obter um exemplo completo.

Consulte também

CPICSetSideInfo

CPICTestRequestToSendReceived

Descrição

Verifica se foi emitido um pedido de envio pelo aplicativo parceiro.

Parâmetros

conv : CONVERSATION EXPRESSION 
reqTSRcvd: INTEGER PARAMETER 

Notas do parâmetro

Parâmetro Descrição
conv A conversação a ser testada.
reqTSRcvd Contém um inteiro que indica se foi recebido um pedido de envio do parceiro. As constantes do sistema TSD Script são $CPICReqToSendReceived e $CPICReqToSendNotReceived.

Tipo de retorno

INTEGER

Notas

Quando a LU local recebe o pedido de notificação, ela retém a notificação até que o aplicativo local emita uma chamada com o parâmetro reqTSRcvd. Somente uma notificação é retida de cada vez; portanto, pedidos adicionais serão descartados até que o aplicativo local seja notificado.

Consulte também


Tivoli Service Desk 6.0 Developer's Toolkit - Guia de APIs Existentes

Retornar ao Índice

Copyright