EXEMPLO DO MAKE XML

721 views
Skip to first unread message

Eduardo Joseph

unread,
Dec 5, 2017, 12:03:41 PM12/5/17
to NFePHP
Boa tarde, galera.

Desculpa a ignorância, mas procurei um pouco no grupo e não achei algo sobre..
alguém poderia disponibilizar algum código ou exemplo (página php inteira, com os imports) do make xml? usando o stdclass?

Muito obrigado desde já!

Sérgio Santos

unread,
Dec 5, 2017, 1:46:19 PM12/5/17
to NFePHP
Olá Eduardo,

veja se é isso que você está precisando...

https://github.com/nfephp-org/sped-nfe/blob/master/docs/Make.md

Eduardo Joseph

unread,
Dec 5, 2017, 6:20:45 PM12/5/17
to NFePHP
Muito obrigado pela resposta, Sérgio.
Eu já tinha visto este link, mas me deixou na dúvida de como fazer os imports e tudo mais (somente pra criar o xml, por enquanto)

Por enquanto, tá assim, confere?

<?php
error_reporting(E_ALL);
ini_set('display_errors', 'On');
require_once 'bootstrap.php';
use NFePHP\NFe\Tools;
use NFePHP\Common\Certificate;
use NFePHP\Common\Soap\SoapCurl;
use NFePHP\NFe\Make;
use NFePHP\NFe\Common\Standardize;
use NFePHP\NFe\Factories\Protocol;
use NFePHP\NFe\Complements;


$arr = [
       "atualizacao" => date('Y-m-d h:i:s'),
  "tpAmb" => 2,
  "razaosocial" => "xxx",
 "cnpj" => "xxx",
    "siglaUF" => "SE",
     "schemes" => "PL008i2",
"versao" => '3.10',
    "tokenIBPT" => "",
     "CSC" => "xxx",
       "CSCid" => "000001",
   "proxyConf" => [
               "proxyIp" => "",
               "proxyPort" => "",
             "proxyUser" => "",
             "proxyPass" => ""
      ]  
];
//monta o config.json
$configJson = json_encode($arr);
//carrega o conteudo do certificado.
$cert = file_get_contents('cert/cert.pfx');

$tools = new Tools($configJson, Certificate::readPfx($cert, 'xxx'));
$tools->model(65);
$nfe
= new Make();

E daí, já faz o $nfe->tag***?
Onde posso encontrar todos os $nfe->tag*** obrigatórios pra modelo 65?

Mais uma vez, desculpa a ignorância.. sei que posso encontrar na web, mas tentei procurar e não encontrei algo específico. Talvez vocês possam me ajudar!
Muito obrigado desde já!

F.A Informática

unread,
Dec 5, 2017, 7:07:38 PM12/5/17
to NFePHP
Olá Eduardo! Me chama no whatsapp que falamos sobre!

(94)99200-6065

Sérgio Antônio dos Santos

unread,
Dec 6, 2017, 5:51:01 AM12/6/17
to nfe...@googlegroups.com
Eu estou fazendo assim:

$nfe = new Make();
################ Node principal ################
    $std
= new stdClass();
    $std
->versao = '4.00';
    $std
->Id = null;
    $std
->pk_nItem = null;
    $elem
= $nfe->taginfNFe($std);
################ Node principal ################



################ Node de identificação da NFe ################
    $serie
= $serie*1;
    $nfEntSai
= $nfEntSai*1;
    $tpImp
= 1;

    $std
= new stdClass();
    $std
->cUF = $cUF;
    $std
->cNF = $cNF;
    $std
->natOp = $arrNatOp['tipnot_natureza_operacao'];
    $std
->mod = $mod;
    $std
->serie = $serie;
    $std
->nNF = $nfEntSai;
    $std
->dhEmi = $dhEmi;
    $std
->dhSaiEnt = $dhSaiEnt;
    $std
->tpNF = $tpNF;
    $std
->idDest = $idDest;
    $std
->cMunFG = $cMunFG;
    $std
->tpImp = $tpImp;
    $std
->tpEmis = $tpEmis;
    $std
->cDV = null;
    $std
->tpAmb = $this->tpAmb;
    $std
->finNFe = $finNFe;
    $std
->indFinal = $indFinal;
    $std
->indPres = $indPres;
    $std
->procEmi = $procEmi;
    $std
->verProc = $verProc;
    $std
->dhCont = $dhCont;
    $std
->xJust = $xJust;
    $elem
= $nfe->tagide($std);
################ Node de identificação da NFe ################


....... OUTROS NODES .......



Por fim instancio a tools

        ############### TOOLS ###############
            $pathEmpresa
= strtoupper($dadosEmpresa['cencus_linksimbolico']);

            $senhaCertificado
= "******";            
            $urlCertificado
= "*****.p12";
            $certificado
= file_get_contents($urlCertificado);

            $urlConfigJson
= "/configv5.json";
            $configJson
= file_get_contents($urlConfigJson);
           
            $certificate
= Certificate::readPfx($certificado, $senhaCertificado);
            $tools
= new Tools($configJson, $certificate);
            $tools
->model('55');
            $tools
->version('4.00');
       
############### TOOLS ###############

        try{
            $xml = $nfe->getXML();           
        }catch(Exception $e){
            $erro = $e->getMessage();
        }

        $stringXML = "/****.xml";
       
try{
            $xmlAssinado
= $tools->signNFe($xml);
            $xml
= $xmlAssinado;
       
}catch(Exception $e){
            $erro
= $e->getMessage();
       
}

E salvo o xml

        $xmlImportacao = fopen($stringXML,"w");
        fwrite
($xmlImportacao, $xml);
        fclose
($xmlImportacao);


Sérgio Antônio dos Santos
Bacharel em Sistemas de Informação

-----------
“O que vale a pena possuir, vale a pena esperar”.
Santa Teresa Benedita da Cruz (Edith Stein 1891-1945)

--
--
Você recebeu esta mensagem porque está inscrito no Grupo "NFePHP".
Para Postar: nfe...@googlegroups.com
Para Sair do Grupo: nfephp+unsubscribe@googlegroups.com
Link: http://groups.google.com.br/group/nfephp?hl=pt-BR
-------
Repositório: https://github.com/nfephp-org/nfephp
---
Você recebeu essa mensagem porque está inscrito em um tópico no grupo "NFePHP" dos Grupos do Google.
Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/nfephp/NnM5PhIUO8k/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para nfephp+unsubscribe@googlegroups.com.
Para mais opções, acesse https://groups.google.com/d/optout.

Eduardo Joseph

unread,
Dec 6, 2017, 7:34:03 AM12/6/17
to NFePHP
Entendi. Vou levar seu arquivo como exemplo no desenvolvimento, gostei da estrutura. Se puder, me enviar ele completo com todos os NODES pra meu email, me ajudaria demais! Enviar para eduj...@gmail.com
Muito obrigado pela ajuda, Sérgio.
Para Sair do Grupo: nfephp+un...@googlegroups.com

Link: http://groups.google.com.br/group/nfephp?hl=pt-BR
-------
Repositório: https://github.com/nfephp-org/nfephp
---
Você recebeu essa mensagem porque está inscrito em um tópico no grupo "NFePHP" dos Grupos do Google.
Para cancelar inscrição nesse tópico, acesse https://groups.google.com/d/topic/nfephp/NnM5PhIUO8k/unsubscribe.
Para cancelar inscrição nesse grupo e todos os seus tópicos, envie um e-mail para nfephp+un...@googlegroups.com.
Reply all
Reply to author
Forward
0 new messages