Canclose [Résolu]

Messages postés
104
Date d'inscription
mardi 13 novembre 2007
Dernière intervention
31 janvier 2019
- - Dernière réponse : pierrotk10d
Messages postés
104
Date d'inscription
mardi 13 novembre 2007
Dernière intervention
31 janvier 2019
- 31 janv. 2019 à 10:08
Bonjour,
Comment faire pour s'assurer que toutes les tables d'une fiche ne sont pas mode dsEdit ou dsInsert avant de fermer la fiche. J'aimerais utiliser Canclose. Comment passer la liste des tables à la fonction IsTableEnEdition? j'ai un peu de difficulté à me remettre dedans. C'est l'age!
procedure TfEdition.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
begin
// peut on faire: for i := 0 to le nombre de tables ?
CanClose := IsTableEnEdition(DM. Table[i]);
end;

function TfEdition.IsTableEnEdition(DataSet: TDataSet): Boolean;
begin
Result := True;
With TDBDataset(Dataset) do begin
if (State in dsEditModes) then begin
if MessageDlg('Appliquer les modifications avant de fermer ?',
mtConfirmation, [mbYes, mbNo], 0) = mrYes then
Cancel
else
Result := False;
end;
end;
end;

Cordiales salutations
Afficher la suite 

Votre réponse

1 réponse

Messages postés
104
Date d'inscription
mardi 13 novembre 2007
Dernière intervention
31 janvier 2019
3
0
Merci
Bonjour,
J'ai trouvé.

procedure TfEdition.FormCloseQuery(Sender: TObject; var CanClose: Boolean);
var i: Integer;
begin
For i := 0 To DM.ComponentCount -1 do
If (DM.Components[i] is TTable) then
CanClose := IsTableEnEdition(Components[i] as TTable);
end;

function TfEdition.IsTableEnEdition(DataSet: TDataSet): Boolean;
begin
Result := True;
With TDBDataset(Dataset) do begin
if (State in dsEditModes) then begin
if MessageDlg('Appliquer les modifications avant de fermer ?',
mtConfirmation, [mbYes, mbNo], 0) = mrYes then
Cancel
else
Result := False;
end;
end;
end;

Commenter la réponse de pierrotk10d

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.