Mengenal Database Foxpro


I.1 Teori

            Foxpro singkatan dari Foxbase Profesional. Paket program Foxpro memang dikhususkan untuk mengolah database terutama database relasional.
Database merupakan kumpulan record dan record merupakan kumpilan dari field.
Field adalah kumpulan  item (karakter) yang membentuk suatu arti.
Contoh : identitas pegawai terdiri dari Nip, Nama, Alamat, Kota yang merupakan 1 record. Sedangkan satu record terdiri dari field nip, nama, alamat, kota.

Nip
Nama
Alamat
Kota
3 Record
9510001201
Soetikno, SE
Tinalan I/63B
Kediri
9610001354
Anny Dewi
Burengan III/09
Tulungagung
9712545512
Asmawi Yahya
Pesantren Blok A
Jombang
 
 
4 Field



I.2 Jenis Data dan File pada Foxpro

                Jenis / type data yang sering digunakan pada Foxpro :
  1. Character (Karakter)                                       :  A…Z, a … z, 0 … 9, !?*%$& dsb.
  2. Numeric (bilangan)                                         :  0 – 9
  3. Float (bilangan scientific positif, negatif)       :  0.01+E
  4. Date (tanggal)                                                 :  27/04/2001
  5. Logical (logika)                                               :  .T. (True),  .F. (False)
  6. Memo (catatan)                                               :  berupa tulisan

Jenis file dan ekstensi yang dihasilkan pada foxpro :
1.   File Database              DBF
2.   File Program                PRG
3.   File Index                    IDX
4.   File Memo                   FPT
5.   File Text                      TXT


I.3  Perintah-perintah pada Foxpro

  1. Set Defa  to <drive>
Mengaktifkan direktori sebagai lokasi kerja yang berfungsi sebagai tempat untuk penyimpanan semua file yang telah dibuat.

  1. Create <nm_file database>
Membuat suatu file database baru
Contoh :
     Create pegawai
Membuat sebuah database yang berisi data pegawai dengan nama file pegawai.dbf          
  1. Use <nm_ file database>
Mengaktifkan file database yang sudah dibuat dimana file tersebut sebelumnya  telah tertutup.
Contoh :
     Use  pegawai
Mengaktifkan sebuah file database yang bernama file pegawai.dbf

  1. Close All
Menutup semua file database yang sedang aktif saat ini.

  1. Clear / Clear all
Membersihkan layar dari file-file yang terbuka

  1. Append
Untuk menambah  record baru pada file database yang sedang aktif. Record baru ini diletakan pada posisi terakhir dari file database tersebut

  1. Go/Goto
Meletakkan pointer record pada posisi tertentu dalam file database.
Contoh :
            Go Top            Menuju record yang pertama
            Go Bottom      Menuju record yang Terakhir
            Goto 2             Menuju record yang kedua               

  1. Insert
Menyisipkan satu atau lebih record baru. Record baru ini diletakkan pada posisi pointer record saat itu

  1. Edit
Mengoreksi record file database

  1. Browse
Menampilkan isi file database dalam bentuk tabel dan isi record dapat diedit (diubah).

  1. Delete
Menandai suatu record sebagai record yang terhapus pada posisi pointer record saat itu atau dengan kriteria tertentu.
Contoh :          Goto 2
                        Delete                                      Menghapus record kedua
Delete for nama=’adi’             Menghapus record dimana nama=’adi’
Delete All                                Menghapus seluruh record    
  1. Pack
Menghapus record yang telah ditandai oleh perintah delete

  1. Recall all
Membatalkan perintah delete

  1. Zap
Menghapus semua data pada file database secara permanen (tidak dapat dipanggil dengan perintah recall all).

  1. List
Melihat isi record file database yang sedang aktif dilayar Foxpro, semua record atau record dengan kriteria tertentu.
Contoh :
            Use tabel1                             
            List                  Atau                List for nama=”Adi”

  1. Modify Structure
Mengubah atau mengkoreksi struktur dari suatu file database.
Contoh :
            Use table1
            Modify structure

  1. Recno()
Untuk mengetahui posisi pointer saat itu.
Contoh :
            Use table1
            Goto 4             : letakkan kursor pada posisi ke 4
            ? Recno()         : cetak posisi record saat itu ke layar

  1. Reccount()
Untuk mengetahui jumlah record pada file database yang aktif.
Contoh :
            Use table1
            ? Reccount()    : cetak jumlah record saat itu

  1. BOF()
