2010-02-18 3 views
1

Je voudrais empêcher le défilement d'ADORecordset en fonction de certaines conditions.Comment empêcher le défilement de TADORecordset?

Par exemple, il serait commode de faire quelque chose comme ça:

procedure TfrmMain.qryCenyBeforeScroll(DataSet: TDataSet); 
begin 
    if not (condition) then 
    qryCeny.DoNotScroll; //Just the idea 
end; 

Comment faire cela?

+0

Pourquoi voudriez-vous faire cela? Essayez-vous d'empêcher l'utilisateur de défiler? –

+0

J'ai une relation maître-détail mais le jeu d'enregistrements de détail est en mode ltBatchOptimistic. Si le jeu d'enregistrements maître modifie sa position, les modifications du jeu d'enregistrements de détail peuvent être perdues. Si vous souhaitez afficher une fenêtre de confirmation avant de faire défiler le jeu d'enregistrements maître. – Wodzu

+1

Vous pourriez peut-être utiliser une table en mémoire pour le maître et les détails, puis vous auriez un meilleur contrôle sur le moment d'appliquer (ou de rejeter) les modifications –

Répondre

4

Vous pouvez soulever une exception, par exemple:

if not (condition) then 
    Abort; 
Questions connexes