Type mismatch for field ´ITEM´, expecting: Integer actual

Delphi

01/01/2008

Estou com essa function
function TF_LANCAMENTO_PROJETO.incrementa_item: string;
begin
      //**para auto incremento do item por cod_projeto_lancamento**//
    dm.sdsLancamentoItem.Close;
    dm.sdsLancamentoItem.CommandText:=´select max(item) as item ´ +
                                ´from lancamento_projeto ´ +
                                ´where cod_projeto_lancamento = :cod_projeto_lancamento´;
    dm.sdsLancamentoItem.ParamByName(´cod_projeto_lancamento´).AsString:=F_LANCAMENTO_PROJETO.projeto.Text;
    dm.sdsLancamentoItem.Open;
    item.Text:=dm.sdsLancamentoItem.fieldbyname(´item´).AsString;
    dm.sdsLancamentoItem.Close;
end;


Só que está dando erro nesta linha
dm.sdsLancamentoItem.Open;

O erro é esse
---------------------------
Debugger Exception Notification
---------------------------
Project MATERIAIS.exe raised exception class EDatabaseError with message ´sdsLancamentoItem: Type mismatch for field ´ITEM´, expecting: Integer actual: FMTBcdField´. Process stopped. Use Step or Run to continue.
---------------------------
OK   Help   
---------------------------


Alguma ajuda?


Jpauloss

Jpauloss

Curtidas 0

Respostas

Alexandrej

Alexandrej

01/01/2008

Remova os Fields do dataset e adicione novamente.


GOSTEI 0
Otto

Otto

01/01/2008

Remova os Fields do dataset e adicione novamente.


a dica do alexandre esta correta, mas, isso ocorreu pq o tipo do campo ITEM no banco mudou. faça uma pesquisa em todas as telas onde voce usa esse campo pra alterar os DataSets pra nao ocorrer esse erro em runtimer.

abraço


GOSTEI 0
Joalison

Joalison

01/01/2008

vlw cara, ainda sou iniciante, e sua dica me ajudou muito !
GOSTEI 0
POSTAR