Nfe - Nota Fiscal Eletronica

do meu estado esta aqui, abraços:
https://homologacao.nfe.sefaz.rs.gov.br/

e ai pessoal blz

entao ninguem tem ideia de como validar uma NFe e a resposta vir em portugues ? se o programa Assinador retorna td traduzido deve ter alguma maneira ou nao neh rs ?

[quote=evandromib]e ai pessoal blz

entao ninguem tem ideia de como validar uma NFe e a resposta vir em portugues ? se o programa Assinador retorna td traduzido deve ter alguma maneira ou nao neh rs ?[/quote]

Bem que eu gostaria também… Mas creio ser na base do if/else/…

Alencar

[quote=evandromib]e ai pessoal blz

entao ninguem tem ideia de como validar uma NFe e a resposta vir em portugues ? se o programa Assinador retorna td traduzido deve ter alguma maneira ou nao neh rs ?[/quote]

quando vc faz a validação vc bate os xsd com o teu xml certo ? mas vc usa uma lib pra isso certo ?, acho que teria que tratar os erros os reescrever alguma classe da lib responsavel pela validação, mas acho uma perda de tempo, pois o importante é mostrar a tag que possui o erro, abraços.

aix tb concordo

é que qdo implementei isso aqui na empresa ( eu achei bom ) mais as criaturas q usam a nota nao entenderam o erro

tb acho q que tratar o erro e traduzir é perca total de tempo

mais blz valeu

[quote=evandromib]aix tb concordo
é que qdo implementei isso aqui na empresa ( eu achei bom ) mais as criaturas q usam a nota nao entenderam o erro
tb acho q que tratar o erro e traduzir é perca total de tempo
mais blz valeu[/quote]

Evandro e demais: sempre que desenvolvemos algum sistema que vá interagir com pessoas, temos que levar em
consideração que estes usuários finais não tem o conhecimento técnico que nós possuimos.
Vejam uma mensagem de erro de parser. Além de ser em inglês, é totalmente técnica.
Na minha modesta opinião, a tradução destas msgs para algo claro aos olhos “comuns”, trariam benécias do tipo
menos suporte, mais velocidade na solução de problemas e por ai vai.

Pretendo sim fazer algo parecido com o site da receita e convido a quem quiser ajudar, a criar mensagems traduzidas
para as diversas situações de erros de parser.
Poderiamos carregar algum Map onde a key é parte da msg original e o value a mensagem traduzida.
Assim com uns maps pra cá e outros pra lá, juntariamos tudo e todos teriamos as traduções com pouco esforço.

Fica a sugestão.

Alencar

[quote=philler][quote=evandromib]aix tb concordo
é que qdo implementei isso aqui na empresa ( eu achei bom ) mais as criaturas q usam a nota nao entenderam o erro
tb acho q que tratar o erro e traduzir é perca total de tempo
mais blz valeu[/quote]

Evandro e demais: sempre que desenvolvemos algum sistema que vá interagir com pessoas, temos que levar em
consideração que estes usuários finais não tem o conhecimento técnico que nós possuimos.
Vejam uma mensagem de erro de parser. Além de ser em inglês, é totalmente técnica.
Na minha modesta opinião, a tradução destas msgs para algo claro aos olhos “comuns”, trariam benécias do tipo
menos suporte, mais velocidade na solução de problemas e por ai vai.

Pretendo sim fazer algo parecido com o site da receita e convido a quem quiser ajudar, a criar mensagems traduzidas
para as diversas situações de erros de parser.
Poderiamos carregar algum Map onde a key é parte da msg original e o value a mensagem traduzida.
Assim com uns maps pra cá e outros pra lá, juntariamos tudo e todos teriamos as traduções com pouco esforço.

Fica a sugestão.

Alencar[/quote]
Acho interessante a idéia. Mesmo porque vou precisar fazer isso também, ou ao menos traduzir as exceções mais comuns.

philler acho mto boa essa ideia sim montar essa estrutura podem contar comigo

na minha frase anterior qdo eu disse essas as criaturas q usam a nota nao entenderam o erro
nao foi uma critica aos usuarios nao
é o dpto tecnico aqui da empresa que efetua os teste no software( eles ja conhecem maioria dos termos tecnnicos)

Bom galera consegui resolver o probleminha citado acima dos parse em ingles , ficou da seguite forma

