Zurück   xt:Commerce Webshop Shop Support > xt:Commerce Shopsoftware Community Area > Shopbereich

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 12.03.2005, 10:04
k-1 k-1 ist offline
xt:Commerce Support Kunde
 
Registriert seit: 02.02.2005
Beiträge: 58
Standard

Hallo zusammen,

wie ist es m?glich das der Shop die Nachnahme nicht berechnet bei versandkostenfreier Lieferung?

Auf der letzten Seite vor Kaufabschluss sieht man das die Nachnahme gew?hlt ist, aber die Nachnahmegeb?hr nicht in der Rechnungsaufstellung auftaucht.

Im Admin ist aber die Einstellung richtig gesetzt. Ist dieser Fehler bekannt oder tritt er nur bei mir auf?

VielenDank f?r Eure Hilfe!

Viele Gr?sse

Norbert



Auszug Bestellung:
-->
Bestellung aufgeben:
?ber die Links (Bearbeiten) k?nnen Sie ggf. noch alle Abschnitte Ihrer Bestellung ?ndern.


VersandadresseBearbeiten)
Heinz Bestseller
Hauptstrasse
00000 Zuhause
Germany RechnungsadresseBearbeiten)
Heinz Bestseller
Hauptstrasse
00000 Zuhause
Germany

Versandart: Versandkostenfrei (Nur Kleidung und Schlafs?cke) (Bearbeiten)
Zahlungsweise: Nachnahme (Bearbeiten)

Artikel: (Bearbeiten)
1 x Kombitasche Lilly 25,50 EUR

Zwischensumme: 25,50 EUR
Versandkostenfrei (Nur Kleidung und Schlafs?cke): 0,00 EUR
inkl. MwSt. 16%: 3,52 EUR
Summe: 25,50 EUR
<---

Auszug Versandart/Versandkostenfrei

Versandkostenfreie Lieferung aktivieren
True

Erlaubte Versandzonen
leer

Anzeige aktivieren
True

Mindestbetrag
0

Sortierreihenfolge
2
<--

Auszug Shopeinstellung Zusammenfassung/Nachnahmegeb?hr
-->
Nachnahmegeb?hr
true

Sortierreihenfolge
35

Pauschale Versandkosten
00:4.74

Versandkosten pro St?ck
00:4.74

Tabellarische Versandkosten
00:4.74

Chronopost Zone Rates
00:4.74

DHL ?sterreich
00:4.74

Schweizerische Post
00:4.74

Versandkosten nach Zonen
00:4.74

?sterreichische Post AG
00:4.74

Deutsche Post AG
00:4.74

Versandkostenfrei
00:4.74

Steuerklasse
Standardsatz
<--
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #2 (permalink)  
Alt 13.03.2005, 14:32
k-1 k-1 ist offline
xt:Commerce Support Kunde
 
Registriert seit: 02.02.2005
Beiträge: 58
Standard

Hallo zusammen,

tritt der Fehler bei Euch nicht auf?

Habe noch einen neuen Shop installiert und auch dort die versandkostenfreie M?glichkeit eingebaut.

Das gleiche Problem. Ber Zahlart Nachnahme und versandkostenfreier Lieferung wird diese In der Rechnungszusammenfassung nicht aufgef?hrt und berechnet.

Ich vermute mal es verschickt hier keiner versandkostenfrei per Nachnahme???

Viele Gr??e

Norbert
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #3 (permalink)  
Alt 14.03.2005, 08:22
k-1 k-1 ist offline
xt:Commerce Support Kunde
 
Registriert seit: 02.02.2005
Beiträge: 58
Standard

Noch mal Hallo zusammen,

habe es mal mit der Demoversion auf dieser Seite probiert und auch hier tritt der Fehler auf. Kann man davon ausgehen das keiner Ware versenden kann, bei der er f?r den Kunden die Versandkosten ?bernimmt und der Kunde per Nachnahme zahlt?

