Olá comunidade !
Informamos que a propriedade CST da classe ISel responsável pela geração do grupo do Imposto Seletivo foi alterada de TCSTIS para string a partir da Rev-44138.
Antes:
TgIS = class(TObject)
private
FCSTIS: TCSTIS;
//Demais propriedades...
public
procedure Assign(Source: TgIS);
property CSTIS: TCSTIS read FCSTIS write FCSTIS;
//Demais propriedades...
end;
Depois:
TgIS = class(TObject)
private
FCSTIS: string;
//Demais propriedades
public
procedure Assign(Source: TgIS);
property CSTIS: string read FCSTIS write FCSTIS;
//Demais propriedades...
end;
O motivo dessa mudança
Foi constatado que o grupo de IS ainda não está sendo validado pelo webservice da Sefaz. Isso é esperado, visto que o Imposto Seletivo entra em vigor apenas em 2027. No entanto, devido à ausência dessa validação, arquivos XML estão sendo autorizados mesmo contendo quaisquer valores na faixa de 000 a 999 na tag CSTIS.
Até a publicação de uma tabela oficial com os códigos válidos, tornou-se inviável manter essa informação como um enumerado (Enum).
Por que? Se mantivéssemos o tipo enumerado, o componente falharia ao tentar ler e converter um XML que contivesse um valor numérico não previsto no código, gerando erros na leitura de documentos autorizados.
O que muda para mim?
Se você utiliza ACBrMonitorPLUS ou ACBrLib nenhuma mudança é necessária.
Ambos vão ler o valor da string que for atribuído no arquivo INI.
Caso utilize componente nativo para Delphi ou Lazarus, poderá se deparar com o seguinte erro ao tentar compilar sua aplicação:
De um duplo clique na linha que aparece o erro e remova qualquer valor de enumerado atribuído substituindo pelo valor que deseja em um formato de string.