Sefaz Class x HbNFe

Projeto hbNFe (Nota Fiscal Eletronica/Danfe) para [x]Harbour

Moderador: Moderadores

Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7135
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Sefaz Class x HbNFe

Mensagem por sygecom »

chic...
Tenho que estudar mais o Harbour
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
fladimir
Colaborador
Colaborador
Mensagens: 2445
Registrado em: 15 Nov 2006 20:21

Sefaz Class x HbNFe

Mensagem por fladimir »

Leonardo, talvez se pegar os fontes desta contrib consiga compilar no xHarbour não?
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7135
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Sefaz Class x HbNFe

Mensagem por sygecom »

Estive olhando, na versão atual do xHarbour já tem essa LIB, mas ainda uso uma versão defasada do xharbour, na versão mais nova da para usar já.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Sefaz Class x HbNFe

Mensagem por JoséQuintas »

E sobre a NFCe?
Ao que parece, o layout pode ser até parecido com cupom fiscal, a partir de 6 cm de largura.
É isso mesmo?
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
malcarli
Usuário Nível 3
Usuário Nível 3
Mensagens: 246
Registrado em: 20 Ago 2015 18:14
Localização: marilia/sp

Sefaz Class x HbNFe

Mensagem por malcarli »

Sim procede. Implantei Sat, que em sp "substitui" a Nfce. Pode-se emitir nfce em sp, desde que tenha sat. Emitir nfce, sem ter aderido ao sat não pode conforme legislação vigente. Tem muito "cliente espertinho" utilizando nfce sem o sat. Cuidado profissionais em não compactuarem com esse erro, já que no sat existe a vinculação no cnpj da softhouse com o cnpj do cliente, para a geração da chave. Fiz a impressão do sat, utlizando esc-pos puro, pois ai não fiquei na dependencia de dll de terceiros, o único problema que enfrentei no qrcode, muda os código entre as impressoras, mas contornado. Em alguns estados, como o paraná emite a nfce em um formato parecido com a danfe da nfe, tendo o qrcode acrescentado. Se precisar do codigo da impressão posto aqui
Avatar do usuário
fladimir
Colaborador
Colaborador
Mensagens: 2445
Registrado em: 15 Nov 2006 20:21

Sefaz Class x HbNFe

Mensagem por fladimir »

Bom dia,

Já posta pra ficar registrado e quem precisar já tem.

[]'s
Sun Tzu há mais de três mil anos cita nas epígrafes de seu livro “A Arte da Guerra“:

“Concentre-se nos pontos fortes, reconheça as fraquezas, agarre as oportunidades e proteja-se contra as ameaças”.
“Se não é vantajoso, nunca envie suas tropas; se não lhe rende ganhos, nunca utilize seus homens; se não é uma situação perigosa, nunca lute uma batalha precipitada”
.


Até 2017    Desktop Console [ Legado ] Harbour | MinGW | DBF | CDX | FastReport | MySQL


Novos Projetos:

   Desktop Visual           Windev Desktop
   Celular Android/iOS   Windev Mobile
   WEB                            Windev Web


Sejamos gratos a Deus.
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2820
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP
Curtiu: 2 vezes

Sefaz Class x HbNFe

Mensagem por Jairo Maia »

Olá Pessoal,
malcarli escreveu:Tem muito "cliente espertinho" utilizando nfce sem o sat.
Você tem conhecimento disso? Pergunto porque em SP não consegue credenciamento para emissão de NFC-e sem constar um SAT vinculado ao CNPJ do contribuinte e ativo.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
malcarli
Usuário Nível 3
Usuário Nível 3
Mensagens: 246
Registrado em: 20 Ago 2015 18:14
Localização: marilia/sp

Sefaz Class x HbNFe

Mensagem por malcarli »

