Selecionar impressora
Nesse documento você encontra informações sobre:
Impressão manual com seleção de impressora
Importante
É imprescindível que seja verificado o tópico que trata sobre o conceito de impressão via PrintService para entendimento do processo de impressão como um todo, e verificação dos pré-requisitos para que o processo seja executado com sucesso.
Em um processo de impressão em que a funcionalidade de seleção de impressão foi ativada, é possível acionar uma tela adicional através de uma funcionalidade extra do botão Imprimir, onde, independentemente de qualquer parametrização de filtros de impressão, por exemplo, o usuário seleciona a impressora que o documento será impresso.
A funcionalidade de seleção de impressora tem efeito apenas no processo de impressão efetuada pelo Monitor através do acionamento do botão Imprimir. A rotina de impressão automática e de reimpressão, que são executadas pelo Serviço do eDocs, não são afetadas por esta funcionalidade. Neste caso, nas rotinas de reimpressão e impressão automática, a escolha da impressora em que o documento e impresso, parti de parametrização de filtros de impressão ou utilização de diretórios extras de integração.
São disponibilizadas para seleção no Monitor as impressoras que estiverem disponíveis nos PrintServices que possuem a funcionalidade ativada. O envio desta lista de impressoras ao Monitor é efetuado através do web service de impressão que o eDocs disponibiliza. Neste caso, conforme é possível identificar no processo destacado na imagem acima, o PrintService recebe requisições de impressão do Serviço do eDocs e do Monitor, como também envia para o serviço do eDocs (através do web service) a lista das impressoras disponíveis para seleção. O serviço do eDocs, por sua vez, registra a lista de cada PrintService na base de dados, permitindo que o Monitor consulte esta lista para ser exibida ao usuário.
Observação
Informações técnicas específicas sobre o web service de impressão do eDocs podem ser encontrados no Manual do usuário.
Componentes do processo
- Monitor: efetua a comunicação diretamente com um ou mais PrintServices, para enviar requisições de impressão que são acionadas através do acionamento do botão Imprimir. Quando o envio da impressão ao PrintService for efetuado com sucesso, o status do indicativo de impressão no Monitor (primeira coluna presente nas telas de monitoramento dos documentos eletrônicos) será atualizado para Documento eletrônico enviado para impressão (). Na utilização da funcionalidade de seleção de impressora, o Monitor exibirá a lista das impressoras de todos os PrintServices parametrizados e disponíveis para impressão através desta funcionalidade.
Importante
O Monitor disponibiliza eventos que auxiliam na identificação de falha no processo de impressão e solicitações de impressão automática, e registra eventos de impressão manual que ocorreram com sucesso.
- Serviço eDocs: é responsável por verificar os registros marcados na base de dados do eDocs para serem impressos. A cada ciclo de execução da rotina, envia os registros para o PrintService para que sejam impressos. Neste momento ele marca o status do indicativo de impressão no Monitor (primeira coluna presente nas telas de monitoramento dos documentos eletrônicos) como Documento eletrônico enviado para impressão (). O serviço do eDocs não possibilita utilização da rotina de seleção de impressora, então as impressões serão realizadas conforme parametrizações previamente efetuadas e conforme aplicação de filtros de impressão e diretórios extras de integração.
Importante
Existem outros status que podem ser definidos para a impressão dos documentos auxiliares: Falha, Impressão Não Realizada, Impressão pendente e Impressão em Contingência. Para maiores informações sobre estes status, consulte o tópico específico de cada documento no Manual do usuário.
O Monitor e o serviço do eDocs encaminham uma requisição ao PrintService solicitando que o mesmo envie o documento para a impressora. No momento em que o Monitor ou o serviço do eDocs conseguem conexão com PrintService e enviam com sucesso esta requisição ao mesmo, o indicativo de impressão é atualizado no Monitor. No entanto, isso não garante que o documento tenha sido impresso, pois a impressão ainda depende do sucesso da comunicação do PrintService com a impressora.
- PrintService: é o componente responsável por receber as requisições de impressão enviadas pelo Monitor e pelo serviço do eDocs e encaminhar a impressão para as impressoras. O PrintService possui uma fila própria (fila mantida em memória) e executa o envio das impressões para as impressões em intervalos de execução pré-definidos. Quando a funcionalidade de seleção de impressora está ativada, o PrintService é responsável por encaminhar ao serviço do eDocs a lista de impressoras disponíveis para serem selecionadas. Com base nesta informação recebida, o Monitor poderá exibir esta lista de impressoras para serem selecionadas.
- Impressoras: são as impressoras que estão instaladas no sistema operacional Windows e estão disponíveis para receber a requisição de impressão encaminhada pelos PrintServices. Com a utilização da funcionalidade de seleção de impressora, é possível solicitar a impressão de um documento manualmente, selecionando impressoras distintas em PrintServices distintos.
Abaixo serão indicadas as parametrizações necessárias para ativar a funcionalidade de seleção de impressora. Será exemplificada a ativação da rotina em um PrintService, no entanto, a rotina pode ser ativada em todos os PrintServices utilizados.
Importante
A ativação da funcionalidade depende de parametrizações no Monitor e em cada PrintService utilizado. Não há obrigatoriedade de ativar a funcionalidade em todos os PrintServices utilizados para impressão, no entanto, só estarão disponíveis para escolha no Monitor as impressoras que estão disponibilizadas nos PrintServices onde foram efetuadas as parametrizações.
Nesta funcionalidade de seleção de impressora, cada PrintService terá possibilidade de se comunicar com apenas uma empresa cadastrada no sistema eDocs. Desta forma, caso sejam utilizadas mais de uma empresa e deseja-se parametrizar a funcionalidade para mais de uma, é necessário efetuar a utilização de, pelo menos, um PrintService para cada empresa.
Caso estejam cadastradas mais empresas na base de dados do eDocs e deseja-se ativar a rotina para todas elas, as parametrizações a nível de empresa devem ser repetidas para cada empresa. O mesmo ocorre para filiais, pois existem parâmetros que são a nível de filial.
Qualquer alteração de parametrização só terá efeito após o reinício dos serviços (eDocs e PrintService).
As parametrizações no Monitor são efetuadas em diversos pontos:
- Guia Integração da tela Configuração Geral:
Porta
Indica a porta na qual os web services do eDocs são ativados no servidor onde o serviço é instanciado. A porta definida neste campo será utilizada para o restante da parametrização. A porta padrão é 8989.
Importante
Esta porta não deve ser utilizada por mais nenhum outro serviço ou aplicativo no servidor onde o servido do eDocs está instanciado, nem mesmo o serviço do eDocs de um ambiente de testes/homologação, por exemplo.
- Guia Integração da tela Configuração de Empresa:
Usuário e Senha
Localizados na seção Web Service da tela, nestes campos são definidas as credenciais (usuário e senha) que serão validadas nas requisições a serem efetuadas ao web service do eDocs. É obrigatório que cada empresa tenha um usuário diferente definido (esta validação já é efetuada pelo Monitor). Essa exigência é feita, pois é através do usuário definido na requisição que o serviço do eDocs define qual a empresa irá atender a requisição.
Importante
Estas credenciais não serão utilizadas para nenhuma validação de acesso ao ERP ou eDocs, apenas para verificação no momento que for efetuada uma requisição via web service.
- Guia Filial da tela Configuração de Filial:
Ativar seleção de impressora
Localizado na seção Impressão da tela, este parâmetro deve estar definido como Sim. A partir deste momento, a filial permite a seleção de impressora.
Observação
O web service de impressão do eDocs está disponível a partir do momento em que pelo menos uma filial da base de dados do eDocs estiver com o parâmetro Ativar seleção de impressora definido como Sim.
- Configuração > Filial > aba Filial > aba <Documento_Eletrônico> (onde <Documento_Eletrônico> é cada tipo de documento gerenciado pelo eDocs – NF-e, NFS-e, CT-e, MDF-e, NFC-e, CF-e, GNRE).
Template
Para definir qual será o template utilizado na geração dos documentos auxiliares (tanto na geração do PDF para ser efetuado o download pelo Monitor, quanto na geração do PDF que será enviado ao PrintService ou enviado por e-mail), basta acessar Configurações > Filiais > selecionar a aba Documento Eletrônico desejado (NF-e, NFS-e, CT-e, MDF-e, NFC-e, CF-e ou GNRE) > Impressão > Campo Templates > Configurar.
Dica
Campos a serem parametrizados para impressão de outros tipos de documento (NFS-e, CT-e, MDF-e, NFC-e, CF-e) podem ser consultadas no Manual do usuário de cada uma das telas. No entanto, os conceitos de comunicação com PrintService e definição de templates são padrões para todos os tipos de documento.
As parametrizações são efetuadas no Configurador do eDocs (Configurador da instância que possui o componente PrintService instalado). Estas parametrizações devem ser realizadas para cada PrintService que disponibiliza a funcionalidade de seleção de impressora, ou seja, cada PrintService que envia a lista de impressoras que pode ser selecionada no momento do acionamento do botão Imprimir do Monitor. As parametrizações são efetuadas na guia Print Service do Configurador:
- Campo Porta: nele é definido o número da Porta em que o serviço do PrintService receberá as requisições no computador/servidor onde ele está instalado. A Porta deve estar liberada para comunicação externa por eventual Firewall ou Antivirus, e nenhum outro aplicativo poderá utilizar esta porta. A porta padrão é 1024;
- Campo Ativar seleção de impressora: este parâmetro deve estar marcado para ativar a funcionalidade no PrintService. Quando este parâmetro está marcado, os campos disponibilizados dentro da guia Configuração de URL são habilitados para alteração, bem como a guia Opções da Internet e acionar o botão Atualizar;
- Botão Atualizar: este botão tem a funcionalidade de enviar ao serviço do eDocs a lista de impressoras disponíveis no PrintService para serem selecionadas no Monitor. Após a ativação da rotina, é indicado o acionamento deste botão, para que a listagem das impressoras seja enviada ao serviço do eDocs e esteja disponível no Monitor. Mais informações sobre o registro e exclusão de impressoras pode ser identificado no tópico Registro e exclusão de Impressoras na lista de seleção de impressoras.
- Guia Sincronização de endereços: nesta guia estão disponíveis as parametrizações necessárias para definir a comunicação do PrintService com o web service do eDocs;
- Guia Configuração de URL: nesta guia são definidos todo os parâmetros para comunicação do PrintService com o web service do eDocs;
- Guia Opções da Internet: nesta guia estão disponibilizadas parametrizações referente a utilização de Proxy, caso o ambiente onde o PrintService esteja instalado possua um controle de acesso à internet através de um Proxy. Por padrão, o PrintService não utiliza Proxy.
- Campo URL impressão: este campo deve ser preenchido com o endereço do web service de impressão disponibilizado pelo eDocs no padrão: http://<servidor>:<porta>/Sde/Impressao. O parâmetro <servidor> deve ser preenchido com o nome/IP do servidor onde o eDocs está instalado. O parâmetro <porta> deve ser preenchido com o número da porta definida no campo Porta da tela Configuração Geral. Levando em consideração uma instalação do serviço do eDocs efetuada no computador PCBNU00006, utilizando a parametrização da porta 8989, teremos a URL definida da seguinte forma: http://PCBNU00006:8989/Sde/Impressao.
Importante
Consulte o tópico Verificando acesso ao web service ao longo deste arquivo para garantir que o serviço do eDocs está disponibilizando o web service de impressão no endereço configurado no campo URL impressão.
- Campos Usuário e Senha: estes campos devem ser preenchidos com as credenciais parametrizadas nos campos Usuário e Senha da tela Configuração de Empresa. As credenciais variam de acordo com a empresa cadastrada, estão é importante tomar cuidado para definir as credenciais corretas.
- Campo Descrição do Print Service (auxilia na identificação durante a configuração no Monitor: neste campo é possível dar um nome amigável ao Print Service. Este nome aparece no Monitor, ao lado do nome das impressoras que estão sendo disponibilizadas por cada PrintService.
- Campo Identificador (GUID): Globally Unique Identifier (GUID). É um identificador hexadecimal gerado para garantir que o PrintService seja reconhecido pelo serviço do eDocs e possa haver comunicação entre estes componentes. Esse identificador é único por instalação e não pode ser editado.
Importante
Todas as configurações definidas no PrintService são enviadas para o serviço do eDocs quando é acionada a rotina de registro de impressoras. Desta forma, eventuais alterações em parametrizações, independente de qual for, deve ser acionado o botão Atualizar para enviar o registro dos novos dados para o serviço do eDocs. Mais informações sobre este processo, verifique o tópico Registro e exclusão de Impressoras na lista de seleção de impressoras.
Qualquer alteração no PrintService só será aplicada após terem sido salvas no Configurador e ter havido o reinício do serviço do PrintService.
Para que a funcionalidade de seleção de impressora possa ser utilizada corretamente, é pré-requisito que o PrintService tenha comunicação ao web service do eDocs.
Para garantir que o web service de impressão do eDocs esteja acessível, pode ser feito o seguinte teste:
- Acesse o computador em que o PrintService está instalado;
- Abra o endereço do web service do eDocs em um navegador da web a partir do computador onde o PrintService está instalado;
Para efetuar o teste de acesso, basta abrir qualquer navegador da web e acessar o endereço do web service de impressão do eDocs, adicionando o sufixo ?WSDL ao endereço.
Se o serviço do eDocs está instalado no computador PCBNU00006 e foi parametrizada a porta 8989 para o web service, então o endereço de acesso a ser definido no navegador será: http://pcbnu00006:8989/Sde/Impressao?WSDL.
Importante
Na parametrização da URL de impressão do Configurador não deve ser adicionado o sufixo ?WSDL. Este sufixo serve apenas para verificar o WSDL do web service no navegador, e garantir de que haja comunicação com o web service.
Ao acessar o endereço, deverão ser mostradas informações sobre o web service, conforme exemplificado na imagem abaixo.
Caso não haja acesso ao web service, verifique:
- As parametrizações do Monitor citadas anteriormente;
- Necessidade de ajustes em controles internos de acesso (Firewall, Proxy);
- Se o serviço do eDocs está iniciado.
O eDocs possui a funcionalidade do registro de impressoras para que as mesmas fiquem disponíveis no Monitor. Da mesma forma, o sistema disponibiliza uma rotina onde são excluídos os registros de impressoras que não receberam atualização dentro de um determinado tempo.
O registro das impressoras ocorre através da comunicação do PrintService com o serviço do eDocs, através do web service de impressão. O registro das impressoras ocorre em dois momentos:
- Ao ser acionado o botão Atualizar na guia Print Service no Configurador;
- A cada uma hora que o serviço do PrintService está sendo executado. (Caso o serviço seja reiniciado antes de uma hora, o contador será reiniciado, ou seja, levará mais uma hora após a reinicialização).
Sempre que a rotina for acionada, no log do PrintService em modo DEBUG é possível identificar as impressoras que foram enviadas para o serviço do eDocs pelo PrintService, e a informação de que a URL de impressão foi registrada com sucesso. Abaixo segue imagem que exemplifica o registro no Log da execução do processo.
Dica
Os registros dos PrintServices são armazenados na tabela N100PRT do banco de dados. Já os registros das impressoras de cada PrintService são armazenados na tabela N100IMP.
Quando o PrintService não possui permissão para acesso a determinadas impressoras (Exemplo: impressora de rede), não são enviadas estas impressoras para o serviço do eDocs. Através da verificação do Log do PrintService em DEBUG é possível verificar as impressoras que não estão sendo enviadas. Neste caso, deve-se verificar as permissões do usuário que instancia o serviço do eDocs.
Caso ocorra alguma falha na comunicação do PrintService com o serviço do eDocs para registro das impressoras, o Log também mostrará estas falhas.
A partir do momento que o registro tenha sido efetuado com sucesso, as impressoras disponíveis no PrintService estão disponíveis para seleção no Monitor. Mais detalhes sobre o processo de seleção de impressora, verifique o tópico Utilizando a funcionalidade de seleção de Impressora.
A exclusão dos registros de impressoras é efetuada através de um processo automático do serviço do eDocs. A exclusão (limpeza) ocorre com base na data que a impressora foi registrada ou teve a atualização do seu registro efetuada. Como, por padrão, o PrintService envia uma atualização do registro das impressoras a cada uma hora, a lista de impressoras fica sempre atualizada no Monitor.
O parâmetro que define o período que uma impressora fica registrada na lista de impressoras sem que haja a atualização deste registro é o parâmetro Tempo em dias de permanência de impressoras da tela Configuração Geral. Se este parâmetro estiver definido como 3, por exemplo, no momento da execução da rotina de exclusão/limpeza, todas as impressoras que não tiveram atualização do registro nos últimos três dias são excluídas da lista. Desta forma, estas impressoras não serão mais exibidas no Monitor.
Após a ativação da funcionalidade e correta parametrização, no Monitor do sistema é possível acionar a tela de seleção de impressora e as impressoras serão exibidas para serem selecionadas.
A tela de seleção será ativada em todas as telas que possuírem o botão Imprimir. Este campo possui a opção Selecionar impressora, ao clicar nesta opção, a tela abaixo será exibida ao usuário:
- Dados da Filial: são mostrados os dados da filial que emitiu o documento selecionado na tela anterior;
- Seleção da impressora: neste campo é possível selecionar a impressora para enviar a impressão. Aqui efetivamente são exibidas as impressoras que foram registradas pelos PrintServices, conforme processo descrito no tópico Registro e exclusão de Impressoras na lista de seleção de impressoras. A exibição sempre se dará pelo nome Nome_Impressora + Nome_PrintService. O nome da impressora é o mesmo nome exibido no Configurador do PrintService (que efetivamente é o nome da impressora no Windows). O nome do PrintService será o texto definido no campo Descrição do Print Service (auxilia na identificação durante a configuração no Monitor da guia PrintService no Configurador de cada PrintService;
- Botão Definir como padrão: define a impressora selecionada como a padrão para o usuário logado no Monitor. A próxima vez que tela de seleção de impressora for aberta, o sistema traz a impressora padrão já selecionada. A impressora padrão é definida por usuário e não interfere no processo automático de impressão. É possível remover a impressora padrão de um usuário através da tela Controle de Acesso. Ao alterar um usuário, é possível localizar o campo Impressora padrão e o link Remover para remover a impressora padrão do usuário que está sendo alterado.
- Botão Remover: este botão está disponível apenas para usuários administradores do sistema. Ao selecionar uma impressora e acionar este botão, a impressora é excluída da lista de impressoras registradas no Monitor. A impressora volta a estar disponível para seleção a partir do momento em que o PrintService onde esta impressora está selecionada enviar uma atualização da lista de impressoras disponíveis. Para informações sobre o processo de registro de impressoras, verifique o tópico Registro e exclusão de Impressoras na lista de seleção de impressoras;
- Botão Imprimir: ao ser selecionada a impressora e ser acionado o botão Imprimir, o Monitor envia ao PrintService uma solicitação de impressão do documento para a impressora selecionada na tela.
Verificando a imagem do processo presente no início deste documento, é possível perceber de que o Monitor e o serviço do eDocs se comunicam diretamente com o PrintService para enviar uma solicitação de impressão. Desta forma, a primeira verificação a ser realizada é descobrir se a comunicação entre os componentes está ocorrendo corretamente.
Observação
Para exemplificar as verificações a serem realizadas, será utilizado como base a impressão de DANFE de uma NF-e. No entanto, as verificações valem para outros tipos de documentos cujas impressões são realizadas pelo eDocs.
Em um processo de impressão através da seleção da impressora, não há comunicação do serviço do eDocs com o PrintService, pois o acionamento do botão Imprimir faz com que o Monitor encaminhe a requisição diretamente ao PrintService.
Quando houve a comunicação do com o PrintService e tenha sido enviada a requisição de impressão ao PrintService corretamente, o registro é marcado como Documento eletrônico enviado para impressão () (ou o equivalente para impressão em contingência ). Na imagem abaixo é possível verificar este indicativo em destaque na coluna D.
Importante
Em um processo de impressão manual, caso o indicativo de impressão já esteja como Documento eletrônico enviado para impressão (), uma eventual falha no processo de impressão manual não altera a situação da impressão do documento, permanecendo ele com o status de Documento eletrônico enviado para impressão ().
O botão Imprimir, presente no Monitor, faz com que o Monitor envie uma requisição de impressão diretamente para o PrintService. Para confirmar a comunicação com o PrintService, pode ser solicitada a impressão através do botão Imprimir, lembrando de selecionar uma Impressora através da tela de seleção de impressora, pois é esta a funcionalidade em foco.
Caso ocorra um erro de comunicação do Monitor com o PrintService, é gerada uma mensagem ao usuário indicando que não foi possível enviar o documento para impressão (Exemplo: Não foi possível imprimir a NFe número 302205 (sequência 1749). Verifique o arquivo de log para maiores informações.). Neste caso, o motivo de não ter havido a comunicação será registrado no log.
Se a comunicação com o PrintService não ocorra com sucesso:
- Verifique se o PrintService escolhido na tela de seleção de impressora está iniciado.
Para verificar se o serviço do PrintService está iniciado, pode ser utilizado o Configurador ou o Console de Serviços do Windows (services.msc). No console, o nome do serviço é Senior Documentos Eletrônicos PrintService - <Instância_Instalação> (onde <Instância_Instalação> é o nome dado a instalação no momento que o sistema foi instalado).
No Log do PrintService também é possível identificar se ele foi iniciado com sucesso. Se a inicialização ocorreu com sucesso, será possível encontrar este trecho no log (data e hora irão variar de acordo com a data e hora de inicialização do serviço):
2016-06-15 13:41:17,332 [5] WARN Senior.SapiensNfe.Processos.Sistema.Aplicacao - Aplicação inicializada
2016-06-15 13:41:17,999 [5] WARN Senior.SapiensNfe.Processos.Service.Impressao.ImpressaoControlador - Serviço escutando no endereço: net.tcp://servidor:1024/Impressao.
2016-06-15 13:41:18,089 [5] WARN Senior.SapiensNfe.PrintServer.MainService - Serviço iniciado
Onde:
servidor: é o nome do servidor onde o PrintService está instalado;
1024: é a porta parametrizada no Configurador (porta que o PrintService utilizará para receber requisições).
Importante
Para garantir de que seja verificado o Log atual do PrintService, convém parar o serviço do PrintService, para então efetuar a limpeza dos Logs do PrintService (logs antigos), e somente então iniciar o PrintService novamente, para somente então verificar no Log se ele foi iniciado com sucesso.
- Verifique se o PrintService está respondendo.
Um teste simples que pode ser efetuado para garantir que o PrintService esteja respondendo as requisições, é executar uma conexão telnet ao PrintService.
Se tivermos como exemplo um PrintService sendo executado na porta 1024 de um servidor que tenha o nome de PCBNU00006, nosso comando telnet será: telnet PCBNU00006 1024. O comando pode ser executado a partir do Prompt de Comando do Windows (cmd.exe).
Abaixo segue imagem de exemplo do resultado do teste quando há um problema de comunicação com o PrintService:
Abaixo segue imagem de exemplo do resultado do teste quando a conexão com o PrintService foi realizada com sucesso:
É possível notar que, quando a comunicação é estabelecida com sucesso, o retorno do teste em telnet será a tela sem nenhuma mensagem, apenas com um cursor piscando no canto superior esquerdo.
Importante
Para efetuar uma conexão telnet, é necessário que o componente Telnet esteja instalado no Windows. Caso o componente não esteja instalado, verifique junto ao responsável pela TI a instalação do componente.
O teste via telnet também pode ser utilizado para garantir a comunicação com o PrintService que esteja sendo executado em um computador/servidor diferente do computador/servidor onde o Monitor ou o Serviço do eDocs estão instalados. Neste caso, a partir do comutador/servidor onde o serviço do eDocs esteja instalado (Exemplo: SERVIDORSENIOR) é executada uma conexão telnet apontando para o computador/servidor onde o PrintService está instalado (Exemplo: SERVIDORIMPRESSAO). A porta do PrintService é a 1024. O comando telnet será executado a partir do servidor SERVIDORSENIOR com a seguinte sintaxe telnet SERVIDORIMPRESSAO 1024.
- Verifique se a parametrização do PrintService está correta para utilização da rotina de seleção de impressora.
Em casos em que o serviço PrintService estiver respondendo corretamente (inclusive no teste via telnet), mas ao ser solicitada a impressão pelo Monitor seja gerada mensagem de erro de comunicação, verifique:
- se há necessidade de atualizar o registro do PrintService através do botão Atualizar do Configurador (mais informações, verifique o tópico Registro e exclusão de Impressoras na lista de seleção de impressoras) (qualquer alteração em parametrização ou ambiente – exemplo: IP do computador onde o PrintService está instalado – exige a atualização do registro do PrintService);
- avaliar se a atualização do registro das impressoras é efetuada com sucesso (mais informações, verificar o tópico Registro e exclusão de Impressoras na lista de seleção de impressoras)
- se há algum bloqueio de comunicação entre o computador onde o Monitor está instalado e o computador onde o PrintService selecionado para a impressão está selecionado.
Conforme informado no tópico Avaliar se a comunicação com o PrintService ocorreu com sucesso, quando houve a comunicação do Monitor com o PrintService e tenha sido enviada a requisição de impressão ao PrintService corretamente, o registro é marcado como Documento eletrônico enviado para impressão ().
A partir deste momento a responsabilidade de enviar a impressão para a impressora é do serviço do PrintService.
Eventuais erros de envio da impressão a partir do PrintService para a Impressora serão registrados no Log. Quando o nível de log definido no PrintService for WARN, só serão registradas mensagens da inicialização do serviço do PrintService ou mensagens de erro da execução da rotina de impressão.
Muitos erros ocorrem porque, no momento em que o PrintService se comunica com a impressora, ela não esta disponível. Neste caso, no Log é possível encontrar uma mensagem de erro indicando este problema.
Para um maior detalhamento dos processos executados pelo PrintService, é necessário alterar o nível de log do mesmo para DEBUG (alteração efetuada através do Configurador). A partir desta alteração, é possível identificar detalhes nos processos executados pelo componente PrintService.
Tendo em vista o processo de impressão como um todo, para comprovar de que o PrintService está enviando corretamente a requisição de impressão para a impressora, poderão ser adotados os procedimentos:
- Defina o nível do log do PrintService como Debug.
Antes de definir o log como DEBUG, convém efetuar a limpeza dos logs, para garantir que os logs a serem avaliados são atuais. Para isso, o serviço do PrintService deve estar parado. Lembrando que a alteração do log é efetuada pelo Configurador e só terá efeito após a reinicialização do serviço do PrintService.
- Coloque a impressora que irá receber a impressão em Pausa;
Este processo é executado através do console de administração de impressoras do Windows do computador/servidor onde o PrintService está instalado. Para isso, acesse o menu Impressora do console e selecione a opção Pausar Impressora.
Importante
O processo para Pausar Impressão poderá variar de acordo com a versão do Windows utilizada. Da mesma forma, permissões de ambiente poderão bloquear o processo de pausa de uma impressora. Para estas situações, o administrador de TI deverá ser acionado para apoiar a execução do processo.
- Solicite a impressão de um documento pelo Monitor do sistema, utilizando a funcionalidade de seleção de impressora.
Neste caso, tem-se como pré-requisito que a comunicação do Monitor com o PrintService está ocorrendo corretamente. Caso contrário, é necessário avaliar as informações presentes no tópico Avaliar se a comunicação com o PrintService ocorreu com sucesso deste documento.
A solicitação de impressão ocorre através do acionamento do botão Imprimir das telas do Monitor. Para exemplificar o processo, utilizaremos a solicitação de impressão de um DANFE de NF-e através da guia Notas Fiscais da tela de emissão de NF-e.
Ao solicitar a impressão, o Monitor retorna a mensagem Documento eletrônico enviado para impressão.
Para exemplificar o processo, teremos como exemplo a solicitação de impressão do DANFE da NF-e número 302167 (chave: 42151280680093000181553290003021671227036836).
- Verifique os registros no Log
No Log é possível encontrar as seguintes informações, conforme imagem abaixo
No trecho destacado em vermelho, é possível identificar a inicialização do processo de impressão pelo PrintService, no entanto, neste momento (às 16:55:46), o PrintService ainda não possuía nenhum arquivo pendente em sua fila para encaminhar a impressão para impressora.
No trecho destacado em verde, é possível identificar uma nova a inicialização do processo de impressão pelo PrintService (o processo é executado a cada 30 segundos, por padrão), no entanto, neste momento o PrintService já possui a solicitação de impressão do DANFE da NF-e 302167 em sua fila. Com isso, é possível identificar que a impressão foi enviada para a impressora Brother DPC-116C.
Importante
Em ambientes onde há restrições de acesso aos recursos de rede e de infraestrutura, no Log em modo DEBUG pode ser possível identificar que o envio da impressão a impressora foi encaminhado, no entanto, a impressão não chega até a impressora. Nestas situações, é necessário verificar as credenciais definidas para instanciar o serviço do PrintService.
- Consulte o console da Impressora para verificar as impressões pendentes.
Ao verificar o console da Impressora (O que está sendo impresso), é possível identificar que a solicitação de impressão chegou à impressora (pelo menos no Spooler de impressão do Windows). Conforme imagem abaixo:
Quando temos o registro da solicitação de impressão no console da impressora, temos a garantia de que todo o processo executado pelo eDocs está correto, sendo de inteira responsabilidade do sistema operacional Windows e da infraestrutura do cliente garantir que o documento seja efetivamente impresso na impressora. Caso não seja identificada a solicitação de impressão no console da impressora, é necessário avaliar em qual ponto da comunicação Monitor/Serviço de eDocs > PrintService > Impressora está ocorrendo o problema, com base nos procedimentos indicados anteriormente neste documento.