Boa tarde... ( podem fechar o tópico )
- Consegui fazer a alteração, utilizei um software "Superfinder" para encontrar
onde tinha sido feita a impressão da REDUÇÃO Z Virtual.
- Segue abaixo a alteração, dando minha pequena contribuição ao Fórum, evitando que RZ seja impressa,
- Basta substituir o evento dentro de : C:\ACBR\Fontes\ACBrSerial\ACBrECFVirtual.pas pelo que alterei abaixo
// 16/04/2029.Carlos : Redução Z da CLASSE VIRTUAL alterada :
// Casos:
// (1) Se a impressora estiver BLOQUEADA (RZ já tirada), simplesmente DESBLOQUEIA e SAI
// ...
// (2) Reiniciando valores sem impressão: Se estiver "requisitando RZ"(dia seguinte), ou imprimindo Z, então,
// emite aviso "Iniciando Novo dia de Movimento" e limpa valores e libera Impressora
// ...
// (3) Reiniciando valores sem impressão: Se estiver "Livre"(dia seguinte), ou imprimindo Z, então,
// emite pergunta "Reiniciar dia de Movimento?" ... se sim, limpa valores e libera Impressora
// ...
// Units extras que precisei : WIndows{Mb_Ok}, Forms{Appliaction}, Controls{mrNo} ,
// ...
procedure TACBrECFVirtualClass.ReducaoZ(DataHora : TDateTime) ;
var
A: Integer ;
begin
GravaLog( ComandoLOG );
// (1) Se a impressora estiver BLOQUEADA (RZ já tirada), simplesmente DESBLOQUEIA e SAI
if Estado = estBloqueada then
Begin
// Como era: raise EACBrECFERRO.Create(ACBrStr('Dia já foi fechado. Redução Z já emitida')) ;
//
fpEstado := estLivre ; fpDia := now ; Exit;
End;
// Se o estado não for LIVRE nem for REQUER REDUÇÃO Z :
if not (Estado in [estLivre,estRequerZ]) then
Begin
raise EACBrECFERRO.create(ACBrStr('O Estado não é "LIVRE" Cancele o último Documento')) ;
End;
// (2) Se estiver "requisitando RZ"(dia seguinte), ou imprimindo Z, então,
// emite aviso "Iniciando Novo dia de Movimento" e limpa valores e libera Impressora
if Estado=estRequerZ then
Application.MessageBox(
'Clique em [Ok] para iniciar Novo dia de Movimento',
'Leia com Atenção', MB_OK + MB_IconInformation );
// (3) Reiniciando valores sem impressão: Se estiver "Livre"(dia seguinte), ou imprimindo Z, então,
// emite pergunta "Reiniciar dia de Movimento?" ... se sim, limpa valores e libera Impressora
if Estado=estLivre then
Begin
If Application.MessageBox( Pchar(
'* Redução Z Virtual - Sem Impressão *'+#13+#13+#13+
'Reiniciar dia de Movimento ?'+#13+#13+
'[Sim] = Leitura X Virtual será reiniciada;'+#13+
'[Não] = Leitura X Virtual continuará acumulando valores;'),
'Responda com Atenção', MB_YESNO + MB_DefButton2 + Mb_IconQuestion )=MrNo then
Exit;
End;
//
try
ZeraCupom;
fpReducoesZ := fpReducoesZ + 1 ;
// ReducaoZVirtual( DataHora ); Local que ocorreria a impressão
{ Como ERA :
if fpEstado = estRequerZ then
begin
fpEstado := estLivre ;
fpDia := now ;
end
else
fpEstado := estBloqueada ; }
fpEstado := estLivre ;
fpDia := now ;
fpNumCER := 0;
fpVendaBruta := 0;
fpTotalDescontosICMS := 0;
fpTotalDescontosISSQN := 0;
fpTotalAcrescimosICMS := 0;
fpTotalAcrescimosISSQN := 0;
fpCNFCancelados := 0;
fpCNFCanceladosTotal := 0;
fpCuponsCancelados := 0;
fpCuponsCanceladosTotalICMS := 0;
fpCuponsCanceladosTotalISSQN := 0;
fpCuponsCanceladosEmAberto := 0;
fpCuponsCanceladosEmAbertoTotalICMS := 0;
fpCuponsCanceladosEmAbertoTotalISSQN := 0;
For A := 0 to fpAliquotas.Count - 1 do
fpAliquotas[A].Total := 0 ;
For A := 0 to fpFormasPagamentos.Count - 1 do
fpFormasPagamentos[A].Total := 0 ;
For A := 0 to fpComprovantesNaoFiscais.Count - 1 do
begin
fpComprovantesNaoFiscais[A].Total := 0 ;
fpComprovantesNaoFiscais[A].Contador := 0 ;
end;
For A := 0 to fpRelatoriosGerenciais.Count - 1 do
fpRelatoriosGerenciais[A].Contador := 0 ;
AbreDia;
// AbreDocumento ; parte da impressão
except
LeArqINI ;
raise ;
end ;
end; // procedure TACBrECFVirtualClass.ReducaoZ(DataHora : TDateTime) ;