Quando a falha ocorre?


Ao escriturar uma nota é identificado que os itens são exibidos de forma duplicada 

Como corrigir?


1 - Verifique an DSN da empresa no pervasive se a opção integrity enforced está marcada. Caso não esteja refaça a DSN da empresa, marcando a opção.

2-Na rotina de escrituração faça a exclusão da nota com os itens duplicados

3-No GAP acesse Gestão da Informação Digital > Analisador Fiscal > Rotinas auxiliares > Sincronização do Cadstro de Produtos.

4-Selecione a opção Sobrescrever Registros atuais e clique no botão sincronizar.

5-Efetue novamente a importação da nota com os itens duplicados. Caso a falha ainda ocorra efetue os passos abaixo.

6- Realize o acesso na base da empresa para verificar os registros na tabela lfs_nota_item_fcpAA (AA é o ano de movimento) que estão sem vínculos com a tabela notaitemEEEEAA.

Exibe os registros na tabela lfs_nota_item_fcpAA que não possuem vínculo com a notaitemEEEEAA

select ni.id, nifcp.*
from notaitemEEEEAA ni
right join lfs_nota_item_fcpAA nifcp on nifcp.nif_fk_nota_item = ni.id
where ni.id is null;

7- Identificando que existem registros na consulta acima é necessário realizar a remoção dos mesmos conforme script abaixo:

Remove os registros da tabela lfs_nota_item_fcp18 que não possuem vínculo com a notaitem017718

delete nifcp from notaitemEEEEAA ni
right join lfs_nota_item_fcpAA nifcp on nifcp.nif_fk_nota_item = ni.id
where ni.id is null;

Caso o problema persista mesmo executando os procedimentos acima pode ser outra tabela que apresente registros que não possuem vínculo com a tabela notaitemEEEEAA.

8- Acesse a tabela notaitem_icmsst_AA e verifique se ela possui a Constraint cnit_nis_fk_notaitAA criada, abaixo segue o comando de criação:

Cria a Constraint na tabela notaitem_icmsst_AA

alter table notaitem_icmsst_aa add constraint cnit_nis_fk_notait19
foreign key ("nis_fk_notaitem") references notaitemeeeeaa on update restrict  on delete cascade;

Verifique se há registros sem vínculos na tabela notaitem_icmsst_AA com relação aos registros da tabela notaitemEEEEAA

Exibe os registros sem vínculos

select ni.id, nis.*
from notaitemEEEEAA ni
right join notaitem_icmsst_AA nis on nis.nis_fk_notaitem = ni.id
where ni.id is null;

9- Caso existam registros sem vínculos na tabela notaitem_icmsst_AA realize a remoção deles:

Remove os registros sem vinculos

delete nis from notaitemEEEEAA ni
right join notaitem_icmsst_AA nis on nis.nis_fk_notaitem = ni.id
where ni.id is null; 

10- Após a execução dos procedimentos acima realize a exclusão das notas que apresentaram os itens repetidos e faça a escrituração/importação/integração novamente dessas notas.

11- Caso o problema persista mesmo executando os procedimentos acima pode ser devido a ausência da Constraint na tabela notaitem_icmsst_AA:

(AA - Ano de movimento em uso / EEEE - Código da Empresa)

--Abaixo o script de criação da Constraint na tabela notaitem_icmsst_AA
ALTER TABLE notaitem_icmsst_AA ADD CONSTRAINT cnit_nis_fk_notaitAA FOREIGN KEY ("nis_fk_notaitem") REFERENCES notaitemEEEEAA ON UPDATE RESTRICT ON DELETE CASCADE;

  • Sem rótulos