ich muss für die Schule ein eigen gewähltes Programm erstellen, ich habe eeine Registrikasse gewählt.
es funktioniert auch eig alles so weit, jedoch kommt eine Fehlermeldung.
zum Verständniss:
ich möchte das der gesamtpreis ausgegeben wird jedoch kommt folgende Fehlermeldung
edtgesamtpreis is an invalid float
Quelltext
Code: Alles auswählen
procedure TForm1.btnsummeClick(Sender: TObject);
Var
anzahl,i,a:integer;
summe,mws,preis,gesamtpreis:double;
rechnung:textfile;
Mit,Warengruppe,Ware,Anzahle,Summel,zeile,zahl,zahl11,zahl12,zahl13,zahl14,zahl21,zahl22,zahl23,zahl24,zahl31,zahl32,zahl33,zahl34,zahl41,zahl42,zahl43,b1,b2,b3,b4,b5,b6,b7,b8,b9,b10,b11,b12,b13,b14,b15:string;
begin
b1:= 'Puderzucker';
b2:= 'WZimt/WZucker';
b3:= 'Schlagcremé';
b4:= 'Apfelmus';
b5:= 'Zimt/Zucker';
b6:= 'Schoko';
b7:= 'Schoko/Banane';
b8:= 'Schinken/Käse';
b9:= 'Kaffee';
b10:='Tee';
b11:='Cappucion';
b12:='Kakao';
b13:='Mandeln';
b14:='Mix';
b15:='Cashewkerne';
zahl11:=edtware.text;
if zahl11='11' then lbxware.items.add(b1);
zahl12:=edtware.text;
if zahl12='12' then lbxware.items.add(b2);
zahl13:=edtware.text;
if zahl13='13' then lbxware.items.add(b3);
zahl14:=edtware.text;
if zahl14='14' then lbxware.items.add(b4);
zahl21:=edtware.text;
if zahl21='21' then lbxware.items.add(b5);
zahl22:=edtware.text;
if zahl22='22' then lbxware.items.add(b6);
zahl23:=edtware.text;
if zahl23='23' then lbxware.items.add(b7);
zahl24:=edtware.text;
if zahl24='24' then lbxware.items.add(b8);
zahl31:=edtware.text;
if zahl31='31' then lbxware.items.add(b9);
zahl32:=edtware.text;
if zahl32='32' then lbxware.items.add(b10);
zahl33:=edtware.text;
if zahl33='33' then lbxware.items.add(b11);
zahl34:=edtware.text;
if zahl34='34' then lbxware.items.add(b12);
zahl41:=edtware.text;
if zahl41='41' then lbxware.items.add(b13);
zahl42:=edtware.text;
if zahl42='42' then lbxware.items.add(b14);
zahl43:=edtware.text;
if zahl43='43' then lbxware.items.add(b15);
anzahl:=strtoint(edtanzahl.text);
lbxanzahl.items.add(inttostr (anzahl));
a:= lbxware.count -1 ;
gesamtpreis:= strtofloat(edtgesamtpreis.text);
for i:= 0 to a do begin
zeile:= lbxware.items[i];
if Zeile = b1 then preis:= 2.70
else if zeile= b2 then preis:= 2.70
else if zeile= b3 then preis:= 3.00
else if zeile= b4 then preis:= 3.00
else if zeile= b5 then preis:= 2.00
else if zeile= b6 then preis:= 2.50
else if zeile= b7 then preis:= 3.00
else if zeile= b8 then preis:= 3.50
else if zeile= b9 then preis:= 3.50
else if zeile= b10 then preis:= 1.00
else if zeile= b11 then preis:= 1.00
else if zeile= b12 then preis:= 1.00
else if zeile= b13 then preis:= 3.00
else if zeile= b14 then preis:= 3.00
else if zeile= b15 then preis:= 3.00 ;
end;
summe:= anzahl * preis ;
gesamtpreis:=gesamtpreis + summe ;
edtgesamtpreis.text:= floattostr(gesamtpreis);
lbxsumme.items.add(floattostr(summe));
mws:= gesamtpreis *0.19 ;
edtmehrwert.text:= floattostr(mws);
assignfile(rechnung,'rechnung.txt');
{$I-}
rewrite(rechnung);
{$I+}
a:= lbxanzahl.count -1 ;
for i:= 0 to a do begin
Mit:= lbxmitarbeiter.items[0];
Warengruppe:= lbxwarengruppe.items[i];
Ware:=lbxware.items[i];
Anzahle:=lbxanzahl.items[i];
Summel:=lbxsumme.items[i];
zeile:= Mit +'#'+Warengruppe+'#'+Ware+'#'+Anzahle+'#'+Summel+'#'+ edtgesamtpreis.text +'#'+ edtmehrwert.text;
writeln(rechnung,zeile);
end;
closefile(rechnung);
end;
vielen Dank schon mal