PHP Class NFePHP\Extras\Danfe

Inheritance: extends NFePHP\Extras\CommonNFePHP, implements NFePHP\Extras\DocumentoNFePHP
Show file Open project: nfephp-org/nfephp Class Usage Examples

Public Properties

Property Type Description
$descProdInfoComplemento boolean Parâmetro do controle se deve concatenar automaticamente informações complementares na descrição do produto, como por exemplo, informações sobre impostos.
$descProdQuebraLinha boolean Parâmetro do controle se deve gerar quebras de linha com "\n" a partir de ";" na descrição do produto.
$exibirIcmsInterestadual boolean Parâmetro para exibir ou ocultar os valores do ICMS Interestadual e Valor Total dos Impostos.
$exibirPIS boolean Parâmetro para exibir ou ocultar os valores do PIS/COFINS.
$exibirTextoFatura boolean Parâmetro para exibir ou ocultar o texto adicional sobre a forma de pagamento e as informações de fatura/duplicata.
$exibirValorTributos boolean Parâmetro para exibir ou ocultar o texto sobre valor aproximado dos tributos.
$logoAlign string alinhamento padrão do logo (C-Center)
$numero_registro_dpec string Numero DPEC
$qCanhoto integer quantidade de canhotos a serem montados, geralmente 1 ou 2
$situacaoExterna integer Situação
$yDados float Posição

Protected Properties

Property Type Description
$ICMSTot DOMNode Node
$ISSQNtot DOMNode Node
$cobr DOMNode Node
$compra DOMNode Node compra
$debugMode integer ativa ou desativa o modo de debug
$dest DOMNode Node
$destino string destino do arquivo pdf I-borwser, S-retorna o arquivo, D-força download, F-salva em arquivo local
$det DOMNode Node
$dom DOMDocument Document
$dup DOMNode Node
$emit DOMNode Node
$enderDest DOMNode Node
$enderEmit DOMNode Node
$entrega DOMNode Node
$errMsg string mesagens de erro
$errStatus boolean status de erro true um erro ocorreu false sem erros
$fontePadrao string Nome da Fonte para gerar o DANFE
$formatoChave string Formato chave
$hPrint float Comprimento (altura) imprimivel, em milímetros
$ide DOMNode Node
$infAdic DOMNode Node infAdic
$infNFe DOMNode Node
$infProt DOMNode Node infProt
$logomarca string path para logomarca em jpg
$orientacao string orientação da DANFE P-Retrato ou L-Paisagem
$papel string formato do papel
$pdf object objeto fpdf()
$pdfDir string diretorio para salvar o pdf com a opção de destino = F
$qtdeItensProc integer quantidade de itens já processados na montagem do DANFE
$reboque DOMNode Node reboque
$retirada DOMNode Node
$textoAdic string Texto
$tpEmis integer Tipo de emissão
$tpImp integer 1-Retrato/ 2-Paisagem
$transp DOMNode Node
$transporta DOMNode Node
$veicTransp DOMNode Node
$version string versão
$wAdic float Largura
$wCanhoto float largura do canhoto (25mm) apenas para a formatação paisagem
$wPrint float largura imprimivel, em milímetros
$xml string XML NFe

Public Methods

Method Description
__construct ( string $docXML = '', string $sOrientacao = '', string $sPapel = '', string $sPathLogo = '', string $sDestino = 'I', string $sDirPDF = '', string $fonteDANFE = '', integer $mododebug = 2 ) __construct
monta ( string $orientacao = '', string $papel = 'A4', string $logoAlign = 'C', $situacaoExterna = NFEPHP_SITUACAO_EXTERNA_NONE, $classPdf = false, $dpecNumReg = '', $margSup = 2, $margEsq = 2, $margInf = 2 ) : string monta
montaDANFE ( string $orientacao = '', string $papel = 'A4', $logoAlign = 'C', $situacaoExterna = NFEPHP_SITUACAO_EXTERNA_NONE, $classPdf = false, $depecNumReg = '', $margSup = 2, $margEsq = 2, $margInf = 2 ) : string montaDANFE Monta a DANFE conforme as informações fornecidas para a classe durante sua construção. Constroi DANFEs com até 3 páginas podendo conter até 56 itens.
printDANFE ( string $nome = '', string $destino = 'I', string $printer = '' ) : string printDANFE Esta função envia a DANFE em PDF criada para o dispositivo informado.
printDocument ( string $nome = '', string $destino = 'I', string $printer = '' ) : object printDocument
simpleConsistencyCheck ( ) : boolean simpleConsistencyCheck

