VenturaLab
Fábrica de software TOTVS Protheus

Seu Protheus, sob medida.

A Ventura Lab desenvolve customizações em AdvPL e TLPP para empresas que precisam que o ERP siga o processo delas, e não o contrário. Do levantamento à entrega, com código limpo e documentado.

AdvPL + TLPPdo legado ao moderno
100% remotoatendimento em todo o Brasil
Escopo fechadoprazo e valor antes de começar
EXP-001 · PedStatus.tlppTLPP · REST
#include "tlpp-core.th"#include "tlpp-rest.th" namespace ventura.lab // Regra de negócio do cliente, exposta via API@Get("/api/v1/pedido/status")User Function PedStatus()    Local oResp := JsonObject():New()     oResp["status"] := "entregue"    oResp["prazo"]  := "no combinado"     oRest:setResponse( oResp:toJson() )Return .T.
✓ compilado sem warningsUTF-8 · TLPP
01 / DIAGNÓSTICO

Problemas que a gente resolve

Se algum destes cenários parece familiar, o Protheus de vocês tem espaço para trabalhar melhor.

ANTES

Controle paralelo em planilha porque o Protheus "não tem essa tela".

DEPOIS

Cadastro MVC dentro do ERP, integrado ao resto do processo.

ANTES

Relatório exportado, filtrado e montado na mão todo fim de mês.

DEPOIS

TReport com os filtros e o layout que a gestão realmente usa.

ANTES

Dado digitado duas vezes: uma no Protheus, outra no outro sistema.

DEPOIS

Integração via API REST, com log de cada envio.

ANTES

Fonte antigo que ninguém quer mexer porque "pode quebrar tudo".

DEPOIS

Code review, refatoração e documentação para evoluir sem medo.

ANTES

Cada pedido da gestão vira um relatório novo, e ninguém consegue cruzar os dados sozinho.

DEPOIS

Visões no SmartView: o próprio usuário filtra, agrupa e exporta.

ANTES

Centenas de registros digitados um a um a partir de uma planilha.

DEPOIS

Importação via ExecAuto, com as validações da rotina padrão e log de erros.

ANTES

Equipe de campo liga para alguém consultar o Protheus por ela.

DEPOIS

Tela web em PO UI, acessada pelo navegador ou pelo celular.

ANTES

Aprovação parada esperando alguém lembrar de abrir o sistema.

DEPOIS

Workflow por e-mail: o aprovador recebe, decide e o Protheus atualiza.

ANTES

Rotina de fechamento que leva horas e trava os usuários.

DEPOIS

Código e queries otimizados, com o ambiente analisado de ponta a ponta.

ANTES

Atualização de release adiada há anos por medo de quebrar as customizações.

DEPOIS

Virada planejada: fontes compatibilizados, testes em homologação e subida acompanhada.

02 / SERVIÇOS

O que sai do laboratório

Cada serviço é um protocolo: escopo claro, entrega testada e documentação que outro desenvolvedor consegue ler depois.

PRT-01

Rotinas e telas

Novas rotinas e telas que encaixam no fluxo do usuário.

  • Cadastros MVC
  • Browses e wizards
  • Pontos de entrada
PRT-02

Relatórios e BI

Informação certa, no formato que a operação usa.

  • Relatórios e visões no SmartView
  • TReport e impressões
  • Exportação para Excel
PRT-03

Integrações e automação

Protheus conversando com outros sistemas e trabalhando sozinho.

  • APIs REST em TLPP
  • Importações via ExecAuto
  • Workflow e e-mails automáticos
  • Jobs no Schedule
PRT-04

Telas web e SmartX

O Protheus fora do SmartClient, no navegador e no celular.

  • Telas no novo SmartX
  • Apps em PO UI (Angular)
  • Portais para equipe externa
  • Consumo das APIs do Protheus
PRT-05

Manutenção e performance

Fontes existentes revisados, corrigidos e mais rápidos.

  • Code review
  • Correção de bugs
  • Performance de códigos e queries
  • Migração para TLPP
PRT-06

Ambiente e versões

Release nova sem perder as customizações, e um ambiente que aguenta o dia a dia.

  • Virada de versão do Protheus
  • Compatibilização de fontes
  • Adaptação de customizações ao SmartX
  • Instalação de ambientes
  • Análise e diagnóstico de ambiente
03 / BANCADA

Amostras do laboratório

Trechos do tipo de código que a gente escreve todo dia. Escolha um experimento para ver.

