Perguntas Erro Duplicate Key em todas as rotinas.

Mais
9 anos 11 meses atrás #23014 por flavio.marques
Boa noite pessoal,
Estou na seguinte situação:
Tenho um base produção e uma base teste.
Na base teste apliquei todas as atualizações recentes do portal, ae peguei a base de dados da produção e restaurei no banco da teste, depois disso toda rotina que executa um inserte, ou update mostra erro de duplicate key. para resolver tenho que tenho que dropar a tabela criar novamente e appendar, mas fazer isso em todas as tabelas é inviável. como posso resolver de forma mais rápida?

Por favor Acessar ou Registrar para participar da conversa.

Mais
9 anos 11 meses atrás #23018 por XAVIER
baixe do portal checkunique_tttp110.ptm aplique
inclua a rotina CHECKDUPL no configurador
baixe tambem dicionarios de dados e cole o aquivo SX2.unq
na pasta dados dentro da system

apos utilize a rotina CHECKDUPL busque o SX2.unq dentro de dados

marque todas tabelas e rode a rotina e exclua os registros duplicados

Por favor Acessar ou Registrar para participar da conversa.

Mais
9 anos 11 meses atrás #23020 por flavio.marques
Olá Fernando,
ja tenho o checkdupl e a SX2 atualizada, mas o problema é que nao tem registro duplicado. acredito que seja alguma coisa nas SX's.
Vou pegar algo parecido com aquele MV_DOCSEQ. rs...
Deve ter perdido a sequencia do R_E_C_N_O_ .
vou pegar as SX´s da base oficial jogar la e depois rodar a atulização de novo.

Por favor Acessar ou Registrar para participar da conversa.

Mais
9 anos 11 meses atrás #23021 por XAVIER
Cara entao utilize via banco

Segue exemplo:

-- CONSULTA DUPLICIDADE

SELECT PG_FILIAL,PG_MAT,PG_HORA, COUNT(*) FROM SPG010
WHERE D_E_L_E_T_=' '
AND PG_DATA BETWEEN '20120926' AND '20121025'
GROUP BY PG_FILIAL,PG_MAT,PG_HORA
HAVING COUNT(*) > 1

--========================================================================================================

SELECT * FROM SPG010
WHERE D_E_L_E_T_=' '
AND PG_FILIAL='01'
AND PG_MAT='003624'
AND PG_HORA=12.28
AND PG_DATA='20120927'
--AND PG_DATA BETWEEN '20120926' AND '20121025'
ORDER BY PG_MAT DESC

--========================================================================================================
-- DELETA REGISTROS EM DUPLICIDADE

UPDATE SPG010 SET D_E_L_E_T_ = ' ' -- COMANDO D_E_L_E_T_ IRA EXCLUIR REGISTRO
WHERE PG_FILIAL='01'
AND PG_MAT='003624'
AND PG_HORA=12.28
AND PG_DATA='20120927'
AND R_E_C_N_O_='503344'


--WHERE R_E_C_N_O_ = 31845 -- UTILIZANDO RECNO VÇ SO EXCLUIRA UM UNICO REGISTRO

Por favor Acessar ou Registrar para participar da conversa.

Mais
9 anos 11 meses atrás #23047 por angeloprotti1
Bom dia Flavio
Provavelmente são os dbf's.
Copie a pasta da produção (Protheus_data\System) e cole na homologação, deve resolver.

Abraços

Por favor Acessar ou Registrar para participar da conversa.

Mais
9 anos 11 meses atrás - 9 anos 11 meses atrás #23059 por flavio.marques
Pois é Angelo, foi o que pensei tbm.
Mas eu só reiniciei o DBAccess e resolvou!

Obrigado pelo apoio angele e fernando! = )
Ultima edição: 9 anos 11 meses atrás por flavio.marques.

Por favor Acessar ou Registrar para participar da conversa.

Tempo para a criação da página:0.103 segundos
Joomla templates by a4joomla