Hat jemand eine Idee an welcher Stelle man das wie selber ab?ndern kann?

Viele Gr?sse

Norbert
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #4 (permalink)  
Alt 15.03.2005, 08:09
k-1 k-1 ist offline
xt:Commerce Support Kunde
 
Registriert seit: 02.02.2005
Beiträge: 58
Standard

Hallo zusammen,

also in manchen F?llen gibt man sich hier ja richtig M?he um bei identischen Problemen doch noch irgendwie eine L?sung zu erzwingen. Aber f?r dieses Problem gibt es keine M?glichkeit diese Funktion durch andere Module auszugleichen.

Es ist sicherlich in vielen Branchen so das es eine versandkostenfrei Lieferung (vkL) unabh?ngig von Gewicht und Preis gibt und sei es nur aus Kundenservice. Da funktiniert es nicht dies ?ber die tabellarischen Versandkosten zu l?sen, weil die vkL nur bei bestimmten Artikeln angeboten wird. Es m?ssen also beide, bzw. mehrere M?glichkeiten nebenher bestehen, die man dann noch per Nachnahme abrechnen kann.

Und diese M?glichkeit besteht derzeit nicht, weder in meinem ersten noch im 2. oder gar im Demoshop auf diesen Seiten und wie man hier so lesen kann, bei vielen anderen auch nicht.

Bitte helft uns!!!!


Viele Gr?sse

Norbert
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #5 (permalink)  
Alt 16.03.2005, 17:17
 
Registriert seit: 20.02.2004
Beiträge: 1
Standard

Habe leider das gleiche Problem. Ab 30 € Bestellwert liefer ich vesandkostenfrei. Aber bei Zahlung per Nachnahme h?tte ich schon gerne vom Kunden den Aufschlag von 4 €. Nur wird dies vom Shop nicht ber?cksichtigt.

W?rde mich auch sehr ?ber eine L?sungsm?glichkeit freuen.

Danke & Gru?
Stefan
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #6 (permalink)  
Alt 16.03.2005, 17:51
Benutzerbild von chpohl
Erfahrener Benutzer
 
Registriert seit: 22.04.2004
Beiträge: 5.920
Standard

Hier hab ich dazu schonmal ausf?hrlich was geschrieben:

http://www.xt-commerce.com/modules/ipboard...post-12490.html
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #7 (permalink)  
Alt 28.03.2005, 10:44
 
Registriert seit: 04.10.2004
Beiträge: 269
Standard

Da das auch f?r uns ein Problem ist, habe ich das mal debugged (mit dem Zend-Debugger), und gefunden, dass das ein Bug im xtCommerce ist.

Im Modul "includes/modules/order_total/ot_cod_fee.php" (das f?r die Nachnahmeberechnung zust?ndig ist), gibt es bei Zeile 56 folgenden Code:

Code:
if ($_SESSION['shipping']['id'] == 'flat_flat') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_FLAT);
if ($_SESSION['shipping']['id'] == 'item_item') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ITEM);
if ($_SESSION['shipping']['id'] == 'table_table') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_TABLE);
if ($_SESSION['shipping']['id'] == 'zones_zones') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ZONES);
if ($_SESSION['shipping']['id'] == 'ap_ap') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_AP);
if ($_SESSION['shipping']['id'] == 'dp_dp') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DP);
if ($_SESSION['shipping']['id'] == 'free_free') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_FREE);
in dem die Nachnahmegeb?hren berechnet werden.

Das Problem ist nun, dass die "MODULE_ORDER_TOTAL_COD_FEE_FREE" (die f?r die NN-Geb?hren bei versandkostebfeiheit verwendet werden) nicht definiert sind, weshalb in diesem Fall eben keine NN-Geb?hren berechnet werden.

"MODULE_ORDER_TOTAL_COD_FEE_FREE" wird im ganzen xtCommerce-Code nur in der "install"-Methode der "ot_cod_fee"-Klasse verwendet, wird also auch im Admin-Bereich nicht gesetzt.


