| Autor |
Beitrag |
Dhakiyah
      
Beiträge: 327
Erhaltene Danke: 5
Windows 7
Delphi XE2
|
Verfasst: Mo 02.06.08 13:11
Hallo!
Habe eine Handelskalkulation geschrieben.
Aber er zeigt die Werte nicht im Panel an...
Was ist falsch?
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: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70:
| var Form1: TForm1;
implementation
{$R *.dfm} var listeneinkaufspreis, lieferrabatt, zieleinkaufspreis, lieferskonto, bareinkaufspreis, bezugskosten, bezugspreis, selbstkosten, selbstkostenpreis, gewinn, barverkaufspreis, kundenskonto, zielverkaufspreis, kundenrabatt, listenverkaufspreis, ust, angebotspreis, lieferrabattwert, lieferskontowert, selbstkostenwert, gewinnwert, kundenskontowert, kundenrabattwert, ustwert : double;
procedure TForm1.Button1Click(Sender: TObject); begin panel1.caption:= FloatToStr(listeneinkaufspreis); panel2.caption:= FloatToStr(lieferrabattwert); panel3.caption:= FloatToStr(zieleinkaufspreis); panel4.caption:= FloatToStr(lieferskontowert); panel5.caption:= FloatToStr(bareinkaufspreis); panel6.caption:= FloatToStr(bezugskosten); panel7.caption:= FloatToStr(bezugspreis); panel8.caption:= FloatToStr(selbstkostenwert); panel9.caption:= FloatToStr(selbstkostenpreis); panel10.caption:= FloatToStr(gewinnwert); panel11.caption:= FloatToStr(barverkaufspreis); panel12.caption:= FloatToStr(kundenskontowert); panel13.caption:= FloatToStr(zielverkaufspreis); panel14.caption:= FloatToStr(kundenrabattwert); panel15.caption:= FloatToStr(listenverkaufspreis); panel16.caption:= FloatToStr(ustwert); panel17.caption:= FloatToStr(angebotspreis); end;
procedure TForm1.Button2Click(Sender: TObject); begin if Application.Messagebox ('Soll das Programm wirklich beendet werden?','Programm beenden',36) = 6 then close; end;
procedure TForm1.FormActivate(Sender: TObject); begin listeneinkaufspreis := StrToFloat(Edit1.text); lieferrabatt := (listeneinkaufspreis * lieferskontowert)/100; zieleinkaufspreis:= listeneinkaufspreis - lieferrabatt; lieferskonto:= (zieleinkaufspreis * lieferskontowert)/100; bareinkaufspreis := zieleinkaufspreis - lieferskonto; bezugskosten:=StrToFloat(Edit4.text); bezugspreis:= bareinkaufspreis + bezugskosten; selbstkosten:= (bezugspreis * selbstkostenwert)/100; selbstkostenpreis:= bezugspreis + selbstkosten; gewinn:= (selbstkostenpreis * gewinnwert)/100; barverkaufspreis := selbstkostenpreis + gewinn; kundenskonto:= (Barverkaufspreis * kundenskontowert) / (100 - Kundenskontowert); zielverkaufspreis := barverkaufspreis + kundenskonto; kundenrabatt := (zielverkaufspreis * kundenrabattwert) / (100 - Kundenrabattwert); listenverkaufspreis := zielverkaufspreis + kundenrabatt; ust := (listenverkaufspreis * ustwert) / 100; angebotspreis := listenverkaufspreis + ust;
lieferrabattwert := StrToFloat (Edit2.text); lieferskontowert := StrToFloat (Edit3.text); selbstkostenwert := StrToFloat (Edit5.text); gewinnwert := StrToFloat (Edit6.text); kundenskontowert := StrToFloat (Edit7.text); kundenrabattwert := StrToFloat (Edit8.text); ustwert := StrToFloat (Edit9.text); end;
end. |
Moderiert von Narses: Delphi-Tags hinzugefügt
|
|
GericasS
      
