Nota Fiscal Paulista Serviço

Fórum sobre desenvolvimento de software para atender as exigências da legislação fiscal e tributária (NFe, NFCe, NFSe, SPEED, Projeto ACBr, TEF, ECD, EFD, etc.)

Moderador: Moderadores

imperio
Usuário Nível 1
Usuário Nível 1
Mensagens: 5
Registrado em: 24 Jun 2005 09:53

Nota Fiscal Paulista Serviço

Mensagem por imperio »

Necessito um luz para fazer a comunicação com a prefeitura de São Paulo para emissão de nota fiscal paulista de serviço pelo sistema fivewin+xharbour se alguem tiver alguma rotina ou exemplo agradeço muito, não vai ta nem quebrando uma arvore mas uma floresta toda
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Re: Nota Fiscal Paulista Serviço

Mensagem por rochinha »

Amiguinho,

Verifique no link http://ww2.prefeitura.sp.gov.br/nfe/fil ... s-v2-1.pdf informações sobre importação de sua NF-e e se ajuda em algo.

Eu também cheguei a criar as seguintes funções para envio de um arquivo .TXT contendo dados de notas fiscais, mas não tenho lembraça se fiz algum teste ou se coloquei em prática.

Pelo menos já é um ponto de partida:

Código: Selecionar todos

/*
 * http://www.w3.org/2001/XMLSchema
 * 
 * https://www.nfp.sp.gov.br/ws  ConsultarResponse
 * https://www.nfp.sp.gov.br/ws  Consultar
 * https://www.nfp.sp.gov.br/ws  EnviarResponse
 * https://www.nfp.sp.gov.br/ws  Enviar
 * 
 * https://www.nfp.fazenda.sp.gov.br/ws/arquivocf.asmx?WSDL
 * https://www.nfp.sp.gov.br/ws
 * 
 */
Function ACBrNFPWebService( cXMLFile )
   cMethod    := "POST"
   cURL       := "https://www.nfp.fazenda.sp.gov.br/ws/arquivocf.asmx?WSDL"
   //
   oEDXSend   := TOLEAuto():New( "Microsoft.XMLHTTP" )
   oEDXSend:Open( cMethod, cURL, .F. )
   oEDXSend:Send( cXMLFile )
   //
   MyWait(30)
   //
   cResultado := oEDXSend:ResponseText
   //
   return cResultado

Function NFP_EnviarNFp() /* ****** ////// OK ////// ****** */
   cCNPJ     := "00.000.0000000-00"
   cProtocolo:= ""
   cUsuario  := "USUARIO"
   cSenha    := "SENHA"
   cCategoria:= "2"
   lEnvio    := .f.
   lRetificar:= .f.
   cOBS      := ""
   //
   cNomArq   := "CAT102XX.TXT"
   cConteudo := MemoRead( cNomArq )
   //
   cXMLFile  := ACBrNFPGeraXMLEnviar( cUsuario,;
                               cSenha,;
                               cCNPJ,;
                               cCategoria,;
                               cNomArq,;
                               cConteudo,;
                               lEnvio,;
                               lRetificar,;
                               cObs )
   MemoEdit( cXMLFile )
   cResultado:= ACBrNFPWebService( cXMLFile )
   MemoEdit( cResultado )
   return .t.

