Sintomas

Ao libertar um lote de faturas A Receber de Contas, o lote é suspenso com a mensagem de sistema 6909. A ardebug irá apresentar a seguinte mensagem de erro:

Violação da restrição da CHAVE PRIMÁRIA "HistDocSlsTax0". Não é possível inserir a chave duplicada no objeto "HistDocSlsTax".

Causa

Existe outra fatura na tabela ardoc com o mesmo número de referência que uma das faturas neste lote. O resultado é que Salomão está a tentar inserir um registo duplicado na tabela HistDocSlsTax.

Solução alternativa

Para contornar este problema, siga estes passos:

  1. Localize os registos duplicados. Para tal, execute a seguinte instrução SQL:

    select refnbr, doctype, batnbr, * from ardoc tablea where doctype='IN' and refnbr IN (select refnbr from ardoc tableb where doctype='IN' and tablea.refnbr=tableb.refnbr and tablea.tstamp<>tableb.tstamp and (tablea.batnbr='<XXXXXX>' OR tableb.batnbr='<XXXXXX>')) order by refnbr, batnbr

    Tenha em atenção <XXXXXX> é um marcador de posição para o número de lote suspenso.Este script devolverá o registo ardoc das duas (ou mais) faturas com o mesmo número de referência.

  2. Atualize a fatura no lote suspenso para algo ligeiramente diferente, como adicionar um "A" ao final. Eis um exemplo das instruções de atualização necessárias:

    update ardoc set refnbr='01013A' where refnbr='010130' and batnbr='<XXXXXX>'update artran set refnbr='01013A' where refnbr='010130' and batnbr='<XXXXXX>'

Informações adicionais

Quando selecionar um novo número de referência, certifique-se de que o novo número de referência ainda não foi utilizado. Tente também manter o número da fatura com o mesmo comprimento que os outros números de referência.

Precisa de mais ajuda?

Quer mais opções

Explore os benefícios da assinatura, procure cursos de treinamento, saiba como proteger seu dispositivo e muito mais.