Voilà l'événement Onprint ne marche pas quand j'ai plusieurs enregistrements dans mon OracleDataSet : il garde en mémoire le dernier enregistrement, et l'applique pour tous les enregistrements de mon oracledataset.
Si je comprends bien, tu vérifies si l'ensemble de données est vide pour changer le contenu du QrLabel.
Or, dans l'évènement OnPrint, tu reçois comme paramètre Value de type string, qui correspondant à la valeur du champ de l'ensemble de données.
Le code à mettre est tout simplement :
if Value = EmptyStr then
Value := 'Message';
Ce qui a pour effet de s'adapter à la valeur contenue dans le champ à chaque enregistrement.