Página 3 de 3
PDF de NFe, CTe, MDFe, e Evento
Enviado: 24 Abr 2017 13:56
por rubens
Ok.. José Quintas...
Vou deixar do jeito que tá e ver o no que dá... quando a gente tem muita coisa no sistema e daqui um pouco precisa atualizar vira um Deus nos acuda... É sempre melhor deixar o original...
Se não houver um número expressivo de reclamações fica assim mesmo...
Obrigado...
Rubens
PDF de NFe, CTe, MDFe, e Evento
Enviado: 24 Abr 2017 14:29
por JoséQuintas
Depois verifico um jeito e aviso aqui.
Acho que encontrei uma alternativa interessante.
Algo como oPDF:SetEanOff()
Mas pergunta:
Está dizendo sobre a classe dentro de um programa, ou do utilitário de teste que pode ser usado de forma independente?
PDF de NFe, CTe, MDFe, e Evento
Enviado: 24 Abr 2017 18:02
por JoséQuintas
Feito para a classe.
https://github.com/JoseQuintas/sefazcla ... 0a60a2d74f
Inicio as colunas como IMPRIME_IMPRIMEXMLTEM, que seria algo como só vai imprimir se tem no XML... rs
Código: Selecionar todos
::aLayout[ LAYOUT_EAN, LAYOUT_IMPRIME ] := LAYOUT_IMPRIMEXMLTEM
E criei os métodos onde pode indicar não.
Código: Selecionar todos
METHOD SetEanOff() INLINE ::aLayout[ LAYOUT_EAN, LAYOUT_IMPRIME ] := LAYOUT_NAOIMPRIME
Na definição de layout a partir do XML, só vai considerar o campo se estiver como baseado no XML (LAYOUT_IMPRIMEXMLTEM)
Código: Selecionar todos
IF ! Empty( ::aItem[ "cEAN" ] )
IF ::aLayout[ LAYOUT_EAN, LAYOUT_IMPRIME ] == LAYOUT_IMPRIMEXMLTEM
::aLayout[ LAYOUT_EAN, LAYOUT_IMPRIME ] := LAYOUT_IMPRIMENORMAL
ENDIF
ENDIF
No uso é algo como isto:
Código: Selecionar todos
oPDF := hbnfeDaNfe():New()
oPDF:SetEanOff()
oPDF:ToPDF( "arq.xml", "arq.pdf" )
Fiz o mesmo pra todos os outros campos opcionais. Com isso, o default é pra sair se existir no XML, como era antes.
PDF de NFe, CTe, MDFe, e Evento
Enviado: 25 Abr 2017 08:10
por rubens
Bom dia ...
Quinta eu compilo direto a classe....
Se embutir no sistema direto é melhor e mais rápido né...
Pelo que entendi se no XML tiver ean ele vai imprimir mesmo executando o método oPDF:SetEanOff()?
Vai depender se tiver no XML?
Obrigado
Rubens
PDF de NFe, CTe, MDFe, e Evento
Enviado: 25 Abr 2017 08:50
por JoséQuintas
Não. Entendeu errado.
Código: Selecionar todos
// SetEanOff: ::aLayout[ LAYOUT_EAN, LAYOUT_IMPRIME ] := LAYOUT_NAOIMPRIME
IF ! Empty( ::aItem[ "cEAN" ] ) // se existir no xml. se não estiver vazio. tem o NOT no início (!)
IF ::aLayout[ LAYOUT_EAN, LAYOUT_IMPRIME ] == LAYOUT_IMPRIMEXMLTEM // não entra aqui se for LAYOUT_NAOIMPRIME
::aLayout[ LAYOUT_EAN, LAYOUT_IMPRIME ] := LAYOUT_IMPRIMENORMAL
ENDIF
ENDIF