Zahlart auslesen ?

Begonnen von dobra, Januar 06, 2012, 18:56:14

« vorheriges - nächstes »

0 Mitglieder und 1 Gast betrachten dieses Thema.

dobra

Hallo,

Wie kann ich die Zahlart einer Bestellung aus der DB auslesen?

In der ORDERS Tabelle Spalte PAYMENT wird diese zwar hinterlegt, aber nur solange man die DB nicht neu angelegt hat  ???





mit
my $read = ssp::readSQLData("SELECT PAYMENT FROM $ORDERS WHERE ORDERNR = $ordernr","PAYMENT");
bekomme ich für alle Bestellungen nach einem DB neu anlegen ja nur noch 0   :o
mfG
dobra

admin

Das Feld PAYMENT eignet sich hierzu nicht.
Sattdessen muss man die Felder für die SOAC Anbindung einrichten.
Dies sind u.a XZAHLUNG und XZAHLARTTEXT.
Diese  würden beim Neuanlegen der ORDERS Tabelle auch wiedre gefüllt.
Aber das Neuanlegen der ORDERS ist in Verbindung mit SOAC eigentlich verboten,
man sollte deshalb die Replizierung  für Bestellungen abschalten.
Gearde bei grössern Shops muss man von Zeit zu Zeit die Bestellungen im WC löschen,
damit die Datenmenge nicht zu gross wird.
Aber SOAC sollen alle Bestellungen erhalten bleiben, auch damit man z.B. Geschäftsjahre
vergeleichen kann.

Gruss hop

dobra

#2
Hallo hop,

Die Pflicht X-Felder für SOAC hatte ich alle angelegt -> sonst wäre ich ja gar nicht in die Adminmaske rein gekommen ;)
(bis auf XZAHLARTTEXT - das kannte ich nicht und steht auch nicht in meinem Handbuch)

In XZAHLUNG steht bei mir aber der ZahlartBETRAG - also Zu/Abschlag (- Betrag bei Vorauskassa-Sconto und + Betrag bei PM-Zahlung)

Habe gerade das XZAHLARTTEXT-Feld angelegt und bei Shop veröffentlichen (Replizierung  für Bestellungen NICHT abgeschaltet) hatte ich  158 x
Zitat
UPDATE PY2_ORDERS SET SESSIONID = '43781924312600',ATYPE = 0,ORDERNR = 33068,OTIME = 1161166317,STATUS = 0,SHIPPINGINFO = '',EMAIL = '<gelöscht weil echter Kunde>',SCID = -1,PAYMENT = 0,ANREDE = 'Frau',BONUS = '',KUNDENNR = '1045',AVISO = '',XSERIALIZE = '',XTOTALSUM = '',XVERSAND = '',XTAX0 = '',XZAHLUNG = '',XMYRABATT = '',XRABATT = '',WARENWERT = '',ROK = '',XMINDERMENGE = '',XTOTSUMNET = '',XTAX1 = '',XEXTRAPOS = '',XTAXP0 = '',XTAXP1 = '', = 'na' WHERE ORDERNR = 33068
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '= 'na' WHERE ORDERNR = 33068' at line 1

State:37000,Native:1064,Origin:[MySQL][ODBC 3.51 Driver][mysqld-5.1.53]
na -1
---------------- fertig (2 min 31 sec) --------------------
Zusammenfassung Datenbank Replikation
2602 ok
 165 doppelt
 158 erfolglos
2760 gesamt

kein UPDATE  .. XZAHLARTTEXT ... ? ...

(auch bei "wiederholen")
In der DB gibt es jetzt zwar ein XZAHLARTTEXT Feld aber da steht bei allen Bestellungen nur "na"

Testbestellung gemacht - in XZAHLARTTEXT steht "Vorauskassa (3% Sconto)"
schön ....
dann Bestellungen im WC eingelesen und DB neu angelegt.
Wieder die oben geschriebenen Fehlermeldungen beim Shop veröffentlichen und
im XZAHLARTTEXT Feld dieser NEUEN Bestellung steht "na"  ???

P.S.:
da ich SOAC (noch) nicht an meine speziellen Shopanforderungen anpassen kann, wollte ich die automatisch versendeten Auftragsbestätigungen (mit allen Bedingungen wer/wann/welchen Text bekommt) in mein Versandaviso-Modul einbauen.
Dazu brauche ich aber unbedingt die ZahlartID (oder im Notfall halt den Zahlarttext)
mfG
dobra

dobra

#3
noch eine kleine Unklarheit ...

ZitatAber das Neuanlegen der ORDERS ist in Verbindung mit SOAC eigentlich verboten,
man sollte deshalb die Replizierung  für Bestellungen abschalten.

Wenn ich SOAC später vielleicht doch mal verwenden kann:

Was wenn ich dann z.B. für eine neue Shopfunktion ein neues ben.def. ORDERS-Feld brauche ?
In SOAC kann ich keine eigenen Felder anlegen und im WC darf ich nicht   :o

also keine Möglichkeit mehr, neue Shopfunktionen einzubauen für die ben.def. Auftragsfelder nötig sind  ???
oder habe ich da was falsch verstanden ?
mfG
dobra

admin

Doch das geht mit der neuen Möglichkeit benutzdef. Datenfelder anzulegen / zu löschen ohne die Datenbank neu anzulegen.
Dazu muss man die Replizierung für Bestellungen aktivieren. Das Feld anlegen. Dann replizieren. Und dann sicherheitshalber
wieder die Replizierung für Bestellungen ausschalten.

Gruss hop


dobra

das ist schön :)
dann habe ich das
"Aber das Neuanlegen der ORDERS ist in Verbindung mit SOAC eigentlich verboten"
doch falsch verstanden.

.... wenn mir jemand bisschen helfen würde mit SOAC ....
vielleicht könnte ich mir dann doch das Versandaviso-Modul ausbauen ersparen um damit auch Auftragsbestätigungen "mit Bedingung" versenden zu können und das doch gleich "richtig" mit SOAC machen ?
.... und bei den "ganz einfachen" = für alle gleichen Versandaviso MIT den eigenen Feldern mal klein anfangen...
Also wenn mir jemand zeigt WIE ich die ssp-Funktionen da nachbauen kann ....


mfG
dobra