# Configuração Coringa - SQL

## Visão Geral

Este módulo descreve o procedimento de contingência para conexão do Suricato Matriz de Acesso ao banco de dados SQL Server utilizando o driver JTDS.&#x20;

Esta parametrização é restrita a cenários específicos de incompatibilidade de sistema operacional ou de clientes oficiais de banco de dados.

## Regra de Negócio

* **Restrição de Uso:** O driver JTDS deve ser aplicado exclusivamente em caso de falha ou incompatibilidade comprovada do driver oficial do fabricante.
* **Variável de Sistema:** A variável de ambiente `SURICATO_TOTVS_HOME` deve estar previamente configurada no sistema operacional.
* **Disponibilidade:** O serviço SURICATO TOTVS MA e o servidor SQL Server devem estar operacionais.
* **Privilégios Administrativos:** É obrigatória a permissão de administrador local para editar os arquivos de configuração e executar rotinas de instalação de serviços.
* **Ciclo de Atualização:** Qualquer alteração nos arquivos `suricato-ma.properties` ou `persistence.xml` exige a reinstalação ou reinício do serviço por meio do arquivo de lote `.bat` para validação dos novos parâmetros.

Caso não exista incompatibilidade, recomenda-se utilizar o **driver e URL oficiais de conexão**.

## Configuração coringa de conexão com banco de dados – SQL

### Conexão JTDS para SQLServer

{% stepper %}
{% step %}
Localize o diretório da aplicação utilizando como referência o caminho configurado na variável de ambiente:

```
SURICATO_TOTVS_HOME
```

{% endstep %}

{% step %}
Diretório da aplicação:

```
SURICATO_TOTVS_HOME\SURICATOTotvsMA
```

<figure><img src="/files/bkMBw5dcVQVUl3zD2l3t" alt=""><figcaption><p><em>Diretório – Matriz de Acesso</em></p></figcaption></figure>
{% endstep %}
{% endstepper %}

### Configuração do arquivo suricato-ma.properties

{% stepper %}
{% step %}
Localize o arquivo `suricato-ma.properties` no diretório da aplicação.
{% endstep %}

{% step %}
Abra o arquivo utilizando um editor de texto.

<figure><img src="/files/CnuMR42VTTyyj9TP3JW3" alt=""><figcaption><p><em>suricato-ma-properties</em></p></figcaption></figure>

{% endstep %}

{% step %}

1. Verifique os valores dos parâmetros:
   1. `timeout`
   2. `ram.clear`
      {% endstep %}

{% step %}
Confirme se os valores estão conforme o padrão de instalação.
{% endstep %}

{% step %}
Caso seja necessário, altere os valores informando o tempo em **minutos**.
{% endstep %}

{% step %}
Salve o arquivo após a alteração.

<figure><img src="/files/zVqG1nJyrPxBiiV2YKFI" alt=""><figcaption><p><em>Note – suricato-ma-properties</em></p></figcaption></figure>
{% endstep %}
{% endstepper %}

### Configuração do arquivo suricato-ma.jar

Para configurar o arquivo `suricato-ma.jar`, siga os passos abaixo:

{% stepper %}
{% step %}
Localize o arquivo utilizando como referência o caminho:  `SURICATO_TOTVS_HOME`
{% endstep %}

{% step %}
Clique com o botão direito sobre o arquivo `SURICATO-ma.jar`.
{% endstep %}

{% step %}
Utilize o **WinRAR** para abrir o arquivo.
{% endstep %}

{% step %}
Navegue até o diretório:  `\META-INF`
{% endstep %}

{% step %}
Localize o arquivo `persistence.xml`.

<figure><img src="/files/wbHtWb8YU1T0PTrNqEcX" alt=""><figcaption><p><em>Exemplo – Configurar Suricato-ma.jar</em></p></figcaption></figure>
{% endstep %}

{% step %}
Edite o arquivo `persistence.xml`.
{% endstep %}

{% step %}
No bloco de código que contém a tag `<properties>`, configure a conexão com o banco de dados do sistema Suricato.
{% endstep %}
{% endstepper %}

Esta configuração é recomendada somente para SQL Server e apenas quando existir incompatibilidade entre sistemas operacionais ou clientes de banco de dados. Caso contrário, utilize o driver e a URL oficial de conexão.

<figure><img src="/files/FkT8TcCpt5DqEs5PCLiA" alt=""><figcaption><p><em>Exemplo – Configurar Suricato-ma.jar</em></p></figcaption></figure>

### Configurando persistence.xml – SQL (JTDS)

Configure os seguintes parâmetros:

{% stepper %}
{% step %}
**Driver:**\
`<property name="javax.persistence.jdbc.driver" value="net.sourceforge.jtds.jdbc.Driver" />`
{% endstep %}

{% step %}
**URL:** \
`<property name="javax.persistence.jdbc.url" value="jdbc:jtds:sqlserver://172.16.14.249:1433/suricato;useLOBs=true;" />`
{% endstep %}

{% step %}
**Usuário:**\
`<property name="javax.persistence.jdbc.user" value="suricato" />`
{% endstep %}

{% step %}
**Senha:**\
`<property name="javax.persistence.jdbc.password" value="suricato" />`

<figure><img src="/files/97DiVVjoKrVYuiOEOYH5" alt=""><figcaption><p><em>Configurando – persistence Matriz de Acesso</em></p></figcaption></figure>
{% endstep %}
{% endstepper %}

### Instalação do Serviço

Após concluir a configuração do arquivo `persistence.xml`:

{% stepper %}
{% step %}
Localize o arquivo `.bat` de instalação no diretório da aplicação.
{% endstep %}

{% step %}
Execute o arquivo `.bat` para instalar o serviço de Matriz de Acesso.

<figure><img src="/files/HZ73OsGFNPyV5KaU9kdy" alt=""><figcaption><p><em>Instalando – Matriz de Acesso</em></p></figcaption></figure>
{% endstep %}
{% endstepper %}

## Glossário

* **JTDS:** Driver alternativo para conexão com SQL Server, utilizado em cenários de incompatibilidade
* **Driver JDBC:** Componente responsável pela comunicação entre aplicações Java e o banco de dados.

## FAQ – Perguntas Frequentes

<details>

<summary>Quando devo utilizar a conexão JTDS?</summary>

Somente quando houver incompatibilidade entre o sistema operacional ou cliente de banco e o driver oficial.

</details>

<details>

<summary>Posso usar JTDS em qualquer ambiente SQL Server?</summary>

Tecnicamente sim, mas não é recomendado quando o driver oficial funciona corretamente.

</details>

<details>

<summary>O serviço não conecta após a configuração. O que verificar?</summary>

Verifique URL, usuário, senha e se o banco SQL Server está acessível.

</details>

<details>

<summary>Preciso reinstalar o serviço após alterar o persistence.xml?</summary>

Sim. Após qualquer alteração, o serviço deve ser reinstalado ou reiniciado.

</details>

<details>

<summary>Essa configuração substitui a configuração padrão?</summary>

Sim. Ao utilizar JTDS, ela passa a ser a configuração ativa para conexão com o banco.

</details>


---

# Agent Instructions: 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:

```
GET https://software-telematica-com.gitbook.io/suricato-docs/central-tecnica/instalacao-e-configuracao-de-servicos-do-suricato/instalacao-e-configuracao-do-suricato-matriz-de-acesso/configuracao-coringa-sql.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
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.
