Olá Pessoal,
Não sei a implicação para outros colegas, mas estou sugerindo uma alteração na procedure TACBrSATExtratoFortesFr.pConsumidorLateralBeforePrint(). Não testei ESC/POS, uso apenas Fortes.
Normalmente o operador do caixa solicita apenas o CPF/CNPJ do consumidor. Nunca pedem o nome/razão. Meu sistema tem na parametrização uma opção para sequer pedir o nome/razão do cliente, e por padrão é desabilitada.
Ocorre que se informar o CPF ou CNPJ, e não informar o nome/razão, está saindo abaixo a mensagem: CONSUMIDOR NÃO INFORMADO. A alteração é para que se informar CPF ou CNPJ, essa mensagem não aparecerá, ela aparecerá somente quando não for informado CPF ou CNPJ.
Estou submetendo a procedure alterada para análise, e ou modificação, e claro, não aceitação se houver alguma implicação.
As alterações foram nas linhas: 947, 948 e 958 (em referência ao arquivo ACBrSATExtratoFortesFr.pas):
procedure TACBrSATExtratoFortesFr.pConsumidorLateralBeforePrint(
Sender: TObject; var PrintIt: Boolean);
var
NomeConsumidor: String;
begin
with ACBrSATExtrato.CFe do
begin
if (Trim(Dest.xNome) <> '') then
NomeConsumidor := ' - ' + Trim(Dest.xNome)
else if (Trim(Dest.CNPJCPF) = '') then
NomeConsumidor := ACBrStr('CONSUMIDOR NÃO IDENTIFICADO')
else
NomeConsumidor := '';
PrintIt := (Trim(Dest.CNPJCPF) <> '') or (NomeConsumidor <> '');
if PrintIt then
begin
mConsumidorLateral.Lines.Text := FormatarCNPJouCPF(Dest.CNPJCPF) +
IfThen(NomeConsumidor<>'', NomeConsumidor, '');
end;
end;
end;