Quando você tenta abrir o Aspel SAE ou SUA e aparece a mensagem “Base de datos dañada” (Banco de dados corrompido), “Error al abrir tabla” (Erro ao abrir tabela), “Index is out of date” ou “Blob has been modified”, significa que o banco de dados Paradox utilizado pelo programa foi corrompido. Este é um dos erros mais frequentes no Aspel e SUA, especialmente em ambientes com quedas de energia ou computadores que são desligados sem fechar corretamente o programa. Neste guia você aprenderá a diagnosticar, reparar e prevenir a corrupção do banco de dados passo a passo.
O Erro
As mensagens de erro podem aparecer de várias formas ao tentar abrir uma empresa ou executar um processo no Aspel SAE ou SUA:
- “Base de datos dañada” — mensagem genérica que aparece ao tentar abrir tabelas do banco de dados Paradox.
- “Error al abrir tabla [nome_tabela]” — indica que uma tabela específica como FACTURAS.DB, CLIENTES.DB ou MOV_ALMA.DB está corrompida.
- “Index is out of date” — os arquivos de índice (.PX, .XG, .YG) não correspondem aos dados da tabela.
- “Blob has been modified” — os campos do tipo memo ou BLOB na tabela perderam a integridade.
- “Key violation” — aparecem registros duplicados nas chaves primárias devido à corrupção do índice.
Estes erros aparecem geralmente ao iniciar o programa, ao tentar abrir uma empresa, ao gerar relatórios ou ao faturar. No caso do SUA, costumam aparecer ao tentar gerar o arquivo de pagamento ao IMSS ou ao consultar movimentações de trabalhadores.
Causa do Problema
O Aspel SAE e SUA utilizam bancos de dados Paradox gerenciados pelo BDE (Borland Database Engine), uma tecnologia desenvolvida pela Borland nos anos 90. Esses bancos de dados são particularmente vulneráveis à corrupção pelas seguintes razões:
-
Quedas de energia — Se o computador desliga enquanto o Aspel está escrevendo dados em uma tabela, os arquivos de índice ficam em estado inconsistente com os dados. Esta é a causa mais comum de corrupção.
-
Fechamento forçado do programa — Usar o Gerenciador de Tarefas para fechar o Aspel ou desligar o Windows sem primeiro fechar o programa deixa arquivos de bloqueio ativos e pode corromper as tabelas abertas.
-
Desconexões de rede durante escrita — Em ambientes multiusuário onde o banco de dados está em um servidor compartilhado, se um computador perde a conexão de rede enquanto escreve dados, a tabela pode ficar corrompida para todos os usuários.
-
Erros de disco rígido — Setores danificados no disco onde os arquivos .DB do Paradox estão armazenados provocam leitura incorreta de dados.
-
Configuração incorreta do BDE — Se o parâmetro NET DIR do BDE não está configurado corretamente em ambientes de rede, múltiplos computadores podem tentar escrever simultaneamente sem coordenação, corrompendo os índices.
-
Antivírus escaneando arquivos do banco — Alguns antivírus bloqueiam temporariamente os arquivos .DB e .PX durante uma varredura, o que pode causar erros de escrita se o Aspel tenta acessá-los ao mesmo tempo.
Solução Passo a Passo
Passo 1: Fechar todas as sessões do Aspel
Antes de qualquer reparação, certifique-se de que nenhum usuário tenha o Aspel SAE ou SUA aberto em nenhum computador. Se o banco de dados está em rede, verifique em todos os computadores conectados. Os arquivos de bloqueio (.LCK) devem ser excluídos se ficaram órfãos.
Passo 2: Criar um backup completo
Copie toda a pasta da empresa para um local seguro antes de tentar qualquer reparação:
C:\Arquivos de Programas\Common Files\Aspel\Sistemas Aspel\SAE8.00\Empresas\Empresa01\
Para o SUA, o caminho típico é:
C:\Arquivos de Programas\Sua\Datos\
Passo 3: Excluir arquivos de índice
Navegue até a pasta da empresa afetada e exclua (não renomeie) os seguintes tipos de arquivos:
| Extensão | Tipo de arquivo | Regenerado automaticamente |
|---|---|---|
| .PX | Índice primário | Sim |
| .XG | Índice secundário | Sim |
| .YG | Índice secundário composto | Sim |
| .TV | Visualização de tabela | Sim |
| .LCK | Arquivo de bloqueio | Sim |
| .VAL | Validações | Sim |
Importante: Não exclua os arquivos .DB (dados) nem .MB (campos memo) — estes contêm as informações reais da sua empresa.
Passo 4: Reparar com Database Desktop
Se a exclusão dos índices não resolver o problema, use o Database Desktop (instalado com BDE):
- Abra o Database Desktop a partir de
C:\Arquivos de Programas\Common Files\Borland Shared\BDE\ou procure no menu Iniciar. - Vá em File > Open > Table e selecione a tabela danificada (por exemplo,
FACTURAS.DB). - Mude o tipo para Paradox se não estiver selecionado.
- Se a tabela abrir corretamente, vá em Table > Restructure.
- Sem fazer alterações na estrutura, clique em Save. Isso força a reconstrução de todos os índices.
- Repita para cada tabela que reportar erro.
Passo 5: Reparação avançada com TUtility
Para corrupções severas onde o Database Desktop não funciona, utilize o TUtility (ferramenta de reparação de tabelas Paradox):
- Baixe o TUtility de sites de suporte Aspel ou fóruns especializados.
- Execute o TUtility como administrador.
- Selecione Repair Table e navegue até a tabela danificada.
- O TUtility tentará recuperar os registros legíveis e gerar uma tabela reparada.
- Substitua a tabela original pela reparada.
Solução Alternativa
Se as ferramentas anteriores não conseguirem reparar o banco de dados, existe um método manual mais agressivo:
- Exportar dados legíveis — Use o Database Desktop para abrir cada tabela que ainda funciona e exporte os dados para formato CSV ou DBF.
- Criar banco de dados novo — No Aspel SAE, crie uma empresa nova do zero.
- Importar dados — Use os utilitários de importação do SAE para reimportar catálogos (clientes, fornecedores, produtos).
- Restaurar a partir do backup — Se você tem um backup recente, a forma mais rápida é restaurá-lo. Vá em Utilerías > Respaldo/Restauración > Restaurar no SAE.
Para o SUA, se você tem o arquivo de backup, pode restaurá-lo em Utilerías > Restaurar Respaldo. Se não há backup, será necessário recapturar as movimentações desde o último bimestre apresentado.
Prevenção
A corrupção de bancos de dados Paradox é prevenível na maioria dos casos seguindo estas práticas:
- Instale um nobreak — Proteja o computador e o servidor contra quedas de energia. Um nobreak de 600VA é suficiente para fechar corretamente o Aspel antes que a bateria acabe.
- Sempre feche o Aspel antes de desligar — Nunca desligue o computador com o Aspel aberto. Feche o programa pelo menu Arquivo > Sair.
- Faça backups diários — Configure o backup automático do SAE em Utilerías > Respaldo/Restauración. Para o SUA, faça backup manual da pasta de dados pelo menos uma vez por semana.
- Configure o BDE corretamente — No BDE Administrator, certifique-se de que NET DIR aponte para uma pasta compartilhada na rede e que todos os computadores usem o mesmo caminho.
- Exclua as pastas do Aspel do antivírus — Adicione as pastas de dados do SAE e SUA como exceções no seu antivírus para evitar bloqueios durante a varredura.
- Considere migrar para SQL Server — O Aspel SAE 8.0 permite usar o Microsoft SQL Server como motor de banco de dados em vez do Paradox, eliminando completamente os problemas de corrupção BDE.
Problemas Relacionados
| Erro | Causa provável | Solução rápida |
|---|---|---|
| ”Table is busy” | Arquivo .LCK órfão | Excluir arquivos .LCK da pasta de dados |
| ”Could not find object” | Tabela excluída ou movida | Verificar se todos os arquivos .DB existem na pasta |
| ”Invalid field name” | Estrutura da tabela alterada | Reestruturar tabela com Database Desktop |
| ”Network initialization failed” | BDE NET DIR mal configurado | Corrigir NET DIR no BDE Administrator |
| ”Insufficient memory” | BDE SHAREDMEMSIZE muito baixo | Aumentar SHAREDMEMSIZE para 4096 no BDE Administrator |
Resumo
- O erro “Banco de dados corrompido” no Aspel SAE e SUA é causado pela corrupção dos bancos de dados Paradox gerenciados pelo BDE.
- As causas principais são quedas de energia, fechamentos forçados e desconexões de rede durante operações de escrita.
- A solução mais eficaz é excluir os arquivos de índice (.PX, .XG, .YG) e deixar o Aspel reconstruí-los.
- Para corrupções severas, use o Database Desktop ou TUtility para reparar as tabelas.
- Prevenção: nobreak, backups diários, fechamento correto do programa e configuração adequada do BDE.
- A longo prazo, considere migrar para SQL Server para eliminar os problemas do Paradox.