Descrição
Atualmente os valores de PESO BRUTO (KG), PESO BASE CÁLCULO (KG) e PESO AFERIDO (KG) estão sendo somados e sendo exibidos sempre com o mesmo valor.
XMLPDFCódigo - Dacte.php:1632-1677
Ou seja, com base no código acima, o que hoje o código faz é somar todos os pesos que tenha o cUnid == 1(Kg) ou 2(Ton) e exibir o mesmo valor para os 3 pesos (bruto, base cálculo e aferido).
Porém, com base nos documentos oficiais de Leiaute e de DACTe, é possível verificar que para o campo infCarga->infQ->tpMed existem sugestões de valores a serem preenchidos:
PESO BRUTO
PESO DECLARADO
PESO CUBADO
PESO AFORADO
PESO AFERIDO
PESO BASE DE CÁLCULO
LITRAGEM
CAIXAS
Solução
O problema é que este campo é livre para preenchimento e não é um enumerador como o cUnid por exemplo. Dito isto, chegamos na seguinte definição para ajuste do código:
Ao invés de somar todos os elementos de infCarga->infQ->qCarga (como é feito atualmente), passamos a nos basear nos valores sugeridos pelo documento oficial do governo, ou seja, quando no campo tpMed vier a descrição "PESO BRUTO", por exemplo, colocamos o valor no campo PESO BRUTO da renderização do PDF, e assim sucessivamente.
Como as alterações que fiz do meu lado são refatorações consideráveis, gostaria de expôr aqui o problema e a solução para ver se faz sentido para a comunidade adotar isso como regra ou se devo manter apenas como ajuste customizado do lado do fork da Arquivei.
Descrição
Em cascata com o problema 1, em caso de assumirmos a solução do problema 1 como correta, o problema 2 é gerado: Pode ser que no xml venha escrito "PESO QUALQUER OUTRA COISA" e, por tanto, não vai dar match com nenhum dos 3 pesos fixos do PDF, o que geraria uma inconsistência de campo em branco (mesmo tendo valor no XML).
Solução
Definição da seguinte regra:
Caso após a aplicação da regra da solução do Problema 1 seja aplicada e nenhum dos 3 pesos tenha valor setado, é verificado se existe pelo menos um tpMed que contenha a palavra "PESO" e se sim, o valor será automaticamente atribuído ao campo PESO BRUTO (KG) pelo simples fato de ele ser o primeiro dos 3 campos na ordem de amostragem do PDF (esquerda -> direita)
Problema 1
Descrição Atualmente os valores de PESO BRUTO (KG), PESO BASE CÁLCULO (KG) e PESO AFERIDO (KG) estão sendo somados e sendo exibidos sempre com o mesmo valor. XML PDF Código - Dacte.php:1632-1677
Ou seja, com base no código acima, o que hoje o código faz é somar todos os pesos que tenha o cUnid == 1(Kg) ou 2(Ton) e exibir o mesmo valor para os 3 pesos (bruto, base cálculo e aferido).
Porém, com base nos documentos oficiais de Leiaute e de DACTe, é possível verificar que para o campo infCarga->infQ->tpMed existem sugestões de valores a serem preenchidos:
Solução O problema é que este campo é livre para preenchimento e não é um enumerador como o cUnid por exemplo. Dito isto, chegamos na seguinte definição para ajuste do código:
Como as alterações que fiz do meu lado são refatorações consideráveis, gostaria de expôr aqui o problema e a solução para ver se faz sentido para a comunidade adotar isso como regra ou se devo manter apenas como ajuste customizado do lado do fork da Arquivei.
Commits
Problema 2
Descrição Em cascata com o problema 1, em caso de assumirmos a solução do problema 1 como correta, o problema 2 é gerado: Pode ser que no xml venha escrito "PESO QUALQUER OUTRA COISA" e, por tanto, não vai dar match com nenhum dos 3 pesos fixos do PDF, o que geraria uma inconsistência de campo em branco (mesmo tendo valor no XML).
Solução Definição da seguinte regra:
Commits