Conditions if/else imbriquées
Bonjour,
Non programmeur, j'essaye d'améliorer une procédure à partir d'un vieux Fast report intégré au SIGB, qui travaille notamment avec du Delphi (je précise de suite : format de données propriétaire pas de SQL possible).
Je rencontre actuellement un problème dans un enchaînement if/else if/.../else, il me réclame un BEGIN supplémentaire en dernière ligne que je ne comprends pas.
je ne sais pas s'il s'agit d'un prble de syntaxe tout bête ou si je me plante complètement... J'ai aussi essayé avec un "case of" mais sans plus de succès.
Merci d'avance pour tout conseil...
Olivier
here is the code...
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51
|
procedure DonneesMaitre1OnBeforePrint(Sender: TfrxComponent);
var
Etat,Site,Emplacement,Situation:string;
Begin
Site:=Trim(<Emprunteurs;Responsable légal>);
Etat:=Trim(<Réservations;Etat>);
Emplacement:=Trim(<Exemplaires;Emplacement>);
Situation:=Trim(<Exemplaires;Situation>);
if (Site='Valenciennes') then
Begin
DonneesMaitre1.visible:=false
end
else if (Site='Lille') then
Begin
if (Emplacement='Lille') and (Situation='Disponible') then
DonneesMaitre1.visible:=false
else if (Emplacement='Valenciennes') and (Situation='Disponible') then
DonneesMaitre1.visible:=true
else
DonneesMaitre1.visible:=false;
end
else if (Site='Arras') then
Begin
if (Emplacement='Arras') and (Situation='Disponible') then
DonneesMaitre1.visible:=false
else if (Emplacement='Valenciennes') and (Situation='Disponible') then
DonneesMaitre1.visible:=true
else
DonneesMaitre1.visible:=false;
end
else if (Site='Gravelines') then
Begin
if (Emplacement='Gravelines') and (Situation='Disponible') then
DonneesMaitre1.visible:=false
else if (Emplacement='Valenciennes') and (Situation='Disponible') then
DonneesMaitre1.visible:=true
else
DonneesMaitre1.visible:=false;
end
else
begin
DonneesMaitre1.visible:=false;
end;
end; |