tenho uma maquina instalado o Delphi 2010 com o ACBR e Jedi meu sistema de frente de caixa funciona perfeitamente.usando Impressora Daruma FS700
Comprei outra maquina I7 com Windows 7
instalei o Delphi
instalei o ACBR pelo instalador
instalei o JEDI
Quando vou rodar o frente de caixa acontece vários erros.
1 - Na abertura do Cupom
Rotina -->> UECF chamo >>>FDataModule.ACBrECF.AbreCupom(CPFouCNPJ, Nome, Endereco);
2 - ACBrECF >>>> chama a >>>> fsECF.AbreCupom ;
3 - ACBrECFDaruma
procedure TACBrECFDaruma.AbreCupom ;
Var StrConsumidor : String ;
CO : string;
CC : string;
begin
fsSubTotal := 0;
fsNumCupom := '';
fsNumCCF := '';
fsNumUltimoItem := 0;
fpUltimaMsgPoucoPapel := 0 ; { Zera tempo pra msg de pouco papel }
AguardaImpressao := True ;
if fpMFD then
begin
StrConsumidor := LeftStr(Consumidor.Documento,20) + cDELIMITADOR +
LeftStr(Consumidor.Nome,30) + cDELIMITADOR +
LeftStr(Consumidor.Endereco,79) + cDELIMITADOR ;
EnviaComando( FS + 'F' + #200 + StrConsumidor ) ;
Consumidor.Enviado := True ;
RespostasComando.Clear;
CO := Trim(Copy(fpRespostaComando, 10, 6));
CC := Trim(Copy(fpRespostaComando, 16, 6));
RespostasComando.AddField('COO', CO);
RespostasComando.AddField('CCF', CC);
fsNumCupom := RespostasComando['COO'].AsString;
fsNumCCF := RespostasComando['CCF'].AsString;
if ModoPreVendaAtivado then
EnviaComando( FS + 'C' + #226 + '1' ) ;
end
else
EnviaComando(ESC + #200, 8) ;
ZeraTotalApagar;
end;
4 - ACBrBase
function TACBrInformacoes.AddField(const ANome,
AValor: String): TACBrInformacao;
begin
try
Result := FieldByName(ANome);
Result.AsString := AValor;
except
Result := Self.Add;
with Result do
begin
Nome := AnsiString(ANome);
AsString := AnsiString(AValor);
end;
end;
end;
O erro acontece nesta rotina abaixo
function TACBrInformacoes.FieldByName(const AName: String): TACBrInformacao;
var
I: Integer;
begin
Result := nil;
for I := 0 to Self.Count - 1 do
begin
if AnsiSameText(String(Self.Items.Nome), String(AName)) then
begin
Result := Self.Items;
Exit;
end;
end;
if Result = nil then
raise Exception.CreateFmt('Resposta "%s" não encontrada.', [AName]);
end;
na primeira passada o Self.count está = 0 a o result fica = nil é exibido o erro de COO,CCF,NumeroItem e ValorLiquido não localizado.
o estranho é que o valor de string(AName) está sendo passado
Clico em ignorar erro e continue, os itens são enviados para impressora.
ao finalizar o cupom da erro na rotina Subtotalizar cupom
Subtotal,Saldo,COO,TotalLiquido não localizado.
=======================
já chequei pra ver se estava retornando valores da impressora e está.
já desinstalei e instalei Windows o ACBR e JEDI e continua o erro.
Coloco a impressora na outra maquina funciona perfeito sem dá um erro.
se alguém souber porque isso acontece do Windows 7 eu agradeço muito.
[email protected]
(83)3534-2683 - Claro 9121-4188 Tim 9667-4725
Obrigado