Olá, boa tarde a todos!
Aqui para prefeitura de Vila Velha/ES com a Siltecnologia, estamos tendo este retorno para nota de serviço no ambiente de homologação:
Rejeitado pelo Emissor Nacional: E1540 - O percentual redutor de alíquota para o IBS estadual não deve ser informado para o código da
classificação tributária - cClassTribIBSCBS informado na DPS. - Cod. Interno 50784013
No meu código as propriedades referentes a redução, estão com valores zero.
Ao gerar o xml para envio, na tag <IBSCBS> fora da tag <DPS>, foram incluídas as tags de redução de alíquota para uf, mun e fed, com valores zerados.
E mesmo comentando no meu código as linhas destas propriedades, o xml continua sendo gerado com as tags de redução.
O xml de envio só gerou sem as tags de redução após alterar o compontente Acbr no arquivo "ACBrNFSeXGravarXml.pas"
Incluí a validação dos valores de redução, fazendo .AppendChild apenas para valor > 0.
function TNFSeWClass.GerarXMLIBSCBSValoresUF(ValoresUF: TUF): TACBrXmlNode;
begin
Result := CreateElement('uf');
Result.AppendChild(AddNode(tcDe2, '#1', 'pIBSUF', 1, 7, 1,ValoresUF.pIBSUF, ''));
if (ValoresUF.pRedAliqUF > 0) then
Result.AppendChild(AddNode(tcDe2, '#1', 'pRedAliqUF', 1, 7, 1,ValoresUF.pRedAliqUF, ''));
Result.AppendChild(AddNode(tcDe2, '#1', 'pAliqEfetUF', 1, 7, 1,ValoresUF.pAliqEfetUF, ''));
end;
function TNFSeWClass.GerarXMLIBSCBSValoresMun(ValoresMun: TMun): TACBrXmlNode;
begin
Result := CreateElement('mun');
Result.AppendChild(AddNode(tcDe2, '#1', 'pIBSMun', 1, 7, 1,ValoresMun.pIBSMun, ''));
if (ValoresMun.pRedAliqMun > 0) then
Result.AppendChild(AddNode(tcDe2, '#1', 'pRedAliqMun', 1, 7, 1,ValoresMun.pRedAliqMun, ''));
Result.AppendChild(AddNode(tcDe2, '#1', 'pAliqEfetMun', 1, 7, 1,ValoresMun.pAliqEfetMun, ''));
end;
function TNFSeWClass.GerarXMLIBSCBSValoresFed(ValoresFed: TFed): TACBrXmlNode;
begin
Result := CreateElement('fed');
Result.AppendChild(AddNode(tcDe2, '#1', 'pCBS', 1, 7, 1,ValoresFed.pCBS, ''));
if (ValoresFed.pRedAliqCBS > 0) then
Result.AppendChild(AddNode(tcDe2, '#1', 'pRedAliqCBS', 1, 7, 1,ValoresFed.pRedAliqCBS, ''));
Result.AppendChild(AddNode(tcDe2, '#1', 'pAliqEfetCBS', 1, 7, 1,ValoresFed.pAliqEfetCBS, ''));
end;
O caminho é fazer mesmo esta alteração no momento? Ou teria um outro caminho que não consegui perceber?
Grato pela ajuda.