Autor Thema: Summe der aus DB eingelesenen Variablen berechnen  (Gelesen 8375 mal)

0 Mitglieder und 1 Gast betrachten dieses Thema.

Offline dobra

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1353
  • Lob: 18
Summe der aus DB eingelesenen Variablen berechnen
« am: Januar 14, 2007, 11:39:55 »
mal ein ganz vorsichtiges Hallo an den Support,

Bin mit meinen Projekt wieder ein großes Stück weitergekommen aber jetzt stehe ich vor einem - für mich noch unlösbaren Problem:

Wie kann ich die Summe der Variablen die ich mit ssp::db_update_orders($ordernr,"BONUS",$bonus) in die DB geschrieben habe ermitteln?

Habe (ohne Erfolg) versucht, das Script aus der ssp-Doku (7.3 Artikelabhängige Versandkosten) anzupassen

<!--spmacro:module(Callback)
$summe = 0;
sub invoice_addpos {
for (my $i = 0 .. ++$i) {
        my $wert = ssp::get_var_db('BONUS',$i);
        $summe += $wert;
      }
}
-->

<!--spmacro:module(psum)
# Gesamtsumme der Punkte
sub psum {
main::mprint(main::mprint($Callback::summe));
}
-->
aber mit __psum::psum__ wird nur "00" ausgegeben.

Sie könnten - wen Sie ein kleines bißchen Zeit übrig hätten - den richtigen Code sicher in 3 Minuten schreiben.
(ich hab's in 3 Tagen - und Nächten - nicht geschafft)

(ganz schüchterne Bitte um Hilfe)

Linkback: https://www.shoppilot.net/pf/index.php?topic=763.0
mfG
dobra

Offline cru

  • Jr. Member
  • **
  • Beiträge: 69
  • Lob: 7
Re: Summe der aus DB eingelesenen Variablen berechnen
« Antwort #1 am: Januar 15, 2007, 08:44:04 »
Guten Morgen dobra,

eine kleine Frage vorab?
Wie genau und wo soll das Script benutzt werden?
Soll nur eine Spalte aus der Datenbank gelesen  und deren Werte addiert werden?

mfg
cru

Offline dobra

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1353
  • Lob: 18
Re: Summe der aus DB eingelesenen Variablen berechnen
« Antwort #2 am: Januar 15, 2007, 08:55:18 »
Hallo cru,

Das Script soll auf der "kundenkonto_bestellung_historie.html" Seite verwendet werden.
(zum anschauen http://www.woll-insel.at/cgi-bin/shop2/iboshop.cgi?show0 mit "test" - "test" einloggen)
Es soll die Summe alle Zahlen die in den (Auftrag - benutzerdefiniertes Feld) "BONUS"-Spalten des Kunden eingetragen sind, addiert werden.

Danke
dobra
 

Offline cru

  • Jr. Member
  • **
  • Beiträge: 69
  • Lob: 7
Re: Summe der aus DB eingelesenen Variablen berechnen
« Antwort #3 am: Januar 15, 2007, 10:39:09 »
So sollte es gehen:

<!--spmacro:module(spalte_addieren)
sub addiere {
my $summe = 0;

my $sql = qq | SELECT sum(BONUS) FROM "IHRE DB TABELLE" |;

if (ssp::readSQLData($sql, "SUMME") != -1){

                $summe = ssp::get_var_db ("SUMME", 0);
main::mprint $summe;
       }
-->

mfg
cru
« Letzte Änderung: Januar 16, 2007, 11:49:02 von cru »

Offline dobra

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1353
  • Lob: 18
Re: Summe der aus DB eingelesenen Variablen berechnen
« Antwort #4 am: Januar 15, 2007, 10:44:41 »
Vielen vielen lieben Dank !!!

Darauf wäre ich sicher nicht alleine gekommen.

dobra

Offline cru

  • Jr. Member
  • **
  • Beiträge: 69
  • Lob: 7
Re: Summe der aus DB eingelesenen Variablen berechnen
« Antwort #5 am: Januar 15, 2007, 10:47:25 »
Nachtrag:

So werden, wie mir gerade auffällt, die Werte für alle Kunden addiert:

Wenn immer nur die Summe für den aktuellen Kunden berechnet werden soll muss die Abfrage folgendermaßen aussehen:

<!--spmacro:module(spalte_addieren)
sub addiere {
my $summe = 0;
        my $kundennr = ssp::get_var_user("kudnennr");

my $sql = qq | SELECT sum(BONUS) FROM "IHRE DB TABELLE" WHERE USR='$kundennr' |;

if (ssp::readSQLData($sql, "SUMME") != -1){

                $summe = ssp::get_var_db ("SUMME", 0);
main::mprint $summe;
       }
-->



mfg
cru
« Letzte Änderung: Januar 16, 2007, 11:48:53 von cru »

Offline dobra

  • Global Moderator
  • Hero Member
  • *****
  • Beiträge: 1353
  • Lob: 18
Re: Summe der aus DB eingelesenen Variablen berechnen
« Antwort #6 am: Januar 15, 2007, 20:25:07 »
 :D  Hurra - geschafft

Ein  bißchen mußte ich noch herumprobieren - die WHERE-Bedingung hat bei mir nicht funktioniert aber jetz hab ich's
sub addiere {
my $index = $_[0];
my $kundennr = ssp::get_var_db("KUNDENNR",$index);
my $summe = 0;
my $sql = qq | SELECT sum(BONUS) FROM PY2_ORDERS WHERE KUNDENNR='$kundennr'|;

if (ssp::readSQLData($sql, "SUMME") != -1){

                $summe = ssp::get_var_db("SUMME",0);
              main::mprint $summe;
       }
}

Nochmal ein GANZ GROSSES DANKE

Ohne Ihre Hilfe, wäre ich wahrscheinlich an diesem Problem gescheitert.

« Letzte Änderung: Januar 16, 2007, 04:53:49 von dobra »


xx
Summe bestellter Artikelvarianten

Begonnen von dobra

2 Antworten
5354 Aufrufe
Letzter Beitrag August 22, 2008, 21:40:53
von dobra
xx
for Schleife mit Bedingung = Summe ausgeben

Begonnen von dobra

2 Antworten
5588 Aufrufe
Letzter Beitrag Juli 23, 2008, 16:49:07
von dobra
xx
Variablen im Header übermitteln

Begonnen von MichaelSchmitt

2 Antworten
8962 Aufrufe
Letzter Beitrag August 02, 2007, 22:59:42
von MichaelSchmitt
xx
Artikel Nummerieren / Variablen mit my deklarieren

Begonnen von Benny

5 Antworten
8169 Aufrufe
Letzter Beitrag November 04, 2007, 12:33:25
von dobra