ShopPilot > Warenwirtschaft, Faktura
Bestellung in AFS-Kaufmann einlesen
(1/1)
hop:
Frage:
AFS Kaufmann will (bei mehreren Artikeln) eine Postennummer (Pos 1 / Pos 2 etc.).
--- Code: ---###POS_NR: Postennummer (WICHTIG MUSS ALS ERSTES ANGEGEBEN WERDEN)
--- End code ---
Das Ganze sieht dann so aus:
--- Code: ---###POS_NR:1#
###POS_ANZAHL:__anzahl__#
###POS_ARTIKELNR:__id__#
###POS_ARTIKELBE:__produkt__#
###POS_EPREIS:__preis__#
###POS_NR:2#
###POS_ANZAHL:__anzahl__#
###POS_ARTIKELNR:__id__#
###POS_ARTIKELBE:__produkt__#
###POS_EPREIS:__preis__#
--- End code ---
Gibt es in SP eine Möglichkeit, eine fortlaufende Nummer
für die verschiedenen Artikelpositionen zu generieren (wie ??)??
Antwort:
Die Bestelldatenvorlage kann einfach per SSP erweitert werden, ausserdem
sollte man loopitem nutzen, um die Anzahl der Bestellpositionen flexibel zu halten:
Folgendes ist am Anfang der Datei einzufügen (Modul custom):
--- Code: ---<!--spmacro:module(custom)
# Datum
sub pos {
$index = $_[0];
$anzahl = $_[1];
if ($index < $anzahl) {
main::mprint($index + 1); # Index beginnt mit 0
}
}
-->
--- End code ---
Die Positionen schreibt man dann folgendermassen:
--- Code: ---<!--spmacro::loopitem-->
###POS_NR:__custom::pos__#
###POS_ANZAHL:__anzahl__#
###POS_ARTIKELNR:__id__#
###POS_ARTIKELBE:__produkt__#
###POS_EPREIS:__preis__#
<!--spmacro::enditem-->
--- End code ---
Das Ergebnis sollte genau die gewünschte Ausgabe sein.
Falls eine bestimmte Formatierung für den Preis notwendig ist,
kann man dies auch mit einer SSP Funktiion erledigen (in Modul custom einfügen).
--- Code: ---sub preis {
$index = $_[0];
$anzahl = $_[1];
if ($index < $anzahl) {
my $preis = ssp::get_var_cart('preis',$index);
$preis = sprintf("%.2d",$preis); # 123.56
main::mprint($preis);
}
}
--- End code ---
--- Code: ---<!--spmacro::loopitem-->
###POS_NR:__custom::pos__#
###POS_ANZAHL:__anzahl__#
###POS_ARTIKELNR:__id__#
###POS_ARTIKELBE:__produkt__#
###POS_EPREIS:__custom::preis__#
<!--spmacro::enditem-->
--- End code ---
hop
Linkback: https://www.shoppilot.net/pf/index.php?topic=818.0
Andi:
Hallo HOP - Danke.
Scheint aber nicht zu funktionieren (es wird nur Pos 1 ausgefüllt - ab Pos 2 bleibt das Feld leer).
ABER: der Import scheint auch so zu funktionieren.
Wichtig dabei:
- es muss mit "loopitem" gearbeitet werden - sonst gibt es Fehlermeldungen
- die Preise müssen OHNE Währung (EUR) importiert werden
- die XML-Vorlage darf sich nicht in dem verzeichniss befinden, wo AFS die Bestellungen rausliest (sonst löscht AFS-Kfm. die Vorlage).
Teste aber noch weiter.
Grüße v. ANDI
Andi:
Aus bisheriger Erfahrung epfehlen wir den Einsatz einer Bestelldatenvorlage
im HTML-Format (nicht XML).
Das funktioniert einwandfrei - auch mit mehreren Artikeln pro Order
und es gibt keine Probleme mit Umlauten etc.
Grüße v. ANDI
Navigation
[0] Themen-Index
Go to full version