na API xerces-2_9_1 procura o arquivo xercesImpl.jar dentro dele acesse \org\apache\xerces\impl\msg\XMLSchemaMessages.properties faça uma copia desse arquivo , dentro desse arquivo estão as mensagem do parse todas ingles

altere o conteudo do arquivo ex:
cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: O conteudo do Elemento ‘’{0}’’ is not complete. One of ‘’{1}’’ is expected.

para cvc-complex-type.2.4.b = cvc-complex-type.2.4.b: O conteudo do Elemento ‘’{0}’’ nao esta completo. Um dos ‘’{1}’’ e esperado.

ao terminar salve o arquivo XMLSchemaMessages.properties como XMLSchemaMessages_pt_BR.properties

coloque esse arquivo de volta no xercesImpl.jar deixando os arquivos XMLSchemaMessages_pt_BR.properties e XMLSchemaMessages.properties no JAR

na aplicação substitua o

por

o LocalizedMessage se encarrega de procurar o arquivo com o que contem a tradução caso ele nao encontre joga como default o arquivo que esta em ingles

bom aqui funcionou legal só preciso de coragem para traduzir todo o arquivo
espero q ajude

flw

Ai que eu digo! Mandou legal…

Parabéns pela iniciativa.

Alencar

Melhor ainda. heheh
Valeu por ter postado.

Abraço.

Aí galera… esse tópico tá batendo recordes!!!

Seguinte… pra variar to tendo os erros cabulosos e inexplicáveis, vejam só:

Tenho um método que interage com o Web Service de recepção de notas, e em alguns momentos ele me retorna:

e em outros:

Para testar o porque deste comportamento, estou pegando sempre o MESMO xml e trocando somente os dados das tags

<infNFe Id="..." versao="1.10">
<cNF>...</cNF>
<nNF>...</nNF>

e gerando sempre um lote novo na tag <idLote>, e fico iterando num while(true) da vida pra ir gerando um monte de vezes
a resposta (que eu consulto pelo NfeRetRecepcao, é claro).

O algoritmo que estou usando pra calcular o dígito verificador é o seguinte:

public static String calcDVChaveAcesso(String chaveAcesso) {
	int dv = 0;
	int soma = 0;
	int multiplicador = 2;

	for (byte b = 42; b &gt;= 0; b--) {
		soma += Character.digit(chaveAcesso.charAt(b),10) * multiplicador;
		multiplicador++;
		if (multiplicador &gt; 9)
			multiplicador = 2;
	}

	int auxDV = 11 - soma % 11;
	if (auxDV &gt;= 10)
		dv = 0;
	else
		dv = auxDV;

	return Integer.toString(dv);
}

Sinceramente não faço idéia do porque deste comportamento "aleatório" no processamento lá na receita.

Alguém sabe o que pode estar acontecendo???/

Obrigado

O que eu fiz foi pegar um XML que eu sei que está válido de acordo com o XSD

Creio que vc nao esteja alterando o conteudo da tag com o o novo
digito verificador.

Alencar

Nooooooooooossa… piazei valendo!!! Que marcada.

Vou testar aqui… mas valeu mesmo!!

e ai galera blz

vim trazer mais algumas questoes intrigrantes kk

alguem usa o ireport para gerar o DANFE ?

Acho que se for seguir algum modelo que seja milimétricamente dinâmico, é melhor usar o iText direto. o IReport não é 100% fiel à medidas…

[quote=evandromib]e ai galera blz

vim trazer mais algumas questoes intrigrantes kk

alguem usa o ireport para gerar o DANFE ? [/quote]

qual é o rolo ?

entao atualmente o meu danfe é em HTML to tentando mudar ele pq a manutenção eh bem complicada qdo alguem pede para colocar mais coisa no danfe tenho até friu na barriga kkk
ja tenho o layout praticamente metade do DANFE pronto no ireport mais como nao manjo mto dele to tendo algumas dificuldade em relação a formatação de alguns campos e a exibição das informações complementares qdo o conteudo dela tem 5 mil caracteres ser exibido em outras folhas , e como é como se consegue puxar todos os impostos dos produtos sendo q cada produto varia e o xpath setado nao funciona setando apenas a tag imposto

entao gr_marco , usando esse itext vai ficar quase igual ao que tenho em html
no ireport é só arrastar o campo o setar a tag

[quote=evandromib]e ai galera blz

vim trazer mais algumas questoes intrigrantes kk

alguem usa o ireport para gerar o DANFE ? [/quote]

eu uso, dá muito problema, mas funciona