Home Tutorial Virtuemart Shipping Rate by Weight Module untuk Indonesia (rounded-up)
Fire_Starter
E-mail
Virtuemart Shipping Rate by Weight Module untuk Indonesia (rounded-up)
Tutorial
Pitrabayu, Sunday, 05 December 2010 00:00

Artikel ini dibuat untuk mennyempurnakan tulisan saya sebelumnya, Virtuemart Shipping Rate by Weight Module untuk Indonesia. Untuk memahami tulisan ini, sebaiknya anda membaca artikel sebelumnya terlebih dahulu.

 

Untuk digunakan di Indonesia, ada sedikit ketidak sempurnaan algoritma atas modul pengiriman yg saya buat, ketidak sempurnaan tersebut kurang lebih adalah sebagai berikut:

if( $d["weight"] < 1 )
$algoritma_pengiriman = $WEIGHT_CONFIG[shipping_rate_package_fee + shipping_rate_value];
} else {
$algoritma_pengiriman = $WEIGHT_CONFIG[shipping_rate_package_fee + (weight * shipping_rate_value)];
if( $d["weight"] > 1 )
$algoritma_pengiriman = $WEIGHT_CONFIG[shipping_rate_package_fee + (weight * shipping_rate_value)];

Perhitungan tersebut mengakibatkan perkalian langsung atas berat produk terhadap harga pengiriman/kg, padahal seluruh expedisi di Indonesia menerapkan pembulatan keatas dalam menghitung tarif pengiriman. 1.1 kg dihitung 2 kg, 2.7 kg dihitung 3 kg dst.

Untuk membulatkan berat barang, anda harus menggunakan fungsi php ceil, ada dua fungsi pembualatan dalam php;

  • Fungsi Ceil yang akan menghasilkan nilai dengan pembulatan keatas (contoh : 8.1=9).
  • atau fungsi Floor yang merupakan kebalikan dari fungsi Ceil yaitu akan menghasilkan nilai dengan pembulatan kebawah (contoh : 8.9=8).

Pertanyaannya, nilai mana yang harus kita bulatkan?

Mari kita mulai...

dari beberapa eksperimen yang saya buat, agar lebih stabil, pembulatan harus dilakukan pada string yang dihasilkan oleh virtuemart, dalam hal ini apalagi kalau bukan $weight itu sendiri?

Silahkan buka file administrator/components/com_virtuemart/classes/ps_chekout.php, lihat kode baris 774

  1. kode sebelumnya $vars["weight"] = $weight_total;
  2. ganti menjadi $vars["weight"] = ceil ($weight_total);

Silahkan coba modul pengiriman anda, sekarang nilai berat barang telah dibulatkan keatas.

 

Saya harap tulisan ini bisa menjawab permintaan rekan2 atas penyempurnaan modul tersebut.

 

Pitrabayu aka Fire_Starter

 

notes: bagi anda yang malas mengedit, anda bisa download file ps_chekout.php yang sudah dirubah, atau sekedar mencoba modul pengiriman ini di salah satu web site e-commerce yang telah menggunakan modul ini di Seragam Kerja, Jaket, Kemeja, Pakaian Kantor dan Safety Vest

 

 

Comments
Search
avatar
Virtuemart Shipping Rate by Weight Module untuk In
dwioi 2010-12-07 17:58:40

terimakasih mas Bayu atas tutoriaLnya,,,

ini saya sedang bLajar VM nh mas,,
dengan adanya tuLisan ini sangat membantu belajar
saya,,,

Terimakasih,,

http://falzoneonline.co.cc /
avatar
re: Virtuemart Shipping Rate by Weight Module untu
Fire_Starter 2010-12-14 04:10:28

dwioi wrote:
terimakasih mas Bayu atas tutoriaLnya,,,

ini saya sedang bLajar VM nh
mas,, dengan adanya tuLisan ini sangat membantu
belajar saya,,,

Terimakasih,,



sama-sama, semoga bermanfaat...
Codot 2011-02-20 10:54:01

thx mas segera dipraktekkan, satu lagi saya mau tanya...

bisa gk shipping
weight ini bisa terbagi dua cara pengiriman...

misal begini:

barang kecil dan
ringan akan keluar shipping dengan amplop biasa, sedangkan barang yg berat atau
ringan tapi bentuknya besar keluar shipping paket (kotak)...itu gimana
setting-nya ya? thanks sudah merepotkan
avatar
re:
Fire_Starter 2011-02-21 04:32:22

Codot wrote:
thx mas segera dipraktekkan, satu lagi saya mau tanya...

bisa gk shipping
weight ini bisa terbagi dua cara pengiriman...

misal
begini:

barang kecil dan ringan akan keluar shipping dengan amplop
biasa, sedangkan barang yg berat atau ringan tapi bentuknya besar keluar
shipping paket (kotak)...itu gimana setting-nya ya? thanks
sudah merepotkan


kalo module ini tidak bisa hitung volume. Tapi kalo mas punya waktu luang
untuk coding ulang saya yakin bisa..
Codot 2011-02-23 11:19:45

mas saya udah coba cara ini...saya tes berdasarkan zip code, tapi knapa harusnya
total 1.8 itu dibulatkan jadi 2 ..harusnya misal 12rb rupiah...knapa loncat
jadi 24rb rupiah ya??? trus ini berlaku untuk satuan apa? gram atau kg? terima
kasih
avatar
re:
Fire_Starter 2011-02-27 11:01:57

Codot wrote:
mas saya udah coba cara ini...saya tes berdasarkan zip code, tapi knapa
harusnya total 1.8 itu dibulatkan jadi 2 ..harusnya misal
12rb rupiah...knapa loncat jadi 24rb rupiah ya??? trus ini berlaku
untuk satuan apa? gram atau kg? terima kasih


coba dicheck lagi mas, terutama mengenai package fee.

Mengenai satuan
tidak saya perhitungkan, tidak ada algoritma konversi. Jadi
sebaiknya seluruh berat produk dibuat sama dalam kg.
Codot 2011-02-28 09:23:03

horeeeeeeeeee sudah bisa mas....ternyata antara ceil dan ($weight_total) gk boleh ada spasi...saya tetap menggunakan satuan gram bisa kok
mas..mengenai package fee saya kasih nilai "0" tetap bisa
bekerja kok mas

thanks ilmunya....
avatar
re:
Fire_Starter 2011-03-04 02:09:55

Codot wrote:
horeeeeeeeeee sudah bisa mas....ternyata antara ceil dan ($weight_total) gk boleh ada spasi...saya tetap menggunakan satuan gram bisa kok
mas..mengenai package fee saya kasih nilai "0" tetap bisa
bekerja kok mas

thanks ilmunya....


seepp...
Package fee itu biaya kemasan, kalau saya set 5rb (buat beli
kardus, lakban dsb). Dibuat gratis juga bisa...
avatar
nazam 2011-05-14 06:35:12

oms ini module buat jualan ya, wah makasih buat ilmunya ya
Only registered users can write comments!

3.26 Copyright (C) 2008 Compojoom.com / Copyright (C) 2007 Alain Georgette / Copyright (C) 2006 Frantisek Hliva. All rights reserved."

Last Updated on Friday, 31 December 2010 14:41  

JUG Indonesia

Id-joomla.com adalah situs resmi Joomla User Group (JUG) Indonesia dan Joomla Translation Team

Download Terjemahan Joomla terakreditasi dari JoomlaCode dan laporkan bugs, ide dan saran nya di Sub Forum Hanacaraka

Login

Web
ID-Joomla
Banner
Banner
Dengarkan siaran radio ID-Joomla   Chatroom ID-Joomla   Facebook Page ID-Joomla
We have 1383 guests online
Joomla! is the trademark of Open Source Matters, Inc in the United States and other countries. The Joomla! name is used under a limited license granted by Open Source Matters.
Id-joomla.com is not affiliated with or endorsed by Open Source Matters or the Joomla! Project