Olá Regys.
Alterei a função procurar para retornar a descrição do ncm, se achar interessante coloque nos fontes...
com a mudança do svn o link da tabela tbm mudou: svn://svn.code.sf.net/p/acbr/code/trunk/Exemplos/ACBrIBPTax/tabela/AcspDeOlhoNoImpostoIbptV.0.0.2.csv
tem que alterar o exemplo..
Segue Codigo Alterado.
função botao pesquisar:
procedure TForm1.btnPesquisarClick(Sender: TObject);
var
ex, Descricao: String;
tabela: Integer;
aliqNac, aliqImp: Double;
begin
if ACBrIBPTax1.Procurar(edNCM.Text, ex, Descricao, tabela, aliqNac, aliqImp, ckbBuscaNCMParcial.Checked) then
begin
ShowMessage(
'Código: ' + edNCM.Text + sLineBreak +
'Descricao: ' + Descricao + sLineBreak +
'Exceção: ' + ex + sLineBreak +
'Tabela: ' + IntToStr(tabela) + sLineBreak +
'Aliq Nac: ' + FloatToStr(aliqNac) + sLineBreak +
'Aliq Imp: ' + FloatToStr(aliqImp)
);
end
else
showmessage('Código não encontrado!');
end;
e função procurar
function TACBrIBPTax.Procurar(const ACodigo: String; var ex, Descricao: String;
var tabela: Integer; var aliqNac, aliqImp: Double;
const BuscaParcial: Boolean): Boolean;
var
I: Integer;
Igual: Boolean;
begin
if Itens.Count <= 0 then
EACBrIBPTax.Create('Tabela de itens ainda não foi aberta!');
Result := False;
for I := 0 to Itens.Count - 1 do
begin
if BuscaParcial then
Igual := Pos(Trim(ACodigo), Trim(Itens.NCM)) > 0 //CompareText(Trim(ACodigo), Trim(Itens.NCM)) < 0
else
Igual := SameText(Trim(ACodigo), Trim(Itens.NCM));
if Igual Then
begin
ex := Itens.Excecao ;
tabela := Integer(Itens.Tabela) ;
aliqNac := Itens.AliqNacional ;
aliqImp := Itens.AliqImportado ;
Descricao := Itens.Descricao;
Result := True;
Exit;
end;
end;
end;
att Obrigado