Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
O tratamento de erros no Ponto de Serviço da Microsoft para .NET (POS para .NET) baseia-se no modelo orientado a objetos de lançar e capturar exceções. Exceções diferentes são geradas em resposta a erros de runtime e cada exceção contém informações sobre o erro que o disparou na forma de um ErrorCode.
A propriedade ErrorCode de uma exceção gerada contém informações sobre a causa do erro. Os valores possíveis para essa propriedade representam o conjunto completo de códigos de erro padrão UnifiedPOS (Unified Point Of Service). Para obter mais informações sobre o mapeamento entre os códigos de erro UnifiedPOS e os valores ErrorCode do POS para .NET, consulte as Classes de Exceção do POS para .NET.
O POS para .NET fornece quatro classes de exceção para ajudar os aplicativos a lidar melhor com erros. Estes são PosException, PosControlException, PosManagementExceptione PosLibraryException:
- PosException é uma classe abstrata que contém dados gerais de exceção. PosException atende a uma função semelhante à da classe System.Exception no .NET Framework e é o POS para implementação .NET da classe UposException na especificação UnifiedPOS. Todas as outras classes de exceção do POS para .NET são derivadas de PosException.
- PosControlException é a exceção padrão gerada pelo POS para objetos de serviço .NET. PosControlException contém uma ErrorCode propriedade que contém informações sobre a causa da exceção.
- PosLibraryException contém os dados de exceção gerados pelo PosExplorer durante operações de classe. PosLibraryException não contém uma propriedade ErrorCode .
- PosManagementException contém os dados de exceção gerados pelo POS para APIs de gerenciamento do .NET. PosManagementException não contém uma propriedade ErrorCode .
Tratamento de erros no POS para .NET
O tratamento de erros no POS para .NET está em conformidade com as diretrizes de especificação do UnifiedPOS. O tratamento de erros é controlado por eventos, usa códigos de erro para armazenar informações de exceção e é em grande parte específico da implementação.
O tratamento de erros no POS para .NET segue este procedimento geral:
Um erro é gerado pela entrada controlada por eventos.
O dispositivo altera sua State propriedade para indicar que encontrou um erro.
Um evento ErrorEvent é enfileirado para alertar o aplicativo de que ocorreu um erro. O ErrorEvent é adicionado ao final da fila.
Se um ou mais eventos DataEvent forem enfileirados na frente do evento ErrorEvent, outro ErrorEvent será enfileirado e adicionado ao início da fila. Isso avisa o aplicativo sobre o erro rapidamente para que ele possa responder de maneira específica à implementação antes de processar qualquer DataEvents enfileirado.
Se as propriedades de aplicativos estiverem configuradas para aceitar eventos (DataEventEnabled for true e FreezeEvents for false), ele responderá ao evento ErrorEvent de maneira determinada pela ErrorResponse propriedade, conforme indicado na tabela a seguir.
Value Significado da resposta Limpar Limpa todos os eventos DataEvent em buffer e eventos ErrorEvent, sai do estado de erro e altera o estado do dispositivo para inativo. ContinuarEntrada Reconhece o erro e orienta o dispositivo a continuar o processamento. O dispositivo permanece no estado de erro e fornecerá eventos de dados adicionais, conforme definido pela propriedade DataEventEnabled. Quando todas as entradas são entregues e a propriedade DataEventEnabled é novamente definida como true, outro ErrorEvent é entregue com a entrada de locus. Retry Direciona o dispositivo para tentar novamente a entrada. O Estado de Erro é encerrado, e o estado é alterado para ocioso. Essa resposta só é selecionada quando o capítulo do dispositivo especificamente permite e quando o locus é Entrada. O aplicativo também pode executar etapas específicas de implementação para responder ao erro no momento.