Beiträge: 540
Windows Vista Home Premium
D2010, VisualStudio2008
|
Verfasst: Mo 02.06.08 13:22
Warum schreibst du das, was im FormActivate steht nicht einfach in das Button1Click Event mit rein ? Oder soll das alles wirklich nur passieren wenn die Form den Focus bekommt ?
LG
GericasS
PS : Ich weiß nicht ob es stimmt aber musst du nicht erst die Werte einlesen um dann mit ihnen zu arbeiten ?
_________________ Alexander N.
Neue Bewaffnung Amilo xi2428 T9300
|
|
Dhakiyah 
      
Beiträge: 327
Erhaltene Danke: 5
Windows 7
Delphi XE2
|
Verfasst: Mo 02.06.08 13:26
So, hab ich...
Jetzt zeigt er zwar was in den Panels an, aber nicht die richtigen Ergebnisse...
Irgendwie rechnet der gar net bis auf das mit den Bezugskosten...
LG
Jasmin
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Mo 02.06.08 13:27
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: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67:
| var Form1: TForm1;
implementation
{$R *.dfm} var listeneinkaufspreis, lieferrabatt, zieleinkaufspreis, lieferskonto, bareinkaufspreis, bezugskosten, bezugspreis, selbstkosten, selbstkostenpreis, gewinn, barverkaufspreis, kundenskonto, zielverkaufspreis, kundenrabatt, listenverkaufspreis, ust, angebotspreis, lieferrabattwert, lieferskontowert, selbstkostenwert, gewinnwert, kundenskontowert, kundenrabattwert, ustwert : double;
procedure TForm1.Button1Click(Sender: TObject); begin listeneinkaufspreis := StrToFloat(Edit1.text); lieferrabatt := (listeneinkaufspreis * lieferskontowert)/100; zieleinkaufspreis:= listeneinkaufspreis - lieferrabatt; lieferskonto:= (zieleinkaufspreis * lieferskontowert)/100; bareinkaufspreis := zieleinkaufspreis - lieferskonto; bezugskosten:=StrToFloat(Edit4.text); bezugspreis:= bareinkaufspreis + bezugskosten; selbstkosten:= (bezugspreis * selbstkostenwert)/100; selbstkostenpreis:= bezugspreis + selbstkosten; gewinn:= (selbstkostenpreis * gewinnwert)/100; barverkaufspreis := selbstkostenpreis + gewinn; kundenskonto:= (Barverkaufspreis * kundenskontowert) / (100 - Kundenskontowert); zielverkaufspreis := barverkaufspreis + kundenskonto; kundenrabatt := (zielverkaufspreis * kundenrabattwert) / (100 - Kundenrabattwert); listenverkaufspreis := zielverkaufspreis + kundenrabatt; ust := (listenverkaufspreis * ustwert) / 100; angebotspreis := listenverkaufspreis + ust; lieferrabattwert := StrToFloat (Edit2.text); lieferskontowert := StrToFloat (Edit3.text); selbstkostenwert := StrToFloat (Edit5.text); gewinnwert := StrToFloat (Edit6.text); kundenskontowert := StrToFloat (Edit7.text); kundenrabattwert := StrToFloat (Edit8.text); ustwert := StrToFloat (Edit9.text);
panel1.caption:= FloatToStr(listeneinkaufspreis); panel2.caption:= FloatToStr(lieferrabattwert); panel3.caption:= FloatToStr(zieleinkaufspreis); panel4.caption:= FloatToStr(lieferskontowert); panel5.caption:= FloatToStr(bareinkaufspreis); panel6.caption:= FloatToStr(bezugskosten); panel7.caption:= FloatToStr(bezugspreis); panel8.caption:= FloatToStr(selbstkostenwert); panel9.caption:= FloatToStr(selbstkostenpreis); panel10.caption:= FloatToStr(gewinnwert); panel11.caption:= FloatToStr(barverkaufspreis); panel12.caption:= FloatToStr(kundenskontowert); panel13.caption:= FloatToStr(zielverkaufspreis); panel14.caption:= FloatToStr(kundenrabattwert); panel15.caption:= FloatToStr(listenverkaufspreis); panel16.caption:= FloatToStr(ustwert); panel17.caption:= FloatToStr(angebotspreis); end;
procedure TForm1.Button2Click(Sender: TObject); begin if Application.Messagebox ('Soll das Programm wirklich beendet werden?','Programm beenden',36) = 6 then close; end;
end. |
Mir fällt beim Überfliegen gerade auf..wo sind public/private und die ganzen Funktionsdeklarationen abgeblieben? 
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
Dhakiyah 
      
