Caros amigos, Até ontem esta procedure não estava apresentando erros, estava incrementando normalmente... só que hoje ela simplesmente parou!... e eu não modifiquei nada no código.. alguém poderia me dar uma dica do que pode ser?
Ela faz o seguinte: Eu chamo, no evento OnBeforeUpdateRecord, uma procedure que recupera o valor do generator e informa no campo chave... só que essa informação está chegando nula no banco..... O código está no final do e-mail Obrigado Francisco Thiago de Almeida Enter&Plug Sistemas Divisão: Desenvolvimento / Banco de dados Franca - SP procedure TDmCadastro.dspCad_ClienteBeforeUpdateRecord(Sender: TObject; SourceDS: TDataSet; DeltaDS: TCustomClientDataSet; UpdateKind: TUpdateKind; var Applied: Boolean); begin if UpdateKind in [ukInsert,ukModify] then begin if UpdateKind = ukInsert then UpdateRecordAutoInc(Sender,SourceDS,DeltaDS,Updatekind,Applied,DeltaDS.FieldByName('CCLI_COD').Index); BooleanValidade(DeltaDS.FieldByName('CCLI_IMOVEIS')); end; end; procedure TDmCadastro.UpdateRecordAutoInc(Sender: TObject; SourceDS: TDataSet; var DeltaDS: TCustomClientDataSet; UpdateKind: TUpdateKind; var Applied: Boolean; FieldIndex: Integer); var li_MaxGenerator: Integer; li_Id: Integer; begin //Captura o valor máximo permitido a um sqlMax_Generator_Value.Open; li_MaxGenerator := sqlMax_Generator_ValueRDBMAX_GENERATOR_VALUE.AsInteger; sqlMax_Generator_Value.Close; if UpdateKind in [ukInsert,ukModify] then begin if UpdateKind = ukInsert then begin try if pfInKey in DeltaDS.Fields[FieldIndex].ProviderFlags then begin li_Id := getId('gen_'+ DeltaDS.Fields[FieldIndex].DisplayName); // Se estourar o range de Generator if li_MaxGenerator < li_Id then raise Exception.Create('Server Error'+ #$D#$A +'Numero de registros permitidos ultrapassados') else begin DeltaDS.Fields[FieldIndex].NewValue := li_Id; end; end; except on E :Exception do begin DeltaDS.Edit; DeltaDS.Fields[FieldIndex].AsInteger := ci_AutoInc; DeltaDS.Post; raise; end; end; end; end; end; _______________________________________________________ Yahoo! Acesso Grátis - Internet rápida e grátis. Instale o discador agora! http://br.acesso.yahoo.com/ -- <<<<< FAVOR REMOVER ESTA PARTE AO RESPONDER ESTA MENSAGEM >>>>> Para ver as mensagens antigas, acesse: http://br.groups.yahoo.com/group/delphi-br/messages Para falar com o moderador, envie um e-mail para: [EMAIL PROTECTED] ou [EMAIL PROTECTED] Links do Yahoo! Grupos <*> Para visitar o site do seu grupo na web, acesse: http://br.groups.yahoo.com/group/delphi-br/ <*> Para sair deste grupo, envie um e-mail para: [EMAIL PROTECTED] <*> O uso que você faz do Yahoo! Grupos está sujeito aos: http://br.yahoo.com/info/utos.html