em produção, não pode ter vDesc zerado.
em homologação, por equant0, estão exigindo. eu resolvi assim para desenvolvimento.
alterei o arquivo pcnNFeW.pas
procedure TNFeW.GerarCobrFat;
begin
if (trim(nfe.Cobr.Fat.nFat) <> '') or
(nfe.Cobr.Fat.vOrig > 0) or
(nfe.Cobr.Fat.vDesc > 0) or
(nfe.Cobr.Fat.vLiq > 0) then
begin
Gerador.wGrupo('fat', 'Y02');
Gerador.wCampo(tcStr, 'Y03', 'nFat ', 01, 60, 0, nfe.Cobr.Fat.nFat, DSC_NFAT);
Gerador.wCampo(tcDe2, 'Y04', 'vOrig ', 01, 15, 0, nfe.Cobr.Fat.vOrig, DSC_VORIG);
//Gerador.wCampo(tcDe2, 'Y05', 'vDesc ', 01, 15, 0, nfe.Cobr.Fat.vDesc, DSC_VDESC);
{$IFDEF DEBUG}
Gerador.wCampo(tcDe2, 'Y05', 'vDesc ', 01, 15, 1, nfe.Cobr.Fat.vDesc, DSC_VDESC); //hrsoft 2/7/18 - 0 ->1
{$ELSE}
Gerador.wCampo(tcDe2, 'Y05', 'vDesc ', 01, 15, 0, nfe.Cobr.Fat.vDesc, DSC_VDESC); //hrsoft 2/7/18 - 0 ->1
{$ENDIF} Gerador.wCampo(tcDe2, 'Y06', 'vLiq ', 01, 15, 0, nfe.Cobr.Fat.vLiq, DSC_VLIQ);
Gerador.wGrupo('/fat');
end;
end;
no delphi XE, utilizo a diretiva DEBUG, para gerar apenas homologação.
mas acho que em algum momento vão igualar os sistemas na sefaz.