Beiträge: 327
Erhaltene Danke: 5
Windows 7
Delphi XE2
|
Verfasst: Mo 02.06.08 13:28
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: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;
type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Edit1: TEdit; Label3: TLabel; Edit2: TEdit; Panel1: TPanel; Panel2: TPanel; Label4: TLabel; Panel3: TPanel; Edit3: TEdit; Panel4: TPanel; Label5: TLabel; Edit4: TEdit; Panel5: TPanel; Label6: TLabel; Label7: TLabel; Panel6: TPanel; Label8: TLabel; Panel7: TPanel; Edit5: TEdit; Label9: TLabel; Panel8: TPanel; Panel9: TPanel; Label10: TLabel; Panel10: TPanel; Edit6: TEdit; Label11: TLabel; Panel11: TPanel; Label12: TLabel; Panel12: TPanel; Edit7: TEdit; Label13: TLabel; Panel13: TPanel; Label14: TLabel; Panel14: TPanel; Edit8: TEdit; Label15: TLabel; Panel15: TPanel; Label16: TLabel; Label17: TLabel; Panel16: TPanel; Panel17: TPanel; Edit9: TEdit; Label18: TLabel; Button1: TButton; Button2: TButton; Label19: TLabel; procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); private public end;
var Form1: TForm1;
implementation
{$R *.dfm} var listeneinkaufspreis, lieferrabatt, zieleinkaufspreis, lieferskonto, bareinkaufspreis, bezugskosten, bezugspreis, selbstkosten, selbstkostenpreis, gewinn, barverkaufspreis, kundenskonto, zielverkaufspreis, kundenrabatt, listenverkaufspreis, ust, angebotspreis, lieferrabattwert, lieferskontowert, selbstkostenwert, gewinnwert, kundenskontowert, kundenrabattwert, ustwert : double;
procedure TForm1.Button1Click(Sender: TObject); begin listeneinkaufspreis := StrToFloat(Edit1.text); lieferrabatt := (listeneinkaufspreis * lieferskontowert)/100; zieleinkaufspreis:= listeneinkaufspreis - lieferrabatt; lieferskonto:= (zieleinkaufspreis * lieferskontowert)/100; bareinkaufspreis := zieleinkaufspreis - lieferskonto; bezugskosten:=StrToFloat(Edit4.text); bezugspreis:= bareinkaufspreis + bezugskosten; selbstkosten:= (bezugspreis * selbstkostenwert)/100; selbstkostenpreis:= bezugspreis + selbstkosten; gewinn:= (selbstkostenpreis * gewinnwert)/100; barverkaufspreis := selbstkostenpreis + gewinn; kundenskonto:= (Barverkaufspreis * kundenskontowert) / (100 - Kundenskontowert); zielverkaufspreis := barverkaufspreis + kundenskonto; kundenrabatt := (zielverkaufspreis * kundenrabattwert) / (100 - Kundenrabattwert); listenverkaufspreis := zielverkaufspreis + kundenrabatt; ust := (listenverkaufspreis * ustwert) / 100; angebotspreis := listenverkaufspreis + ust;
lieferrabattwert := StrToFloat (Edit2.text); lieferskontowert := StrToFloat (Edit3.text); selbstkostenwert := StrToFloat (Edit5.text); gewinnwert := StrToFloat (Edit6.text); kundenskontowert := StrToFloat (Edit7.text); kundenrabattwert := StrToFloat (Edit8.text); ustwert := StrToFloat (Edit9.text);
panel1.caption:= FloatToStr(listeneinkaufspreis); panel2.caption:= FloatToStr(lieferrabatt); panel3.caption:= FloatToStr(zieleinkaufspreis); panel4.caption:= FloatToStr(lieferskonto); panel5.caption:= FloatToStr(bareinkaufspreis); panel6.caption:= FloatToStr(bezugskosten); panel7.caption:= FloatToStr(bezugspreis); panel8.caption:= FloatToStr(selbstkosten); panel9.caption:= FloatToStr(selbstkostenpreis); panel10.caption:= FloatToStr(gewinn); panel11.caption:= FloatToStr(barverkaufspreis); panel12.caption:= FloatToStr(kundenskonto); panel13.caption:= FloatToStr(zielverkaufspreis); panel14.caption:= FloatToStr(kundenrabatt); panel15.caption:= FloatToStr(listenverkaufspreis); panel16.caption:= FloatToStr(ust); panel17.caption:= FloatToStr(angebotspreis); end;
procedure TForm1.Button2Click(Sender: TObject); begin if Application.Messagebox ('Soll das Programm wirklich beendet werden?','Programm beenden',36) = 6 then close; end;
end. |
|
|
GericasS
      
