Joomla Indonesia

Login or Sign Up
Sign In or Register
Avatar
Not Registered Yet?

Join Now! It's FREE. Get full access and benefit from this site

Reset My password - Remind Me My username

Username
Password
Remember me
  • Home
    Home This is where you can find all the blog posts throughout the site.
  • Categories
    Categories Displays a list of categories from this blog.
  • Tags
    Tags Displays a list of tags that have been used in the blog.
  • Bloggers
    Bloggers Search for your favorite blogger from this site.
  • Team Blogs
    Team Blogs Find your favorite team blogs here.
  • Login
    Login Login form

Virtuemart Shipping Rate by Weight Module untuk Indonesia (rounded-up)

Posted by on in Tutorial
  • Font size: Larger Smaller
  • Hits: 8600
  • 10 Comments
  • Subscribe to this entry
  • Print

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

 

 

0
  • 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/

    0 Like Short URL:
  • [quote=dwioi]terimakasih mas Bayu atas tutoriaLnya,,,

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

    Terimakasih,,

    [/quote]

    sama-sama, semoga bermanfaat...

    0 Like Short URL:
  • 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 :)

    0 Like Short URL:
  • [quote=Codot]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 :)[/quote]

    kalo module ini tidak bisa hitung volume. Tapi kalo mas punya waktu luang untuk coding ulang saya yakin bisa..

    0 Like Short URL:
  • 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

    0 Like Short URL:
  • [quote=Codot]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[/quote]

    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.

    0 Like Short URL:
  • 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....

    0 Like Short URL:
  • [quote=Codot]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 &#34;0&#34; tetap bisa bekerja kok mas :)

    thanks ilmunya....[/quote]

    seepp...
    Package fee itu biaya kemasan, kalau saya set 5rb (buat beli kardus, lakban dsb). Dibuat gratis juga bisa...

    0 Like Short URL:
  • oms ini module buat jualan ya, wah makasih buat ilmunya ya :)

    0 Like Short URL:
  • Guest - tri2008

    Kalo untuk Virtuemart 3 bagaimana cara bikinya ya Gan?

    0 Like Short URL:

Kategori Blog

Joomla User Group Indonesia

Joomla User Group 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

Socials

twitter id joomlafb idjoomla