Pernah tau istilah pasaran? biasanya sih orang Jawa yang sering menggunakannya. Kata pasaran berasal dari kata pasar, yang artinya ... pasar? aku juga gak terlalu paham, meski aku jawa tulen.
Yang pasti, orang jawa memiliki penamaan hari yang lebih lengkap. Selain penamaan universal (istilah kami yaitu Nasional, untuk Senin, selasa, etc), orang jawa juga menambahkan nama lain (extended) yang akan berulang setiap 5 hari sekali, yaitu Pahing, Pon, Wage, Kliwon dan Legi.
Penamaan itu sudah paten (minimal di daerahku), yaitu jika seseorang menyatakan suatu nama hari, maka serasa belum lengkap kalo tidak ada nama pasarannya. Misalnya kalimat, 'arep ono tanggapan wayang sesuk dino Senin Legi'.
Selain sebagai pelengkap kalender, penentuan pasaran juga mempengaruhi nilai
dari hari itu sendiri. Misalnya, orang yang lahir hari Sabtu Legi, memiliki
karakteristik sifat lebih baik dibanding orang yang lahir hari Sabtu Wage.
Kalau sudah menyangkut
hal ini, maka diluar pembahasan kali ini, mungkin di pembahasan berikutnya :-)
Pembahasan kali ini, yaitu tentang bagaimana menentukan nama hari dan nama pasaran dari suatu tanggal.
Saya sudah lama menemukan rumus ini (nemu dalam artian mencari di literatur dan ketemu, tidak membuat rumus sendiri). Saking lamanya sampai saya lupa di mana nemunya. Makasih banget udah ngasih rumus ini.
Untuk mencari nama hari, cukup pake fungsi yang disediakan VB, yaitu Weekday(tanggal)
Function NamaHari(ByVal Tgl As Date) As String NamaHari = Choose(Weekday(Tgl), _ "Minggu", "Senin", "Selasa", _ "Rabu", "Kamis", "Jum'at", "Sabtu") End FunctionWeekday akan mengembalikan nilai integer, kalo 1 berarti minggu, dst.
Nah, di bawah ini baru rumus kita :-)
Function NamaPasaran(ByVal Tgl As Date) As String Dim l Dim s Dim InitialDate As Date InitialDate = DateValue("02/01/1970") l = DateDiff("s", InitialDate, Tgl) * 1000 s = l + 86400000 s = s / 432000000 s = Round((s - Int(s)) * 10) / 2 l = Abs(Round(s)) If l > 4 Then l = 0 NamaPasaran = Choose(l + 1, _ "Wage", "Kliwon", "Legi", _ "Pahing", "Pon") End Function
Itu rumusnya. Dulu aku dapatkan dalam primbon, di perpustakaan di Kendari,
Sulawesi Tenggara. Hei, ternyata aku ingat.
Inti dari rumus tersebut adalah, dicari selisih jumlah milisecond antara
tanggal yang dicari dengan tanggal 2 Januari 1970!
Lalu dihitung jumlah selisihnya sesuai rumus di atas. Nilai variabel 'l' adalah index antara 0 sampai 4. 0 berarti Wage, dst.
Setelah fungsinya selesai, kita panggil fungsi tersebut secara bersamaan, misalnya begini:
txtHari = NamaHari(Now) + " " + NamaPasaran(Now)
Maka variabel txtHari akan berisi nama hari dan nama pasaran saat ini.
That is it. Kalo mau buktikan kebenarannya, silakan cocokkan dengan kalender
:-)
Selama aku pakai, masih cocok terus tuh, tapi saya juga ndak menjamin kebenarannya lho...
Yang jelas benar adalah, hari kemerdekaan kita, 17 Agustus 1945, adalah hari
Jum'at ... Kliwon? lupa aku. Silakan cari sendiri deh :-)
Untuk sourcenya, silakan download Pasaran.zip.
(Aryo Sanjaya)
nambah ini mas.. bagi programer delphi Function TForm1.pasaran(tgl:variant):string; const pasar: array[0..4] of string=('Kliwon','Legi','Pahing','Pon','Wage');//pasaran jawa const nilpasar: array[0..4] of string=('8','5','9','7','4'); // nilai pasaran const nilhari: array[0..6] of string=('5','4','3','7','8','6','9');// nilai hari dimulai minggusampai sabtu var n: integer; t: string; hasil,sisa:variant; begin hasil:=tgl; sisa:=hasil mod 5; t:=floattostr(sisa); n:=strtoint(t); result:=pasar[n]; end; selamat mencoba
Wah, makasih Edy, udah merepotkan :D Belum aku coba sih, tapi kalo itu adalah porting dari versi VB, kayaknya belum valid deh :( Karena aku sendiri ga yakin dengan yang versi VB itu. Aku yakin valid dengan rumus yang ada di artikel ini: http://www.bengkelprogram.com/data-artikel-244.bps Kalo itu udah aku test kevalidannya. Mau porting dari Java menjadi Delphi juga :D
fungsi pasaran(tgl:variant):string; cara panggilnya misal : label1.caption:=pasaran(date());
Saya mau tanya tentang pasaran sabtu pahing. bagaimana watak, jodoh, rezeki, kesehatan dll?
sedikit ilmu klenik.. sabtu neptu =9 pahing neptu =9 jadi jumlah neptu 18, neptu yang paling tinggi diantara hari2 yang lain.. orangnya berwatak keras, kadang pendendam, suka terus terang, bila diberi A dia akan balas A. kalo lebih lengkapnya mungkib bisa di http://www.babadbali.com/pewarigaan/pewarigaan.php thanks
Wah, mas Edy, makasih Linknya Akhirnya pembahasan mencapai taraf ini, hehehe...
mau tanya ni bos kalau mau ditambahi wuku yang 30 atau biar bisa tau tanggal dan bulan jawanya gimana bos, sudah coba tapi ga berhasil, soale ak memang masih baru di Programming! please bantu!
Sigit,
Kamu punya sumber datanya?
Maksudnya acuan untuk membuat konversi semacam itu.
Aku dulu pernah buat, tapi kurang yakin dengan ketelitiannya
buka aja www.babadbali.com, kayaknya disites itu juga ada fasilitas buat mencari wuku dan tanggal jawanya , komplit!tapi pake PHP mungkin, klo coba diview source trus diporting ke VB, gmn?
» Memecah Komponen Warna (10)Source-code SMS AR dalam Visual Basic
» Merubah Status Yahoo! Messenger (4)Untuk para desainer di komputer, penentuan komponen warna sangatlah berpengaruh pada hasil desain
» Main-main dengan ARP (4)Bagi yang sering memanfaatkan IM (Instant Messenger) ini, kemungkinan besar sering memanfaatkan fasilitas status dan availibilty.
» Buka File MDB (24)Pernah denger ARP? tentu saja sering, jika anda seorang networker sejati :-)
Aplikasi kecil untuk melihat isi MDB. Usefull when you need to open MDB file but MS-Access is not present. :)