Beiträge: 540
Windows Vista Home Premium
D2010, VisualStudio2008
|
Verfasst: Mo 02.06.08 13:30
Mh sieht doch alles richtig aus =) du solltest aber vll. alles in ein Event stecken meiner Meinung nach und die Variablen nicht global deklarieren.
EDIT : Die Variablen müssen glaube ich ein wenig höher sein wo die
Delphi-Quelltext
auch steht... =) wenn sie global sein sollen, ansonsten in das Button1Click Event über das erste begin.
_________________ Alexander N.
Neue Bewaffnung Amilo xi2428 T9300
Zuletzt bearbeitet von GericasS am Mo 02.06.08 13:32, insgesamt 1-mal bearbeitet
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Mo 02.06.08 13:32
Beachte doch einfach mal die Reihenfolge...
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: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133: 134:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;
type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Edit1: TEdit; Label3: TLabel; Edit2: TEdit; Panel1: TPanel; Panel2: TPanel; Label4: TLabel; Panel3: TPanel; Edit3: TEdit; Panel4: TPanel; Label5: TLabel; Edit4: TEdit; Panel5: TPanel; Label6: TLabel; Label7: TLabel; Panel6: TPanel; Label8: TLabel; Panel7: TPanel; Edit5: TEdit; Label9: TLabel; Panel8: TPanel; Panel9: TPanel; Label10: TLabel; Panel10: TPanel; Edit6: TEdit; Label11: TLabel; Panel11: TPanel; Label12: TLabel; Panel12: TPanel; Edit7: TEdit; Label13: TLabel; Panel13: TPanel; Label14: TLabel; Panel14: TPanel; Edit8: TEdit; Label15: TLabel; Panel15: TPanel; Label16: TLabel; Label17: TLabel; Panel16: TPanel; Panel17: TPanel; Edit9: TEdit; Label18: TLabel; Button1: TButton; Button2: TButton; Label19: TLabel; procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); private public end;
var Form1: TForm1;
implementation
{$R *.dfm} var listeneinkaufspreis, lieferrabatt, zieleinkaufspreis, lieferskonto, bareinkaufspreis, bezugskosten, bezugspreis, selbstkosten, selbstkostenpreis, gewinn, barverkaufspreis, kundenskonto, zielverkaufspreis, kundenrabatt, listenverkaufspreis, ust, angebotspreis, lieferrabattwert, lieferskontowert, selbstkostenwert, gewinnwert, kundenskontowert, kundenrabattwert, ustwert : double;
procedure TForm1.Button1Click(Sender: TObject); begin listeneinkaufspreis := StrToFloat(Edit1.text); lieferrabattwert := StrToFloat (Edit2.text); lieferskontowert := StrToFloat (Edit3.text); selbstkostenwert := StrToFloat (Edit5.text); gewinnwert := StrToFloat (Edit6.text); kundenskontowert := StrToFloat (Edit7.text); kundenrabattwert := StrToFloat (Edit8.text); ustwert := StrToFloat (Edit9.text);
lieferrabatt := (listeneinkaufspreis * lieferskontowert)/100; zieleinkaufspreis:= listeneinkaufspreis - lieferrabatt; lieferskonto:= (zieleinkaufspreis * lieferskontowert)/100; bareinkaufspreis := zieleinkaufspreis - lieferskonto; bezugskosten:=StrToFloat(Edit4.text); bezugspreis:= bareinkaufspreis + bezugskosten; selbstkosten:= (bezugspreis * selbstkostenwert)/100; selbstkostenpreis:= bezugspreis + selbstkosten; gewinn:= (selbstkostenpreis * gewinnwert)/100; barverkaufspreis := selbstkostenpreis + gewinn; kundenskonto:= (Barverkaufspreis * kundenskontowert) / (100 - Kundenskontowert); zielverkaufspreis := barverkaufspreis + kundenskonto; kundenrabatt := (zielverkaufspreis * kundenrabattwert) / (100 - Kundenrabattwert); listenverkaufspreis := zielverkaufspreis + kundenrabatt; ust := (listenverkaufspreis * ustwert) / 100; angebotspreis := listenverkaufspreis + ust;
panel1.caption:= FloatToStr(listeneinkaufspreis); panel2.caption:= FloatToStr(lieferrabatt); panel3.caption:= FloatToStr(zieleinkaufspreis); panel4.caption:= FloatToStr(lieferskonto); panel5.caption:= FloatToStr(bareinkaufspreis); panel6.caption:= FloatToStr(bezugskosten); panel7.caption:= FloatToStr(bezugspreis); panel8.caption:= FloatToStr(selbstkosten); panel9.caption:= FloatToStr(selbstkostenpreis); panel10.caption:= FloatToStr(gewinn); panel11.caption:= FloatToStr(barverkaufspreis); panel12.caption:= FloatToStr(kundenskonto); panel13.caption:= FloatToStr(zielverkaufspreis); panel14.caption:= FloatToStr(kundenrabatt); panel15.caption:= FloatToStr(listenverkaufspreis); panel16.caption:= FloatToStr(ust); panel17.caption:= FloatToStr(angebotspreis); end;
procedure TForm1.Button2Click(Sender: TObject); begin if Application.Messagebox ('Soll das Programm wirklich beendet werden?','Programm beenden',36) = 6 then close; end;
end. |
LG
Stefan
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
Zuletzt bearbeitet von ZeitGeist87 am Mo 02.06.08 13:33, insgesamt 1-mal bearbeitet
|
|
Dhakiyah 
      
