top of page

TOTVS DBAccess

Hoje vamos conversar sobre o TOTVS DBaccess e entender um pouco mais sobre o que ele é e como funciona para juntos tentarmos concluir se o DBAccess é ou não um ORM?




Imagem ilustrativa de um HD (Hard Disk)
Imagem ilustrativa


O que é?

O DBAccess faz parte do conjunto de soluções desenvolvidas para uso com o ecosistema TOTVS Protheus, sendo o responsável pela conectividade com variados Sistemas Gerenciadores de Bancos de Dados (SGBDs). Dentre os principais SGBDs compatíveis, podemos listar:

  • PostgreSQL

  • MSSQL Server

  • Oracle


Inicialmente com o nome TopConnect, foi projetado para para possibilitar ao TOTVS Protheus a conexão com bancos de dados do tipo SQL - Structured Query Language, retirando assim a limitação e dependência com o mais lento e antigo sistema de arquivos DBase.


Além de prover a interface de conexão com o SGBD, o DBAccess possibilita o gerenciamento de informações relevantes por meio uma ferramenta chamada DBMonitor, como:

  • Relação de usuários conectados;

  • Monitoramento de registros reservados para edição (lock);

  • Monitoramento de consultas realizadas em tempo real de execução.


Imagem do TOTVS DBMonitor
TOTVS DbMonitor

O TOTVS DBAccess é um ORM?

Eh... essa é que questão meio controversa e que irá variar com a interpretação de cada profissional, já um ORM possui como principal objetivo a aproximação da manipulação de dados (comumente chamada de camada DAO - Data Access Object por diversos padrões de projeto existentes) com os paradigmas da Programação Orientada a Objetos (POO). E este é o "ponto fraco" do DBAccess, ou seja, ele é totalmente procedural.


Contudo, o DBAccess cumpre muito bem com outros objetivos propostos por um ORM, por exemplo, a abstração da sintaxe específica entre cada SGBD, dando ao time técnico a liberdade de mudar o banco de dados de um projeto sem muito esforço.


Outros pontos fortes do TOTVS DBAccess é (i) a capacidade de se conectar simultaneamente à diversos bancos de dados, tornando a integração entre diferentes sistemas algo simples e trivial, e (ii) a performance bem satisfatória (que já foi um ponto problemático no passado).


Existem também frameworks mais simplificados disponíveis no mercado, normalmente possuem foco em performance e são denominados de micro-ORM, que é o caso do Dapper (dotNet).


Por estes motivos que considero o DBAccess como um ORM ou no mínimo, um micro-ORM.


Exemplo de uso


No código acima, localizamos o produto de código "000123" na tabela "SB1" correspondente ao Cadastro de Produtos, no TOTVS Protheus e exibimos no console do sistema o texto: "PRODUTO 000123 - PRODUTO TESTE LOCALIZADO COM SUCESSO!".


Conclusão

Bem pessoal, o DBAccess é sem dúvidas, uma ótima solução de conectividade desenhada para o TOTVS Protheus e que ampliou em muito as capacidades do sistema.


Futuramente estaremos falando sobre como podemos "destravar" os conceitos de POO no TOTVS DBAccess e assim trazer novos recursos interessantes do ponto de vista de produtividade, manutenibilidade e reusabilidade de código.


Dúvidas

Deixe sua dúvida ou sugestão na área de comentários, teremos prazer em ajudar.


Referências


46 visualizações0 comentário

Posts recentes

Ver tudo

Comments


bottom of page