Somente comentários em grupos, mas eu mesmo não presenciei nenhuma situação, mas tudo se dá jeito. Lembro que qdo lançaram o ecf, tinha empresas vendendo um "chupa cabra". Inclusive uma saiu em reportagem na tv. Comentei somente para alertar de manter-se na legalidade sem se envolver em maracutaias.
malcarli
Usuário Nível 3
Usuário Nível 3
Mensagens: 246
Registrado em: 20 Ago 2015 18:14
Localização: marilia/sp

Sefaz Class x HbNFe

Mensagem por malcarli »

Código: Selecionar todos

*****************************************
* TITULO     : EXTRATO DO S@T FISCAL    *
* DATA       : 08/09/2015               *
* PROGRAMA   : DEMO.PRG                 *
* COMENTARIO : IMPRESSAO DO EXTRATO     *
* COMENTARIO : PARA IMPRESSORA EPSON    *
* COMENTARIO : TM-T20                   *
* COMENTARIO : AGRADECIMENTOS AO SR.    *
* COMENTARIO : FLAVIO SILVA             *
* COMENTARIO : FlavioSilva@epson.com.br *
* DIREITOS   : INFO2000 SISTEMAS        *
* CLIENTE -->: ###     TODOS      ###   *
* COMPILAR COM HARBOUR OU (X)HARBOUR    *
* OU AINDA CLIPPER                      *
*****************************************
#include <minigui.ch>

FUNCTION MAIN() && PARA COMPILAR EM CLIPPER RETIRAR ESSA LINH
   Local I:= 0, cPrinter:= GetDefaultPrinter()

   If Empty(cPrinter)
      MsgStop([Impressora não Selecionada!], [Erro])
      QUIT
   EndIf

      ferase([NFCE.TXT])
      Setalternate([NFCE.TXT])



	*SET PRINT TO "LPT1" && PARA COMPILAR COM CLIPPER DESCOMENTE ESSA LINHA
*	SET PRINT TO ( GetDefaultPrinter() ) && PARA COMPILAR EM CLIPPER RETIRAR ESSA LINHA	

*	SET CONSOLE OFF
*	SET PRINT ON
*	SET DEVICE TO PRINT
	SET MARGIN TO 0
	SETPRC( 0, 0 )

	IMP_Cabecalho()
**
	? "#|COD|DESC|QTD|UN|VL UN R$|(VLTR R$)*|VL ITEM R$" 
	? REPLI( "-", 48 )
	I++
	? STRZERO( I, 3, 0 )
	? SPAC(4) + "123456"
	? SPAC(18) + "TESTE DE PRODUTO"
	? SPAC(5) + "1,000"
	? SPAC(15) + "X" 
	? SPAC(20) + TRANSF( 10, "@E 999,999.99" ) 
	? SPAC(30) + TRANSF( 10, "@E 999,999,999.99" )
	*
	IMP_TOTAIS()
	**
*	SETPRC(0,0)
*	SET PRINT OFF
*	SET CONSOLE ON
*	SET PRINTER TO

      Setalternate()
      WIN_PrintFileRaw(cPrinter, [NFCE.TXT], [TESTE])
      QUIT
RETURN NIL

/*
 IMPRIME O CABELHO DO EXTRATO
*/

FUNCTION IMP_CABECALHO()
*
	? PADC( "NOME FANTASIA", 48 )
	? PADC( "RAZAO SOCIAL", 48 ) 
	? PADC( "RUA UM NRO. 2", 48 )
	? PADC(  "SAO PAULO - SP", 48 ) 
	? PADC( "CNPJ: 11111111111 IE: 22222222", 48 ) 
	? REPLI( "-", 48 )
*
	? PADC( "Extrato No: 123456" , 48 )
	? PADC( "CUPOM FISCAL ELETRONICO - SAT", 48 )
*
	? REPLI( "-", 48 )
	? "CPF/CNPJ do Consumidor: "
	? REPLI( "-", 48 )

RETURN NIL

/*
 IMPRIME OS TOTAIS DO EXTRATO
*/

