Sabtu, 19 Juli 2008

Tips Foxprox

Judul: Membuat Tulisan Berkedip / Blinking Label
________________________________________
/*Mungkin udah banyak yg tau..tapi saya baru tau.. */

All you need is a container with its backStyle set to 0-transparent and borderwidth set to 0. Drop a label and a timer into the container. Set the timer's interval to 300 and add the following line of code to its timer method:

WITH This.Parent.lblBase

.Visible = !.Visible

ENDWITH



Voila! Blinking labels!
Judul: Menghitung jumlah hari dalam 1 bulan
________________________________________
Dulu klo ingin menentukan jumlah hari saya sering membuat listing program kayak gini nih..

If bulan=1 &&Januari
hari=31
else
if bulan=2 &&Februari
hari=28
else
..........
..........
sampai bulan 12

Tapi itu dulu, sampai kutemukan cara (lupa dari mana..)
Tanggal harus diset format DMY
contoh:
SET DATE DMY
SET CENTURY ON
vMonth=STR(month(date())) && bulan sekarang
A=CTOD('01/'+VMONTH+'/'+STR(YEAR(DATE()))) && Menghasilkan 01/05/2006
B=DAY(GOMONTH(A,1)-1) &&Menghasilkan 31

Penjelasannya sebagai berikut

variable vMonth untuk menentukan bulan misalnya 1,2 dst
tapi saya lebih sering pake yg otomatis vMonth=str(month(date())
A=CTOD('01/'+VMONTH+'/'+STR(YEAR(DATE()))) untuk menentukan tanggal awal bulan '01' adalah tanggal 1 alias awal bulan (gajian) karena gak mungkin awal bulan bertanggal 2
perintah GOMONTH(A,1) akan menghasilkan tanggal 1 di bulan berikutnya
jadi klo sekarang tanggal 01/05/2006 maka tanggal bulan berikutnya 01/06/2006. GOMONTH(A,1)-1 berarti dikurangi satu hari 01/06/2006 dikurang 1 hari =31/05/2006. Nah 31/05/2006 kan akhir bulan tinggal tambah perintah DAY() jadi DAY(GOMONTH(A,1)-1) hasilnya=31. Demikian juga bulan yg lain...

Cara ini saya pakai waktu membuat program laporan rakapitulasi faktu bulanan.


Judul: Hal-hal yg sebaiknya dan yg jangan anda lakukan
________________________________________
01. Jangan menggunakan Variabel PUBLIC. Variabel ini sangat susah dihandle. Gunakan methode jika memungkinkan.

02. Jangan gunakan FORMSET! Formset adalah blackhole bagi semua app yg menggunakan vfp sebagai software develelopnya.

03. Jangan memasukkan/menggunakan banyak kode pada FORM.REFRESH() anda! Applikasi akan menjadi SANGAT berat dan dlm beberapa kasus bahkan dapat membuat app anda crash!

04.Jangan gunakan SET FILTER! Command ini akan membuat app anda menjadi lambat. Gunakan QUERY sebagai gantinya.

05. Jangan lupakan SET anda saat INIT() ! Saat anda ingin menyeting lingkungan tertentu anda harus menyertakan SET sesuai yang anda butuhkan

06. Usahakan semua tabel yang anda buat mempunyai PRIMARY KEYS!

07. Hindari penggunaan kode yang berulang-ulang! Anda dapat menggunakan Objek References pada artikel di situs ini yang dikirim oleh Handi atau anda dapat menggunakan Methode

08. Tombol window Close (x), PLEASE...gunakan itu! jangan membuang-buang memori dan space dengan membuat tombol untuk menutup app anda!

09. Jika anda membuat app multi user, jangan lupa untuk menutup CURSOR hasil query anda saat tidak dibutuhkan oleh app lain. Gunakan USE IN SELECT("nama_cursor")

10. Gunakan ActiveX control seminim mungkin! ActiveX sangat bagus dalam fungsi maupun tampilan. Tetapi ActiveX pemakan memori yang sangat RAKUS!!!

11. Jangan lupakan komentar (* , &&, *!*, dll) jangan remehkan komentar. Saat anda kembali membuka source code lama anda, anda tdk perlu bersusah payah mengingat-ingat kembali. Apalagi untuk orang pelupa seperti saya...he he he

Tidak ada komentar: