Ir para conteúdo
  • Cadastre-se

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

Recommended Posts

Postado
Boa tarde.
 
Recentemente atualizei o acbr e voltou os erros no registros c481/c485. O codigo abaixo é o formato antigo que funcionava 100% sem que fosse preciso setar as variáveis pois o mesmo já setava de acordo com a cst recebida. Gostaria que avaliassem a possibilidade de manter o codigo abaixo.
Isso vale para o código do registro c485 também. A unit atual não possui as linhas em vermelho.
 
procedure TBloco_C.WriteRegistroC481(RegC405: TRegistroC405);
var
  intFor: integer;
  NullVL_BC_PIS: Boolean;
  NullALIQ_PIS: Boolean;
  NullQUANT_BC_PIS: Boolean;
  NullALIQ_PIS_QUANT: Boolean;
  NullVL_PIS: Boolean;
begin
   NullVL_BC_PIS      := False;
   NullALIQ_PIS       := False;
   NullQUANT_BC_PIS   := False;
   NullALIQ_PIS_QUANT := False;
   NullVL_PIS         := False;
   //--
   if Assigned(RegC405.RegistroC481) then
   begin
      for intFor := 0 to RegC405.RegistroC481.Count - 1 do
      begin
        with RegC405.RegistroC481.Items[intFor] do
        begin
          if Assigned(FOnBeforeWriteRegistroC481) then
             begin
                FOnBeforeWriteRegistroC481( RegC405.RegistroC481.Items[intFor],
                                            NullVL_BC_PIS,
                                            NullALIQ_PIS,
                                            NullQUANT_BC_PIS,
                                            NullALIQ_PIS_QUANT,
                                            NullVL_PIS);
             end else
             begin
               NullVL_BC_PIS      := ( CST_PIS in [ stpisQtdeAliquotaUnidade,
                                               stpisIsentaContribuicao,
                                               stpisSemIncidenciaContribuicao,
                                               stpisSuspensaoContribuicao  ]);
 
               NullALIQ_PIS       := ( CST_PIS in [ stpisQtdeAliquotaUnidade,
                                               stpisIsentaContribuicao,
                                               stpisSemIncidenciaContribuicao,
                                               stpisSuspensaoContribuicao  ]);
 
               NullQUANT_BC_PIS   := ( CST_PIS <> stpisQtdeAliquotaUnidade );
               NullALIQ_PIS_QUANT := ( CST_PIS <> stpisQtdeAliquotaUnidade );
             end;
 
          Add( LFill('C481')             +
               LFill(CstPisToStr(CST_PIS)) +
               LFill(VL_ITEM,0,2)        +
               DFill(VL_BC_PIS,      2, NullVL_BC_PIS) +
               DFill(ALIQ_PIS,       4, NullALIQ_PIS) +
               DFill(QUANT_BC_PIS,   3, NullQUANT_BC_PIS) +
               DFill(ALIQ_PIS_QUANT, 4, NullALIQ_PIS_QUANT) +
               LFill(VL_PIS,0,       2, NullVL_PIS)         +
               LFill(COD_ITEM)           +
               LFill(COD_CTA) ) ;
          //
          RegistroC990.QTD_LIN_C := RegistroC990.QTD_LIN_C + 1;
        end;
     end;
     // Variavél para armazenar a quantidade de registro do tipo.
     FRegistroC481Count := FRegistroC481Count + RegC405.RegistroC481.Count;
   end;
end;
Postado

Realmente não devem existir, essa checagem deve ser feita no seu código no evento que foi criado.

  • Curtir 2

--
Isaque Pinheiro
Aracruz/ES - Brasil
___________________________________________________________________________
Site Oficial: www.isaquepinheiro.com.br 
Youtube: youtube.com/isaquepinheirooficialbr
Facebook: facebook.com.br/isaquepinheirooficialbr
Instagram: instagram.com/isaquepinheirooficialbr
Linkdin: https://www.linkedin.com/in/isaquepinheirooficialbr

Conheça o Projeto ORMBr Framework for Delphi - https://www.ormbr.com.br

 

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