FUNCTION IMP_TOTAIS()
	? "TOTAL R$ " + TRANSF( 10, "@E 9,999,999.99" )

	? "Dinheiro"
	? SPAC(26) + TRANSF( 10, "@E 999,999,999.99" ) 

	? REPLI( "-", 48 )

	? PADC( "SAT No. 987654321", 48 )

	? PADC( DTOC( DATE() ) +" - "+ TIME(), 48 )

	? CHR(10) + CHR(27) + CHR(97) + CHR(49)									&& Centraliza a Impressão	
	? CHR(27) + CHR(33) + CHR(1) 												&& Muda para a FontB para que o Texto seja impresso em 1 linha
	? PADC( "3514 1146 3772 2200 3730 5990 0000 4630 0011 5817 9941", 56 )
	? CHR(27) + CHR(33) + CHR(0) 												&& Volta para a FontA
**
	QRCODE8()
**
	? CHR(27) + "a" + CHR(0) 													&& Volta a justificar à esquerda
	
	? PADC( "OBRIGADO PELA PREFERENCIA", 48 )
	? REPLICATE( "-", 48 )
	? PADC( "www.info2000sistemas.com.br", 48 )
	? ""
	
	? CHR(29) + CHR(86) + CHR(0) && Aciona Guilhotina
	
RETURN NIL

**
*  FUNCAO PARA IMPRIMIR O QRCode 8cm
**

FUNCTION QRCODE8( QUAL, cXML )

**
* STRING com a linha de dados do QRCode - juntando as variáveis acima separadas pelo pipe.
* Exemplo: "35141146377222003730599000004630001158179941|20141105134922|10.00|61694805808|m+4o8FY1lig1zcy6VU3t7INVwE6kiA/ykLXKDFZfb9gu0g4wl3Fk2HYaRhSt8G+yk9mP/R65m3R7V2IO8CxnmO1oVtlamB6UKA+UZZqDNEqtYlhQzLySNzMG0thaNMZsq5RxmQ3eQLPw8LLez3MqWvUveFXNSSq6AGEX2+KOdavteo3K2L06SQoVIjwkmcgRzqhfHP3y8t2wfr1nw/WAnaCF9ZY/K4dTykk3hsXcan/MKCTBlcSOhNgSh3sdsQHpl2w2tmbLBsYBLFkuvKlwzHarNJQ1RfRznGdojHglQH1KVtbAUXKke54pdRt3JL7nJlR+Lbmtd2tjcT2vRyTepw=="
**
	LOCAL x_TmStp := "20141105134922"
	LOCAL x_Chave := "35141146377222003730599000004630001158179941"
	LOCAL x_Valor := "10.00"
	LOCAL x_CNPJ  := ""
	LOCAL x_Ass   := "m+4o8FY1lig1zcy6VU3t7INVwE6kiA/ykLXKDFZfb9gu0g4wl3Fk2HYaRhSt8G+yk9mP/R65m3R7V2IO8CxnmO1oVtlamB6UKA+UZZqDNEqtYlhQzLySNzMG0thaNMZsq5RxmQ3eQLPw8LLez3MqWvUveFXNSSq6AGEX2+KOdavteo3K2L06SQoVIjwkmcgRzqhfHP3y8t2wfr1nw/WAnaCF9ZY/K4dTykk3hsXcan/MKCTBlcSOhNgSh3sdsQHpl2w2tmbLBsYBLFkuvKlwzHarNJQ1RfRznGdojHglQH1KVtbAUXKke54pdRt3JL7nJlR+Lbmtd2tjcT2vRyTepw=="

	LOCAL x_URL_QrCode, iTamanho, iLow, iHigh, iCount, ComandoQR

	x_URL_QrCode = x_Chave+"|"+x_TmStp+"|"+x_Valor+"|"+x_CNPJ+"|"+x_Ass
**

