Git Product home page Git Product logo

nfephp's People

Contributors

andreustimm avatar betoeu avatar binhoouropreto avatar brunoporto avatar chinnonsantos avatar dennyloko avatar diogobd avatar eduardokum avatar eduardokum-curso avatar gabrielzuqueto avatar guicalabria avatar jscorrea avatar julianoamaralchaves avatar lemesdaniel avatar lucasndias avatar marabesi avatar marcosdiez avatar mmorote avatar olavocneto avatar philgruneich avatar psaraiva avatar rafaelcaviquioli avatar robmachado avatar rodrigocandido avatar roquebrasilia avatar rspadim avatar san0suke avatar thicolares avatar tonicospinelli avatar walkeralencar avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

nfephp's Issues

Chave não é setada ao converter pra XML

Olá,
Eu estou gerando o arquivo XML baseado no meu ERP que gera um TXT, porém eu não estou gerando a chave eu estou deixando pra NFePHP gerar, só que ao final da conversão ele somente salvar em $this->chave a chave que eu botei que é vazia, logo em seguida ele gera uma nova chave e porém nao atualiza o $this->chave

Aqui ele salva o que foi colocado (no meu caso em branco)
https://github.com/nfephp-org/nfephp/blob/master/libs/ConvertNFePHP.class.php#L2208
Aqui ele gera, mas em nenhum momento atualiza a variavel
https://github.com/nfephp-org/nfephp/blob/master/libs/ConvertNFePHP.class.php#L2215

Dúvida evento de manifesto, porque usar AN?

Pessoal, na classe Tools, método de envio do manifesto, pela linha 3368, temos:

//utilizar AN para enviar o manifesto
$sigla = 'AN';

Pergunto: por que forçamos utilizar o Ambiente Nacional, não poderiamos usar a própria SEFAZ de origem? Por exemplo, se sou do RS, usar a SEFAZ/RS?

Mais parâmetros para o módulo de construção da DANFE

Olá pessoal.

Muito bom o projeto, estou usando o módulo de geração do DANFE.

Achei interessante você poder escolher o formato da DANFE e da folha entre outras coisas.

Há planos para mais parâmetros configuráveis nesse módulo? Como configuração de margens, ligar e desligar a exibição de campos opcionais entre outras coisas.

Seria interessante o construtor do DANFE aceitar tais modificações. Atualmente estou usando um fork personalizado para se adequar ao meu uso.

Nova versão do XML da Receita

Fiquei sabendo que no ano que vem a receita vai mudar o Layout do XML para a versão 3, gostaria de saber como ficará a manutenção desse projeto?

Vai afetar muita coisa ou o sistema já está preparado para essa atualização?

Instalação via composer

Olá, tenho 2 dúvidas sobre a instalação da lib via composer.

Em primeiro lugar, o pacote nfephp/nfephp que está no packagist é mesmo de um fork que não é atualizado há 2 anos, e não de vocês que estão em constante desenvolvimento?

E depois, a instalação via composer realmente funciona? No seu composer.json tem a parte:

"autoload": {
    "psr-0": {
        "NFePHP": "src"
    }
}

porém esse diretório src nem existe no repositório da lib e com isso não consigo dar um use nas classes, que também tem um nome diferente do nome do arquivo, o que causa conflito de acordo com PSR-0. Está errado mesmo ou eu que estou fazendo algo errado?

Abs.

Que tal criar uma tag para cada versão?

Pelo código é possível ver que a biblioteca está na versão 2.1.20 . Já que no git temos a possibilidade de utilizar tags para registrar quando cada versão foi liberada, seria interessante utilizar nesse projeto também.

O que acham?

Tela de instalação

Olá,