Protected Methods

Method Description
pCabecalhoDANFE ( number $x, number $y, number $pag = '1', number $totPag = '1' ) : number cabecalhoDANFE Monta o cabelhalho da DANFE (retrato e paisagem)
pCanhoto ( number $x, number $y ) : number pCcanhotoDANFE Monta o canhoto da DANFE (retrato e paisagem)
pDadosAdicionaisDANFE ( float $x, float $y, float $h ) : float dadosAdicionaisDANFE Coloca o grupo de dados adicionais da NFe. (retrato e paisagem)
pDescricaoProduto ( $itemProd ) : string descricaoProduto Monta a string de descrição de cada Produto
pDescricaoProdutoHelper ( $origem, $campo, $formato ) fim transporteDANFE
pDestinatarioDANFE ( number $x, number $y ) : number destinatarioDANFE Monta o campo com os dados do destinatário na DANFE. (retrato e paisagem)
pFaturaDANFE ( number $x, number $y ) : number faturaDANFE Monta o campo de duplicatas da DANFE (retrato e paisagem)
pGeraChaveAdicionalDeContingencia ( ) : string pGeraChaveAdicionalDeContingencia
pGeraInformacoesDaTagCompra ( ) : string pGeraInformacoesDaTagCompra Devolve uma string contendo informação sobre as tag , e ou string vazia.
pGeraInformacoesDasNotasReferenciadas ( ) : string pGeraInformacoesDasNotasReferenciadas Devolve uma string contendo informação sobre as notas referenciadas. Suporta N notas, eletrônicas ou não Exemplo: NFe Ref.: série: 01 número: 01 emit: 11.111.111/0001-01 em 10/2010 [0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000]
pGetTextoFatura ( ) : a pGetTextoFatura Gera a String do Texto da Fatura
pImpostoDANFE ( number $x, number $y ) : number impostoDANFE Monta o campo de impostos e totais da DANFE (retrato e paisagem)
pImpostoDanfeHelper ( float $x, float $y, float $w, float $h, $titulo, $campoImposto ) : float impostoDanfeHelper Auxilia a montagem dos campos de impostos e totais da DANFE
pIssqnDANFE ( float $x, float $y ) : float issqnDANFE Monta o campo de serviços do DANFE
pItensDANFE ( float $x, float $y, float &$nInicio, float $hmax, $pag, $totpag, $hCabecItens = 7 ) : float itensDANFE Monta o campo de itens da DANFE (retrato e paisagem)
pNotaCancelada ( ) fim função printDANFE
pNotaDPEC ( )
pNotaDenegada ( )
pRodape ( $x, $y ) : void pRodape Monta o rodapé no final da DANFE com a data/hora de impressão e informações sobre a API NfePHP
pSizeExtraTextoFatura ( ) : integer pSizeExtraTextoFatura Calcula o espaço ocupado pelo texto da fatura. Este espaço só é utilizado quando não houver duplicata.
pTransporteDANFE ( float $x, float $y ) : float transporteDANFE Monta o campo de transportes da DANFE (retrato e paisagem)

Private Methods

Method Description
pAnfavea ( string $cdata = '' ) : string anfavea Função para transformar o campo cdata do padrão ANFAVEA para texto imprimível

Method Details

__construct() public method

__construct
public __construct ( string $docXML = '', string $sOrientacao = '', string $sPapel = '', string $sPathLogo = '', string $sDestino = 'I', string $sDirPDF = '', string $fonteDANFE = '', integer $mododebug = 2 )
$docXML string Conteúdo XML da NF-e (com ou sem a tag nfeProc)
$sOrientacao string (Opcional) Orientação da impressão P-retrato L-Paisagem
$sPapel string Tamanho do papel (Ex. A4)
$sPathLogo string Caminho para o arquivo do logo
$sDestino string Estabelece a direção do envio do documento PDF I-browser D-browser com download S-
$sDirPDF string Caminho para o diretorio de armazenamento dos arquivos PDF
$fonteDANFE string Nome da fonte alternativa do DAnfe
$mododebug integer 0-Não 1-Sim e 2-nada (2 default)

