Tampilkan postingan dengan label FOXPRO. Tampilkan semua postingan
Tampilkan postingan dengan label FOXPRO. Tampilkan semua postingan

Rabu, 18 Mei 2011

...::Membuat Angka Terbilang di Foxpro::...

salam belajar......

teman-teman yang mungkin dapat tugas dari dosen tentang membuat angka terbilang di foxpro nih.. saya kasih source codenya mungkin bisa membantu teman-teman yang membutuhkanya..

1. silahkan membuat satu project baru
2. buat satu form
3. dan buat satu code baru

kemudian ketikkan listing berikut di tab code yang baru anda buat tadi...

Function fnterbilang
*-------------------

Lparameter mNumerik
Private MCHASIL,MNLOOP,MCUANG,MNONE,MNTWO,MNTREE
Private MCANGKA0,MCANGKA1,MCANGKA2,MCANGKA3
Private MCANGKA4,MCANGKA5,MCANGKA6,MCANGKA7
Private MCANGKA8,MCANGKA9
Private MCSATU,MCDUA,MCTIGA,MCGABUNG,MCSEN1,MCSEN2

MCHASIL=''
MCUANG=STR(MNUMERIK,15,2)
MNONE=1
MNTWO=2
MNTREE=3
MCANGKA0=''
MCANGKA1="Satu "
MCANGKA2="Dua "
MCANGKA3="Tiga "
MCANGKA4="Empat "
MCANGKA5="Lima "
MCANGKA6="Enam "
MCANGKA7="Tujuh "
MCANGKA8="Delapan "
MCANGKA9="Sembilan "
MCGABUNG=""

FOR MNLOOP = 1 To 4

MCSATU=SUBSTR(MCUANG,MNONE,1)
MCDUA=SUBSTR(MCUANG,MNTWO,1)
MCTIGA=SUBSTR(MCUANG,MNTREE,1)
MCGABUNG=MCSATU+MCDUA+MCTIGA
IF VAL(MCSATU)=1
MCHASIL=MCHASIL+ "Seratus "
ELSE
IF VAl(MCSATU)>1
MCHASIL=MCHASIL+MCANGKA&MCSATU+ "Ratus "
ENDIF
ENDIF
DO CASE
CASE VAL(MCDUA)=1
DO CASE
CASE VAL(MCTIGA)=0
MCHASIL=MCHASIL+"Sepuluh "
CASE VAL(MCTIGA)=1
MCHASIL=MCHASIL+"Sebelas "
OTHER
MCHASIL=MCHASIL+ALLTRIM(MCANGKA&MCTIGA)+;
"belas "
ENDCASE
CASE VAL(MCDUA)>1
MCHASIL=MCHASIL+MCANGKA&MCDUA+"Puluh "+;
MCANGKA&MCTIGA
CASE VAL(MCDUA)=0.AND.VAL(MCTIGA)>0
IF (MNLOOP=3.AND.MCGABUNG="001") .OR. ;
(MNLOOP=3.AND.MCGABUNG=" 1")
MCHASIL=MCHASIL+"Seribu "
ELSE
MCHASIL=MCHASIL+MCANGKA&MCTIGA
ENDIF
ENDCASE

DO CASE
CASE MNLOOP=1.AND.VAL(MCGABUNG)>0
MCHASIL=MCHASIL+"Milyar "
CASE MNLOOP=2.AND.VAL(MCGABUNG)>0
MCHASIL=MCHASIL+"Juta "
CASE MNLOOP=3.AND.VAL(MCGABUNG)>0
IF MCGABUNG="001".OR.MCGABUNG=" 1"
MCHASIL=MCHASIL+""
ELSE
MCHASIL=MCHASIL+"Ribu "
ENDIF
ENDCASE
MNONE=MNONE+3
MNTWO=MNTWO+3
MNTREE=MNTREE+3
NEXT MNLOOP
MCSEN1=SUBSTR(MCUANG,14,1)
MCSEN2=SUBSTR(MCUANG,15,1)
IF LEN(MCHASIL)>1
MCHASIL=MCHASIL+"Rupiah "
ENDIF