estou na etapa inicial de instalação, e me surgiu 2 problemas:

  1. Me informava que: "Diretório $arquivosDir não existe !!", mas se referindo ao diretório nfe. Uso no ambiente de produção um lampp básico. O script de instalação reconhece o diretório no campo "path completo" mas, não nos seguintes, onde ele coloca automaticamente como diretório padrão /var/www. Alterei aqui uma linha dizendo que o $arquivosDir = $pathdir, mas gostaria de saber o que esse $arquivosDir deveria fazer, se é realmente informar o $pathdir apenas. Se for, posso fazer alguns ajustes aqui e enviar de volta.
    problemanfephp
  2. Talvez pelo problema anterior, não faço idéia de onde encontrar o diretório cte. Onde ele deveria ficar? No mesmo lugar do nfe?

Peço estas respostas apenas, pois posso fazer os ajustes corretamente e reenviar o arquivo.

Um abraço!

Instalação MAC

Pessoal, entrei agora na comunidade Git e não acompanhei nada do projeto, fui efetuar a instalação pela primeira vez pois meu objetivo é integração com meus sistemas, fiz o Sync pelo app oficial do Github e acessei o install.php, ele deu um retorno de página em branco e alterou o config colocando ' antes de todos os valores das variaveis, no meu entendimento este pode ser um bug pois é um comportamento que nunca vi antes, meu ambiente é OS X Montain Lion (10.8) com MAMP (com php 5.3.3), isso já é conhecido por outros usuários?

Alterar formato do logotipo

Olá,
Na seguinte linha vocês passam fixo que o tipo de imagem é jpeg, porém a própria biblioteca de geração do PDF verifica automaticamente caso você passe em branco, então acho que poderia deixar em branco pra deixar a biblioteca verificar né? No meu caso por exemplo, meu logo está em PNG e a diferença é de 4KB para 11KB..
https://github.com/nfephp-org/nfephp/blob/master/libs/DanfeNFePHP.class.php#L850

O que vocês acham? Algum motivo especial para fixar o JPEG?

ToolsNFePHP::manifDest() -- CNPJ do autor do evento

Olá,

No método de manifestação do destinatário, a API utiliza direto a propriedade $this->cnpj na montagem do XML de entrada do WS, porem me parece que o objetivo desta propriedade é ser o CNPJ do emitente da NF-e.

Quem sabe adicionamos o CNPJ do autor do evento como um parâmetro do método manifDest()? Acredito que desta forma seria mais fácil de entender o funcionamento deste método.

Futuro da API

Olá pessoal tudo certo? Pretendo começar a contribuir com este projeto e também portalo para JavaScript, queria saber de vocês se tem e quais são as pretensões.
Vi que ainda não esta disponível no composer, esta ai um motivo para refatoração.
Também vi que não ha algum serviço de teste como phpunit por exemplo, existe algum interesse em trabalhar com alguma ferramenta para este fim?
Em fim, quando pretendem começar a trabalhar em alguma nova versão?

Num Itens X Num Paginas

Estou executando a funçao printNFE em um XML que possui 74 itens que ocupam 3 linhas cada, com fonte padrao. A funçao gera um pdf com 3 paginas e apenas 72 itens. Ao adicionar mais 4 itens, a funçao gera a quarta pagina, e exibe corretamente os 76 itens. Passei algumas horas tentando encontrar algum erro no calculo da area total disponivel para os itens, que fisesse com que esses itens nao fossem exibidos ou que a funçao nao gerasse uma nova pagina, mas nao encontrei nada.

Classe Tools, pasta de consultadas

Olá, na classe Tools, no final do método getListNFe, onde temos:

if (!file_put_contents($this->temDir."$this->cnpj-$ultNSU-$datahora-resLNFe.xml", $retorno)){

Acho que o correto seria salvar na pasta de consultadas, ao invés de temporárias? Aparentemente a prop "conDir" não está sendo usada para nada...

Dacte erro linha 1625

na clase DacteNFePHP.class.php, na linha 1625, quando a variavel $texto estiver em branco ocorre erro no uso do number_format porque a variavel esta vazia, seria interessante colocar um
if ($texto =! '') {$texto = number_format($texto ,2, ",", ".");}

DANFE - Pesos zerados "vs" não informados

Olá pessoal,

Os campos (tags) de peso bruto e peso líquido são opcionais na NF-e, correto?

Bom, na classe de geração do DANFE, linha ~1819, iniciamos duas variáveis que vão somar o peso total, porem desta forma se na verdade os pesos não foram informados, o DANFE vai acabar mostrando como "0,000".

Penso que deveríamos manter nulo/vazio no DANFE, se não existir peso, ao invés de acabar totalizando zerado, o que vocês acham?

Obrigado!

AutoCTePHP.class.php

estou usando a api autoCteNfePHP.clas.php, para protocolar o xml do cte, porém da um erro na linha 344, porque não encontra o arquivo com extesão
41130381800849001628570030000000241000000245-cteprot.xml mas na verdade na pasta temporarias tem o arquivo com nome
41130381800849001628570030000000241000000245-prot.xml sem a palavra cte, por isso da o erro na linha 344.

pergunto
esse erro é da classe ou eu tenho que informar alga no momento do envio para que gere o arquivo com estensao ????????????????-cteprot.xml

outro detalhe quando o protocolo é salvo na pasta temporarias, a classe CteNFePHP.class.php na linha 1850 ele salva o arquivo como -prot.xml acredito eu que deveria ser -cteprot.xml.

Alterações iniciais classes Tools e DanfeNFe

Boa tarde,

Fiz um pequeno conjunto de alterações iniciais, nas classes Tools e DanfeNFe:

https://github.com/fmertins/nfephp/commits/develop/libs

Estou com a minha branch como "develop", pensei em você apenas dar uma olhada, e conforme a sua análise, atualizar algo no repo; a ideia principal que pensei foi em ir tentando alterar o código e fazendo commits frequentes e pequenos, fáceis dos outros desenvolvedores revisar, ao invés de um commit gigante e complexo cheio de alterações...

Por hoje é isso :-) Valeu!

Emitindo Nota Fiscal de Serviços Eletrônica

Olá,

Meus parabéns pela iniciativa de criar uma classe tão útil. Eu vi toda a parte de emissão de NF-e e entendi o processo:
Gera TXT > Gera XML > Assina > Transmite

Gostaria de saber como funciona o processo no caso das NFS-e. É a mesma coisa? Qual classe eu uso etc..

Obrigado!

Layout 3.10 - Classe Tools

Bom dia Roberto,

Buenas, criei uma branch no meu fork (até para aprender mais um pouco sobre git) referente ao novo layout e comecei a revisar o arquivo /config/nfe_ws3.xml e o método "loadSEFAZ()" da classe Tools.

Me deparei com a linha ~3870 onde temos:

$xpathExpression = "/WS/UF[sigla='" . $alias . "']/$sAmbiente";

Este método loadSEFAZ já é utilizado logo no construtor da classe Tools, porem a partir de agora teremos que saber o modelo da NF-e, se é 55 ou 65, correto? Para ter condições de fazer o xpathExpression informando o elemento do modelo, mas como saber o modelo logo ao instanciar a classe Tools?

Composer

Olá,
Porque o composer foi removido?
Inclusive tinha uma sugestão para fazer!

AutoCTePHP.class.php

quando tento validar um XML, esta dando erro de indice na linha 219

trocar
$this->errMsg .= $aName[$x] . ' ... ' . $aError['error'] . '\n';

por
$this->errMsg .= $aName[$x] . ' ... ' . $aError . '\n';

Att.

Tag Imposto não inserida dentro da tag det

Boa Tarde, não sei se é bem aqui que eu deveria escrever isto, mas na Classe MakeNFePHP.class.php quando disparo o método montaNFe() , as tags de imposto não são inseridas dentro das suas respectivas tags det, não sei também se por desconhecimento não consegui fazer, mas dando uma olhada na classe percebi que o atributo $aImposto não é utilizado no metodo montaNFe() . Percebi que vários métodos dessa classe estão em branco, eles estão ali para serem implementados ainda? Caso eu os implemente posso dar o pull request?

desde já agradeço e os parabenizo pela iniciativa!

Erro na Assinatura do XML

Foi identificado que no arquivo ToolsNFePHP.php no método signXML existe um erro, ao ser executado a leitura da chave privada
-> $priv_key = fread($fp, 8192);
somente esta lendo parte do arquivo, assim dando erro, foi corrigido deixando assim
-> $priv_key = fread($fp, filesize($fp));

