Comments (6)
Muito bom ! valeu vou providenciar a correção
from sped-common.
Bom esse controle não deve ser feito pelo sped-common mas sim pelo chamador de forma a garantir que seja passado uma string
from sped-common.
Eu fiz a correção no sped-esocial no evento evtInfoEmpregador.
Este e outros campos são obrigatórios caso o empregador ser PJ, sendo assim inseri um teste para validar essa situação.
Com certeza existirão mais casos como esse devido a extrema complexidade das regras de preenchimento.
Mas vamos revendo esses casos e poderemos melhorar o código mais para frente, inclusive dessa classe de sped-common. Estou prevendo algumas simplificações, como por exemplo apenas ignorar o elemento quando o conteúdo for nulo em todos os outros casos, string vazia ou zero, o elemento seria incluso.
from sped-common.
Bom esse controle não deve ser feito pelo sped-common mas sim pelo chamador de forma a garantir que seja passado uma string
Roberto, quanto a passar uma string, não vai funcionar, pois string com valor "0" também é considerado vazio na função empty. E na linha 157 da função tu já converte todos os valores para string.
public function addChild(
DOMElement &$parent,
$name,
$content,
$obrigatorio = false,
$descricao = '',
$force = false
) {
$content = trim("$content");
if ($obrigatorio && $content === '' && !$force) {
$this->errors[] = "Preenchimento Obrigatório! [$name] $descricao";
}
if ($obrigatorio || !empty($content) || $force) {
$content = htmlspecialchars($content, ENT_QUOTES);
$temp = $this->createElement($name, $content);
$parent->appendChild($temp);
}
}
O problema reportado não é apenas do layout do empregador e exclusivo do campo indCoop. Ele abrange qualquer valor 0 (zero) recebido pela função addChild onde o campo não é obrigatério. Hoje para informar-lo eu tenho que passar o parâmetro $force = true
from sped-common.
Sim eu sei já corrigi e TESTEI a criação no evtInfoEmpregador
Mas antes de mudar o sped-common eu tenho que verificar se não vai quebrar outros modulos como o sped-nfe
from sped-common.
No caso do eSocial o problema maior é que as obrigatoriedades de campos variam conforme o tipo de contratante e outros parâmetros. Quando o campo é obrigatório o ZERO será colocado sempre, mesmo com esse empty() ai.
from sped-common.
Related Issues (20)
- Digest Value não corresponde ao conteúdo HOT 9
- Certificado Transmissor sem CNPJ HOT 4
- Possibilidade de Assinar uma Tag dentro de outra com o mesmo Nome HOT 1
- Erro quando na razão social do emitente contem a caractere '&'
- SoapInterface sem o método público httpVersion HOT 1
- FileNotFoundException em sistemas altamente concorrentes
- Falha ao assinar xml nfse campinas HOT 3
- Erro em quebra de linha na tag informação complementar (infCpl) após upgrade para versão v5.0.48 HOT 2
- Suporte League/Flysystem 2.0 HOT 3
- PSR/LOG HOT 3
- Classe Certificate\PublicKey (validFrom e validTo) do certificado HOT 2
- OpenSSL 3 HOT 7
- Erro de ortografia
- Certificado A3 e A5 na nuvem HOT 1
- Dúvida: É possível usar a classe para assinar documentos txt? HOT 2
- PHP 8.1 Erro de indice do array HOT 1
- Função str_contains somente PHP 8 HOT 13
- Assinatura do EFD-REINF HOT 1
- Assinar nfe sem certificado digital (com login e senha) HOT 2
- É possível criar múltiplas assinaturas num unico Documento XML? HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from sped-common.