/*
  BYTES PARA COMPOR O QRCODE
*/
	iTamanho := Len( x_URL_QrCode ) + 3
	iLow     := MOD( iTamanho, 256 )
	iHigh    := iTamanho / 256
	
        ? CHR(29) + "h" + CHR(60) && Altura do código de barras
        ? CHR(29) + "w" + CHR(2)  && Largura das barras
        ? CHR(29) + "H0"          && Apresentação numérica do código DE BARRAS / H0 = INIBE, H2 = MOSTRA
      
        * Imprime o Code128C com 44 algarismos
	ComandoQR := CHR(29) + CHR(107) + CHR(73) + CHR(24) + "{C"
        For iCount = 0 To 22
                ComandoQR += CHR( VAL( SUBSTR( x_Chave, (iCount * 2) + 1, 2 ) ) )
	Next
        ? []

	? ComandoQR
        * Fim da impressão do Code128C

        * Impressão do QRCode
	? CHR(29) + "(k" + CHR(iLow) + CHR(iHigh)+CHR(49)+CHR(80)+CHR(48)+ x_URL_QrCode && QRCode PROPRIAMENTE DITO

	? CHR(29) + "(k"+ CHR(3)+CHR(0)+CHR(49)+CHR(81)+CHR(48)
Return Nil

Procedure Setalternate(cParam)
   If cParam == Nil
      Set Cons on
      Set Alter to
      Set Alter off
   Else
      Set cons off
      Set Alter to &cParam
      Set Alter on
   Endif
Return (Nil)

**
* FINAL DO PROGRAMA DEMO.PRG
** 

Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Sefaz Class x HbNFe

Mensagem por JoséQuintas »

Mas pelo que vi na lei, só é obrigado a SAT se o faturamento for superior a 60.000
c) a partir de 01-01-2018, para os contribuintes que auferirem receita bruta superior a R$ 60.000,00 no ano de 2017;
d) decorrido o prazo indicado na alínea “b”, a partir do primeiro dia do ano subsequente àquele em que o contribuinte auferir receita bruta superior a R$ 81.000,00; (Redação dada à alínea pela Portaria CAT-108/16, de 10-11-2016; DOE 11-11-2016)
d) decorrido o prazo indicado na alínea “c”, a partir do primeiro dia do ano subsequente àquele em que o contribuinte auferir receita bruta superior a R$ 60.000,00;
http://info.fazenda.sp.gov.br/NXT/gatew ... ia:vtribut

Apesar que pode variar conforme UF.

E também não sei se ajuda, já que mesmo que não use, parece que é obrigado a comprar o equipamento SAT pra ter o código.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2820
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP
Curtiu: 2 vezes

Sefaz Class x HbNFe

Mensagem por Jairo Maia »

Olá Pessoal,
JoséQuintas escreveu:Mas pelo que vi na lei, só é obrigado a SAT se o faturamento for superior a 60.000
Isso para quem ainda não se enquadrou no Inciso "I" e nem na Alínea "a" do Inciso "II" do Artigo 27 da Portaria CAT 147/12 (link acima no post do José), ou seja, quem faturou R$ 100.000,00 (cem mil) em 2015, ou quem tem ECF com 5 anos ou mais da data da primeira lacração e ainda não tem SAT está irregular segundo essa Portaria.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Sefaz Class x HbNFe

Mensagem por JoséQuintas »

A parte curiosa é que no final é tudo a mesma coisa.
Talvez algum político tenha empresa de SAT.

No XML, cada um é identificado de uma forma: CFe ou NFCe

Acho que a principal diferença é que no CFe é identificada até a máquina que está sendo usada.

Agora vém outra questão:

Documento Auxiliar de Nota Fiscal ao Consumidor Eletrônica

Pelo nome, isso é para NFCe, e não para CFe.
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20415
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP
Curtiram: 1 vez

Sefaz Class x HbNFe

Mensagem por JoséQuintas »