L?sung:

Eine erste ("quick-and-dirty")-L?sung sieht wie folgt aus:

Der vorstehende Code wird ersetzt durch den folgenden Code

Code:
//W. Kaiser

	$Shipping_Id = $_SESSION['shipping']['id'];
	if ($Shipping_Id == 'flat_flat') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_FLAT);
	if ($Shipping_Id == 'item_item') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ITEM);
	if ($Shipping_Id == 'table_table') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_TABLE);
	if ($Shipping_Id == 'zones_zones') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ZONES);
	if ($Shipping_Id == 'ap_ap') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_AP);
	if ($Shipping_Id == 'dp_dp') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DP);
	if ($Shipping_Id == 'free_free')
	{
  if (MODULE_ORDER_TOTAL_COD_FEE_FREE == 'MODULE_ORDER_TOTAL_COD_FEE_FREE')
  {
//
// Die "Nachnahme(COD)-Kosten-Tabelle f?r die "versandkostenfreie" Lieferung ist nicht definiert!
// Die folgende Anweisung entkommentieren, die die statt dessen zu verwendende Nachnahme(COD)-Kosten-Tabelle enth?lt
//
// $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_FLAT);
// $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ITEM);
// $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_TABLE);
 $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ZONES);
// $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_AP);
// $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DP);
  }
  else
  {
 $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_FREE);
  }
	}	
//W. Kaiser
Darin wird die fehlende "MODULE_ORDER_TOTAL_COD_FEE_FREE" ersetzt durch die zu verwendende Ersatz-Versandkostenart

Eleganter w?re es nat?rlich, dies abh?ngig von der eingestellten Versandkostenart zu tun, oder im Admin-Bereich einstellbar zu machen. Vielleicht hat da ja jemand noch ein wenig Code dazu....

Auf jeden Fall werden damit auch bei versandkostenfreier Lieferung die Nachnahmegeb?hren wieder berechnet.

Wie immer gilt nat?rlich: vor jeder ?nderung die Original-Routine sichern!
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #8 (permalink)  
Alt 28.03.2005, 11:06
Erfahrener Benutzer
 
Registriert seit: 11.02.2005
Beiträge: 1.956
Standard

Hey, wenn du komplett gedebugged hast, k?nntest du dann eine komplette Version zur verf?gung stellen bzw. die n?tigen Bugfixes?

Aber schonmal nett, dass du dir die M?he machst und den Code hier postest.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #9 (permalink)  
Alt 29.03.2005, 10:56
 
Registriert seit: 04.10.2004
Beiträge: 269
Standard

Ich habe nur das Nachnahmeproblem debugged, der beigefuegte Code beschreibt alle Aenderungen.
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
  #10 (permalink)  
Alt 31.03.2005, 09:40
k-1 k-1 ist offline
xt:Commerce Support Kunde
 
Registriert seit: 02.02.2005
Beiträge: 58
Standard

Hallo Herr Kaiser,

das finde ich aber spitze das Sie eine L?sung gefunden haben. Leider funktioniert es bei mir nicht. K?nnen Sie mir sagen was ich falsch gemacht habe?

Mein Code in der 3er-Version sieht auch etwas anders aus:
//process installed shipping modules
if ($_SESSION['shipping']['id'] == 'flat_flat') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_FLAT);
if ($_SESSION['shipping']['id'] == 'item_item') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ITEM);
if ($_SESSION['shipping']['id'] == 'table_table') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_TABLE);
if ($_SESSION['shipping']['id'] == 'zones_zones') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ZONES);
if ($_SESSION['shipping']['id'] == 'ap_ap') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_AP);
if ($_SESSION['shipping']['id'] == 'dp_dp') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DP);