DO CASE
CASE VAL(MCSEN1)=0.AND.VAL(MCSEN2)>0
MCHASIL=MCHASIL+MCANGKA&MCSEN2+"Sen"
CASE VAL(MCSEN1)=1
DO CASE
CASE VAL(MCSEN2)=0
MCHASIL=MCHASIL+"Sepuluh Sen"
CASE VAL(MCSEN2)=1
MCHASIL=MCHASIL+"Sebelas Sen"
CASE VAL(MCSEN2)>1
MCHASIL=MCHASIL+ALLTRIM(MCANGKA&MCSEN2)+;
"belas Sen"
ENDCASE
CASE VAL(MCSEN1)>1
MCHASIL=MCHASIL+MCANGKA&MCSEN1+ "Puluh "+;
MCANGKA&MCSEN2 + "Sen "
ENDCASE
RETURN MCHASIL

nah.. sekarang buka formnya dan desain form seperti tampilan berikut ini :




ketikan listing pada object pada form1 procedure init
Set Proc to
SET PROCEDURE TO terbilang ADDITIVE

With Thisform
.text4.value=0
.text4.inputmask='999,999,999,999.99'
.edit1.value=''
.text4.setfocus
Endwith
do case
case dow(date())=1
mhari="Minggu"
case dow(date())=2
mhari="Senin"
case dow(date())=3
mhari="Selasa"
case dow(date())=4
mhari="Rabu"
case dow(date())=5
mhari="Kamis"
case dow(date())=6
mhari="Jumat"
case dow(date())=7
mhari="Sabtu"
endcase
thisform.label3.Caption =mhari

dan object form1 procedure refresh()
a=thisform.text4.value
thisform.edit1.value=fnterbilang(a)

kemudian object jumlah_dana procedure lostfocus
thisform.Refresh()

object terbilang procedure refresh
a=thisform.text4.value
thisform.edit1.value=fnterbilang(a)

terakhir button keluar
thisform.release()

semoga bisa membantu, kalau mau download source codenya di sini

Senin, 16 Mei 2011

Microsoft Visual Foxpro

salam belajar....

Buat teman-teman Yang mungkin semester sekarang dapat Mata kuliah Pemrograman Foxpro nih saya bantu meringankan tugasnya..
sebenarnya ini juga tugas kuliah saya di semester 4 kemarin, saya posting saja mudah-mudahan bisa membantu teman-teman yang membutuhkanya...
untuk pertemuan ini kita belajar dulu yang dasarnya seperti perhitungan aritmatika di foxpro dan kondisi(IF THEN ELSE).

bahasa Pemrograman Foxpro sendiri tidak jauh beda dengan Pemrograman Visual Basic yang membedakan mungkin dari segi dialegnya..
intinya kita harus tahu dasar dari pemrograman OOP itu(Object Oriented Programming)

aplikasi yang akan kita buat adalah untuk konversi valuta asing..
pertama teman-teman desain dulu tampilan formnya, kontrol yang di gunakan label, button, combobox dan textbox.

desain seperti tanpilan berikut ini :


kemudian ketikan code ini pada button hitung procedure click

IF EMPTY(thisform.njumlah.Value ) then
MESSAGEBOX("Jumlah Harap di isi",0+64,"Info")
thisform.njumlah.SetFocus
RETURN
ENDIF

WITH thisform
.nhasil.value = (.nkurs.value * .njumlah.value)
endwith

dan ini untuk button ulangi procedure click:

thisform.Init
thisform.cvaluta.value=""
thisform.nkurs.Value= 0
thisform.njumlah.value=""
thisform.nhasil.value=""
thisform.cvaluta.setfocus

untuk button keluar procedure click cukup ketikan kodenya thisform.Release

di object form1 procedure init isikan kodenya seperti ini :
&& memasukan item ke combobox
WITH thisform
.nkurs.value=0
.nhasil.inputmask =("##,###,###,###")
.cvaluta.additem ("US DOLLAR")
.cvaluta.additem ("POUNSTERLING")
.cvaluta.additem ("YEN JEPANG")
.cvaluta.additem ("DOLLAR SINGAPURA")

ENDWITH

dan object form1 procedure load :
&& menset mata uang ke format rupiah

SET CURRENCY TO "Rp"
SET TALK OFF
SET CONFIRM OFF

code untuk object cvaluta procedure InterActiveChange

WITH thisform
&& kondisikan untuk setiap mata uang
IF .cvaluta.VALUE="US DOLLAR"
.nkurs.value=11000
ELSE
IF .cvaluta.value="POUNSTERLING"
.nkurs.value=17000
ELSE
IF .cvaluta.value="YEN JEPANG"
.nkurs.value=110
ELSE
IF .cvaluta.value="DOLLAR SINGAPURA"
.nkurs.value=2300
ENDIF
ENDIF
ENDIF
ENDIF
ENDWITH



..selamat belajar........

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Akbar