Um jeito simples de imprimir cupom é criar um array, e depois imprimir o array.
Pode fazer o cupom, e decidir depois como vai imprimir.
A única exceção é para o QRCode e/ou logotipo.

Código: Selecionar todos

   Aadd( acTxt, Replicate( "-", 60 ) )
   Aadd( acTxt, Padc( AppEmpresaNome(), 60 ) )
   Aadd( acTxt, Padc( Trim( jpempre->emEndereco ) + " " + Trim( jpempre->emBairro ) +  " " + Trim( jpempre->emCidade ), 60 ) )
   IF ! Empty(jpempre->emHomePage)
      Aadd( acTxt, Padc( "Site " + Trim( jpempre->emHomePage ), 60 ) )
   ENDIF
   Aadd( acTxt, Padc( "FONE: " + Trim( jpempre->emTelefone ), 60 ) )
   Aadd( acTxt, Replicate( "-", 60 ) )
   Aadd( acTxt, "" )
   Aadd( acTxt, Padc( "Cupom " + jpnota->nfNotFis + " - "+iif( jpnota->nfCfOp > "5.000", "Saida", "Entrada" ), 60 ) )
   Aadd( acTxt, Padc( "Emissao " + Dtoc( jpnota->nfDatEmi ), 60 ) )
   Aadd( acTxt, Replicate( "-",60 ) )
   Encontra( jppedi->pdCliFor, "jpcadas", "numlan" )
   Aadd( acTxt, "Nome:" + Trim( jpcadas->cdNome ) + " (" + jppedi->PdCliFor + ")" )
   Aadd( acTxt, "Endereco:" + Trim( jpcadas->cdEndereco ) )
   Aadd( acTxt, "CEP/Cidade/UF:" + jpcadas->cdCep + " " + jpcadas->cdUf + " " + Trim( jpcadas->cdCidade ) )
   Aadd( acTxt, Replicate( "-", 60 ) )
José M. C. Quintas
Harbour 3.2, mingw, multithread, gtwvg, fivewin 25.12, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui), (hmg3), (hmg extended), (oohg), PNotepad, ASP, (Linux/Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
Avatar do usuário
Jairo Maia
Moderador
Moderador
Mensagens: 2820
Registrado em: 16 Ago 2010 13:46
Localização: Campinas-SP
Curtiu: 2 vezes

Sefaz Class x HbNFe

Mensagem por Jairo Maia »

Olá Pessoal,
JoséQuintas escreveu:Documento Auxiliar de Nota Fiscal ao Consumidor Eletrônica
Pelo nome, isso é para NFCe, e não para CFe.
Isso mesmo José. Para CF-e não é DANFE, é oficialmente nominado EXTRATO enquanto XML, e CUPOM FISCAL SAT quando impresso. Já para NFC-e obviamente Nota Fiscal ao Consumidor Eletrônica enquanto XML e DANFE quando impresso.
Abraços, Jairo
Harbour / Clipper 5.2e - Blinker 7
(Não respondo dúvidas por MP ou E-mail. Por favor, não encaminhe via mensagem privada ou e-mail, dúvidas que podem ser compartilhadas com todos no fórum)
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7135
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Sefaz Class x HbNFe

Mensagem por sygecom »

Jairo e malcarli,

Estive lendo as perguntas frequentes e pelo que entendi, quem vai usar NFCe não precisa ter o SAT, uma sibustituiu a outra, veja:

8. Quando a minha empresa será obrigada à emissão de NFC-e?

Existe cronograma de obrigatoriedade de utilização do CF-e/SAT disposto no artigo 27 da Portaria CAT 147/2012. Entretanto, conforme artigo 28 da mesma Portaria, o contribuinte pode, em substituição a esse documento, optar pela emissão da Nota Fiscal Eletrônica - NF-e, modelos 55, ou da Nota Fiscal de Consumidor Eletrônica – NFC-e (NF-e, modelo 65).


http://www.nfce.fazenda.sp.gov.br/NFCeP ... entes.aspx
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Responder