Ir para conteúdo
  • Cadastre-se

dev botao

  • Este tópico foi criado há 3359 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Recommended Posts

  • Membros Pro
Postado

boa noite a todos?

 

gostaria de saber se o componente acbrnfs-e esta implementado para o provedor fgmaiss.

 

abraço

  • 3 meses depois ...
  • 4 semanas depois ...
Postado (editado)

Bom Dia Italojjr,

  Realmente eles não segue o padrão todos os dados são passados como parametro e não por XML, outra coisa o Ambiente de Homologação é muito limitado pemitindo apenas o Envio, as demais operações estão disponivel apenas no Ambiente de Produção, alem de que a nota tem limitações como Permite apenas 6 Parcelas e 8 Itens. nada mais do que isso.

 

 Pelo que estava estudando não encontrei uma maneira de Implementar no ACBr, estou anexando as Units que foram importadas pelo WSDL.

UnwsFGMaissNFSeCancela.pas

UnwsFGMaissNFSeConsulta.pas

UnwsFGMaissNFSeConsultaXML.pas

UnwsFGMaissNFSeEnvio.pas

UnwsFGMaissNFSeEnvioHomologacao.pas

Editado por Pedro E. Braga
Postado (editado)

Infelismente não pois não conheço o componente suficiente para implementar um novo Provedor, estou Fazendo Manualmente e a Falta de Documentação e um ambiente de teste para executar todas as funções prejudica muito o desenvolvimento, o mesmo soh dispoe da opção de Transmissão da NFe, retornando apenas uma mensagem como "OK" quando a nota foi autorizada, ou a mensagem de rejeição, para consultar uma nota funciona apenas no ambiente de Produção e o mesmo não possui documentação de quais informações ai em cada parametro, isso torna a implementação no ACBr ainda mais complicada.

 

Se alguem Iniciar dando os caminhos das pedras posso Ajudar na Implementação, até pelo Motivo que tenho outro provedor para Implementar mas por falta de conhecimento do componente não consigo implementar o mesmo.

Editado por Pedro E. Braga
  • 2 anos depois...
Postado

Pessoal, segue um exemplo que consegui enviar

(********************************* WS DE ENVIO *****************************************)

// ************************************************************************ //
// The types declared in this file were generated from data read from the
// WSDL File described below:
// WSDL     :
http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php?wsdl
//  >Import : http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php?wsdl>0
// Encoding : ISO-8859-1
// Version  : 1.0
// (10/08/2015 16:53:27 - - $Rev: 68735 $)
// ************************************************************************ //

unit wsnfe_Producao_FGMaiss_envio;

interface

uses Soap.InvokeRegistry, Soap.SOAPHTTPClient, System.Types, Soap.XSBuiltIns;

type

  // ************************************************************************ //
  // The following types, referred to in the WSDL document are not being represented
  // in this file. They are either aliases[@] of other types represented or were referred
  // to but never[!] declared in the document. The types from the latter category
  // typically map to predefined/known XML or Embarcadero types; however, they could also 
  // indicate incorrect WSDL documents that failed to declare or import a schema type.
  // ************************************************************************ //
  // !:string          - "
http://www.w3.org/2001/XMLSchema"[Gbl]

  EnvNfe               = class;                 { "http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php"[GblCplx] }

 

  // ************************************************************************ //
  // XML       : EnvNfe, global, <complexType>
  // Namespace :
http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php
  // ************************************************************************ //
  EnvNfe = class(TRemotable)
  private
    Fokk: string;
  published
    property okk: string  read Fokk write Fokk;
  end;

  StrEnvNfe  = array of EnvNfe;                 { "http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php"[GblCplx] }

  // ************************************************************************ //
  // Namespace :
http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php
  // soapAction: http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php/EnvNfe
  // transport : http://schemas.xmlsoap.org/soap/http
  // style     : rpc
  // use       : encoded
  // binding   : webserviceBinding
  // service   : webservice
  // port      : webservicePort
  // URL       :