Beiträge: 327
Erhaltene Danke: 5
Windows 7
Delphi XE2
|
Verfasst: Mo 02.06.08 13:33
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: 52: 53: 54: 55: 56: 57: 58: 59: 60: 61: 62: 63: 64: 65: 66: 67: 68: 69: 70: 71: 72: 73: 74: 75: 76: 77: 78: 79: 80: 81: 82: 83: 84: 85: 86: 87: 88: 89: 90: 91: 92: 93: 94: 95: 96: 97: 98: 99: 100: 101: 102: 103: 104: 105: 106: 107: 108: 109: 110: 111: 112: 113: 114: 115: 116: 117: 118: 119: 120: 121: 122: 123: 124: 125: 126: 127: 128: 129: 130: 131: 132: 133:
| unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;
type TForm1 = class(TForm) Label1: TLabel; Label2: TLabel; Edit1: TEdit; Label3: TLabel; Edit2: TEdit; Panel1: TPanel; Panel2: TPanel; Label4: TLabel; Panel3: TPanel; Edit3: TEdit; Panel4: TPanel; Label5: TLabel; Edit4: TEdit; Panel5: TPanel; Label6: TLabel; Label7: TLabel; Panel6: TPanel; Label8: TLabel; Panel7: TPanel; Edit5: TEdit; Label9: TLabel; Panel8: TPanel; Panel9: TPanel; Label10: TLabel; Panel10: TPanel; Edit6: TEdit; Label11: TLabel; Panel11: TPanel; Label12: TLabel; Panel12: TPanel; Edit7: TEdit; Label13: TLabel; Panel13: TPanel; Label14: TLabel; Panel14: TPanel; Edit8: TEdit; Label15: TLabel; Panel15: TPanel; Label16: TLabel; Label17: TLabel; Panel16: TPanel; Panel17: TPanel; Edit9: TEdit; Label18: TLabel; Button1: TButton; Button2: TButton; Label19: TLabel; procedure Button2Click(Sender: TObject); procedure Button1Click(Sender: TObject); private public end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject); var listeneinkaufspreis, lieferrabatt, zieleinkaufspreis, lieferskonto, bareinkaufspreis, bezugskosten, bezugspreis, selbstkosten, selbstkostenpreis, gewinn, barverkaufspreis, kundenskonto, zielverkaufspreis, kundenrabatt, listenverkaufspreis, ust, angebotspreis, lieferrabattwert, lieferskontowert, selbstkostenwert, gewinnwert, kundenskontowert, kundenrabattwert, ustwert : double;
begin listeneinkaufspreis := StrToFloat(Edit1.text); lieferrabatt := (listeneinkaufspreis * lieferskontowert)/100; zieleinkaufspreis:= listeneinkaufspreis - lieferrabatt; lieferskonto:= (zieleinkaufspreis * lieferskontowert)/100; bareinkaufspreis := zieleinkaufspreis - lieferskonto; bezugskosten:=StrToFloat(Edit4.text); bezugspreis:= bareinkaufspreis + bezugskosten; selbstkosten:= (bezugspreis * selbstkostenwert)/100; selbstkostenpreis:= bezugspreis + selbstkosten; gewinn:= (selbstkostenpreis * gewinnwert)/100; barverkaufspreis := selbstkostenpreis + gewinn; kundenskonto:= (Barverkaufspreis * kundenskontowert) / (100 - Kundenskontowert); zielverkaufspreis := barverkaufspreis + kundenskonto; kundenrabatt := (zielverkaufspreis * kundenrabattwert) / (100 - Kundenrabattwert); listenverkaufspreis := zielverkaufspreis + kundenrabatt; ust := (listenverkaufspreis * ustwert) / 100; angebotspreis := listenverkaufspreis + ust;
lieferrabattwert := StrToFloat (Edit2.text); lieferskontowert := StrToFloat (Edit3.text); selbstkostenwert := StrToFloat (Edit5.text); gewinnwert := StrToFloat (Edit6.text); kundenskontowert := StrToFloat (Edit7.text); kundenrabattwert := StrToFloat (Edit8.text); ustwert := StrToFloat (Edit9.text);
panel1.caption:= FloatToStr(listeneinkaufspreis); panel2.caption:= FloatToStr(lieferrabatt); panel3.caption:= FloatToStr(zieleinkaufspreis); panel4.caption:= FloatToStr(lieferskonto); panel5.caption:= FloatToStr(bareinkaufspreis); panel6.caption:= FloatToStr(bezugskosten); panel7.caption:= FloatToStr(bezugspreis); panel8.caption:= FloatToStr(selbstkosten); panel9.caption:= FloatToStr(selbstkostenpreis); panel10.caption:= FloatToStr(gewinn); panel11.caption:= FloatToStr(barverkaufspreis); panel12.caption:= FloatToStr(kundenskonto); panel13.caption:= FloatToStr(zielverkaufspreis); panel14.caption:= FloatToStr(kundenrabatt); panel15.caption:= FloatToStr(listenverkaufspreis); panel16.caption:= FloatToStr(ust); panel17.caption:= FloatToStr(angebotspreis); end;
procedure TForm1.Button2Click(Sender: TObject); begin if Application.Messagebox ('Soll das Programm wirklich beendet werden?','Programm beenden',36) = 6 then close; end;
end. |
Wenn ich 3000 als Anfangswert eingebe und 1000 als Bezugskosten, dann zeigt er mir in den Ergebnissen (xxxpreis) 3000 nach den bezugskosten 4000 an.
Bei den anderen Werten zeigt er mir 0 an...
|
|
GericasS
      