Untuk menguji apakah posisi pointer record saat itu berada pada record pertama (Begin Of File). Akan menghasilkan nilai logika True jika benar dan False untuk sebaliknya.

  1. EOF()
Untuk menguji apakah posisi pointer record saat itu berada pada record terakhir(End Of File). Akan menghasilkan nilai logika True jika benar dan False untuk sebaliknya.

  1. Date()
Untuk mengambil tanggal dari sistem komputer.
Contoh :
            ? Date()


  1. Set Date <nm_negara>
Untuk memformat bentuk tangga sesuai keinginan.
Beberapa nama negara yang disediakan Foxpro adalah :
American                     mm/dd/yy
British/French             dd/mm/yy
German                       dd.mm.yy
Italian                          dd-mm-yy
Japan                           yy/mm/dd
Contoh :
            Set Date British
            ?Date()

  1. Set Century On/Off
Untuk memformat digit tahun pada tanggal. Jika diset ON maka tahun menjadi 4 digit dan jika diset OFF maka digit tahun ada 2 digit.
Contoh :
            Set Century On
            ?Date()
            Set Century Off
            ?Date()

  1. Month()
Untuk mengetahui bulan dari tanggal sistem saat itu.
Contoh :
            ? Month(Date())

  1. CMonth()
Untuk mengetahui nama bulan dari tanggal sistem (dalam bahasa Inggris).
Contoh :
            ?Cmonth(Date())

  1. Year()
Untuk mengetahui tahun dari tanggal sistem saat itu.
Contoh :
            ? Year(Date())

  1. CDOW() = Character Date Of  Week
Untuk mengetahui nama hari dari suatu tanggal (dalam bahasa Inggris)
Contoh :
            Tanggal = Date()
            ? CDOW(Tanggal)

  1. DOW() = Date Of Week
Untuk mengetahui urutan nama hari dalam satu minggu. Urutannya yaitu


    1. Sunday(Minggu)
    2. Monday(Senin)
    3. Tuesday(Selasa)
    4. Thirsday(Rabu)
    5. Wednesday(Kamis)
    6. Friday(Jumat)
    7. Saturday(Sabtu)

Contoh :
            ?DOW(Sunday)          : menghasilkan 1

  1. CTOD() = Character To Date
Untuk mengubah suatu nilai character ke dlaam bentuk/format tanggal.
Contoh :
            Tgl=’06/05/1976’
            ?CTOD(Tgl)

  1. LEN()
Untuk mengetahui panjang karakter (digit) dari suatu nilai yang bertype Character.
Contoh :
            Nama = ‘Astone Stephie’
            ?Len(Nama)

  1. STR()
Untuk mengubah suatu data yang bertype numeric ke dalam bentuk Character.
Contoh :
            Nil=2000
            ?Str(Nil)

  1. VAL()
Untuk mengubah suatu data yang bertype character ke dalam bentuk Numeric.
Contoh :
            C_Angka=’2000’
            ?Val(C_Angka)+1000


  1. LEFT()
Untuk mengambil beberapa karakter dari suatu nilai yang bertype character yang dimulai dari sebelah kiri.
Contoh :
            Nama=’Setiawan’
            ?Left(Nama,4)                        >> ‘Seti’


  1. RIGHT()
Untuk mengambil beberapa karakter dari suatu nilai yang bertype character yang dimulai dari sebelah kanan.
Contoh :
            Nama=’Setiawan’
            ?Right(Nama,4)                      >> ‘awan’

  1. SUBSTR()
Untuk mengambil beberapa karakter dari suatu nilai yang bertype character yang dimulai dari huruf yang ke – n sebanyak x karakter.
Contoh :
            Nama=’Setiawan’
            ?Substr(Nama,3,3)                  >> ‘tia’

  1. UPPER()
Untuk merubah semua nilai yang bertype character ke dalam bentuk huruf kapital.
Contoh :
            Nama=’setiawan’
            ?Upper(Nama)                        >> ‘SETIAWAN’

  1. LOWER()
Untuk merubah semua nilai yang bertype character ke dalam bentuk huruf kecil.
Contoh :
            Nama=’SETIAWAN’
            ?Lower(Nama)                        >> ‘setiawan’

  1. LTRIM()
Untuk menghilangkan semua spasi kosong yang terdapat di sebelah kiri dari suatu nilai yang bertype character.
Contoh :
            Nama=’                 Setiawan’
            ?Ltrim(Nama)             >> ‘Setiawan’

  1. RTRIM()
