Diagnóstico e correção de uma instalação de vtiger CRM que sobe com o menu quebrado — com scripts idempotentes e ambiente de demonstração.
O problema
A instalação padrão do vtiger CRM 8.4 sobe com o menu lateral mutilado. O sintoma engana: os módulos continuam ativos e funcionando por URL direta, mas somem da navegação — Contatos, Organizações, Leads, Oportunidades, Campanhas, Produtos, Faturas, Cotações, Tickets e Relatórios. E não há recuperação pela interface, porque o Menu Editor só atualiza vínculos existentes, nunca cria os que faltam. Quem não conhece a origem conclui que o sistema perdeu os módulos.
A arquitetura
O menu do vtiger é montado exclusivamente pela tabela vtiger_app2tab, e nela estava a falha: 11 vínculos em vez de 38, sem os apps MARKETING, SALES e PROJECT. A correção é em banco, não em código, o que exigiu um conjunto de scripts com disciplina de produção: backup obrigatório antes de qualquer escrita, dry-run para ver o efeito antes de aplicar, e descoberta automática do caminho da instalação para que o mesmo script sirva em qualquer host. O verificador cobre menu, módulos órfãos, integridade da tabela, usuários, cron e permissões, e sai com código 0 ou 1 conforme sobre pendência — o que permite pendurá-lo em monitoramento. O ambiente de demonstração cria três usuários com papéis distintos e ramais reais no campo phone_crm_extension, que é de onde o PBXManager tira a origem ao disparar uma chamada, e monta 49 registros interligados para que relatórios e dashboards tenham o que mostrar.
O resultado
CRM em produção com os 38 vínculos de menu, dashboard corrigido (o schema tinha três colunas que o código usava e a tabela não tinha) e um patch único de pós-instalação que reconstrói tudo em banco novo ou restaurado. Seis documentos cobrem diagnóstico, instalação, cron na hospedagem compartilhada, operação diária, ambiente de demonstração e o patch consolidado. Os scripts de demonstração são idempotentes e auto-corretivos: rodar de novo não duplica, e quem já existe tem papel e ramal conferidos e ajustados.


🔒 Código-fonte
git clone https://git.programandosolucoes.com.br/git/repos/vtiger-crmweb.git
Código-fonte privado. As credenciais de leitura são liberadas sob solicitação — me chame para conversar sobre o projeto.