monta() public method

monta
public monta ( string $orientacao = '', string $papel = 'A4', string $logoAlign = 'C', $situacaoExterna = NFEPHP_SITUACAO_EXTERNA_NONE, $classPdf = false, $dpecNumReg = '', $margSup = 2, $margEsq = 2, $margInf = 2 ) : string
$orientacao string
$papel string
$logoAlign string
return string

montaDANFE() public method

A definição de margens e posições iniciais para a impressão são estabelecidas pelo conteúdo da funçao e podem ser modificados.
public montaDANFE ( string $orientacao = '', string $papel = 'A4', $logoAlign = 'C', $situacaoExterna = NFEPHP_SITUACAO_EXTERNA_NONE, $classPdf = false, $depecNumReg = '', $margSup = 2, $margEsq = 2, $margInf = 2 ) : string
$orientacao string (Opcional) Estabelece a orientação da impressão (ex. P-retrato), se nada for fornecido será usado o padrão da NFe
$papel string (Opcional) Estabelece o tamanho do papel (ex. A4)
return string O ID da NFe numero de 44 digitos extraido do arquivo XML

pCabecalhoDANFE() protected method

cabecalhoDANFE Monta o cabelhalho da DANFE (retrato e paisagem)
protected pCabecalhoDANFE ( number $x, number $y, number $pag = '1', number $totPag = '1' ) : number
$x number Posição horizontal inicial, canto esquerdo
$y number Posição vertical inicial, canto superior
$pag number Número da Página
$totPag number Total de páginas
return number Posição vertical final

pCanhoto() protected method

pCcanhotoDANFE Monta o canhoto da DANFE (retrato e paisagem)
protected pCanhoto ( number $x, number $y ) : number
$x number Posição horizontal canto esquerdo
$y number Posição vertical canto superior
return number Posição vertical final TODO 21/07/14 fmertins: quando orientação L-paisagem, o canhoto está sendo gerado incorretamente

pDadosAdicionaisDANFE() protected method

dadosAdicionaisDANFE Coloca o grupo de dados adicionais da NFe. (retrato e paisagem)
protected pDadosAdicionaisDANFE ( float $x, float $y, float $h ) : float
$x float Posição horizontal canto esquerdo
$y float Posição vertical canto superior
$h float altura do campo
return float Posição vertical final (eixo Y)

pDescricaoProduto() protected method

descricaoProduto Monta a string de descrição de cada Produto
protected pDescricaoProduto ( $itemProd ) : string
return string descricao do produto

pDescricaoProdutoHelper() protected method

fim transporteDANFE
protected pDescricaoProdutoHelper ( $origem, $campo, $formato )

pDestinatarioDANFE() protected method

destinatarioDANFE Monta o campo com os dados do destinatário na DANFE. (retrato e paisagem)
protected pDestinatarioDANFE ( number $x, number $y ) : number
$x number Posição horizontal canto esquerdo
$y number Posição vertical canto superior
return number Posição vertical final

pFaturaDANFE() protected method

faturaDANFE Monta o campo de duplicatas da DANFE (retrato e paisagem)
protected pFaturaDANFE ( number $x, number $y ) : number
$x number Posição horizontal canto esquerdo
$y number Posição vertical canto superior
return number Posição vertical final

pGeraChaveAdicionalDeContingencia() protected method

pGeraChaveAdicionalDeContingencia
protected pGeraChaveAdicionalDeContingencia ( ) : string
return string chave

pGeraInformacoesDaTagCompra() protected method

Aviso: Esta função não leva em consideração dados na tag xPed do item.
protected pGeraInformacoesDaTagCompra ( ) : string
return string com as informacoes dos pedidos.

pGeraInformacoesDasNotasReferenciadas() protected method

pGeraInformacoesDasNotasReferenciadas Devolve uma string contendo informação sobre as notas referenciadas. Suporta N notas, eletrônicas ou não Exemplo: NFe Ref.: série: 01 número: 01 emit: 11.111.111/0001-01 em 10/2010 [0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 0000]
protected pGeraInformacoesDasNotasReferenciadas ( ) : string
return string Informacoes a serem adicionadas no rodapé sobre notas referenciadas.

pGetTextoFatura() protected method

