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