Jump to content
Notícias do ACBr

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

click.png

consultoria_sticker.png

Conteúdo para desenvolvedores
 ao vivo de terça a quinta!
Saiba mais

dev.png

logo_acbr_paygo.png

TEF ACBr PayGo
Seja um revendedor e ofereça uma solução completa para seu cliente.


botao.png

beneficios.png

Registro C181 - Campos deveriam estar vazio e estão 0


Recommended Posts

Boa tarde

Quando não é passado nada para a o campo VL_UNIT_ICMS_ST_CONV_COMPL o mesmo retorna o valor "0,00".

Segundo o guia prático da EFD e não pode ser "0" e sim vazio.

Fiz a modificação a seguir.

procedure TBloco_C.WriteRegistroC181(RegC100: TRegistroC100; RegC170: TRegistroC170);
var
  intFor: integer;
begin
  if Assigned( RegC170.RegistroC181 ) then
  begin
     if RegC170.RegistroC181.Count > 0 then
     begin
        if (RegC100.IND_OPER = tpSaidaPrestacao) or (FBloco_0.Registro0000.IND_PERFIL in [pfPerfilC]) then
           Check(False, 'O RegistroC181, não deve ser gerado em movimentações de saída ou %s, conforme ATO COTEPE 09/08', ['PerfilC']);
     end;
     for intFor := 0 to RegC170.RegistroC181.Count - 1 do
     begin
        with RegC170.RegistroC181.Items[intFor] do
        begin
          Add( LFill('C181') +
               LFill( COD_MOT_REST_COMPL ) +
               LFill( QUANT_CONV,0,6 ) +
               LFill( UNID) +
               LFill( COD_MOD_SAIDA) +
               LFill( SERIE_SAIDA) +
               LFill( ECF_FAB_SAIDA) +
               LFill( NUM_DOC_SAIDA) +
               LFill( CHV_DFE_SAIDA) +
               LFill( DT_DOC_SAIDA, 'ddmmyyyy' ) +
               LFill( NUM_ITEM_SAIDA) +
               DFill( VL_UNIT_CONV_SAIDA,0,True ) +
               DFill( VL_UNIT_ICMS_OP_ESTOQUE_CONV_SAIDA,0,True ) +
               DFill( VL_UNIT_ICMS_ST_ESTOQUE_CONV_SAIDA,0,True ) +
               DFill( VL_UNIT_FCP_ICMS_ST_ESTOQUE_CONV_SAIDA,0,True ) +
               DFill( VL_UNIT_ICMS_NA_OPERACAO_CONV_SAIDA,0,True ) +
               DFill( VL_UNIT_ICMS_OP_CONV_SAIDA,0,True ) +
               DFill( VL_UNIT_ICMS_ST_CONV_REST,0,True ) +
               DFill( VL_UNIT_FCP_ST_CONV_REST,0,True ) +
               DFill( VL_UNIT_ICMS_ST_CONV_COMPL,0,True ) +
               DFill( VL_UNIT_FCP_ST_CONV_COMPL,0,True )
);
        end;
        RegistroC990.QTD_LIN_C := RegistroC990.QTD_LIN_C + 1;
     end;
     /// Variavél para armazenar a quantidade de registro do tipo.
     FRegistroC181Count := FRegistroC181Count + RegC170.RegistroC181.Count;

  end;

 

ACBrEFDBloco_C_Class.pas

Link to post
Share on other sites
Guest
This topic is now closed to further replies.
×
×
  • Create New...