AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Datenbank Rechner in Delphi
Thema durchsuchen
Ansicht
Themen-Optionen

Datenbank Rechner in Delphi

Offene Frage von "Jack23"
Ein Thema von Jack23 · begonnen am 20. Okt 2007 · letzter Beitrag vom 22. Okt 2007
Antwort Antwort
Seite 7 von 7   « Erste     567   
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#61

Re: Datenbank Rechner in Delphi

  Alt 21. Okt 2007, 21:30
Zitat von Jack23:
Dann lass es doch. Keiner hat gesagt das du hier etwas schreiben sollst!
Doch, das ist meine ehrenamtliche Aufgabe hier.

Zitat von Jack23:
Denkst du ich will euch hier verarschen? Wenn du mir nicht glaubst dann lege ich gar keinen Wert auf deine Meinung!

Ich werde nach Morgen berichten was der Lehrer gesagt hat.
Du sollst keinen Wert auf meine Meinung legen, sondern dir Ratschläge von anderen Usern hier im Forum mal zu Herzen nehmen, und dich nicht gegen alles stemmen.

Um die Meinung deines Lehrers bin ich mal gespannt. Allerdings würd mich in erster Linie die Version vom Lehrer selbst interessieren.
  Mit Zitat antworten Zitat
alzaimar
(Moderator)

Registriert seit: 6. Mai 2005
Ort: Berlin
4.956 Beiträge
 
Delphi 2007 Enterprise
 
#62

Re: Datenbank Rechner in Delphi

  Alt 22. Okt 2007, 07:36
Lustiger Thread. Und deshalb werde ich mal meinen Senf dazugeben. Mal sehen, ob ich das vor lauter Kopfschütteln richtig verstanden habe.

1. Man darf nur eine Tabelle verwenden.
2. Die Tabelle sieht so aus
name | wert
Test1| 23M Kabel, 50 Karten, 50K Gewicht
Test2| 20M Kabel, 12CM Karten, 10K Gewicht

3. Gesucht ist ein Algorithmus, der zwei Aufzählungen addiert.

Zu 1 und 2: Wenn das so vorgegeben ist, reicht es, einmalig auf den Hirnriss der Vorgabe einzugehen, um dann dem armen Jungen (das ist Ernst gemeint, bei der Aufgabe) zu helfen.

Grundsätzlich gilt aber für alle Fragesteller, lieber Jack23, das man erstens genau lesen, zweitens per se dankbar sein und drittens immer höflich sein sollte.

Nun denn, nun zu Punkt 3.

Wir haben also eine Aufzählung von Elementen. Ein Element besteht aus drei Teilen, nämlich: 'Menge' 'Einheit' 'Sache'. Bei '23M Kabel' wäre die Menge=23, die Einheit='M' und die Sache='Kabel'.
Wenn ich eine Aufzählung in seine Elemente und jedes Element in seine Teile zerlegen kann, dann kann ich zwei Aufzählungen miteinander verknüpfen, sodaß einerseits eine neue Aufzählung entsteht und andererseits die Mengen von Elementen mit identischen 'Sachen' und 'Einheiten' addiert werden.

Ich halte so eine Funktion
Function AddiereAufzaehlung (aAufzaehlung1, aAufzaehlung2 : String; aFaktor : Integer) : String; für (natürlich) machbar, aber dennoch drei Nummern zu hoch für jemanden, der erst seit ein paar Wochen Delphi in der Schule hat. Nichts gegen dein Können Jack23, aber der Lehrer müsste wissen, das das innerhalb des Lehrplanes einfach nicht zu schaffen ist. Daher auch die Zweifel der Jungs hier bezüglich deines Verständnisses der Aufgabenstellung. Ich persönlich würde auch auf die #44'er Tabelle tippen und annehmen, das der Lehrer eine solche Lösung gemeint hat.

Und wenn nicht, steht die Einladung, sich über den Sinn einer solchen Aufgabenstellung hier im Forum zu unterhalten. Er kann das dann nach Anmeldung durch eine PN an einen der Teilnehmer dieses Threads gerne tun.

Zu Deinem Code:
ComboBox.Items.AddObject(ADOQuery.FieldbyName('Name').AsString,TObject(ADOQuery.FieldByName('Wert').AsString)); Das ist Quatsch, denn du speicherst das Ergebnis einer Funktion ('AsString') in einem dafür nicht vorgesehenen Container. Alles ist möglich, aber ich bezweifle, das beim Addieren dort noch etwas sinnvolles zu finden ist.
Es reicht
ComboBox.Items.Add(ADOQuery.FieldbyName('Name').AsString); dann die Werte kannst Du anhand der einzelnen Namen ausfindig machen (sofern diese eindeutig sind, aber wenigstens DAS sollte man als Prämisse annehmen).
Wenn Du o.g. Funktion implementiert hast, dann rufst Du sie einfach für jede combobox auf. Du addierst quasi das Ergebnis immer mit dem Wert der Combobox.
Delphi-Quellcode:
Var
  sErgebnis : String;

sErgebnis := '';
If ComboBox1.Text<>'Then sErgebnis := AddiereAufzaehlung (GetWert (Combobox1.Text), sErgebnis, StrToInt (Faktor1Edit.Text));
...
// für die anderen Comboboxes wiederholen
Die Funktion 'GetWert' ermittelt den Inhalt des Feldes 'Wert' anhand des übergebenen Namens.
"Wenn ist das Nunstruck git und Slotermeyer? Ja! Beiherhund das Oder die Flipperwaldt gersput!"
(Monty Python "Joke Warefare")
  Mit Zitat antworten Zitat
Benutzerbild von DeddyH
DeddyH

Registriert seit: 17. Sep 2006
Ort: Barchfeld
27.539 Beiträge
 
Delphi 11 Alexandria
 
#63

Re: Datenbank Rechner in Delphi

  Alt 22. Okt 2007, 08:55
Zitat von alzaimar:
Und wenn nicht, steht die Einladung, sich über den Sinn einer solchen Aufgabenstellung hier im Forum zu unterhalten. Er kann das dann nach Anmeldung durch eine PN an einen der Teilnehmer dieses Threads gerne tun.
Das schoss mir gestern abend auch noch durch den Kopf. Ich hege immer noch erhebliche Zweifel daran, dass die Aufgabe richtig verstanden wurde.
Detlef
"Ich habe Angst vor dem Tag, an dem die Technologie unsere menschlichen Interaktionen übertrumpft. Die Welt wird eine Generation von Idioten bekommen." (Albert Einstein)
Dieser Tag ist längst gekommen
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 7 von 7   « Erste     567   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 12:06 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz