Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module ›

Drupal Commerce Kickstart 2, Shipping und Tax

Eingetragen von minmalist (10)
am 15.02.2013 - 15:49 Uhr in
  • Module
  • Drupal 7.x

Hallo,

ich habe Kickstart2 installiert und bin nun dabei die Bestellabwicklung zu konfigurieren.
Es ein B2B Shop werden, das heißt, dass im Katalog Nettopreise angezeigt werden. In der im Cart und in der Bestellabwicklung werden dann aber in Gesamtbetrag (Order Total) die MwSt. separat ausgewiesen:

Subtotal
+ Mwst.
=Order Total

Wenn nun aber Versandkosten dazukommen, werden die Steuern für diese leider nicht ausgewiesen.

Ich habe dafür auch schon eine Lösung gefunden:
1. admin/commerce/config/shipping/calculation-rules/
2. Event: Calculating a Shippingrate
3. Bei Aktionen "loop" hinzufügen: Parameter: Liste: [commerce-line-item: order…
4. List item: line item (line_item)
5. Innerhalb des Schleife "Aktion" hinzufügen: Commerce Tax > calculate Taxes for a line item > Parameter: Position: [commerce_line_item], Tax type: Sales tax

Damit wird die MwSt. der Versandkosten ebenfalls berücksichtigt und den MWst. für die Produkte hinzugerechnet.

Subtotal
+ Mwst. für Inhalt Cart und Versand
+ Versandkosten
=Order Total

Das ist aber fü den Kunden nicht sehr transparent. Zum einen sind MwSt. für die Produkte und die Versandkosten nicht separat angeführt und zum anderen ist die Reihenfolge der Componenten nicht logisch: Die MwSt. sollte unter den Versandkosten stehen.

Zunächst mal habe ich überlegt, wie ich die Mehrwertsteuer für Produkte und Versand getrennt anzeigen kann.
- Neuen Steuertyp "Sales Tax Shipping", Wert 0.19
- Neue Steuerrate für Shipping angelegt, Wert 0.19. Diesen neuen Steuertyp in der der obigen Calculation Rule ausgewählt
- Die Rules Calculate taxes: Sales tax" erhält eine Condition: Datenvergleich: [commerce-line-item:type], Datenwert: Product
- Die Rules Calculate taxes: Sales tax shipping " erhält eine Condition: Datenvergleich: [commerce-line-item:type], Datenwert: Versand
Nun werden die Stuern für Produkte und Versand getrennt ausgewiesen:

Subtotal
+ Mwst. für Inhalt Cart
+ Mwst. für Versand
+ Versandkosten
=Order Total

Aber leider ist die Reihenfolge noch immer falsch. Die Steuer für den Versand sollten unterhalb der Versandkosten stehen.
Ich habe versucht, die Reihenfolge bei "Order Total" über hook_commerce_price_formatted_components_alter(&$components, $price, $entity), zu ändern. Das hat aber nicht geklappt. Evtl. mache ich hier einen Fehler.

Es gibt sicher intelligentere Lösungen für mein Problem. Im Moment ist das Modul "Commerce price by components" in Entwicklung, das mir den Aufwand bestimmt ersparen wird.

Bis dahin muss ich mir eine Lösung basteln.
Hat jemand eine Idee?

Gruß
minimalist

‹ Location Field entfernen Registrieren des Service Containers als CTools-Plugin ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

bei den Versandkosten

Eingetragen von ronald (3834)
am 15.02.2013 - 18:59 Uhr

die Auswahl - "diese Steuer anwenden" setzen.
Das wars.

Grüße
Ronald

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo,Kickstart 2 !!!Hast

Eingetragen von drruebe (271)
am 15.02.2013 - 19:10 Uhr

Hallo,
Kickstart 2 !!!

Hast Du die Demo installiert?
Kannst Du mal ein Screenshot von der Startseite posten?

Das würde mich sehr interessieren.

Danke im Voraus!

Gruß Frank

Die Ruhe sei den Menschen heilig, nur bekloppte haben's eilig.

  • Anmelden oder Registrieren um Kommentare zu schreiben

ronald schrieb die Auswahl -

Eingetragen von minmalist (10)
am 15.02.2013 - 22:05 Uhr
ronald schrieb

die Auswahl - "diese Steuer anwenden" setzen.
Das wars.

Sorry Ronald,

das habe ich nicht verstanden - wo finde ich diese Option?

Gruß
minimalist

  • Anmelden oder Registrieren um Kommentare zu schreiben

Screenshot, demo

Eingetragen von minmalist (10)
am 15.02.2013 - 22:10 Uhr

Hallo Frank,

tut mir leid, meine Testshop ist local installiert. Es gibt auch noch nichts zu sehen. Keine Inhalte, kein Layout, kein gar nichts.
Ich wollte erst die Bestellabwicklung stehen haben, bevor ich mit den anderen Sachen anfange. Das scheint mir das Kniffeligste.

Grüße
minimalist

  • Anmelden oder Registrieren um Kommentare zu schreiben

dringende Empfehlung

Eingetragen von ronald (3834)
am 16.02.2013 - 10:03 Uhr

installiere zwei Instanzen.

1. die, in der due Konfigurierst und arbeitest.
2. den Demoshop mit Inhalten.

Im Demoshop mit Inhalten kannst du immer wieder nachsehen, wie die Programmierer die Strukturen eingesetzt haben.
Die Inhalte sind nämlich nicht nur Artikel, sondern auch Konfigurationen und Strukturen.

Grüße
Ronald

  • Anmelden oder Registrieren um Kommentare zu schreiben

ronald schrieb installiere

Eingetragen von minmalist (10)
am 16.02.2013 - 18:24 Uhr
ronald schrieb

installiere zwei Instanzen.

Danke für den Hinweis. Das habe ich schon gemacht, aber beide Instanzen local. Außerdem dokumentiere ich alle Konfigurationen ausführlich.

Aber noch mal zu meiner Frage zurück: was meintest Du mit "diese Steuer anwenden"?

Grüße
minimalist

  • Anmelden oder Registrieren um Kommentare zu schreiben

wenn du versandkosten anlegst

Eingetragen von ronald (3834)
am 16.02.2013 - 18:33 Uhr

Also eine flatrate einrichtest, ist, sofern du eine VAT, also Mehrwertsteuer eingerichtet hast, siehst du rechts neben dem Preis eine Auswahl für die Mehrwertsteuer.

Grüße
Ronald

  • Anmelden oder Registrieren um Kommentare zu schreiben

Es ist aber Sales Tax bei meinem Shop eingestellt.(B2B)

Eingetragen von minmalist (10)
am 17.02.2013 - 22:50 Uhr

da gibt es ein solches Feld nicht.

Trotzdem vielen Dank für den Hinweis. Kann ich vielleicht mal gebrauchen.

Grüße
minimalist

  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo Minimalist

Eingetragen von drruebe (271)
am 12.11.2015 - 16:44 Uhr

Vielen Dank für deine Anleitung,
jetzt stehe ich vor dem selben Problem. Siehe Bild 1
Aufgabenstellung:
Shop mit Privat-/Gewerbekundenbereich.
-Privat inkl Steuer und Versand für Lieferzone 1 (deutsches Festland)
-Gewerbe mit Zugangsdaten exkl. Steuer und Versand.

Mit der SuFu habe ich folgenden Artikel gefunden: http://drupalme.de/content/drupal-commerce-checkout-warenkorb
Nur wirklich helfen tut der mir nicht, da ich nicht weis, wo ich das einbinden soll.
Die dafür infrage kommende Datei könnte, sollte diese sein: root/profiles/commerce_kickstart/modules/contrib/commerce/modules/price/commerce_price.module
Bei mir ab Zeile 436 (codeschnippsel unten): könnte mir da BITTE jemand den Weg durchs Dickicht zeigen. "rauch, qualm, koch, zisch, pfeift der Kopf > boaaaa".

/**
* Implements hook_field_formatter_view().
*/
function commerce_price_field_formatter_view($entity_type, $entity, $field, $instance, $langcode, $items, $display) {
  $translated_instance = commerce_i18n_object('field_instance', $instance);

  $element = array();

  // Loop through each price value in this field.
  foreach ($items as $delta => $item) {
    // Do not render a price if the amount is NULL (i.e. non-zero empty value).
    if (is_null($item['amount'])) {
      // TODO: Consider if we should render as N/A or something indicating a
      // price was not available as opposed to just leaving a blank.
      continue;
    }

    // Theme the display of the price based on the display type.
    switch ($display['type']) {
      case 'commerce_price_raw_amount':
        $element[$delta] = array(
          '#markup' => check_plain($item['amount']),
        );
        break;

      case 'commerce_price_formatted_amount':
        $element[$delta] = array(
          '#markup' => commerce_currency_format($item['amount'], $item['currency_code'], $entity),
        );
        break;

      case 'commerce_price_formatted_components':
        // Build an array of component display titles and their prices.
        $components = array();
        $weight = 0;

        foreach ($item['data']['components'] as $key => $component) {
          $component_type = commerce_price_component_type_load($component['name']);

          if (empty($components[$component['name']])) {
            $components[$component['name']] = array(
              'title' => check_plain($component_type['display_title']),
              'price' => commerce_price_component_total($item, $component['name']),
              'weight' => $component_type['weight'],
            );

            $weight = max($weight, $component_type['weight']);
          }
        }

        // If there is only a single component and its price equals the field's,
        // then remove it and just show the actual price amount.
        if (count($components) == 1 && in_array('base_price', array_keys($components))) {
          $components = array();
        }

        // Add the actual field value to the array.
        $components['commerce_price_formatted_amount'] = array(
          'title' => check_plain($translated_instance['label']),
          'price' => $item,
          'weight' => $weight + 1,

AnhangGröße
Bild 1.jpg 90.89 KB

Die Ruhe sei den Menschen heilig, nur bekloppte haben's eilig.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • Drupal 8: Modul prevnext
  • Multidomain
  • [gelöst]Drupal 8: Fußzeilenmenü auf Login-Seite verschwunden
  • Vom jeweiligen User die Kunstwerke ausgeben.
  • Fullcalendar - Grösse Dialogfenster
  • Notify-Modul: Einmalige Benachrichtigung ueber neue Nodes senden
  • [gelöst]Drupal 9 und Ubuntu 20.04
  • [gelöst] Swiftmailer installieren um Simplenews zum Laufen zu bringen
  • Installiert ja, aber kein einziger link funktioniert
  • Drupal 9 - "read more" übersetzen nun anders, nur wie?
  • [gelöst] Nur editierbare Medien in Media-View anzeigen
  • Probleme mit dem Adminmenü
Weiter

Neue Kommentare

  • Soweit ich die
    vor 3 Minuten 4 Sekunden
  • Erst mal gut, dass es so ein
    vor 1 Stunde 18 Sekunden
  • Hey! Das Modul
    vor 18 Stunden 50 Minuten
  • Ich verwende das
    vor 19 Stunden 19 Minuten
  • Du benötigst das Modul
    vor 20 Stunden 45 Minuten
  • Kontakt ist schonmal da! Es
    vor 21 Stunden 28 Minuten
  • Hallo, nein, keine
    vor 21 Stunden 59 Minuten
  • Und da sind keine
    vor 22 Stunden 26 Minuten
  • Hallo, Danke für die
    vor 22 Stunden 46 Minuten
  • Wie kommt das Menü in die
    vor 1 Tag 48 Minuten

Statistik

Beiträge im Forum: 246314
Registrierte User: 18909

Neue User:

  • coolpet
  • Demophobie
  • JorgeClayton

» Alle User anzeigen

User nach Punkten sortiert:
wla9038
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3917
ronald3834
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 1 Benutzer und 9 Gäste online.

Benutzer online

  • wla

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association