pGetTextoFatura Gera a String do Texto da Fatura
protected pGetTextoFatura ( ) : a
return a String com o texto ou "";

pImpostoDANFE() protected method

impostoDANFE Monta o campo de impostos e totais da DANFE (retrato e paisagem)
protected pImpostoDANFE ( number $x, number $y ) : number
$x number Posição horizontal canto esquerdo
$y number Posição vertical canto superior
return number Posição vertical final

pImpostoDanfeHelper() protected method

impostoDanfeHelper Auxilia a montagem dos campos de impostos e totais da DANFE
protected pImpostoDanfeHelper ( float $x, float $y, float $w, float $h, $titulo, $campoImposto ) : float
$x float Posição horizontal canto esquerdo
$y float Posição vertical canto superior
$w float Largura do campo
$h float Altura do campo
return float Sugestão do $x do próximo imposto

pIssqnDANFE() protected method

issqnDANFE Monta o campo de serviços do DANFE
protected pIssqnDANFE ( float $x, float $y ) : float
$x float Posição horizontal canto esquerdo
$y float Posição vertical canto superior
return float Posição vertical final

pItensDANFE() protected method

itensDANFE Monta o campo de itens da DANFE (retrato e paisagem)
protected pItensDANFE ( float $x, float $y, float &$nInicio, float $hmax, $pag, $totpag, $hCabecItens = 7 ) : float
$x float Posição horizontal canto esquerdo
$y float Posição vertical canto superior
$nInicio float Número do item inicial
$hmax float Altura máxima do campo de itens em mm
return float Posição vertical final

pNotaCancelada() protected method

fim função printDANFE
protected pNotaCancelada ( )

pNotaDPEC() protected method

protected pNotaDPEC ( )

pNotaDenegada() protected method

protected pNotaDenegada ( )

pRodape() protected method

pRodape Monta o rodapé no final da DANFE com a data/hora de impressão e informações sobre a API NfePHP
protected pRodape ( $x, $y ) : void
return void

pSizeExtraTextoFatura() protected method

pSizeExtraTextoFatura Calcula o espaço ocupado pelo texto da fatura. Este espaço só é utilizado quando não houver duplicata.
protected pSizeExtraTextoFatura ( ) : integer
return integer

pTransporteDANFE() protected method

transporteDANFE Monta o campo de transportes da DANFE (retrato e paisagem)
protected pTransporteDANFE ( float $x, float $y ) : float
$x float Posição horizontal canto esquerdo
$y float Posição vertical canto superior
return float Posição vertical final

printDANFE() public method

O destino da impressão pode ser : I-browser D-browser com download F-salva em um arquivo local com o nome informado S-retorna o documento como uma string e o nome é ignorado. Para enviar o pdf diretamente para uma impressora indique o nome da impressora e o destino deve ser 'S'.
public printDANFE ( string $nome = '', string $destino = 'I', string $printer = '' ) : string
$nome string Path completo com o nome do arquivo pdf
$destino string Direção do envio do PDF
$printer string Identificação da impressora no sistema
return string Caso o destino seja S o pdf é retornado como uma string

printDocument() public method

printDocument
public printDocument ( string $nome = '', string $destino = 'I', string $printer = '' ) : object
$nome string
$destino string
$printer string
return object pdf

simpleConsistencyCheck() public method

simpleConsistencyCheck
public simpleConsistencyCheck ( ) : boolean
return boolean Retorna se o documento se parece com um DANFE (condicao necessaria porem nao suficiente)

Property Details

$ICMSTot protected property

Node
protected DOMNode $ICMSTot
return DOMNode

$ISSQNtot protected property

Node
protected DOMNode $ISSQNtot
return DOMNode

$cobr protected property

Node
protected DOMNode $cobr
return DOMNode

$compra protected property

Node compra
protected DOMNode $compra
return DOMNode

$debugMode protected property

ativa ou desativa o modo de debug
protected int $debugMode
return integer

$descProdInfoComplemento public property

Parâmetro do controle se deve concatenar automaticamente informações complementares na descrição do produto, como por exemplo, informações sobre impostos.
public bool $descProdInfoComplemento
return boolean

$descProdQuebraLinha public property

Parâmetro do controle se deve gerar quebras de linha com "\n" a partir de ";" na descrição do produto.
public bool $descProdQuebraLinha
return boolean

