Bonjour,
J'ai téléchargé selon les adresses indiquées la version de lazarus 1.6.2 en 32 bits pour windows et pour linux.
Pas de problème pour l'instant avec la version linux mais un petit problème avec la version windows.
Dans mes petites applications j'utilise souvent la conversion de chaîne correspondant à un nombre avec décimale que convertit pour effectuer des calculs
comme le morceau ci-dessus où MDEBIT peut valoir ' 25,75' donc avec des espaces avant les chiffres
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 MCREDIT:=data.bank.FieldByName('CREDIT').AsString; XCREDIT:=StrToFloat(MCREDIT); MDEBIT:=data.bank.FieldByName('DEBIT').AsString; XDEBIT:=StrToFloat(MDEBIT); XNONVALIDE:=XNONVALIDE+XCREDIT-XDEBIT;
Jusqu'à la version 1.6.0 pas de problème de conversion sous linux ni sous windows en 32bits mais avec la dernière version j'ai un message d'erreur de conversion.
Si j'écrisdonc en ajoutant une fonction supprimant les espaces plus de problème.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 MCREDIT:=data.bank.FieldByName('CREDIT').AsString; XCREDIT:=StrToFloat(Trim(MCREDIT)); MDEBIT:=data.bank.FieldByName('DEBIT').AsString; XDEBIT:=StrToFloat(Trim(MDEBIT)); XNONVALIDE:=XNONVALIDE+XCREDIT-XDEBIT;
Je le confirme je n'avais pas de problème avec la version 1.6.0.
Un bug ou bien une idée de correction de l'unité qui contient cette fonction sous windows ?
C'est pas important mais génant si on perd des formes de programmation en cours d'évolution de lazarus et pourquoi pas de problème sous linux ?
Merci A+
Partager