Erro classe nfseclass.prg

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

Moderador: Moderadores

malcarli
Usuário Nível 3
Usuário Nível 3
Mensagens: 239
Registrado em: 20 Ago 2015 18:14
Localização: marilia/sp

Erro classe nfseclass.prg

Mensagem por malcarli »

Fiz este teste para implementar consumo de nfse para sp. Está retornando erro na classe assinaxlm.prg. O que pode ser? obg

Código: Selecionar todos

Static Procedure fRemessa()
   Local cXml:= cRetorno:= [], oNfseSP:= SefazClass():New(), cCertificado:= CapicomEscolheCertificado(), cAmbiente:= 2 // homologação

   cXml+= [<Cabecalho Versao="1" xmlns="">]
     cXml+= [<CPFCNPJRemetente>]
       cXml+= [<CNPJ>10229311000180</CNPJ>]
     cXml+= [</CPFCNPJRemetente>]
   cXml+= [</Cabecalho>]

   cXml+= [<RPS xmlns="">]
**** calcular
     cXml+= [<Assinatura>d8Pg/jdA7t5tSaB8Il1d/CMiLGgfFAXzTL9o5stv6TNbhm9I94DIo0/ocqJpGx0KzoEeIQz4RSn99pWX4fiW/aETlNT3u5woqCAyL6U2hSyl/eQfWRYrqFu2zcdc4rsAG/wJbDjNO8y0Pz9b6rlTwkIJ+kMdLo+EWXMnB744olYE721g2O9CmUTvjtBgCfVUgvuN1MGjgzpgyussCOSkLpGbrqtM5+pYMXZsTaEVIIck1baDkoRpLmZ5Y/mcn1/Om1fMyhJVUAkgI5xBrORuotIP7e3+HLJnKgzQQPWCtLyEEyAqUk9Gq64wMayITua5FodaJsX+Eic/ie3kS5m50Q==</Assinatura>]
     cXml+= [<ChaveRPS>]
       cXml+= [<InscricaoPrestador>37925504</InscricaoPrestador>]
       cXml+= [<SerieRPS>A</SerieRPS>]
       cXml+= [<NumeroRPS>853</NumeroRPS>]
     cXml+= [</ChaveRPS>]

     cXml+= [<TipoRPS>RPS</TipoRPS>]
     cXml+= [<DataEmissao>] + DateXml(Date()) + [</DataEmissao>]
     cXml+= [<StatusRPS>N</StatusRPS>]
     cXml+= [<TributacaoRPS>T</TributacaoRPS>]
     cXml+= [<ValorServicos>100</ValorServicos>]
     cXml+= [<ValorDeducoes>0</ValorDeducoes>]
     cXml+= [<ValorPIS>0</ValorPIS>]
     cXml+= [<ValorCOFINS>0</ValorCOFINS>]
     cXml+= [<ValorINSS>0</ValorINSS>]
     cXml+= [<ValorIR>0</ValorIR>]
     cXml+= [<ValorCSLL>0</ValorCSLL>]
     cXml+= [<CodigoServico>2919</CodigoServico>]
     cXml+= [<AliquotaServicos>0</AliquotaServicos>]
     cXml+= [<ISSRetido>false</ISSRetido>]

     cXml+= [<CPFCNPJTomador>]
       cXml+= [<CNPJ>39732100000148</CNPJ>]
     cXml+= [</CPFCNPJTomador>]
     cXml+= [<RazaoSocialTomador>SABOR CHURRASCO LTDA</RazaoSocialTomador>]
     cXml+= [<EnderecoTomador>]
       cXml+= [<TipoLogradouro>Rua</TipoLogradouro>]
       cXml+= [<Logradouro>PROF ENEAS DE SIQUEIRA NETO</Logradouro>]
       cXml+= [<NumeroEndereco>465</NumeroEndereco>]
       cXml+= [<ComplementoEndereco></ComplementoEndereco>]
       cXml+= [<Bairro>JARDIM DAS IMBUIAS</Bairro>]
       cXml+= [<Cidade>3550308</Cidade>]
       cXml+= [<UF>SP</UF>]
       cXml+= [<CEP>04829300</CEP>]
     cXml+= [</EnderecoTomador>]

     cXml+= [<EmailTomador>malcarli@life.com.br</EmailTomador>]
     cXml+= [<Discriminacao>(001409) TAXA DE SERVICO MENSAL - Codigo do cliente 001 | Vencimento 10/10/2022</Discriminacao>]
   cXml+= [</RPS>]


   cRetorno:= oNfseSP:EnvioLoteRPS(cXml, cCertificado, cAmbiente)
   MsgInfo(cRetorno)
   hb_MemoWrit([Retorno.xml], cRetorno)
Return (Nil)
Anexos
1.png
malcarli
Usuário Nível 3
Usuário Nível 3
Mensagens: 239
Registrado em: 20 Ago 2015 18:14
Localização: marilia/sp

Erro classe nfseclass.prg

Mensagem por malcarli »

Mestre Quintas, para seu conhecimento:

São Paulo utiliza o mesmo wsdl para todos os serviços.

Wsdl: https://nfe.prefeitura.sp.gov.br/ws/lotenfe.asmx

Código: Selecionar todos

METHOD Setup( cCertificado, cAmbiente, nWsServico ) CLASS SefazClass

   LOCAL nPos, aSoapList := { ;
      { WS_CANCELAMENTONFE,  "CancelamentoNFe", "http://www.prefeitura.sp.gov.br/nfe/ws/cancelamentoNFe", "https://nfe.prefeitura.sp.gov.br/ws/lotenfe.asmx" }, ;
      { WS_ENVIOLOTERPS,     "EnvioLoteRPS",    "http://www.prefeitura.sp.gov.br/nfe/ws/envioLoteRPS", "https://nfe.prefeitura.sp.gov.br/ws/lotenfe.asmx" } }
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

Erro classe nfseclass.prg

Mensagem por JoséQuintas »

Esse é apenas um rascunho (Draft).
Realmente não tem o método de assinatura, é esse o erro.
Cheguei a alterar a rotina de assinatura da sefazclass pra ficar flexível e poder assinar a nota de SPaulo.

Detalhe da NFSE:
Ao contrário da NFE, o lote TAMBÉM é assinado, por isso anos atrás modifiquei a rotina de assinatura da sefazclass pra funcionar com mais de uma assinatura no XML.

Teria que montar o XML de cada nota e assinar.
Depois, colocando tudo num lote, assinar o lote.

https://github.com/JoseQuintas/sefazcla ... c396d639ae

abril/2019, mais de 3 anos atrás, nem lembro mais dos detalhes de referência.
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, 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: 239
Registrado em: 20 Ago 2015 18:14
Localização: marilia/sp

Erro classe nfseclass.prg

Mensagem por malcarli »

só estou mandando uma nota por lote
Responder