// module chp
if ($_SESSION['shipping']['id'] == 'chp_ECO') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_CHP);
if ($_SESSION['shipping']['id'] == 'chp_PRI') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_CHP);
if ($_SESSION['shipping']['id'] == 'chp_URG') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_CHP);

// module chronopost
if ($_SESSION['shipping']['id'] == 'chronopost_chronopost') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_CHRONOPOST);

// module DHL
if ($_SESSION['shipping']['id'] == 'dhl_ECX') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DHL);
if ($_SESSION['shipping']['id'] == 'dhl_DOX') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DHL);
if ($_SESSION['shipping']['id'] == 'dhl_SDX') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DHL);
if ($_SESSION['shipping']['id'] == 'dhl_MDX') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DHL);
if ($_SESSION['shipping']['id'] == 'dhl_WPX') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DHL);

Den habe ich dann wie von Ihnen beschrieben ab der Zeile 56 ersetzt, womit es jetzt so aussieht:

//process installed shipping modules
//W. Kaiser

$Shipping_Id = $_SESSION['shipping']['id'];
if ($Shipping_Id == 'flat_flat') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_FLAT);
if ($Shipping_Id == 'item_item') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ITEM);
if ($Shipping_Id == 'table_table') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_TABLE);
if ($Shipping_Id == 'zones_zones') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ZONES);
if ($Shipping_Id == 'ap_ap') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_AP);
if ($Shipping_Id == 'dp_dp') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DP);
if ($Shipping_Id == 'free_free')
{
if (MODULE_ORDER_TOTAL_COD_FEE_FREE == 'MODULE_ORDER_TOTAL_COD_FEE_FREE')
{
//
// Die "Nachnahme(COD)-Kosten-Tabelle f?r die "versandkostenfreie" Lieferung ist nicht definiert!
// Die folgende Anweisung entkommentieren, die die statt dessen zu verwendende Nachnahme(COD)-Kosten-Tabelle enth?lt
//
// $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_FLAT);
// $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ITEM);
// $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_TABLE);
$cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_ZONES);
// $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_AP);
// $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DP);
}
else
{
$cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_FREE);
}
}
//W. Kaiser

// module chp
if ($_SESSION['shipping']['id'] == 'chp_ECO') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_CHP);
if ($_SESSION['shipping']['id'] == 'chp_PRI') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_CHP);
if ($_SESSION['shipping']['id'] == 'chp_URG') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_CHP);

// module chronopost
if ($_SESSION['shipping']['id'] == 'chronopost_chronopost') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_CHRONOPOST);

// module DHL
if ($_SESSION['shipping']['id'] == 'dhl_ECX') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DHL);
if ($_SESSION['shipping']['id'] == 'dhl_DOX') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DHL);
if ($_SESSION['shipping']['id'] == 'dhl_SDX') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DHL);
if ($_SESSION['shipping']['id'] == 'dhl_MDX') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DHL);
if ($_SESSION['shipping']['id'] == 'dhl_WPX') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_DHL);



Bestimmt habe ich einen d?mlichen Fehler gemacht, aber ich sehe ihn nicht.
Den einzigen Unterschied den ich erkenne ist, das in meiner Datei diese Zeile
vorher gar nicht vorhanden war:
if ($_SESSION['shipping']['id'] == 'free_free') $cod_zones = split("[:,]", MODULE_ORDER_TOTAL_COD_FEE_FREE);

Was muss ich bei mir ?ndern damit es klappt?

Vielen Dank f?r die Hilfe im voraus!

Gruss

Norbert
Digg this Post!Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Wong this Post!
Mit Zitat antworten
Antwort

Lesezeichen

Stichworte
nachnahme, versandkostenfreier

Themen-Optionen
Ansicht

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are aus
Pingbacks are aus
Refbacks are aus



Alle Zeitangaben in WEZ +1. Es ist jetzt 21:16 Uhr.

Copyright © 2011 xt:Commerce GmbH / xt:Commerce International Ltd. - All Rights Reserved

xt:Commerce is a SafeCharge brand