Bestellung in AFS-Kaufmann einlesen

Begonnen von hop, April 09, 2007, 17:04:53

« vorheriges - nächstes »

0 Mitglieder und 1 Gast betrachten dieses Thema.

hop

Frage:
AFS Kaufmann will (bei mehreren Artikeln) eine Postennummer (Pos 1 / Pos 2 etc.).

###POS_NR: Postennummer (WICHTIG MUSS ALS ERSTES ANGEGEBEN WERDEN)


Das Ganze sieht dann so aus:


###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__#


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):


<!--spmacro:module(custom)
# Datum
sub pos  {
   $index = $_[0];
   $anzahl = $_[1];
   if ($index < $anzahl) {
      main::mprint($index  + 1); # Index beginnt mit 0
  }
}
-->


Die Positionen schreibt man dann folgendermassen:


<!--spmacro::loopitem-->
###POS_NR:__custom::pos__#
###POS_ANZAHL:__anzahl__#
###POS_ARTIKELNR:__id__#
###POS_ARTIKELBE:__produkt__#
###POS_EPREIS:__preis__#
<!--spmacro::enditem-->


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).


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);
  }
}



<!--spmacro::loopitem-->
###POS_NR:__custom::pos__#
###POS_ANZAHL:__anzahl__#
###POS_ARTIKELNR:__id__#
###POS_ARTIKELBE:__produkt__#
###POS_EPREIS:__custom::preis__#
<!--spmacro::enditem-->



hop
Sch?ne Gr??e hop

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
Alufelgen - Reifen - Komplettr?der
www.auto-tuning-shop.com

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
Alufelgen - Reifen - Komplettr?der
www.auto-tuning-shop.com