Ir para conteúdo
  • Cadastre-se

dev botao

Erro ao gerar o xml no sat


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

Recommended Posts

@bacalajr
A mensagem de erro é bem clara ... faltou inicializar o componente.

Use o demo como ver como parametrizar e inicializar o componente corretamente.

  ACBrSAT1.Inicializado := not ACBrSAT1.Inicializado ;

  if ACBrSAT1.Inicializado then
    bInicializar.Caption := 'DesInicializar'
  else
    bInicializar.Caption := 'Inicializar' ;

 

Equipe ACBr Sérgio Assunção
Ajude o Projeto ACBr crescer - Assine o SAC

Projeto ACBr

 

[email protected]

Link para o comentário
Compartilhar em outros sites

Esse comando eu coloquei :

 

Inicializado := not Inicializado ;

            if Inicializado then
               SatMensagem := 'Sat Fiscal Pronto para uso!'
            else
               SatMensagem := 'Sat Fiscal desligado!';
 

  if DM.TabRegistroSatAssinatura.AsString <> '' then
      begin

      //Configuração do Sat Fiscal
      With DM do
         begin

         With ACBrSAT do
            begin
            //Inicio Rede
            With Rede do
               begin
               //Tipo da Rede
               if TabRegistroSatTipoNet.AsInteger = 1 then
                  begin
                  tipoInter := TTipoInterface(DM.TabRegistroSatTipoNet.AsInteger);
                  SSID := DM.TabRegistroSatSSID.AsString;
                  Seg := TSegSemFio(DM.TabRegistroSatSeg.AsInteger);
                  Codigo := DM.TabRegistroSatSenha.AsString;
                  end;

               //Tipo de Provedor
               case DM.TabRegistroSatRede.AsInteger of
                  1 : begin
                      //PPPoE
                      Usuario := DM.TabRegistroSatPPPoEUsu.AsString;
                      Senha := DM.TabRegistroSatPPPoESen.AsString;
                      end;

                  2 : begin
                      //IPFIX
                      LanIP := DM.TabRegistroSatIPPFixIP.AsString;
                      LanMask := DM.TabRegistroSatIPPFixMask.AsString;
                      LanGW := DM.TabRegistroSatIPPFixGat.AsString;
                      LanDNS1 := DM.TabRegistroSatIPPFixdns1.AsString;
                      LanDNS2 := DM.TabRegistroSatIPPFixdns2.AsString;
                      end;
               end;//fim case

               //Configuração do Proxy
               if TabRegistroSatProxy.AsInteger = 1 then
                  begin
                  Proxy := DM.TabRegistroSatProxy.AsInteger;
                  Proxy_IP := DM.TabRegistrosatip.AsString;
                  Proxy_Porta := DM.TabRegistroSatProxyPorta.AsInteger;
                  Proxy_User := DM.TabRegistroSatUsuario.AsString;
                  Proxy_Senha := DM.TabRegistrosatproxysenha.AsString;
                  end;
               end; //Fim Rede

            //Se satemulador for igual a 0 entao não sera usado o emulado do sat
            if TabRegistrosatemulador.AsInteger = 0 then
               begin
               //Ativar o Sat
               AtivarSAT(1, DM.TabRegistrocnpjcpf.AsString, CodIBGEUF[DM.TabRegistroSatCodUf.AsInteger]);

               //Ler Certificado Digital
               ComunicarCertificadoICPBRASIL(DM.TabRegistroNrCertSat.AsString);

               //Associar Assinatura
               AssociarAssinatura(DM.TabRegistroSatCNPJ.asstring + DM.TabRegistrocnpjcpf.AsString, DM.TabRegistroSatAssinatura.AsString);
               end;

            //Ajusta Sat
            //Configurações
            Modelo := TACBrSATModelo(DM.TabRegistroSatIniSat.AsInteger);
            ArqLOG := DM.TabRegistroSatArqLog.AsString;

            if DM.TabRegistroSatNomeDLL.AsString <> '' then
               NomeDLL := DM.TabRegistroSatNomeDLL.AsString
            else SatMensagem := 'Falta DLL para o Sat' + #13;

            with Config do
               begin
               PaginaDeCodigo := DM.TabRegistroSatPagCod.asinteger;

               if DM.TabRegistroSatUTF8.AsInteger = 0 then
                  EhUTF8 := false
               else EhUTF8 := true;
               end;//Fim Config

            With ConfigArquivos do
               begin
               if DM.TabRegistroSatSalvacfes.AsInteger = 0 then
                  SalvarCFe := false
               else SalvarCFe := true;

               if DM.TabRegistroSatSalvacfecanc.AsInteger = 0 then
                  SalvarCFeCanc := false
               else SalvarCFeCanc := true;

               if DM.TabRegistroSatSalvaenvio.AsInteger = 0 then
                  SalvarEnvio := false
               else SalvarEnvio := true;

               if DM.TabRegistroSatSepCNPJ.AsInteger = 0 then
                  SepararPorCNPJ := false
               else SepararPorCNPJ := true;

               if DM.TabRegistroSatSepMes.AsInteger = 0 then
                  SepararPorMes := false
               else SepararPorMes := true;
               end;  //fim ConfigArquivos

            if Modelo = mfe_Integrador_XML then
               begin
               With DM.ACBrIntegrador do
                  begin
                  PastaInput := DM.TabRegistroSatInput.Value;
                  PastaOutput := DM.TabRegistroSatOutput.Value;
                  Timeout := DM.TabRegistroSattimeout.AsInteger;
                  end;

               Integrador := DM.ACBrIntegrador;
               end;

            With CFe do
               begin
               //A - Dados do Cupom Fiscal Eletrônico
               With infCFe do
                  begin
                  //Versão do Leiaute do CF-e
                  Versao := 22108;

                  //Versão do leiaute do arquivo de dados do AC
                  //versaoDadosEnt := StringtoFloat(DM.TabRegistroSatVersao.AsString);

                  //Versão Software Básico do Sat
                  versaoSB := 1;

                  //Identificador da TAG a ser assinada
                  Id := Copy(DM.TabRegistroSatAssinatura.AsString,1,47);
                  end;//infCFe

               //B - Identificação do Cupom Fiscal Eletrônico
               with ide do
                  begin
                  //Código da UF do emitente do Documento Fiscal
                  cUF := EmitCEPtoCodIBGEUF();

                  //numero de caixas
                  numeroCaixa := TabRegistroSatNumCaixa.AsInteger;

                  //Código do Modelo do Documento Fiscal
                  modelo := 59;

                  //Número de Série do Equipamento SAT
                  //nserieSAT :=


                  //Identificação do Ambiente
                  case DM.TabRegistroSatAmbiente.AsInteger of
                      0 : tpAmb := TpcnTipoAmbiente.taProducao;
                      1 : tpAmb := TpcnTipoAmbiente.taHomologacao;
                  end;

                  //CNPJ Software House
                  CNPJ := DM.TabRegistroSatCnpj.AsString;

                  //Assinatura do Aplicativo Comercial
                  signAC := Copy(DM.TabRegistroSatCnpj.AsString + DM.TabRegistrocnpjcpf.AsString,1,344);

                  end;//fim ide

               //C - Identificação do Emitente do Cupom Fiscal Eletrônico
               With Emit do
                  begin
                  //CNPJ do emitente
                  CNPJ := Copy(TabRegistrocnpjcpf.AsString,1,14);

                  //Razão Social do emitente
                  xNome := Copy(TabRegistrorazaosoc.AsString,1,60);

                  //Nome Fantasia
                  xFant := Copy(TabRegistrofantasia.AsString,1,60);

                  with EnderEmit do
                     begin
                     With TabEndRegistro do
                        begin
                        close;
                        parambyname('codemp').AsInteger := codemp;
                        open;
                        end;

                     //Logradouro
                     xLgr := Copy(TabEndRegistroendereco.AsString,1,60);
                     //Número
                     nro := Copy(TabEndRegistronumero.AsString,1,60);

                     //Complemento
                     xCpl := '';
                     if TabEndRegistrocomplemento.AsString <> '' then
                        xCpl := Copy(TabEndRegistrocomplemento.AsString,1,60);

                     //Bairro
                     xBairro := Copy(TabEndRegistrobairro.AsString,1,60);
                     //Nome do Municipio
                     xMun := Copy(TabEndRegistromunicipio.AsString,1,60);
                     //Código do CEP
                     CEP := TabEndRegistrocep.AsInteger;

                     //Inscrição Estadual
                     IE := '';
                     if TabRegistroinscest.AsString <> '' then
                        IE := PreencherVazio(TabRegistroinscest.AsString,12);

                     //Inscrição Municipal
                     IM := '';
                     if TabRegistroregmun.AsString <> '' then
                        IM := Copy(TabRegistroregmun.AsString,1,15);

                     //Código de Regime Tributário
                     if TabRegistroindcrt.AsInteger = 1 then
                        cRegTrib := TpcnRegTrib.RTSimplesNacional
                     else cRegTrib := TpcnRegTrib.RTRegimeNormal;

                     end;//EnderEmit
                  end;//Fim Emit
               end; //Fim CFe

            ConfigurarInterfaceDeRede();

            Inicializado := not Inicializado ;

            if Inicializado then
               SatMensagem := 'Sat Fiscal Pronto para uso!'
            else
               SatMensagem := 'Sat Fiscal desligado!';
            end;//Fim ACBrSat
         end;//fim DM
      end;//fim se

Link para o comentário
Compartilhar em outros sites

  • Este tópico foi criado há 2291 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.