http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php
  // ************************************************************************ //
  webservicePortTypeProducao = interface(IInvokable)
  ['{7DBCDD49-7559-A9DF-B94D-104B1CC11415}']
    function  EnvNfe(const usuario: string; const pass: string; const prf: string; const usr: string; const ctr: string; const cnpj: string; 
                     const cnpjn: string; const ie: string; const im: string; const lgr: string; const num: string; 
                     const cpl: string; const bai: string; const cid: string; const est: string; const cep: string; 
                     const fon: string; const mail: string; const dat: string; const f1n: string; const f1d: string; 
                     const f1v: string; const f2n: string; const f2d: string; const f2v: string; const f3n: string; 
                     const f3d: string; const f3v: string; const f4n: string; const f4d: string; const f4v: string; 
                     const f5n: string; const f5d: string; const f5v: string; const f6n: string; const f6d: string; 
                     const f6v: string; const item1: string; const item2: string; const item3: string; const aliq1: string; 
                     const aliq2: string; const aliq3: string; const val1: string; const val2: string; const val3: string; 
                     const loc: string; const ret: string; const txt: string; const val: string; const valtrib: string; 
                     const iss: string; const issret: string; const desci: string; const desco: string; const binss: string; 
                     const birrf: string; const bcsll: string; const bpis: string; const bcofins: string; const ainss: string; 
                     const airrf: string; const acsll: string; const apis: string; const acofins: string; const inss: string; 
                     const irrf: string; const csll: string; const pis: string; const cofins: string; const item4: string; 
                     const item5: string; const item6: string; const item7: string; const item8: string; const aliq4: string; 
                     const aliq5: string; const aliq6: string; const aliq7: string; const aliq8: string; const val4: string; 
                     const val5: string; const val6: string; const val7: string; const val8: string; const iteser1: string; 
                     const iteser2: string; const iteser3: string; const iteser4: string; const iteser5: string; const iteser6: string; 
                     const iteser7: string; const iteser8: string; const alqser1: string; const alqser2: string; const alqser3: string; 
                     const alqser4: string; const alqser5: string; const alqser6: string; const alqser7: string; const alqser8: string; 
                     const valser1: string; const valser2: string; const valser3: string; const valser4: string; const valser5: string; 
                     const valser6: string; const valser7: string; const valser8: string; const paisest: string): String; stdcall;
  end;

function GetwebservicePortType(UseWSDL: Boolean=System.False; Addr: string=''; HTTPRIO: THTTPRIO = nil): webservicePortTypeProducao;


implementation
  uses System.SysUtils;

function GetwebservicePortType(UseWSDL: Boolean; Addr: string; HTTPRIO: THTTPRIO): webservicePortTypeProducao;
const
  defWSDL = '
http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php?wsdl';
  defURL  = 'http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php';
  defSvc  = 'webservice';
  defPrt  = 'webservicePort';
var
  RIO: THTTPRIO;
begin
  Result := nil;
  if (Addr = '') then
  begin
    if UseWSDL then
      Addr := defWSDL
    else
      Addr := defURL;
  end;
  if HTTPRIO = nil then
    RIO := THTTPRIO.Create(nil)
  else
    RIO := HTTPRIO;
  try
    Result := (RIO as webservicePortTypeProducao);
    if UseWSDL then
    begin
      RIO.WSDLLocation := Addr;
      RIO.Service := defSvc;
      RIO.Port := defPrt;
    end else
      RIO.URL := Addr;
  finally
    if (Result = nil) and (HTTPRIO = nil) then
      RIO.Free;
  end;
end;


initialization
  { webservicePortType }
  InvRegistry.RegisterInterface(TypeInfo(webservicePortTypeProducao), '
http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php', 'ISO-8859-1');
  InvRegistry.RegisterDefaultSOAPAction(TypeInfo(webservicePortTypeProducao), '
http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php/EnvNfe');
  RemClassRegistry.RegisterXSClass(EnvNfe, 'http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php', 'EnvNfe');
  RemClassRegistry.RegisterXSInfo(TypeInfo(StrEnvNfe), '
http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php', 'StrEnvNfe');

end.

 

 

(********************************* ENVIO *****************************************)

          HTTPRIO.WSDLLocation := 'http://www.fgmaiss.com.br/issqn/wservice/wsnfeenvia.php?wsdl';

          HTTPRIO.Service := 'webservice';
          HTTPRIO.Port    := 'webservicePort';

 

            Resultado  := (HTTPRIO as webservicePortTypeProducao).EnvNfe(
                           qEmpresaUSUARIO_PREFEITURA.AsString,
                           qEmpresaSENHA_PREFEITURA.AsString,
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLEMITENTE_CNPJ_PREFEITURA.AsString),              // prf   CNPJ Prefeitura
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLCNPJ_EMPRESA.AsString),                          // usr   CNPJ/CPF Emitente
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLNUM_PEDIDO.AsString),                            // ctr   Número de Controle do Contribuinte
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLDEST_CNPJ_CPF_C_FORMAT.AsString),                // cnpj  CNPJ/CPF destinatário - 99.999.999/9999-99 ou 999.999.999-99
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLDEST_NOME.AsString),                             // cnpjn R.Social/Nome Destinatário
                           Trim(DEST_ISNCRICAO),                                                                  // ie    Inscrição Estadual/R.G
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLDEST_INSC_MUNICIPAL.AsString),                   // im    Inscrição Municipal
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLDEST_ENDERECO.AsString),                         // lgr   Endereço
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLDEST_NUMERO.AsString),                           // num   Número
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLDEST_COMPLEMENTO.AsString),                      // cpl   Complemento
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLDEST_BAIRRO.AsString),                           // bai   bairro
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLDEST_CIDADE.AsString),                           // cid   Cidade
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLDEST_ESTADO.AsString),                           // est   Estado
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLDEST_CEP.AsString),                              // cep   CEP - 99999999
                           '',                                                                                    // fon   Fone/Fax
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLEND_ELETRONICO.AsString),                        // mail  e-mail
                           FormatDateTime('dd/mm/yyyy', LISTA_0100_NFE_V_101_EXPORTAR_XMLDATA_PEDIDO.AsDateTime), // dat   Data de Emissão - DD/MM/YYYY

                           //------------------------------------------------------------------------------------ Duplicatas
                           Trim( qTitulosID_RECEBER.AsString),                                                    // f1n   1o.Vencto - Nº Duplicata
                           Trim( FormatDateTime('dd/mm/yyyy', qTitulosDATA_VENCIMENTO.AsDateTime) ),              // f1d   1o.Vencto - Dt.Vencimento
                           Trim( qTitulosVALOR_PARCELA_XML.AsString ),                                            // f1v   1o.Vencto - Vr.Parcela
                           '',
                           '',
                           '',
                           '',
                           '',
                           '',
                           '',
                           '',
                           '',
                           '',
                           '',
                           '',
                           '',
                           '',
                           '',

                           Trim(LISTA_0101_NFE_V_101_EXPORTAR_XMLCOD_SERVICO_NFSE.AsAnsiString),                   // item1   Código do item de serviço 1 - 99.99
                           '',                                                                                     // item2   Código do item de serviço 2 - 99.99
                           '',                                                                                     // item3   Código do item de serviço 3 - 99.99

                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLSTR_ALIQUOTA_ISS.AsAnsiString),                  //  aliq1   Alíquota do item de serviço 99.99
                           '',                                                                                    //  aliq2   Alíquota do item de serviço 99.99
                           '',                                                                                    //  aliq3   Alíquota do item de serviço 99.99

                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_SERVICO.AsString),                         //  val1    Valor Item Serviço 1 - 999999999.99
                           '',                                                                                    //  val2    Valor Item Serviço 2 - 999999999.99
                           '',                                                                                    //  val3    Valor Item Serviço 3 - 999999999.99

                           CODIGO_CIDADE,                                                                         // loc ???? Código da localidade (cidade) de execução do serviço (informar 0000 para execução no local do estabelecimento prestador)
                           ISS_RETIDO,                                                                            // ret      Imposto retido no tomador do serviço (SIM/NAO)

                           'SERVICOS PRESTADOS EM PONTES',                                                        // txt      Descrição dos serviços
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVLR_TOTAL_NOTA.AsString),                        // val      Valor da nota
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVLR_TOTAL_NOTA.AsString),                        // valtrib  Valor tributável
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_ISS.AsString),                             // iss      Valor do ISSQN
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_RETENCAO_ISSQN_SERVICO.AsString),          // issret   Valor do ISSQN retido
                           '',                                                                                    // desci    Valor do desconto incondicional
                           '',                                                                                    // desco    Valor do desconto (outros)

                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLBASE_RET_PREV_SOC.AsString),                     // binss    Valor base de cálculo do INSS
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLBASE_RET_IRRF.AsString),                         // birrf    Valor base de cálculo do IRRF
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLBASE_RET_CSSL.AsString),                         // bcsll    Valor base de cálculo do CSLL
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLBASE_RET_PIS.AsString),                          // bpis     Valor base de cálculo do PIS
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLBASE_RET_COFINS.AsString),                       // bcofins  Valor base de cálculo do COFINS

                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLSTR_ALIQUOTA_INSS.AsAnsiString),                 // ainss    Valor da alíquota de cálculo do INSS
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLSTR_ALIQUOTA_IRRF.AsAnsiString),                 // airrf    Valor da alíquota de cálculo do IRRF
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLSTR_ALIQUOTA_CSSL.AsAnsiString),                 // acsll    Valor da alíquota de cálculo do CSLL
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLALIQUOTA_PIS.AsAnsiString),                      // apis     Valor da alíquota de cálculo do PIS
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLALIQUOTA_COFINS.AsAnsiString),                   // acofins  Valor da alíquota de cálculo do COFINS

                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_RETENCAO_PREV_SOC_SERVICO.AsAnsiString),   // inss     Valor do INSS
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_RETENCAO_IRRF_SERVICO.AsAnsiString),       // irrf     Valor do IRRF
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_RETENCAO_CSLL_SERVICO.AsAnsiString),       // csll     Valor do CSLL
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_RETENCAO_PIS_SERVICO.AsAnsiString),        // pis      Valor do PIS
                           Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_RETENCAO_COFINS_SERVICO.AsAnsiString),     // cofins   Valor do COFINS


                           {
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_SERVICO.AsString),                         // binss    Valor base de cálculo do INSS          LISTA_0100_NFE_V_101_EXPORTAR_XMLBASE_RET_PREV_SOC
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_SERVICO.AsString),                         // birrf    Valor base de cálculo do IRRF          LISTA_0100_NFE_V_101_EXPORTAR_XMLBASE_RET_IRRF
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_SERVICO.AsString),                         // bcsll    Valor base de cálculo do CSLL          LISTA_0100_NFE_V_101_EXPORTAR_XMLBASE_RET_CSSL
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_SERVICO.AsString),                         // bpis     Valor base de cálculo do PIS           LISTA_0100_NFE_V_101_EXPORTAR_XMLBASE_RET_PIS
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_SERVICO.AsString),                         // bcofins  Valor base de cálculo do COFINS        LISTA_0100_NFE_V_101_EXPORTAR_XMLBASE_RET_COFINS

                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLSTR_ALIQUOTA_INSS.AsAnsiString),                 // ainss    Valor da alíquota de cálculo do INSS   LISTA_0100_NFE_V_101_EXPORTAR_XMLSTR_ALIQUOTA_INSS
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLSTR_ALIQUOTA_IRRF.AsAnsiString),                 // airrf    Valor da alíquota de cálculo do IRRF   LISTA_0100_NFE_V_101_EXPORTAR_XMLSTR_ALIQUOTA_IRRF
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLSTR_ALIQUOTA_CSSL.AsAnsiString),                 // acsll    Valor da alíquota de cálculo do CSLL   LISTA_0100_NFE_V_101_EXPORTAR_XMLSTR_ALIQUOTA_CSSL
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLALIQUOTA_PIS.AsAnsiString),                      // apis     Valor da alíquota de cálculo do PIS    LISTA_0100_NFE_V_101_EXPORTAR_XMLALIQUOTA_PIS
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLALIQUOTA_COFINS.AsAnsiString),                   // acofins  Valor da alíquota de cálculo do COFINS LISTA_0100_NFE_V_101_EXPORTAR_XMLALIQUOTA_COFINS

                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_RETENCAO_PREV_SOC_SERVICO.AsAnsiString),   // inss     Valor do INSS                          LISTA_0100_NFE_V_101_EXPORTAR_XML VALOR_RETENCAO_PREV_SOC_SERVICO
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_RETENCAO_IRRF_SERVICO.AsAnsiString),       // irrf     Valor do IRRF                          LISTA_0100_NFE_V_101_EXPORTAR_XML VALOR_RETENCAO_IRRF_SERVICO
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_RETENCAO_CSLL_SERVICO.AsAnsiString),       // csll     Valor do CSLL                          LISTA_0100_NFE_V_101_EXPORTAR_XML VALOR_RETENCAO_CSLL_SERVICO
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_RETENCAO_PIS_SERVICO.AsAnsiString),        // pis      Valor do PIS                           LISTA_0100_NFE_V_101_EXPORTAR_XML VALOR_RETENCAO_PIS_SERVICO
                           '', // Trim(LISTA_0100_NFE_V_101_EXPORTAR_XMLVALOR_RETENCAO_COFINS_SERVICO.AsAnsiString),     // cofins   Valor do COFINS                        LISTA_0100_NFE_V_101_EXPORTAR_XML VALOR_RETENCAO_COFINS_SERVICO
                           }

                           '', // item4
                           '', // item5
                           '', // item6
                           '', // item7
                           '', // item8

                           '', // aliq4
                           '', // aliq5
                           '', // aliq6
                           '', // aliq7
                           '', // aliq8
                           '', // val4
                           '', // val5
                           '', // val6
                           '', // val7
                           '', // val8

                           '', // iteser1 Código do item de serviço 1 (Optante pelo Simples Nacional)
                           '', // iteser2
                           '', // iteser3
                           '', // iteser4
                           '', // iteser5
                           '', // iteser6
                           '', // iteser7
                           '', // iteser8

                           '', // alqser1 Alíquota do item de serviço 1 (Optante pelo Simples Nacional)
                           '', // alqser2
                           '', // alqser3
                           '', // alqser4
                           '', // alqser5
                           '', // alqser6
                           '', // alqser7
                           '', // alqser8

                           '', // valser1 Valor Item Serviço 1 (Optante pelo Simples Nacional)
                           '', // valser2
                           '', // valser3
                           '', // valser4
                           '', // valser5
                           '', // valser6
                           '', // valser7
                           '', // valser8
                           ''  // paisest
                           );

 

 

Neste modelo consegui enviar com sucesso.

Estou tento problemas para consultar a NFS-e na FGMaiss.

 

 

Rodrigo Chiarato

G7 Sistemas

www.g7sistermas.com.br

Valorize quem promove a ética e a transparência.

 

  • Este tópico foi criado há 3359 dias atrás.
  • Talvez seja melhor você criar um NOVO TÓPICO do que postar uma resposta aqui.

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
×
×
  • Criar Novo...

Informação Importante

Colocamos cookies em seu dispositivo para ajudar a tornar este site melhor. Você pode ajustar suas configurações de cookies, caso contrário, assumiremos que você está bem para continuar.