Schemes

Olá,
Hoje estava inserindo o atributo vTotTrib, mais meu XSD não validava, comecei a ver e verifiquei que eu utilizava o schema PL_006n deve ter pego de algum exemplo, só pra confirmar, eu preciso utilizar o schema mais novo possível certo? PL_008b no caso!

erro classe CteNfePHP.class.php

quando consulto recibo "getProtocol" apresenta erro em duas linhas
Notice: Undefined Variable: scan in /var/www/nfephp/libs/CTeNFePHP.class.php on line 1658
Notice: Undefined Variable: aProt in /var/www/nfephp/libs/CTeNFePHP.class.php on line 1821

teria que inicializar essa duas variáveis antes de usa-la, fiz uma alteração e o erro parou de ocorrer.
a variável $aProt eu inicializei na linha 1784
a variável $scan eu inicializei na linha 1643..

att.
Sidnei.

Erro verificação de variáveis em DanfeNFePHP.class.php

Há dois erros de verificação de variáveis na class DanfeNFePHP:

1889: 
-        if (is_numeric($pesoBruto)) {
+        if (isset($pesoBruto) && is_numeric($pesoBruto)) {

e

1992:
-        if (is_numeric($pesoLiquido)) {
+        if (isset($pesoLiquido) && is_numeric($pesoLiquido)) {

Isto pode causar erros na geração do PDF se estiver marcado para mostrar erros e caso essas variaveis não sejam definidas.

Isto ocorre pelo menos no PHP 5.4, não verifiquei no 5.3, mas adicionando o isset já resolve e é mais rapido no caso de não ser definida

getNFe

Bom dia.
Pelo que vi o serviço NfeDownloadNF já está disponível no sefaz. Alterei o método para tentar usar só que o sefaz só me retorna "410 Rejeicao: UF informada no campo cUF nao e atendida pelo Web Service". Alguém tem informações sobre esse serviço?

Erro ao usar modo cURL

Olá,
Quando eu uso o método SOAP nativo, tudo funciona normalmente, porém em todos os exemplos eu vejo as pessoas vocês usando o cURL e também é a opção default, porém quando eu o uso ele eu recebo o seguinte erro:
403.7 - Forbidden: SSL client certificate is required.
Alguém tem alguma idéia do que pode ser?

Duvida em pesquisar ao sefaz

Ola , tenho uma duvida que estou tentando resolver em questão que eu quero fazer uma busca de como meu cte esta la no sefaz que quando eu autorizo meu cte tem vezes que o xml não gera nas enviadas mas consta no sefaz de que maneira eu posso fazer uma pesquisa para coletar esse xml e fazer gerar o dact com segurança .

Att,
Cacio

Erro de validação

Olá,

vi os resultados sobre os erros de validação, e para atualizar:

  • Tenho instalado e configurado a versão 2.9.1 do libxml2, e mesmo assim não consigo validar nenhum XML.

O bug que eles possuem é que não conseguem fazer um parse em regras de expressão regular do tipo {a,b} e {a,} (onde a e b são números)

Qualquer validador em linux que se baseie no libxml2 irá ter problemas:

  • xmlstarlet, lxml (python), xmllint, e outros.

Se alguém conseguiu validar usando a versão mais nova, por favor me digam como, pois estou sem sucesso.

Dúvida em relação aos diretórios

Olá,
O sistema cria diversos diretórios, porém notei durante meu uso que somente o diretório temporário foi utilizado e com os recibos das comunicações...
Em meu sistema eu sempre gero o XML (para garantir que todas as novas alterações estarão presentes) esse XML, eu já valido, assino, e envio.. Em momento nenhum eu estou salvando o XML, porém inicialmente eu imaginei que ele estaria disponivel em alguma pasta, mas não está! E eu gostaria de dar uma opção de fazer o download do XML enviado...
Como normalmente vocês fazem isso, vocês gravam na mão no diretório validadas, depois de assinar, copiam ou movem para assinadas, aguardam mais tarde o resultado se foi enviado com sucesso vai pra copiam/movem para enviadas/aprovadas ou enviadas/denegadas...
Enfim, gostaria de saber normalmente como você fazem esse controle?

Envio de lote a Sefaz no Windows Server 2008

Pessoal,

estou implementando a API em um servidor em com Windows Server 2008 com IIS 7.5 e PHP instalado direto no windows sem apache. Consigo fazer todo o processo de assinatura e validação do xml, mas quando tento enviar a NF-e para sefaz com a função sendLot(), ocorre o seguinte erro:

Error Summary
HTTP Error 500.0 - Internal Server Error
C:\PHP_5.3\php-cgi.exe - The FastCGI process exceeded configured activity timeout

Detailed Error Information
Module FastCgiModule
Notification ExecuteRequestHandler
Handler PHP5.3-FastCGI
Error Code 0x80070102

Debugando percebi que o erro ocorre na função __sendSOAP2 quando CURL é executado ($__xml = curl_exec($oCurl);)

Alguém alguma solução?

Pequeno ajuste em um exemplo!

Os seguintes arquivos: "exemplosNFSe.php":1:326:332:340:344, "danfe.class.php":1, estão usando short tags cujo o mesmo pode estar desabilitado em algum servidor. Dando o retrabalho, ou não.

Bom só para avisar!

DANFE - Bug na linha 417?

Boa tarde pessoal, estava revisando alguns códigos na classe do DANFE da NF-e, na linha 417 temos:

$flagVTT = $flagVTT && (strpos(strtolower(trim($this->textoAdic)),'trib') || strpos(strtolower(trim($textoAdic)),'imp'));

Me parece que a variável "$textoAdic" deveria ser "$this->textoAdic", correto?

Cupom Fiscal Eletronico

ola, havia conversado com Sr. Roberto sobre o CFe, o mesmo informou que para que o CFe funcione é necessário ter um SAT, porém aqui na empresa aonde eu trabalho, foi feito o processo deo CFe igual ao da NFe sem o SAT para os estados do MT e RS.
Gostaria de entender melhor o funcionando desse SAT e se foi mensionado que é necssário o equipamento SAT como foi posssivel fazer aqui na empresa sem o mesmo.

Bug cte_ws1.xml? Consulta CT-e RS homologação

Olá,

No arquivo config/cte_ws1.xml a configuração do serviço de consulta do CT-e parece estar errada, apenas para o ambiente de homologação, pois se chama "CteConsulta" e me parece que o nome correto deveria ser "CteConsultaProtocolo" (que é o nome utilizado para os demais estados)

Tools - Método envCCe() com parâmetro &$aRetorno

Prezados!

Estou analisando o método envCCe() da classe Tools, como ele retorna direto o XML de processamento de evento, estou com dificuldades em obter algumas informações da estrutura XML de retorno do webservice, então pensei em criar neste método um parâmetro "$aRetorno" passado por referência, no mesmo padrão do método getProtocol(), aí sim neste array, o método poderia montar as informações apenas do XML de retorno do webservice, o que acham?

Desta forma, o atual retorno em XML do método, contendo o processamento de evento, não precisa ser modificado...

Estou focado nisso então tenho condições de implementar, só quis perguntar primeiro para trocar uma ideia, obrigado!

AutoCTePHP.class.php

estou usando a api autoCteNfePHP.clas.php, para protocolar o xml do cte, porém da um erro na linha 344, porque não encontra o arquivo com extesão

41130381800849001628570030000000241000000245-cteprot.xml mas na verdade na pasta temporarias tem o arquivo com nome
41130381800849001628570030000000241000000245-prot.xml sem a palavra cte, por isso da o erro na linha 344.

pergunto
esse erro é da classe ou eu tenho que informar alga no momento do envio para que gere o arquivo com estensao ????????????????-cteprot.xml

outro detalhe quando o protocolo é salvo na pasta temporarias, a classe CteNFePHP.class.php na linha 1850 ele salva o arquivo como -prot.xml acredito eu que deveria ser -cteprot.xml.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.