Warnkorb + Tabelle + Datenbank

  • Themenstarter Themenstarter Tobias Köhler
  • Beginndatum Beginndatum
Status
Nicht offen für weitere Antworten.
T

Tobias Köhler

Gast
Hi.

Ich versuche momentan eine Art Einkaufskorb zu programmieren. Man soll einen Artikel auswählen, dann dahinter ins Feld eine Zahl eintragen und auf hinzufügen klicken.
Das ganze soll in SWT erreicht werden.

Dann soll der Text im Feld gespeichert werden, die Daten in eine Tabelle übertragen und dann noch in einer Datenbank gespeichert werden.

1. Schwierigkeit: Wenn bereits ein Artikel derselben Art in der Tabelle ist, sollen die Zahlen addiert werden. Also eben die Anzahl der Artikel(schon in der Liste) + Anzahl der neuen Artikel. Danach soll das ganze wieder in der Tabelle aktualisiert werden.

2. Schwierigkeit: die unterste Tabellenzeile soll immer eine Art Zusammenfassung liefern. Da in der linken Spalte nur Zahlen stehen sollen, möchte ich die gerne zusammenzählen und in der anderen Spalte soll dann in der untersten Zeile der Preis stehen. Klingt eigentlich gar nicht so schwer, aber ich hab leider einfach keine Idee, wie ich auch nur anfangen soll und Google hat bisher noch keine Antworten geliefert:-l
 
also ka ob das in swt irgendwie anders geht aber rein programmtechnisch:

also zu punkt 1: durchsuch die tabelle bevor du die daten einträgst... und wenn du den artikel findest dann setz an sie stelle einfach anz_alt +anz_neu in die 2. spalte

punkt2: tabelle durchgehn zusammen addieren und var merken
preiste musst du nur mit ner anderen tabelle oder db abgleichen und ebenfals nur zusammmen addieren... und wnen du beide werte hast einfach so wie du artikel einfügst auch die 2 werte einfügen...

problem 3 späteres anhängen von daten: entweder du fügst später die items dazwischen oder du löscht die letzte zeile -> fügst deine artikel hinzu -> berechnest net
 
gut, hat bisher alles soweit geklappt außer das vergleichen der Items. Hab die Spalten jeweils in Arrays gespeichert und will nun nach dem Muster vorgehn:

wenn artikel[a].equals(artikel) dann soll inhalt von anzahl[a] zu anzahl addiert werden, a soll gelöscht werden(in beiden arrays) und alles soll eine zeile nach oben rücken. Klingt das wenigstens richtig? Auf jeden fall will es so bisher noch nicht klappen:-(
 
hmmm das musste über nen hilfsarray machen:

also das zusammen addieren sollte ja net das ding sein ...
danach:

1. feld enthält den namen
2. feld den wert

artikel_neu[][] //das was hinzu kommen soll
artikel_alt[][] //das was schon da is
artikel_hilfe[][] //hilfsarray

also:
Code:
for(int i=0; i<artikel_alt.length; i++){
  for(int i=0; i<artikel_new.length; i++){
    if(artikel_alt[i][0].compareToIgnoreCase(artikel_neu[j][0])==0){
      artikel_alt[i][1] = artikel_alt[i][1]+artikel_neu[j][1];
      for(int a=0; a<artikel_neu.length-1;a++){
        if(artikel_neu[j][0].compareToIgnoreCase(artikel_neu[a][0])!=0){
           artikel_hilfe[a]=artikel_neu[a];
        }
      }
           int laenge=artikel_hilfe.length;
           artikel_neu= new String[laenge][2];
           artikel_neu=artikel_hilfe;
    }
  }
}
 
Status
Nicht offen für weitere Antworten.

Zurück
Oben