Este artigo tem como objetivo orientar sobre como solucionar o erro 'Btrieve Error 71' ao tentar excluir uma empresa no GAP

Resolução

Mensagem de erro:

"Falha ao excluir empresa:
-2147467259 - Falha ao executar SQL de exclusão: [LNA][Pervasive][ODBC Engine Interface][Data Record Manager]There is a violation of the RI definitions(Btrieve Error 71)
SQL: DELETE FROM prg_empresa_compl WHERE id = ???
 Referência/Erro: 45900018"

Verifique a sincronia das tabelas: prg_empresa_btr e prg_empresa_compl
O erro ocorre, porque existem mais registros na tabela: prg_empresa_compl

1- Execute o scritpt abaixo para criar uma tabela temporária na PROEMP.

select * into prg_empresa_complt from prg_empresa_compl;

2- Após executar o script, realize a consulta dos dados na tabela temporária;

select codigo from prg_empresa_complt order by codigo asc;

Para facilitar a identificação dos codigos dos registros, exporte para excel o resultado ordenado por codigo crscente na coluna A.

3- Após executar o script, realize a consulta dos dados na tabela: prg_empresa_btr

select codigobtr from prg_empresa_btr order by codigobtr asc;

Para facilitar a identificação dos codigos dos registros, exporte para excel o resultado ordenado por codigo crescente na coluna B.

4- Compare as colunas e identifique qual empresa existe na tabela prg_empresa_complt e não existe na tabela prg_empresa_btr

5- Selecione o registro encontrado e exclua o mesmo no GRID do Pervasive na tabela temporária, ajustando os registros até ter a mesma quantidade da tabela prg_empresa_btr.

6- Acesse a base ?:\proempxx\ e renomeie o arquivo prg_0008.mkd para prg_0008.old

7- Feche o PCC e as consultas realizadas.

8- Acesse a base ?:\proempxx\ e renomeie o arquivo prg_empresa_complt.MKD para prg_0008.MKD

9- Realize a transferência da base geral 
Para maiores informações, acesse: A745-Transferência da base de dados geral do Prosoft

10- Devolva apenas o arquivo PRG_0008.MKD

11- Realize a exclusão da empresa.

  • Sem rótulos