Untuk menghilangkan semua spasi kosong yang terdapat di sebelah kanan dari suatu nilai yang bertype character.
Contoh :
            Nama=’Setiawan                                   ’
            ?Rtrim(Nama)             >> ‘Setiawan’

  1. ALLTRIM()
Untuk menghilangkan semua spasi kosong yang terdapat di sebelah kiri dan di sebelah kanan dari suatu nilai yang bertype character.
Contoh :
            Nama=’          Setiawan                ’
            ?Alltrim(Nama)                       >> ‘Setiawan’




I.4  Instruksi-instruksi Pengendali Program Yang Ada Dalam Foxpro

  1. Pengendali Pilihan
    1. IF … ENDIF
Digunakan sebagai instruksi pengambilan keputusan yang didasarkan atas syarat yang dicantumkan. Hasil dari seleksi ini akan menghasilkan nilai True atau False.
Contoh :
Use Pegawai
M.Nip=’9510002345’
Seek M.Nip
If Found()
Wait wind “Data Ketemu … Tekan Sembarang Tombol …”
Endif
If ! Found()
Wait wind “Data Tidak Ketemu … Tekan Sembarang Tombol”
Endif

  1. IF … ELSE … ENDIF
Perintah ELSE dalam digunakan untuk menguji apakah  syarat yang dicantumkan pada instruksi IF … ENDIF tidak terpenuhi (bernilai False).
Contoh :
Use Pegawai
M.Nip=’9510002345’
Seek M.Nip
If Found()
Wait wind “Data Ketemu … Tekan Sembarang Tombol …”
Else
Wait wind “Data Tidak Ketemu … Tekan Sembarang Tombol”
Endif

  1. DO CASE … ENDCASE
Digunakan untuk menyeleksi data secara betingkat, karena pada instruksi ini terdapat beberapa seleksi (syarat) di dalamnya.
Contoh :
Chari=DOW(Date())
Nhari=’ ‘
Do case
Case Chari = 1
         Nhari=’Minggu’
Case Chari = 2
         Nhari=’Senin’
Case Chari = 3
         Nhari=’Selasa’
Case Chari = 4
         Nhari=’Rabu’

Case Chari = 5
         Nhari=’Kamis’
Case Chari = 6
         Nhari=’Jumat’
Case Chari = 7
         Nhari=’Sabtu’
Endcase
?’Sekarang Adalah Hari : ‘+Nhari

  1. DO CASE … OTHERWISE … ENDCASE
Kegunaan Otherwise hampir sama dengan perintah Else yang ada dalam instruksi If .. Endif, yaitu untuk menguji apakah semua syarat yang dicantumkan tidak terpenuhi.
Contoh :
Nilai=95.50
Ket= ‘ ‘
Do Case
Case Nilai >= 90
         Ket = ‘Sangat Memuaskan’
Case Nilai >= 80 And Nilai < 90
         Ket = ‘Memuaskan’
Case Nilai >= 70 And Nilai < 80
         Ket = ‘Sangat Baik’
Case Nilai >= 60 And Nilai < 70
         Ket = ‘Baik’
Case Nilai >= 50 And Nilai < 60
         Ket = ‘Cukup’
Otherwise
         Ket = ‘Kurang’
Endcase
Wait Wind “Nilai = ‘+str(Nilai)+’ Dengan Predikat = ‘+Ket
  1. Pengendali Perulangan
    1. DO WHILE … ENDDO
Instruksi perulangan ini disebut sebagai perulangan logika, karena instruksi ini akan menjalankan sekumpulan instruksi yang ada di dalamnya secara berulang-ulang selama syarat logika yang dicantumkan bernilai True dan akan berhenti jika syaratnya bernilai False.
Contoh :
I = 0
Use Pegawai
Go Top
Do While !EOF()
Skip 1
I = I +1
? ‘Nama Pegawai Pada Record Ke ‘+Str(I)+’ = ‘+Nama
Enddo
  1. FOR … ENDFOR
Instruksi perulangan ini disebut sebagai perulangan numeric, karena instruksi ini akan menjalankan sekumpulan instruksi yang ada di dalamnya secara berulang-ulang sebanyak jumlah perulangannya sudah ditentukan.
Contoh :
I = 0
For I = 1 To 10
      ?’Nilai I = ‘+Str(I)
Endfor

Atau

I = 0
For I = 1 To 10 Step 2
      ?’Nilai I = ‘+Str(I)
Endfor

Comments

Popular posts from this blog

Pesan Error di Turbo Pascal