Olá, como podemos lhe ajudar?
Funcionalidade para gerar o XML do grupo do Emitente da NF-e [emit].
string emitente2G(string CNPJ, string CPF, string xNome, string xFant, string xLgr, string nro, string xCpl, string xBairro, string cMun, string xMun, string UF, string CEP, string cPais, string xPais, string fone, string IE, string IEST, string IM, string CNAE, string CRT)
Funcionalidade para gerar o XML do grupo do Emitente da NF-e.
nome | tipo | tam. | obrig. | descrição |
---|---|---|---|---|
CNPJ | string | 14 | sim | informar o CNPJ do emitente, sem formatação ou máscara |
CPF | string | 11 | sim | informar o CPF do emitente, sem formatação ou máscara, utilizado apenas quando o fisco emite a nota fiscal |
xNome | string | 2-60 | sim | informar a razão social do emitente |
xFant | string | 1-60 | não | informar o nome fantasia do emitente, pode ser omitido |
xLgr | string | 2-60 | sim | informar o logradouro do emitente |
nro | string | 1-60 | sim | informar o número do endereço do emitente, campo obrigatório. Informar S/N ou . (ponto) ou – (traço) para evitar falha de schema XML quando não houver número. |
xCpl | string | 1-60 | não | informar o complemento do endereço do emitente, pode ser omitido |
xBairro | string | 2-60 | sim | informar o bairro do endereço do emitente |
cMun | string | 7 | sim | informar o código do município na codificação do IBGE com 7 dígitos |
xMun | string | 2-60 | sim | informar o nome do município |
UF | string | 2 | sim | informar a sigla da UF |
CEP | string | 8 | sim | informar o CEP, passou a ser de informação obrigatória a partir da NT 2011/004. |
cPais | string | 4 | não | informar o código do pais na codificação do BACEN, se informado deve ser 1058 |
xPais | string | 6 | não | informar o nome do país, se informado deve ser Brasil ou BRASIL |
fone | string | 6-14 | não | informar o telefone com DDD + número, sem formatação. |
IE | string | 2-14 | sim | informar a IE do emitente, sem formatação ou máscara |
IEST | string | 2-14 | não | informar a IE ST, sem formatação ou máscara, quando praticar alguma operação como substituto tributário |
IM | string | 1-15 | não | informar a Inscrição Municipal, sem formatação ou máscara, quando emitir NF conjugada (prestação de serviço com fornecimento de peças) |
CNAE | string | 7 | não | informar o CNAE Fiscal, este campo deve ser informado em conjunto com o campo IM e vice-versa, a informação de um e omissão do outro resulta em falha de Schema XML |
CRT | string | 1 | sim | informar o Código de Regime Tributário – CRT, valores válidos: 1 – Simples Nacional; 2 – Simples Nacional – excesso de sublimite de receita bruta; 3 – Regime Normal. |
Um string com o grupo XML com os dados do emitente.
Exemplo de XML das informações do emitente
<emit>
<CNPJ>99999090910270</CNPJ>
<xNome>NF-e Associacao NF-e</xNome>
<xFant>NF-e</xFant>
<enderEmit>
<xLgr>Rua Central</xLgr>
<nro>100</nro>
<xCpl>Fundos</xCpl>
<xBairro>Distrito Industrial</xBairro>
<cMun>3502200</cMun>
<xMun>Angatuba</xMun>
<UF>SP</UF>
<CEP>17100171</CEP>
<cPais>1058</cPais>
<xPais>Brasil</xPais>
<fone>1733021717</fone>
</enderEmit>
<IE>123456789012</IE>
<CRT>3</CRT>
</emit>
Importante
O trecho do XML foi formatado para uma melhor visualização, a mensagem original não tem formatação.
Vale observar que a formatação pode corromper a assinatura digital, além de ocupar espaço e ser desnecessária, pois os browser exibem formatado.
Visual Basic 6.0
' inicializar variáveis
'...............................................
Dim objNFeUtil As Object
Set objNFeUtil = CreateObject("NFe_Util_2G.Util")
'
' criação dos grupos
'
'=====grupo de identificação do emitente (grupo B do Manual de integração 4.01-NT2009/006 - página 113)=======
'
' <>&" são caracteres reservados do XML e devem ser evitados ou substituídos
' por < &gy; & "
'
' Vale ressaltar que as aplicações das UF devem mostrar DIAS & DIAS TENTANDO S/A,
' pois não entedem & como &, assim talvez seja melhor substituir o & por e.
'
emi_CNPJ = "99999999000191" ' CNPJ do emitente sem máscara de formatação
emi_CPF = "" ' CPF do emitente, uso exclusivo do Fisco
emi_xNome = "DIAS e DIAS TENTANDO S/A" ' Razão social do emitente, evitar caracteres acentuados e &
emi_xFant = "DDT" ' Nome fantasia
emi_xLgr = "AV PRINCIPAL" ' logradouro
emi_nro = "S/N" ' número, informar S/N quando inexistente para evitar erro de Schema XML
emi_xCpl = "10 andar" ' complemento do endereço, o conteúdo pode ser omitido
emi_xBairro = "CENTRO" ' bairro
emi_cMun = "3550308" ' código do município - codificação IBGE, deve ser
' compatível com a UF
emi_xMun = "SAO PAULO" ' nome do município
emi_UF = "SP" ' sigla da UF
emi_CEP = "01300000" ' CEP - sem máscara
emi_cPais = "1058" ' código do país - deve fixo em 1058 - Brasil
emi_xPais = "Brasil" ' nome do país (Brasil ou BRASIL)
emi_fone = "1133221234" ' número do telefone sem máscara
emi_IE = "123456789011" ' Inscrição Estadual do emitente sem máscara
emi_IEST = "" ' Inscrição Estadual do ST
emi_IM = "" ' Inscrição Municipal
emi_CNAE = "" ' Código do CNAE
emi_CRT = "1" ' Código do CRT: 1-Simples Nacional;
' 2-Simples Nacional - excesso de sublimite de receita bruta;
' 3 - Regime Normal.
'
' gera grupo emi
'
emi = objNFeUtil.emitente2G(emi_CNPJ, emi_CPF, emi_xNome, emi_xFant, emi_xLgr, emi_nro, emi_xCpl, emi_xBairro, emi_cMun, emi_xMun, emi_UF, emi_CEP, emi_cPais, emi_xPais, emi_fone, emi_IE, emi_IEST, emi_IM, emi_CNAE, emi_CRT)
Delphi
procedure TForm1.Button4Click(Sender: TObject);
//
// Exemplo de montagem do grupo emitente
//
var
Util: Olevariant; // exemplo em latebindig
emi: widestring;
emi_CNPJ: widestring;
emi_CPF: widestring;
emi_xNome: widestring;
emi_xFant: widestring;
emi_xLgr: widestring;
emi_nro: widestring;
emi_xCpl: widestring;
emi_xBairro: widestring;
emi_cMun: widestring;
emi_xMun: widestring;
emi_UF: widestring;
emi_CEP: widestring;
emi_cPais: widestring;
emi_xPais: widestring;
emi_fone: widestring;
emi_IE: widestring;
emi_IEST: widestring;
emi_IM: widestring;
emi_CNAE: widestring;
//
// campos novos
//
emi_CRT: widestring;
begin
//
// criação dos grupos
//
//=====grupo de identificação do emitente (grupo B do Manual de integração 4.01-NT2009/006 - página 113)=======
//
// <>&" são caracteres reservados do XML e devem ser evitados ou substituídos
// por < &gy; & "
//
// Vale ressaltar que as aplicações das UF devem mostrar DIAS & DIAS TENTANDO S/A,
// pois não entedem & como &, assim talvez seja melhor substituir o & por e.
//
emi_CNPJ := '99999999000191'; // CNPJ do emitente sem máscara de formatação
emi_CPF := ''; // CPF do emitente, uso exclusivo do Fisco
emi_xNome := 'DIAS e DIAS TENTANDO S/A'; // Razão social do emitente, evitar caracteres acentuados e &
emi_xFant := 'DDT'; // Nome fantasia
emi_xLgr := 'AV PRINCIPAL'; // logradouro
emi_nro := 'S/N'; // número, informar S/N quando inexistente para evitar erro de Schema XML
emi_xCpl := '10 andar'; // complemento do endereço, o conteúdo pode ser omitido
emi_xBairro := 'CENTRO'; // bairro
emi_cMun := '3550308'; // código do município - codificação IBGE, deve ser
// compatível com a UF
emi_xMun := 'SAO PAULO'; // nome do município
emi_UF := 'SP'; // sigla da UF
emi_CEP := '01300000'; // CEP - sem máscara
emi_cPais := '1058'; // código do país - deve fixo em 1058 - Brasil
emi_xPais := 'Brasil'; // nome do país (Brasil ou BRASIL)
emi_fone := '1133221234'; // número do telefone sem máscara
emi_IE := '123456789011'; // Inscrição Estadual do emitente sem máscara
emi_IEST := ''; // Inscrição Estadual do ST
emi_IM := ''; // Inscrição Municipal
emi_CNAE := ''; // Código do CNAE
emi_CRT := '1'; // Código do CRT: 1-Simples Nacional;
// 2-Simples Nacional - excesso de sublimite de receita bruta;
// 3 - Regime Normal.
//
// gera grupo emi
//
Util := CreateOleObject('NFe_util_2G.util');
emi := Util.emitente2G(emi_CNPJ, emi_CPF, emi_xNome, emi_xFant, emi_xLgr, emi_nro, emi_xCpl, emi_xBairro, emi_cMun, emi_xMun, emi_UF, emi_CEP, emi_cPais, emi_xPais, emi_fone, emi_IE, emi_IEST, emi_IM, emi_CNAE, emi_CRT);
end;