Beiträge: 540
Windows Vista Home Premium
D2010, VisualStudio2008
|
Verfasst: Mo 02.06.08 13:35
Muss das einlesen der Werte nicht vor dem arbeiten damit erfolgen ?
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: 52: 53: 54:
| procedure TForm1.Button1Click(Sender: TObject); var listeneinkaufspreis, lieferrabatt, zieleinkaufspreis, lieferskonto, bareinkaufspreis, bezugskosten, bezugspreis, selbstkosten, selbstkostenpreis, gewinn, barverkaufspreis, kundenskonto, zielverkaufspreis, kundenrabatt, listenverkaufspreis, ust, angebotspreis, lieferrabattwert, lieferskontowert, selbstkostenwert, gewinnwert, kundenskontowert, kundenrabattwert, ustwert : double;
begin lieferrabattwert := StrToFloat (Edit2.text); lieferskontowert := StrToFloat (Edit3.text); selbstkostenwert := StrToFloat (Edit5.text); gewinnwert := StrToFloat (Edit6.text); kundenskontowert := StrToFloat (Edit7.text); kundenrabattwert := StrToFloat (Edit8.text); ustwert := StrToFloat (Edit9.text);
listeneinkaufspreis := StrToFloat(Edit1.text); lieferrabatt := (listeneinkaufspreis * lieferskontowert)/100; zieleinkaufspreis:= listeneinkaufspreis - lieferrabatt; lieferskonto:= (zieleinkaufspreis * lieferskontowert)/100; bareinkaufspreis := zieleinkaufspreis - lieferskonto; bezugskosten:=StrToFloat(Edit4.text); bezugspreis:= bareinkaufspreis + bezugskosten; selbstkosten:= (bezugspreis * selbstkostenwert)/100; selbstkostenpreis:= bezugspreis + selbstkosten; gewinn:= (selbstkostenpreis * gewinnwert)/100; barverkaufspreis := selbstkostenpreis + gewinn; kundenskonto:= (Barverkaufspreis * kundenskontowert) / (100 - Kundenskontowert); zielverkaufspreis := barverkaufspreis + kundenskonto; kundenrabatt := (zielverkaufspreis * kundenrabattwert) / (100 - Kundenrabattwert); listenverkaufspreis := zielverkaufspreis + kundenrabatt; ust := (listenverkaufspreis * ustwert) / 100; angebotspreis := listenverkaufspreis + ust;
panel1.caption:= FloatToStr(listeneinkaufspreis); panel2.caption:= FloatToStr(lieferrabatt); panel3.caption:= FloatToStr(zieleinkaufspreis); panel4.caption:= FloatToStr(lieferskonto); panel5.caption:= FloatToStr(bareinkaufspreis); panel6.caption:= FloatToStr(bezugskosten); panel7.caption:= FloatToStr(bezugspreis); panel8.caption:= FloatToStr(selbstkosten); panel9.caption:= FloatToStr(selbstkostenpreis); panel10.caption:= FloatToStr(gewinn); panel11.caption:= FloatToStr(barverkaufspreis); panel12.caption:= FloatToStr(kundenskonto); panel13.caption:= FloatToStr(zielverkaufspreis); panel14.caption:= FloatToStr(kundenrabatt); panel15.caption:= FloatToStr(listenverkaufspreis); panel16.caption:= FloatToStr(ust); panel17.caption:= FloatToStr(angebotspreis); end; |
_________________ Alexander N.
Neue Bewaffnung Amilo xi2428 T9300
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Mo 02.06.08 13:37
GericasS hat folgendes geschrieben: | | Muss das einlesen der Werte nicht vor dem arbeiten damit erfolgen ? |
Man beachte meinen Post
Da kann man scrollen..und durch Orange ist das sogar noch hervorgehoben..
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
GericasS
      
