nfephp-org / nfephp

PROJETO DEPRECATED use sped-nfe
https://github.com/nfephp-org/sped-nfe
Other
693 stars 686 forks source link

Erro nas TAGs <med>, <arma>, deveriam ser até 500 por <produto> #910

Closed robmachado closed 6 years ago

robmachado commented 7 years ago

Estive desenvolvendo nos últimos dias a integração com o NFEPHP, e percorri o manual inteiro e a classe MakeNFE. Encontrei uma possível divergência, nas partes de Medicamento e Armamento nos produtos (K e L no manual respectivamente), consta que pode haver ocorrências de 1-500 para ambas. Na classe MakeNFE porém ao chamar a função responsável por essas tags isso não parece ocorrer. Vou tomar como exemplo a do Armamento, já que seguem a mesma estrutura

    $this->aArma[$nItem] = $arma;
    return $arma;

O array tem apenas uma dimensão, que faz referencia ao nItem que é o número do produto. Então não parece haver forma de inserir 2 ou mais na classe. Agora uma que funciona normalmente, a de NVE:

    $this->aNVE[$nItem][] = $nve;
    return $nve;

Reparem que a ela tem uma dimensão a mais, o que permite atribuir 2 ou mais NVEs para cada produto

Cabe salientar também que a função zTagdet() dentro da montaNFe() também não faz uma análise para um array multidimensional(possui apenas um foreach no caso de armamento e medicamento, enquanto na NVE possui dois).

ISSUE indicada por gvs.vmxtech@gmail.com