...
Em suma, para a leitura e validação do XML deve-se:
1) As informações da NF/Lote devem ser informadas na TAG parametrizada. Caso o lote não seja encontrado, o mesmo ainda pode ser extraído da TAG <rastro>;
2) Não poderá conter mais de uma NF por item;
3) Deve-se existir a NF Referenciada no arquivo XML;
4) O conteúdo da TAG parametrizada deve conter o seguinte formato: parâmetro_demarcador: numero_nf/numero_lote. Exemplo: “NF ENTRADA: 123456/ABC"
...
Com o término da importação será aberta uma janela contendo todos os itens importados. Nesta janela, após se finalizar as alterações e confirmar os itens, o sistema realizará a validação da NF referenciada e lote da seguinte maneira:
-> 1. Será verificado o tipo da operação cadastrado no cabeçalho e se for do tipo 50 - "NF de Entrada" ou 53 - "NF de Entrada para Estoque de Terceiros em Nosso Poder";
---> Não
1.1 Não será verificado o campo "infAdProd", por esse motivo não será importado NF de Referência, mesmo se possuir sua informação cadastrada no XML;
---> 1.2 Se possuir informação na TAG Rastro o sistema importará o lote, lote fornecedor, data fabricação e data validade, sem realizar qualquer validação no sistema;
-> 2. Se for tipo 51 - "NF de Entrada por Dev. de Venda" ou 52 - "NF de Entrada por Retorno Estoque em Poder de Terceiro";
---> 2.1 Será realizada a verificação da existência da NF de Saída que deve ser referenciada no XML com o código do produto. Caso exista o item da NF de origem e lote, será importada a referência;
---> 2.2 Se não possuir a informação de NF referenciada o sistema não importará as informações do lote (mesmo que exista a TAG <rastro> no XML);
---> 2.3 Se possuir a informação de NF referenciada o sistema verificará se existe as informações do lote;
-----> 2.3.1 Se possuir as informações de lote o sistema validará se suas datas (fabricação e vencimento) estão iguais ao que foi cadastrada na NF Referenciada,
-------> 2.3.1.1 Estando iguais as informações do lote com o que foi cadastrado no sistema será gravado no item do documento de entrada com suas informações;
-------> 2.3.1.2 Caso não estiverem iguais as informações do lote na NF de referência o sistema retornará uma mensagem apropriada com o item que apresentou a divergência e não será gravado sua informação no item do doc. de entrada.Premissas para imporar as informações de NF de referência e lote:
1) As informações da NF/Lote tem que estar informada na tag <InfAdProd>;
2) Não poderá conter mais de uma NF por item, caso ocorra não será possível a validação;
3) Obrigatoriamente terá que existir NF Referenciada no arquivo XML, não existindo não será possível a validação;
4) A máscara que deve conter na tag <InfAdProd> é da seguente forma: "NF/Lote: " seguindo o (número da NF + "/" + número lote + " ");
1) O sistemar buscará no banco de dados o número da chave da NF nfe referenciada no XML;
2) Após buscará o número da NF/Lote na tag <InfAdProd>;
3) Caso exista a tag de rastro no item, o sistema comparará as informações da “NF/LOTE/validade/fabricação” encontradas no banco de dados com as informações contidas no rastro. Se elas estiverem corretas, recupera as informações da NF de Origem nos campos devidos, se um das informações estiver incorreta, retorna log com a divergência;
4) Não existindo a tag de rastro, e se encontrada a NF de origem, o sistema comparará se NF/LOTE sãi iguais com o informado no XML, se sim, atualiza os dados com as informações da NF de Origem, se não, retorna log com as divergências. (lembre-se que nesse caso, a conferência se limitará a NF/Lote);