Beiträge: 540
Windows Vista Home Premium
D2010, VisualStudio2008
|
Verfasst: Mo 02.06.08 13:38
_________________ Alexander N.
Neue Bewaffnung Amilo xi2428 T9300
|
|
Dhakiyah 
      
Beiträge: 327
Erhaltene Danke: 5
Windows 7
Delphi XE2
|
Verfasst: Mo 02.06.08 13:39
So, geht, aber wie beschränke ich jetzt die Ein- und Ausgabe?
Ich will ja, dass es sauber aussieht.
|
|
GericasS
      
Beiträge: 540
Windows Vista Home Premium
D2010, VisualStudio2008
|
Verfasst: Mo 02.06.08 13:40
Dhakiyah hat folgendes geschrieben: | So, geht, aber wie beschränke ich jetzt die Ein- und Ausgabe?
Ich will ja, dass es sauber aussieht. |
Ja, das was du nicht ausgeben willst gibst du einfach nicht aus oder was willst du genau ?
Oder gibst es aus, wenn z.B ein gewisser Wert erst erreicht ist..
_________________ Alexander N.
Neue Bewaffnung Amilo xi2428 T9300
|
|
Dhakiyah 
      
Beiträge: 327
Erhaltene Danke: 5
Windows 7
Delphi XE2
|
Verfasst: Mo 02.06.08 13:43
Beispiel:
Ich will das man nur 0000000000.00 eingeben kann, d.h. 10 Stellen mit höchstens zwei Nachkommastellen
UND
In der Ausgabe, also im Panel soll das selbe sein. 10 Stellen mit 2 Nachkommastellen...
LG
Jasmin
|
|
GericasS
      