EXP-101 · VLCAD01.prwAdvPL · MVC
Static Function ModelDef()    Local oStru  := FWFormStruct( 1, "ZA1" )    Local oModel := MPFormModel():New( "VLCAD01M", , {|o| VldTudo(o)} )     oModel:AddFields( "ZA1MASTER", , oStru )    oModel:SetPrimaryKey( { "ZA1_FILIAL", "ZA1_COD" } )    oModel:SetDescription( "Contratos de Serviço" )Return oModel // Validação final antes de gravarStatic Function VldTudo( oModel )    Local dFim := oModel:GetValue( "ZA1MASTER", "ZA1_DTFIM" )Return dFim >= dDataBase
✓ modelo validadoModelDef · ViewDef · MenuDef
04 / MÉTODO

Por que contratar um laboratório

Customização boa não é só funcionar hoje. É continuar funcionando na próxima atualização do Protheus.

01

Fonte padrão intocado

Tudo via pontos de entrada, MVC e fontes próprios. As atualizações da TOTVS seguem seguras.

02

Código que outro dev lê

Nomes claros, padrão de projeto e comentários onde importa. Sem dependência de uma pessoa só.

03

Documentação entregue

Cada entrega vem com descrição do que foi feito, parâmetros criados e como testar.

04

Teste antes de produção

Validação em ambiente de homologação com o usuário-chave antes de subir.

05

AdvPL e TLPP

Mantemos o legado em AdvPL e escrevemos o novo em TLPP, com namespaces e REST nativo.

06

Quem faz, ensina

O mesmo conhecimento vira aula aberta na Ventura Academy. Transparência sobre como trabalhamos.

05 / PROCESSO

Do pedido à produção

Quatro etapas, cada uma com uma entrega concreta. Sem surpresa no meio do caminho.

ETAPA 1→

Diagnóstico

Entendemos o processo, o problema e o ambiente Protheus de vocês.

entrega: análise do cenário
ETAPA 2→

Especificação

Escopo, prazo e valor fechados por escrito antes de qualquer linha de código.

entrega: proposta e escopo
ETAPA 3→

Desenvolvimento

Código seguindo as boas práticas TOTVS, validado em homologação.

entrega: fontes + testes
ETAPA 4✓

Entrega

Implantação acompanhada e documentação de tudo que foi feito.

entrega: em produção
06 / ACADEMY

Quem constrói, ensina.

O que a gente aprende desenvolvendo para clientes vira aula gratuita na Ventura Academy, o canal de ensino de AdvPL e TLPP.

Se você é dev e quer aprender Protheus na prática, comece por lá.

youtube.com/@ventura_academy

Ventura Academy

Trilhas de AdvPL e TLPP do zero ao avançado, com exemplos reais.

Fundamentos AdvPLMVCFWMBrowseTReportTLPPREST
Assistir no YouTube ↗
07 / DÚVIDAS

Perguntas frequentes

Vocês atendem empresas de qualquer cidade?

Sim. O trabalho é 100% remoto, com acesso ao ambiente de homologação de vocês ou a um ambiente fornecido pela equipe de TI.

Vocês alteram fontes padrão da TOTVS?

Não. Toda customização é feita por pontos de entrada, rotinas próprias e MVC, para que as atualizações do Protheus não quebrem nada.

Como é feito o orçamento?

Depois do diagnóstico, enviamos uma proposta com escopo, prazo e valor fechados. Para demandas contínuas, também dá para combinar um pacote de horas mensal.

Vocês trabalham com SmartView?

Sim. Criamos objetos de negócio em TLPP que alimentam relatórios, visões e tabelas dinâmicas no SmartView, e também levamos relatórios TReport existentes para lá.

Vocês fazem virada de versão do Protheus?

Sim. Levantamos as customizações, ajustamos o que for incompatível com a nova release, testamos em homologação e acompanhamos a subida em produção. Também instalamos e configuramos ambientes.

Minhas customizações vão funcionar no SmartX?

Depende de como foram feitas. Levantamos as rotinas e telas customizadas, avaliamos o que é compatível com a nova arquitetura do SmartX e planejamos a adaptação ou a conversão do que precisar, sem parar a operação.

O Protheus está lento. Vocês conseguem ajudar?

Conseguimos. Analisamos o ambiente e os fontes envolvidos, identificamos o gargalo (código, query, índice ou configuração) e otimizamos o que estiver travando a operação.

Dá para dar manutenção em fontes feitos por outra pessoa?

Dá. Começamos com um code review para entender o que existe, apontar riscos e propor o que corrigir primeiro.

E se eu precisar de algo além do combinado?

Tudo o que está no escopo é entregue. Ajustes e novas demandas fora do escopo são orçados à parte, como um novo projeto ou dentro de um pacote de horas mensal.

08 / CONTATO

Tem um projeto Protheus parado?

Monte o briefing ao lado e mande pelo WhatsApp, ou fale direto por um dos canais.

Briefing rápido

leva 1 minuto
O que vocês precisam?

          
Abrir no WhatsApp ↗

Seu nome é obrigatório para gerar a mensagem.