Function ACBrNFPGeraXMLEnviar( cUsuario,;
                               cSenha,;
                               cCNPJ,;
                               cCategoria,;
                               cNomArq,;
                               cConteudo,;
                               lEnvio,;
                               lRetificar,;
                               cObs )
   LOCAL cResultado
   //
   cResultado :=              [<?xml version="1.0" encoding="utf-8"?>]
   cResultado := cResultado + [<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">]
   cResultado := cResultado + [  <soap12:Header>]
   cResultado := cResultado + [    <Autenticacao Usuario="] + cUsuario + [" ]
   cResultado := cResultado + [       Senha="] + cSenha + [" ]
   cResultado := cResultado + [       CNPJ="] + cCNPJ + [" ]
   cResultado := cResultado + [       CategoriaUsuario="] + cCategoria + [" ]
   cResultado := cResultado + [       xmlns="https://www.nfp.sp.gov.br/ws" />]
   cResultado := cResultado + [  </soap12:Header>]
   cResultado := cResultado + [  <soap12:Body>]
   if lRetificar
      cResultado := cResultado + [    <Retificar xmlns="https://www.nfp.sp.gov.br/ws">]
   else
      cResultado := cResultado + [    <Enviar xmlns="https://www.nfp.sp.gov.br/ws">]
   endif
   cResultado := cResultado + [      <NomeArquivo>"] + cNomArq + ["</NomeArquivo>]
   cResultado := cResultado + [      <ConteudoArquivo>] + cConteudo + [</ConteudoArquivo>]
   if lEnvio
      cResultado := cResultado + [    <EnvioNormal>true</EnvioNormal>]
   else
      cResultado := cResultado + [    <EnvioNormal>false</EnvioNormal>]
   endif
   cResultado := cResultado + [      <Observacoes>"] + cObs + ["</Observacoes>]
   if lRetificar 
      cResultado := cResultado + [    </Retificar>]
   else
      cResultado := cResultado + [    </Enviar>]
   endif
   cResultado := cResultado + [  </soap12:Body>]
   cResultado := cResultado + [</soap12:Envelope>]
   //
   return cResultado

Function ACBrNFPGeraXMLConsulta( cProtocolo, cUsuario, cSenha, cCNPJ, cCategoria )
   LOCAL cResultado
   //
   cResultado :=              [<?xml version="1.0" encoding="utf-8"?>]
   cResultado := cResultado + [<soap12:Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap12="http://www.w3.org/2003/05/soap-envelope">]
   cResultado := cResultado + [  <soap12:Header>]
   cResultado := cResultado + [    <Autenticacao Usuario='] + cUsuario + [' ]
   cResultado := cResultado + [       Senha='] + cSenha + [' ]
   cResultado := cResultado + [       CNPJ='] + cCNPJ + [' ]
   cResultado := cResultado + [       CategoriaUsuario='] + cCategoria + [' ]
   cResultado := cResultado + [       xmlns="https://www.nfp.sp.gov.br/ws" />]
   cResultado := cResultado + [  </soap12:Header>]
   cResultado := cResultado + [  <soap12:Body>]
   cResultado := cResultado + [    <Consultar xmlns="https://www.nfp.sp.gov.br/ws">]
   cResultado := cResultado + [      <Protocolo>'] + cProtocolo + ['</Protocolo>]
   cResultado := cResultado + [    </Consultar>]
   cResultado := cResultado + [  </soap12:Body>]
   cResultado := cResultado + [</soap12:Envelope>]
   //
   return cResultado
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
imperio
Usuário Nível 1
Usuário Nível 1
Mensagens: 5
Registrado em: 24 Jun 2005 09:53

Re: Nota Fiscal Paulista Serviço

Mensagem por imperio »

Sr.Rochinha muito agradecido pela sua ajuda, vou colocar em pratica rapidamente, enfatizando, agradecido mesmo pela atenção, obrigado.
Avatar do usuário
rochinha
Administrador
Administrador
Mensagens: 4664
Registrado em: 18 Ago 2003 20:43
Localização: São Paulo - Brasil
Contato:

Re: Nota Fiscal Paulista Serviço

Mensagem por rochinha »

Amiguinho,

Caso o metodo acima nao seja tao simples de implementar voce pode gerar o arquivo texto dentro do layout da Portaria CAT 102.

O estilo deste arquivo e aceito pelo aplicativo Transmissor de Dados Para Registro de Documento Fiscal(TD-REDF)

Exemplo:

Código: Selecionar todos

10|1,00|00400991000115|24/08/2010|24/08/2010
20|I||VENDA DE PRODUCAO DO ESTABELECIMENTO|1|0|24/08/2010 21:54:42|24/08/2010 21:54:42|1|5101|||01654379000127|INPLAST COM E BENEFICIAMENTO ESPUMAS LTDA|RUA LAGO JAGARE,131|121||,D.DAS OLIVEIRAS|SAO PAULO|SP|08111140||1129632820|114767382111
30|114061|RETALHO||KG|381,0000|0,5000|190,50|000|18,00|0,00|0,00
40|190,50|34,29|0,00|0,00|190,50|0,00|0,00|0,00|0,00|0,00|190,50|||
50|0|00400991000115|NOSSO CARRO|626479717119|AV MARIA DOS SANTOS, 1060|SANTO AMARO|SP|CTM7679|||AGRANEL|||0,000|0,000
90|00001|00001|00001|00001|00000
Eu gero este tipo de arquivo no meu modulo de NF-e. Desta forma, apos o arquivo ser enviado a Prefeitura, esta encaminhara o mesmo para o arquivo do contribuinte.
OPS! LINK QUEBRADO? Veja ESTE TOPICO antes e caso não encontre ENVIE seu email com link do tópico para [url=mailto://fivolution@hotmail.com]fivolution@hotmail.com[/url]. Agradecido.

@braços : ? )

A justiça divina tarda mas não falha, enquanto que a justiça dos homens falha porque tarda.
Responder