Beiträge: 540
Windows Vista Home Premium
D2010, VisualStudio2008
|
Verfasst: Mo 02.06.08 13:45
Dhakiyah hat folgendes geschrieben: | Beispiel:
Ich will das man nur 0000000000.00 eingeben kann, d.h. 10 Stellen mit höchstens zwei Nachkommastellen
UND
In der Ausgabe, also im Panel soll das selbe sein. 10 Stellen mit 2 Nachkommastellen...
LG
Jasmin |
Ich glaube da kommt dann MaskEdit zum einsatz aber wie es funktioniert weiß ich leider nicht. Die Nachkommastellen kannst du ja runden.
so könnte es z.B aussehen
Delphi-Quelltext 1:
| Maskedit1.Text := Format('%-.3f', [StrToFloat(Maskedit1.Text)]) |
Die Dezimalstelle wird auf 3 Stellen hinters Komma getrennt bzw. gerundet.
_________________ Alexander N.
Neue Bewaffnung Amilo xi2428 T9300
Zuletzt bearbeitet von GericasS am Mo 02.06.08 13:47, insgesamt 1-mal bearbeitet
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Mo 02.06.08 13:47
Für die Ausgabe gibts den Format-Befehl FORMAT
Für die Eingabe kannst du wie Alex richtig sagt, das MaskEdit (Palette "Zusätzlich") verwenden.
Oder einfach ein globes OnKeyDown-Event für die Edits und alles selbst abhandeln und formatieren.
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
Dhakiyah 
      
Beiträge: 327
Erhaltene Danke: 5
Windows 7
Delphi XE2
|
Verfasst: Mo 02.06.08 14:31
Bei der Ausgabe geht es.
Wie mache ich das bei der Eingabe? OHNE dieses MaskEdit?
LG
Jasmin
|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Mo 02.06.08 14:37
Dazu hast du viele Möglichkeiten..
Überleg doch mal selbst 
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
Dhakiyah 
      
Beiträge: 327
Erhaltene Danke: 5
Windows 7
Delphi XE2
|
Verfasst: Mo 02.06.08 14:40
Grml...
Was glaubst du mache ich die ganze Zeit???
Habs auch schon mit diesem Format versucht, da kommt dann aber ein Fehler, das dieses so nicht geht (so in der Art)...
Und über den Objektinspektor finde ich nix...

|
|
ZeitGeist87
      
Beiträge: 1593
Erhaltene Danke: 20
Win95-Win10
Delphi 10 Seattle, Rad Studio 2007, Delphi 7 Prof., C++, WSH, Turbo Pascal, PHP, Delphi X2
|
Verfasst: Mo 02.06.08 14:43
Dhakiyah hat folgendes geschrieben: | Grml...
Was glaubst du mache ich die ganze Zeit???
Habs auch schon mit diesem Format versucht, da kommt dann aber ein Fehler, das dieses so nicht geht (so in der Art)...
Und über den Objektinspektor finde ich nix...
 |
Hey..ruhig bleiben!
Aber woran erkennen wir, dass du selbst überlegst?
Du zeigst uns ja nicht auf, was du schon alles probiert hast, bzw. wie du an dieses Problem rangegangen bist..
Im OI kannst du OnKeyPress nehmen..
_________________ Wer Provokationen, Ironie, Sarkasmus oder Zynismus herauslesen kann soll sie ignorieren um den Inhalt meiner Beiträge ungetrübt erfassen zu können.
|
|
|