$dest protected property

Node
protected DOMNode $dest
return DOMNode

$destino protected property

destino do arquivo pdf I-borwser, S-retorna o arquivo, D-força download, F-salva em arquivo local
protected string $destino
return string

$det protected property

Node
protected DOMNode $det
return DOMNode

$dom protected property

Document
protected DOMDocument $dom
return DOMDocument

$dup protected property

Node
protected DOMNode $dup
return DOMNode

$emit protected property

Node
protected DOMNode $emit
return DOMNode

$enderDest protected property

Node
protected DOMNode $enderDest
return DOMNode

$enderEmit protected property

Node
protected DOMNode $enderEmit
return DOMNode

$entrega protected property

Node
protected DOMNode $entrega
return DOMNode

$errMsg protected property

mesagens de erro
protected string $errMsg
return string

$errStatus protected property

status de erro true um erro ocorreu false sem erros
protected bool $errStatus
return boolean

$exibirIcmsInterestadual public property

Parâmetro para exibir ou ocultar os valores do ICMS Interestadual e Valor Total dos Impostos.
public bool $exibirIcmsInterestadual
return boolean

$exibirPIS public property

Parâmetro para exibir ou ocultar os valores do PIS/COFINS.
public bool $exibirPIS
return boolean

$exibirTextoFatura public property

Parâmetro para exibir ou ocultar o texto adicional sobre a forma de pagamento e as informações de fatura/duplicata.
public bool $exibirTextoFatura
return boolean

$exibirValorTributos public property

Parâmetro para exibir ou ocultar o texto sobre valor aproximado dos tributos.
public bool $exibirValorTributos
return boolean

$fontePadrao protected property

Nome da Fonte para gerar o DANFE
protected string $fontePadrao
return string

$formatoChave protected property

Formato chave
protected string $formatoChave
return string

$hPrint protected property

Comprimento (altura) imprimivel, em milímetros
protected float $hPrint
return float

$ide protected property

Node
protected DOMNode $ide
return DOMNode

$infAdic protected property

Node infAdic
protected DOMNode $infAdic
return DOMNode

$infNFe protected property

Node
protected DOMNode $infNFe
return DOMNode

$infProt protected property

Node infProt
protected DOMNode $infProt
return DOMNode

$logoAlign public property

alinhamento padrão do logo (C-Center)
public string $logoAlign
return string

$logomarca protected property

path para logomarca em jpg
protected string $logomarca
return string

$numero_registro_dpec public property

Numero DPEC
public string $numero_registro_dpec
return string

$orientacao protected property

orientação da DANFE P-Retrato ou L-Paisagem
protected string $orientacao
return string

$papel protected property

formato do papel
protected string $papel
return string

$pdf protected property

objeto fpdf()
protected object $pdf
return object

$pdfDir protected property

diretorio para salvar o pdf com a opção de destino = F
protected string $pdfDir
return string

$qCanhoto public property

quantidade de canhotos a serem montados, geralmente 1 ou 2
public int $qCanhoto
return integer

$qtdeItensProc protected property

quantidade de itens já processados na montagem do DANFE
protected int $qtdeItensProc
return integer

$reboque protected property

Node reboque
protected DOMNode $reboque
return DOMNode

$retirada protected property

Node
protected DOMNode $retirada
return DOMNode

$situacaoExterna public property

Situação
public int $situacaoExterna
return integer

$textoAdic protected property

Texto
protected string $textoAdic
return string

$tpEmis protected property

Tipo de emissão
protected int $tpEmis
return integer

$tpImp protected property

1-Retrato/ 2-Paisagem
protected int $tpImp
return integer

$transp protected property

Node
protected DOMNode $transp
return DOMNode

$transporta protected property

Node
protected DOMNode $transporta
return DOMNode

$veicTransp protected property

Node
protected DOMNode $veicTransp
return DOMNode

$version protected property

versão
protected string $version
return string

$wAdic protected property

Largura
protected float $wAdic
return float

$wCanhoto protected property

largura do canhoto (25mm) apenas para a formatação paisagem
protected float $wCanhoto
return float

$wPrint protected property

largura imprimivel, em milímetros
protected float $wPrint
return float

$xml protected property

XML NFe
protected string $xml
return string

$yDados public property

Posição
public float $yDados
return float