> For the complete documentation index, see [llms.txt](https://docs.vrsoft.com.br/vrmaster/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.vrsoft.com.br/vrmaster/manual-do-sistema/manual-do-sistema-vr-ficha-api/instalacao-vrficha-api/manual-do-sistema-vr-ficha-mobile-impressao/instalacao-vrficha-mobile-impressao.md).

# Instalação e Configuração

## **REQUISITOS**

Para que o **VRFicha Mobile Impressão** funcione corretamente, é necessário que:

* Haja o ambiente do VRFicha Mobile instalado e configurado corretamente.
* Haja um sistema de mensageria (RabbitMQ) instalado e configurado corretamente.
* A API do VR Ficha Mobile esteja conectado ao banco de dados e a fila do RabbitMQ corretamente.
* A API do VR Ficha Mobile e o serviço **VRFicha Mobile Impressão** estejam conectados ao mesmo RabbitMQ.

O servidor onde o serviço irá rodar deve possuir os seguintes requisitos mínimos:

* Sistema Operacional: Windows ou VR Ubuntu 22.04 LTS
* Processador: 2 vCPU
* Memória RAM: 4 GB
* Disco: 40 GB

## **TIPOS DE IMPRESSÃO**

O serviço **VRFicha Mobile Impressão** tem suporte a 3 tipos de impressão:

* Impressão via caminho UNC Windows Utiliza um caminho de rede no formato \servidor\impressora, delegando ao sistema operacional Windows o envio do trabalho para o spooler da impressora compartilhada. Esse modelo é exclusivo do Windows e depende do compartilhamento da impressora estar corretamente configurado e acessível na rede.
* Impressão via nome de impressora instalada Windows Realiza a impressão utilizando o nome lógico de uma impressora previamente instalada no sistema operacional Windows. A aplicação envia o trabalho diretamente para o spooler local, permitindo maior controle, melhor tratamento de erros e compatibilidade com drivers específicos.
* Impressão via CUPS (Linux e MacOS) Efetua a impressão através do serviço CUPS (Common UNIX Printing System), utilizando o nome da fila da impressora configurada no sistema. A aplicação interage com o spooler local do sistema operacional, garantindo compatibilidade multiplataforma e suporte a diversos protocolos de impressão.

Lógica de Impressão A aplicação irá capturar o caminho da impressora configurado no VRFicha e irá selecionar automaticamente o modo de impressão. Caso esteja configurado o nome da impressora, a aplicação utilizará o spooler local (Windows) ou CUPS (Linux). Caso esteja configurado um caminho UNC *(\servidor\impressora)* a aplicação fará a impressão via caminho de rede. **ATENÇÃO:** impressão via caminho de rede *(\servidor\impressora)* só funciona com o serviço de impressão rodando em Windows.

## **INSTALAÇÃO**

* Faça o download do arquivo JAVA 11 [clicando aqui](https://drive.google.com/drive/folders/1-xc9e-CtA6sl8vkq9MB4VX7qLHXwlOYl). Obs: Verifique antes se o servidor é 32 ou 64 Bits.
* Faça o download do arquivo WAR do serviço de impressão [clicando aqui](https://drive.google.com/file/d/1IveDipmX6nCQTxPtefcDwGVtdfSlr-ea/view?usp=sharing).
* Certifique-se de que o arquivo **vr.properties** está no diretório correto e com as informações corretas de conexão com o RabbitMQ (Diretório: **C:\vr** ou **/vr**) **vr.properties**

```

[FILA-IMPRESSAO-FICHA]
fichaimpressao.fila.ip=[IP_DO_RABBITMQ]
fichaimpressao.fila.porta=5672
fichaimpressao.fila.usuario=vr
fichaimpressao.fila.senha=vr!RbtMQ
fichaimpressao.diagnostico.habilitado=false

```

* **fichaimpressao.fila.ip:** IP da máquina onde o RabbitMQ está rodando
* **fichaimpressao.fila.porta:** Porta do serviço RabbitMQ
* **fichaimpressao.fila.usuario:** Usuário do RabbitMQ
* **fichaimpressao.fila.senha:** Senha do RabbitMQ
* **fichaimpressao.diagnostico.habilitado:** Caso tenha os valores true/yes/1, irá exibir um diagnóstico do ambiente em cada impressão, caso contrário, não exibirá. Útil para verificar erros ao configurar o serviço e a impressão não funcionar.

## **INICIALIZAÇÃO**

* Coloque o arquivo VRFichaMobileImpressao.war em um local apropriado no servidor (recomendado: **C:\VR\EXEC** ou **/vr/exec**)

**Windows**

* Crie um atalho do VRFichaMobileImpressao.war na área de trabalho do servidor.
* No atalho da área de trabalho, clique com o botão direito e selecione “Propriedades”.
* No campo “Destino”, informe o comando -jar apontando para o Java 11: "C:\vr\jdk-11.0.7\bin\java.exe" -jar C:\vr\exec\VRFichaMobileImpressao.war
* Clique em OK.
* O serviço será executado localmente utilizando o JDK Java versão 11.

**Linux (VRUbuntu)**

* Crie o script que será chamado pelo atalho: nano /vr/exec/VRFichaMobileImpressao.sh
* Conteúdo do arquivo:

```

#!/bin/bash
/vr/jdk-11.0.7/bin/java -jar /vr/exec/VRFichaMobileImpressao.war

```

* Salve o arquivo e torne-o executável: chmod +x /vr/exec/VRFichaMobileImpressao.sh
* Crie o atalho gráfico na área de trabalho do usuário: nano \~/Desktop/VRFichaMobileImpressao.desktop
* Insira o conteúdo abaixo:

```

[Desktop Entry]
Type=Application
Name=VRFicha Mobile Impressão
Comment=Serviço de impressão VRFicha Mobile
Exec=/vr/exec/VRFichaMobileImpressao.sh
Icon=utilities-terminal
Terminal=true
Categories=Utility;

```

* Torne o arquivo .desktop executável: chmod +x \~/Desktop/VRFichaMobileImpressao.desktop
* Permitir execução no Ubuntu: Na primeira execução, clique com o botão direito no atalho e selecione “Permitir execução” (ou “Allow Launching”)
* Dê duplo clique no atalho VRFicha Mobile Impressão
* O serviço será iniciado em um terminal, utilizando o Java 11 Observações importantes
* O caminho do Java (/vr/jdk-11.0.7/bin/java) deve existir e apontar para o Java 11
* Caso utilize o Java instalado via sistema (/usr/bin/java), o script pode ser ajustado
* O serviço será encerrado ao fechar o terminal


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.vrsoft.com.br/vrmaster/manual-do-sistema/manual-do-sistema-vr-ficha-api/instalacao-vrficha-api/manual-do-sistema-vr-ficha-mobile-impressao/instalacao-vrficha-mobile-impressao.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
