Drupal Commerce - impostare i Costi di spedizione

3 contenuti / 0 new
Ultimo contenuto
Drupal Commerce - impostare i Costi di spedizione

Ciao ho attivato Drupal7 Commerce utilizzando http://drupal.org/project/commerce_kickstart

Ho la necessità di calcolare i costi di spedizione in base alle seguenti regole:

* per acquisti fino a 50€ spese di spedizione € 6,50.
* Per acquisti a partire da € 50 e fino a 70€, spese di spedizione € 3.50
* Per acquisti a partire da € 70, spese di spedizione GRATUITE.
Escluso contrassegno (3,00 €) e pacco ingombrante (da 15 kg).

Con Ubercart avevo trovato la soluzione utilizzando le "Azioni condizionali"

Con Commerce mi trovo un pò in difficoltà.
Innanzitutto ho creato in admin/commerce/config/shipping 3 flat rate service

Totale acquisto fino a €50
Totale acquisto da €50 fino a €70
Totale acquisto oltre €70
Impostando i vari Base rate (6,5 ; 3.5, 0)

La mia difficoltà si presenta nel creare correttamente le condizioni perchè queste regole vengano applicate.
1) Vado in admin/commerce/config/shipping e faccio per esempio su click su Configure component relativo a "Totale acquisto fino a €50"
2) in Conditions, faccio Add condition e seleziono Total product quantity comparison
in Data selector imposto site:current-cart-order:commerce-order-total:
in Value < Quantity 50

ma ho l'errore "Data selector site:current-cart-order:commerce-order-total: for parameter commerce_order is invalid."

Non riesco capire semplicemente come dirgli se iltotale di acquisto è < 50 applica la regola "Totale acquisto fino a €50"

Una volta capito questo posso impostare le varie regole

Grazie

Drupal Version:

Ho appena finito di impostare esattamente la stessa cosa.
Non devi usare commerce-order:commerce-order-total ma commerce-order:commerce-order-total:amount-decimal, e in quel caso hai la possibilità di inserire il valore (altrimenti lui vuole confrontarlo con un altro campo). La guida di Drupal Commerce che ho letto diceva di inserire i decimali, senza specificare. Ossia, per inserire 99 dollari diceva di scrivere 9999. Ma io devo confrontarmi col campo come l'ho impostato io! Il mio non aveva decimali quindi per dirgli 20 euro è bastato dirgli 20, non 2000.

Altra nota: ricordati di aggiungere una OR e di inserire anche la condizione UGUALE al tuo valore, altrimenti se per caso becchi l'ordine perfetto di 50 o 70 euro (nel tuo caso) quella condizione non ricade in alcuna regola.

Giulia

...enter at your own risk...

Ciao
Ho risolto diversamente.
IMPORTANTE se volete applicare una regola per un importo minore di 50€ dovrete inserire vome valore 50*100 = 5000.

vado in admin/config/workflow/rules/rules e aggiungo 3 regole:

REGOLA 1
nome: Rate Totale acquisto fino a €50
Condizione: Selezionare condition da aggiungere: Dati:Confronto di Dati
nel pannello successivo
Selettore dati: site:current-cart-order:commerce-order-total:amount
nel pannello successivo Aggiungere 1 condizione
L'operatore di confronto: è minore di
imposto > Passa alla modalità di inserimento diretto
e inserisco 5000

REGOLA 2
nome: Rate Totale acquisto da €50 fino a €70
Condizione: Selezionare condition da aggiungere: Dati:Confronto di Dati
nel pannello successivo
Selettore dati: site:current-cart-order:commerce-order-total:amount
nel pannello successivo Aggiungere 2 condizioni

L'operatore di confronto: è minore di
imposto > Passa alla modalità di inserimento diretto
e inserisco 5000
Negata (<<= IMPORTANTE)

AND

L'operatore di confronto: è minore di
imposto > Passa alla modalità di inserimento diretto
e inserisco 7000

REGOLA 3
nome: Rate Totale acquisto oltre €70
Condizione: Selezionare condition da aggiungere: Dati:Confronto di Dati
nel pannello successivo
Selettore dati: site:current-cart-order:commerce-order-total:amount
nel pannello successivo Aggiungere 1 condizione
L'operatore di confronto: è minore di
imposto > Passa alla modalità di inserimento diretto
e inserisco 7000
Negata (<<= IMPORTANTE)