Senin, 16 November 2009

Modul Sistem Informasi Manajemen

Informasi mengalir baik secara vertikal (diantara manajer) dan juga horizontal (diantara departemen). Informasi pada level manajemen:
1. Top-level management akan lebih mementingkan gambaran besar dan perencanaan jangka panjang, memproyeksikan even-even yang mungkin terjadi di masa depan.
2. Mid-level management akan lebih mementingkan system control dan perencanaan, serta implementasi tujuan jangka panjang.
3. Level Supervisor akan lebih berfokus pada kontrol operasional harian, memonitor even yang berlangsung dalam basis harian dan juga mensupervisi para pekerja.


Hampir semua organisasi modern memiliki database terkomputerisasi yang mencatat aktivitas rutin harian yang kita kenal dengan transaksi. Ada beberapa level dari sistem informasi terkomputerisasi yaitu:

1. Sistem Pemrosesan Transaksi
Mensubstitusikan pemrosesan berbasis komputer dari pencatatan manual, berhubungan dengan proses rutin yang telah terstruktur termasuk aplikasi pencatatan. Contohnya:
Terdapat pada sistem informasi akuntansi yang mengontrol setidaknya 6 aktivitas:
• Pemrosesan sales order – pencatatan pesanan dari konsumen
• Account Recievables – memperlihatkan uang yang masih “tertahan” di kustomer (uang piutang)
• Sistem pembelian dan inventory – ketersediaan perlengkapan dan barang jadi dan barang-barang persediaan dan servis yang telah dibeli
• Account payable – menunjukan hutang
• Pembayaran – menunjukkan cek, pembayaran gaji, tunjangan, dll.
• Buku besar – menunjukkan semua transaksi di atas

2. Sistem Informasi Manajemen
Menyediakan input yang digunakan dalam proses penentuan keputusan manajerial, berfungsi untuk mendukung situasi pengambilan keputusan yang terstruktur dimana kebutuhan informasi dapat diantisipasi. Sistem informasi manajemen membutuhkan sistem manajemen database untuk mengintegrasikan database kepada departemen-departemen yang berbeda.
Sebuah SIM dapat mengeluarkan laporan yang berbeda-beda:
• Laporan periodic – dikeluarkan dengan interval yang regular
• Exception report – menunjukan even-even yang belum diperhitungkan sebelumnya
• Laporan permintaan – dikeluarkan pada saat dibutuhkan (on-demand)

3. Sistem Pendukung Pengambilan Keputusan
Menyediakan informasi kepada manajer yang harus membuat keputusan dalam situasi-situasi tertentu, mendukung pengambil keputusan dalam situasi yang tidak terstruktur dengan baik. DSS (decision support system) terdiri dari pengguna, software, database, dan model pengambilan keputusan yang memberikan sistem tersebut kemampuan analitis.

4. Sistem Support Eksekutif
Sistem berbasiskan computer yang kompatibel dengan gaya kepemimpinan manajemen dan tanggung jawab eksekutif.

5. Expert Support System
Sebuah program computer yang menggunakan data dan aturan-aturan tertentu untuk menyerupai keputusan yang mungkin dibuat oleh pakar. Sistem ini didesain untuk mendukung penggunanya dengan merekomendasikan keputusan yang spesifik, merekomendasikan aksi, atau membuat prediksi.

6. Work Group Support System
Sistem otomatis yang diarahkan untuk membuat pekerja semakin produktif dengan mengubh struktur dan aktifitas dari kantor dan juga work group lainnya.


Sistem Informasi Manajemen

Daur hidup dari pengembangan sistem
1. Investigasi awal
2. Analisa sistem
3. Desain sistem
4. Pengembangan sistem
5. Pelatihan dan implementasi sistem
6. Perawatan sistem


A. Investigasi awal
Investigasi awal akan menentukan kebutuhan apa saja yang diperlukan bagi sistem informasi yang baru. Tugasnya:
a. Mendefinisikan problem, informasi apa yang dibutuhkan dan oleh siapa, kapan
b. Menyarankan sistem alternatif
c. Mempersiapkan laporan singkat kepada tim manajemen

B. Analisa sistem, data dikumpulkan tentang sistem yang sudah ada
Tugasnya:
a. Mengumpulkan data, menggunakan teknik observasi, interview, dan questionnaire dan melihat pada dokumen-dokumen yang telah lalu seperti chart organisasi
b. Menganalisa data menggunakan beberapa alat analisa
c. Menunjukkan hubungan antara input dan output dari dokumen
d. Tabel keputusan yang menunjukan keputusan apa yang harus diambil ketika kondisi-kondisi tertentu terjadi dan hasil apa yang dapat diharapkan menggunakan system flowchart dan juga data flow diagram.

C. Desain sistem, terdiri dari:
a. Mendesain sistem alternative menggunakan alat-alat pemrograman. Sistem kemudian dievaluasi feasibilitasnya secara ekonomi, teknikal, dan operasional
b. Memilih sistem yang paling baik, yaitu sistem yang fleksibel, aman, dan efektif dari sisi biaya
c. Menulis laporan desain sistem, mendeskripsikan fase ini untuk manajemen. DFD biasanya digunakan untuk dokumen dan untuk menganalisa data flow dan informasi dalam sistem.

D. Pengembangan sistem
a. Pengembangan perangkat lunaknya
b. Pengadaan perangkat keras
c. Pengetesan sistem baru

E. Pelatihan dan implementasi sistem
Konversi adalah proses perubahan dari sistem lama ke sistem baru. Tipe-tipe konversi:
a. Pendekatan langsung, meninggalkan sistem lama dan langsung memakai sistem yang baru
b. Pendekatan parallel, mencoba sistem baru hanya pada satu atau sedikit bagian dari organisasi
c. Pendekatan bertahap, yaitu implementasi sistem secara gradual.

F. Perawatan Sistem
a. Audit sistem, analist dari sistem membandingkan sistem yang baru dengan spesifikasi desain yang telah ditentukan di awal untuk melihat apakah sistem tersebut produktif
b. Evaluasi secara periodik dan diperbaharui bila dibutuhkan

Bahasa Pemrograman
Generasi Pemrograman
1st mesin 10010001
2nd assembly pack 210(8,13)
3rd procedural overtime:=0
4th problem end name=”JONES”
5th natural IF patient is dizzy,
THEN check temperature and blood pressure

Program adalah sebuah daftar dari instruksi unuk diikuti computer sebagai alat untuk melakukan tugas. Instruksi tersebut dibuat dengan pernyataan-pernyataan yang dibuat dalam bahasa pemrograman (seperti Basic)

Dalam pemrograman ada 6 langkah yang dapat kita ikuti:
Langkah 1: Definisikan masalahnya
Analisis program terdiri dari klasifikasi empat tugas:
• Menentukan obyektif dari program tersebut dengan memfokuskan diri pada problem-problem spesifik untuk diselesaikan.
• Menentukan output yang diinginkan sebelum memikirkan tentang input yang dibutuhkan.
• Menentukan data input dan sumber data.
• Menentukan kebutuhan pemrosesan ataupun langkah-langkah yang dibutuhkan untuk menggunakan data input untuk menghasilkan data output

Langkah 2: Keputusan membuat atau membeli
Keputusan membeli atau membuat adalah pilihan antara membuat program yang dapat dikustomisasi oleh programmer atau membeli paket software yang telah ditulis oleh pihak ketiga.
• Perangkat lunak yang dibuat sendiri dapat dibuat secara persis disesuaikan dengan kebutuhan-kebutuhan perusahaan.


• Paket software yang dibeli dapat menghemat waktu dan uang tetapi biasanya tidak persis sesuai dengan kebutuhan-kebutuhan perusahaan.
• Keputusan dibuat dengan memperbandingkan program dengan biaya dan waktu yang dibutuhkan untuk membuatnya.

Langkah 3: Desain program
Bila program tersebut dibuat sendiri, dalam desain program, sebuah solusi didesain menggunakan teknik pemrograman terstruktur, terdiri dari:
• Desain program top-down, langkah-langkah pemrosesan besar, disebut juga sebagai modul dalam pemrograman, diidentifikasikan.
• Pseudocode – ekspresi-ekspresi naratif dari logika pemrograman ditulis
• Flowchart – representasi grafik dari langkah-langkah yang dibutuhkan untuk menyelesaikan sebuah masalah pemrograman
• Struktur logika – 3 pengaturan digunakan dalam flowchart program untuk menulis program terstruktur

Tiga struktur logika:
• Sequence – satu pernyataan pemrograman diikuti dengan pernyataan lainnya
• Seleksi (atau IF – THEN – ELSE) ketika keputusan harus dibuat
• Loop – ketika proses diulang selama beberapa kali hingga waktu yang ditentukan


Langkah 4: Mulai tulis kode pemrograman
Coding adalah penulisan program. Ada beberapa aspek penting dalam pemrograman:
• Kualitas program – program yang baik terstruktur menggunakan struktur logika
• Pemilihan bahasa – bahasa pemrograman harus dipilih sesuai dengan problem yang dihadapi dan juga sistem komputer yang digunakan.

Langkah 5: Debug Program (tes ulang program)
Debugging adalah pengetesan program untuk meminimalisir kesalahan dalam sintaks bahasa pemrograman dan juga kesalahan logika pemrograman. Metode ini terdiri dari:
• Desk checking – secara teliti membaca print out dari sebuah program
• Testing manual – menggunakan data sample untuk mengetes hasil pemrosesan yang benar
• Percobaan translasi – menjalankan program menggunakan komputer menggunakan program translator
• Mengetes data sample – mengetes program untuk eror dalam logika dalam sebuah komputer menggunakan data sampel.

Langkah 6: Pendokumentasian Program
Dokumentasi terdiri dari deskripsi tertulis dari sebuah program dan prosedur yang harus dijalankan bagi pengguna, dan juga operator dan programmer selama perawatan program – modifikasi ataupun pembaharuan program
• Pengguna perlu tahu bagaimana menggunakan program dan memasukan data untuk menghasilkan hasil yang diinginkan
• Operator perlu tahu bagaimana cara mengeksekusi program dan memperbaiki kesalahan
• Programmer perlu tahu agar dapat menjelaskan bagaimana program tersebut bekerja dan merawat program di masa depan.


SEKILAS PEMROGRAMAN VISUAL FOXPRO


A. Pengertian Dasar Object-oriented programming
Bagi pemula dalam pemrograman object-oriented harus betul-betul memahami lima buah konsep, yaitu: class, object, property, event, dan method/procedure.

Class  adalah kumpulan instruksi/informasi yang menunjukkan bagaimana sebuah object harus bekerja.

Object  adalah sebuah bentuk konkret dari suatu class. Contoh object dalam Visual FoxPro adalah: command button, textbox, dll.
Setiap object memiliki:
Property (karakteristik), misalnya: warna object (forecolor/backcolor), tulisan yang ditampilkan object tertentu (caption), serta apakah object tersebut tampak atau tidak waktu program dijalankan (visible).
Event, yaitu kejadian-kejadian yang terjadi atas object tertentu. Misalnya, waktu sebuah object dibuat/diciptakan (init), object tersebut diaktifkan (activate) dan waktu object itu di-click dengan mouse (click event)
Method/procedure adalah program khusus yang terkait dengan suatu object tertentu.

B. Pengalamatan Object
Pada prakteknya, dalam Object Oriented Programming (OOP) kita harus sering mengalamati object. Misalnya, kita membuat instruksi di sebuah object (disebut current object), untuk mengubah caption dari suatu object lain menjadi tulisan "ABC”.

Beberapa Property Umum

1. Name (nama)
Property ini sangat penting, merupakan nama object itu sendiri dan dipakai lebih lanjut untuk mengalamati object yang bersangkutan. Penamaan object memiliki beberapa konvensi, mislanya: untuk form diawali frm, untuk command button diawali dengan cmd, untuk textbox diawai txt,dsb.

2. Caption (judul)
Property ini mengandung teks yang akan ditampilkan seandainya object tersebut memiliki judul. Caption biasanya harus ditentukan untuk form dan unutk command button serta halaman-halaman dari pageframe.


3. Visible (terlihat)
Apabila visibile ditentukan .T.(true), maka object itu akan terlihat waktu dijalankan sedangkan bila ditentukan .F. (false), maka object itu tidak terlihat waktu program dijalankan.

4. Enabled
Apabila enabled ditentukan ,T.(true) maka object yang bersangkutan dapat dimanipulasi (di-click, diubah isinya, dsb) sedangkan jika enabled adalah F. maka hal tersebut tidak bisa dilakukan.

5. Value (nilai awal)
Secara umum, merupakan nilai awal/teks awal yang tertulis pada sebuah object. Kadang-kadang nilai/teks awal tersebut dapat diganti dan kadang-kadang tidak, tergantung jenis objectnya.

6.Alignment (perataan teks)
Menentukan apakah teks ditampilkan rata kanan, rata kiri atau rata tengah.

Beberapa object Umum

1. FORM
Form adalah object utama yang otomatis dibuat oleh Visual FoxPro pada waktu pengetikan perintah MODIFY FORM. FORM dapat mengandung semua object yang lain, kecuali formset yang lebih luas karena sebuah formset dapat mengandung beberapa form.
Property khusus:
MaxButton, MinButton, ControlBox: menentukan apakah tombol maximize, minimize, dan control MenuBox ditampilkan atau tidak.
WindowSlate: menentukan ukuran form tersebut waktu program dijalankan.

2. LABEL
Sesuai dengan namanya, object yang biasanya menampilkan teks tertentu seperti: judul, keterangan, dan Iain-Iain. Label tidak memiliki data source, tidak dapat diedit secara Iangsung, tidak dapat di-click atau ditab.

3. TEXT BOX
Textbox dipergunakan untuk mengisikan input yang tidak dapat ditentukan sebelumnya. Jika Value tidak diberi nilai awal, maka isi textbox dianggap character, sedangkan jika diberi nilai awal berupa angka, maka angka dianggap numeric.
Property khusus:
a. ControlSource: menentukan field dan table mana yang merupakan sumber data textbox yang bersangkutan.
b. lnputMask: menentukan karakter apa yang dapat diketikkan ke dalam textbox tersebut.
X  semua karakter dapat diisikan
9  angka dan tanda (+/) dapat diisikan
#  angka, tanda, dan blank dapat diisikan
Y  membatasi pengisian hanya bisa Y dan N
$ dan £$  menambahkan tanda currency
* tempat kosong akan diisi tanda bintang/asterik
.  menunjukkan jumlah desimal yang dikehendaki
,  membubuhkan pemisah ribuan
c. Format: menentukan bagaimana karakter yang merupakan value dari textbox itu akan ditampilkan.
A hanya menerima huruf (spasi & tanda baca tidak diterima)
D menggunakan format date dengan SET DATE
E  mengedit data jenis Date sebagai British
K menyeleksi textbox waktu kursor dipindahkan ke textbox
L  mengisi semua tempat kosong dengan nol
M  memberikan pilihan dalam InputMask
!  mengubah huruf kecil menjadi huruf besar
d. PasswordChar: menentukan karakter apa yang akan ditampilan waktu user mengisikan password.

4. EDIT BOX
Edit Box berguna untuk dipakai mengisi/mengedit/menampilkan field memo atau field character yang sangat panjang.
Property khusus:
a. ControlSource. lsikan nama table (file DBF) dan nama field yang terkait dengan edit box tersebut. Misalnya:
File DBF
nama field
b. Readonly: menentukan apakah user diperbolehkan mengubah teks yang ada di text box.
c. Scrollbars: apakah textbox akan diberi scroll bar atau tidak.

5. COMMAND BUTTON
Merupakan object yang paling penting dan paling sering digunakan, sebab biasanya dipakai untuk memerintahkan kepada program untuk melakukan suatu proses. Event khusus: click

6. COMMAND GROUP
Kadang-kadang memberikan kemudahan, yaitu membuat sekelompok command button sekaligus dimana procedure untuk click event-nya dapat dibuat sekaligus pula pada command button group. Contohnya:
RELEASE THIS FORM (untuk keluar dari form tersebut)
Event khusus: Click
Property khusus:
Button count, menyatakan berapa tombol yang terdapat di dalam group


7. OPTION GROUP
Option Button Group merupakan sebuah container yang mengandung beberapa Option Buttons: Object ini biasanya untuk memaksa user agar hanya dapat memilih satu dari sejumlah pilihan.
Property khusus:
a. ButtonCount: menentukan berapa pilihan di dalam group
b. Value: menentukan option mana yang telah terpilih (option pertama=1, kedua=2, dst)

8. CHECKBOX
Berbeda dengan Option Group biasanya sebuah program aplikasi menampilkan sekelompok check box di mana user dapat memilih salah satu atau beberapa dari pilihan yang diajukan. Namun demikian, masing-masing checkbox hanya dapat berstatus .T. atau .F. atau NULL. Apabila sebuah checkbox dikaitkan dengan sebuah field logical, maka jika sebuah record adalah .T. akan diberi tanda X, sedangkan jika .F. akan dikosongkan.
Property khusus:
a. Value: menyatakan status dari pada checkbox
b. Control Source: keterkaitan checkbox dengan sebuah field tertentu.

9. COMBO BOX
Combo box merupakan kombinasi daripada sebuah list box dan text box. Ada dua jenis combo box: Dropdown Combo dan Dropdown List. Property khusus:
a. Control Source: menentukan tabel (file DBF) yang merupakan sumber dari mana pilihan diperoleh.
b. RowSourceType: menentukan jenis input yang diharapkan.
0 - None
1 - Value (pilihan ditulis Iangsung diproperti ini)
2 - Table (pilihan diperoleh dari Table (file DBF)
3 - SQL Statement (pilihan diperoleh dari rumus SQL query)
4 - QPR (pilihan diperoleh dari file OPR)
5 - Array (pilihan diperoleh dari variable array)
6 - Fields (pilihan diperoleh dari fields tertentu)
c. RowSource: menentukan secara spesifik sumber dari pilihan-pilihan
yang ada Hal ini harus sesuai dengan RowSourceType.
d. Style: memilih antara Dropdown Combo dan Dropdown List.

10. LIST BOX
Mirip dengan ComboBox,sebuah List Box biasa dipakai untuk menampilkan sebuah daftar pilihan.
Property Khusus:
a. ColumnCount: menentukan jumlah kolom di dalam List Box.
b. ColumnWidths: menentukan lebar masing-masing kolom di dalam Listbox. Contoh penulisan: 25,100,50 artinya kolom pertama lebamya 25, kolom kedua 100, dan ketiga lebamya 50.
c. ControlSource: menunjukkan dimana nilai yang terkandung di dalam ListBox disimpan.
d. RowSource & RowSourceType: lihat penjelasan ComboBox.

11. SPINNER
Spinner biasanya dipakai untuk membuat pilihan numeric atas sederetan
nilai. Pengisian spinner dapat langsung diketikkan, dan dapat juga dengan meng-click mouse pada tanda panah di sebelah kanan spinner.

Property khusus:

a. KeyboardHighValue&KeyboardLowValue: menentukan nilai terbesar dan terkecil yang dapat diisikan melalui keyboard.
b. SpinnerHighValue&SpinnerLowValue: menentukan nilai terbesar dan terkecil yang dapat diisikan dengan meng-click mouse.
c. Interval: berapa nilai yang 'diloncat' setiap kali user menekan tombol mouse.

12. GRID
Seperti yang terlihat pada gambar diatas, sebuah Grid dapat mengandung beberapa Columns dan Headers. Masing-masing grid, column dan header merupakan object tersendiri.
Property khusus:
a. ColoumnCount: menentukan berapa banyak column yang terdapat di dalam grid. (Jika diisi -1, maka jumlah column otomatis sama banyaknya dengan jumlah field dari tabel (file DBF) yang terasosisi dengan Grid tersebut).
b. Recordsource & RecordSourceType: hal ini sama dengan Row Source dan RowSourceType pada combo box.
CATATAN: untuk mengubah lebar setiap kolom. Letakkan mouse cursor pada batas diantara dua header sampai bentuk cursor berubah, lalu click and drag.

13. IMAGE
Dipakai untuk menampilkan sebuah gambar (file .BMP) pada form.
Property khusus:
Picture: disini disebutkan nama file gambar (.BMP) yang harus ditampilkan.

14. TIMER
Timer adalah suatu objek yang khas, karena pada saat runtime (program dijalankan), objek ini tidak akan terlihat. Yang terasa hanyalah pengaruhnya atas jalannya program. Timer akan melakukan sebuah procedure tertentu secara berulang-ulang setiap kali sejumlah waktu telah berlalu.
Event khusus: Timer. Ini adalah event yang harus dibuatkan procedurenya, dimana kita memberikan perintah-perintah kepada program, apa yang harus dilakukan timer setiap kali interval waktu itu telah lewat.
Property khusus:
Interval: lamanya objek Timer harus menunggu sebelum melakukan suatu proses. Satuan interval yang dipergunakan adalah milisecond. Misalnya, jika interval ditentukan 500, maka berarti Timer akan mengulang kegiatannya setiap setengah detik sekali.

I5. PAGEFRAME
Page frame merupakan sebuah container yang mengandung beberapa objek lain, yaitu page.
Property khusus:
Pagecount: menentukan jumlah pages yang terdapat di dalam Page frame.
Ringkasan Perintah, Fungsi dan Procedure Visual FoxPro
Catatan: Untuk penjelasan lebih rinci, lihat fasilitas HELP dan Visual FoxPRO
Perintah Penjelasan
NOTASI <...> artinya harus diisi
[...] artinya boleh diisi jika dikehendaki
…/… artinya merupakan pilihan, misalnya ON atau OFF
expC artinya ekspresi character
expN artinya ekspresi numeric
expD artinya ekspresi date
expL artinya ekspresi logical
; (titik koma) menyatakan bahwa perintah masih bersambung ke baris berikutnya
APPEND BLANK Menambahkan record baru yang kosong pada tabel yang aktif serta memindahkan record pointer ke record baru tersebut.
CHR(n) Menampilkan karakter ASCII dengan nilai ASCII=n
CHR(13)akan menghasilkan karakter enter atau return
CLEAR EVENTS Membatalkan perintah READ EVENTS dan menyebabkan FoxPRO melaksanakan perintah yang terdapat di bawah READ EVENTS yang dibatalkan tersebut.
CLEAR MEMORY Menghapus semua variable memory, baik yang private maupun yang public.
CLEAR WINDOWS Menghapus semua windows (form) yang telah dibuat oleh user. Tidak menghapus window yang dibuat oleh FoxPro.
CLOSE ALL Menutup semua database, table dan index files yang sedang aktif.
CTOD() Mengubah sebuah variable karakter menjadi variable date.
DATE() Menghasilkan tanggal hari ini berupa variable date.
DAY() Menghasilkan nilai numeric dari tanggal dari sebuah variable date. Misalnya, tgl 2 Juni 1997, maka DAY-nya adalah 2.
DELETE Menandai record yang sedang ditunjuk record pointer dengan tanda delete (*)
DO FORM Menjalankan sebuah form
DO Menjalankan sebuah program atau menu
DO() Menghasilkan nilai numeric dari hari sebuah variable date (minggu=l, senin=2, selasa=3, dst)
DTOC() Mengubah sebuah variable date menjadi character
EOF() EOF() akan bernilai .T> jika record pointer sedang berada di EOF, dan bernilai .F> jika tidak.
GO BOTTOM Memindahkan record pointer ke record paling bawah.
GO TOP Memindahkan record pointer ke record paling atas.
IIF(,,) Jika terpenuhi, maka I1F menghasilkan , kalau tidak IIF menghasilkan
LEFT(,) Mengambil sejumlah karakter sebanyak dari string
MESSAGE([1]) MESSAGE() akan menampilkn baris program yang menyebabkan error. MESSAGE () akan menampilkan pesan kesalahan pada saat error.
MESSAGEBOX(cmessagetext,[nDialogBoxType],[cTitleBartext]) Menghasilkan sebuah dialog box dimana:
cMessageText adalah pesan yang tampil di dalam Messagebox. cTitlebarText adalah judul yang tampil di atas Messagebox nDialogBoxType adalah sebuah nilai yang menentukan tombol maupun lambang yang muncul pada messagebox.
Nilai yang menentukan tombol:
0 OK
1 OK, Cancel
2 Abort, Retry, Ignore
3 Yes, No, Cancel
4 Yes, No
5 Retry, Cancel
Nilai yang menentukan lambang:
16 Stop
32 Tanda tanya (?)
48 Tanda seru (!)
64 Informasi (i)
Jadi, kalau dikehendaki messagebox dengan tombol OK dan cancel serta lambang tanda seru, maka nDialogBoxType = 1 + 48 + 49
Messagebox dapat pula mendeteksi input yang diberikan user:
Jika user mengklik OK, maka nilainya adalah: 1
Jika user menklik Cancel, maka nilainya adalah: 2
Jika user menklik Abort, maka nilainya adalah: 3
Jika user menklik Retry, maka nilainya adalah: 4
Jika user menklik Ignore, maka nilainya adalah: 5
Jika user menklik Yes, maka nilainya adalah: 6
Jika user menklik No, maka nilainya adalah: 7
MIN(,) MIN akan menampilkan nilai yang terkecil antara dan
Lawannya adalah MAX
MODIFY PROJECT Perintah untuk membuat project bam atau mengedit project yang sudah ada
ON ERROR [DO] ON ERROR DO akan menyebabkan program berpindah ke seandainya terjadi error. ON ERROR akan membatalkan perintah ON ERROR Do
PUBLIC Menciptakan variable memo besifat public
Jika didalam sebuah program atau procedure dibuat sebuah variable memori, maka variable itu bersifat provate, artinya pada umumnya variable itu hanya dapat dipergunakna oleh program/procedure yang bersangkutan.
Jika perlu dibuat sebuah variable memori yang harus dapat dialihkan dari satu program ke program yang lain, maka definisikan dulu variable itu sebagai variable PUBLIC, hal ini berarti bahwa semua program/procedure diperkenankan menggunakannya
READ EVENTS Perintah ini menyatakan agar program yang sedang dijalankan disuspend dahulu, dan VisualFoxPRO akan menjalankan events, dengan perkataan lain akan menjalankan form yang sedang aktif,
RELEASE THISFORM Menghapus form yang sedang dijalnakan dari memori. Secara efektif hal ini berarti menghentikan kerjanya form tersebut.
REPLACE,WITH[,,WITH,...] Mengganti isi field dari record yang sedang ditunjuk pointer dengan
REPORT FORM[TOPRI NTER][PROMPT][NOCONS OLE][PREVIEW| Secara umum akan mencetak sebuah report.
TO PRINTER menentukan agar pencetakan dilakukan ke printer, sebagai lawan dari TO FILE
PROMPT menampilkan printer setting dialog box
NONCONCOLE agar apa yang dicetak tidak turut ditampilkan di monitor
PREVIEW untuk menampilkan print preview
RGB(,) Menentukan warna yang ditampilkan di monitor
menentukan warna RED, intensitas dari 0 (paling gelap) sampai 225 (paling terang)
menentukan warna GREEN, intensitas dari 0 sampai 225 menentukan warna BLUE, intensitas dari 0 sampai 225 Warna hitam diperoleh lewat RGB (0,0,0) sedangkan warna putih dari RGB (225,225,225)
Warna-warna lain dapat diperoleh dengan mengubah-ubah ketiga nilai tersebut
ROUND(,) Membulatkan nilai numeric sampai desimal
SEEK Mencari suatu record di table yang aktif yang sesuai dengan Untuk dapat melakukan SEEK maka table itu harus sudah terindeks sesuai dengan
SELECTFROM[WHEREl;[ORDERBY][INTOCURSOR] -SQL Statement Cara melakukan query dengan menggunakan SQL (structure query language)
SELECT menenukan fields mana yang akan ditampilkan FROM menunjukkkan asal usul fields tersebut
WHERE menyaring hanya records yang akan ditampilkan adalah yang memenuhi syarat
ORDER BY menentukan cara pengurutan record-record yang akan ditampilkan
INTO CURSOR akan menyebabkan hasil query tersebut disimpan dalam sebuah cursor.
"Cursor" disini meruapkan sebuah label yang dibuat SQL untuk menyimpan hasil query.
Cursor ini bersifat temporary dan read only, tidak seperti file table (DBF)
SELECT-XbaseCommand Apabila ada beberapa table yang diaktifkan sekaligus, maka masing-masing table menempati workareanya sendiri di dalam RAM. Untuk menentukan table mana yang hendak kita pergunakan pada suatu saat, maka workareanya harus di SELECT dulu.
Pada prakteknya, adalah sama dengan nama tabel yang menempatinya.
SET DEFAULT TO Menentukan drive dari subdirectory dimana FoxPRO akan mencari data-datanya
SET DELETED ON/OFF SET DELETED ON akan menyebabkan record yang telah ditandai DELETE (tanda *) tidak ditampilkan lagi di layar monitor. SET DELETED OFF membatalkan perintah itu.
SET HELP TO [] SET HELP TO akan menyebabkan isi dari itu yang akan ditampilkan sewaktu user menekan tombol F1. Untuk mengembalikan ke help system Visual FoxPRO berikan perintah SET HELP TO.
SET ORDER TO Jika sebuah table memiliki beberapa indeks, maka SET ORDER TO merupakan perinah bagi Fox untuk menentukan apakah table yang akan diurut berdasarkan indeks pertama, kedua, dst.
SET STATUS BAR TO DEFAULT Menampilkan atau menghilangkan status bar.
SET SYSMENUTO DEFAULT Mengembalikan menu yang telah dibuat user ke menu aslinya Visual FoxPRO.
SET TALK OFF/ON SET TALK OFF menyebabkan komentar-komentar Visual FoxPRO yang kadang-kadang menganggu tidak lagi ditampilkan. SET TALK ON membatalkannya.
SKlP[n] Memindahkan record pointer sejumlah tempat maju atau mundur dalam table.
SKIP akan menyebabkan record pointer turun satu
SKIP 5 akan menyebabkan record ponter turun lima tempat
SKIP -3 akan menyebabkan record pointer naik tiga tempat
STR(,[places],[desimals] Mengubah nilai numeric, menjadi character,
[places] menyatakan berapa lebar tempat yang hendak disediakan untuk
[desimals] menyatakan berapa banyak desimal yang dikehendaki
SUBSTR(,n,m) Mengambil dari string sejumlah karakter, mulai dari posisi ke-n.
SUM(),To Menjumlah dan menyimpannya di variabel memori
THISFORMREFRESH Menyebabkan berbagai object dalam form di update sehingga menampilkan keadaan table pada saat ini.
Misalnya pada sebuah textbox telah tampil record #1 dari sebuah table. Kemudian dengan sebuah commandbutton, maka dilakukan SKIp. Record pointer sebenamya telah berpindah, tetapi textbox itu masih saja menampilan record#1. Supaya textbox dapat menampilkan record yang sekarang sedang ditunjuk, maka berikan perintah THISFORM.REFRESH
TIME() Menampilkan jam/waktu saat ini, dalam bentuk character.
VAL( Mengubah sebuah character menjadi numeric.
WAIT WINDOW Membuat sebuah window kecil di kanan atas layar berisi pesan . Program baru meneruskan jika user menekan sembarang tombol.
YEAR() Menghasiikan nilai tahun dalam empat digit dari sebuah nilai date

Files yang dihasilkan Visual FoxPRO
Project  PJK, PJT Tables  DBF
Menu  MPX, MPR, MNX, MNT Class  VCX, VCT
Reports  FRT, FRX Index  CDX
Form  SCX, SCT Program PRG, FXP

Perintah pencabangan dalam visual FoxPRO
Fungsi IF Fungsi Case

IF

ELSE

ENDIF

DO CASE
CASE

CASE

OTHERWISE

ENDCASE

Pengenalan Object Oriented Programming dalam Visual FoxPro 7.0
Object-oriented programming, merupakan salah satu inovasi baru dalam dunia pemrograman. Pemrograman cara klasik menuntut seorang programmer untuk memikirkan urut-urutan dan alur pengerjaan perintah program dari baris pertama sampai ke baris terakhir. Dalam object-oriented programming, Anda harus memahami sebuah program aplikasi sebagai sekumpulan object-object yang masing-masing memiliki komponen dan fungsi tersendiri.

Project Manager
Project Manager mempunyai dua tujuan utama :
• Menolong pengaturan file untuk project berdasarkan tipe filenya.
• Merupakan sebuah kontainer untuk mengumpulkan komponen dari aplikasi dalam rangka persiapan mengcompile menjadi sebuah file application (APP) atau file executable (.EXE).
Daftar file yang ada dalam Project Manager adalah sebagai berikut:
 Data
o Database
 Tables
 Local View
o Free Tables
o Queries  Class Libraries

 Other
o Menus
o Text Files
o Other Files
 Documents
o Forms
o Report
o Labels  Code
o Programs
o API Libraries
o Application


Untuk membuka sebuah project, ketikkan perintah sebagai berikut dalam Command Window (Sebagai alternatif, Anda dapat memilih File, Open): MODIFY PROJECT Foxie
Maka akan muncul gambar seperti ini
Database & Table
Database atau dalam istilah Visual FoxPro Table bahwa menyimpan data dalam record (baris) dan field (kolom). Setiap table Visual FoxPro dapat disimpan dalam filenya sendiri dengan ekstensi .dbf atau tercakup dalam database.

Tujuan mempelajari Database adalah :
• Membuat proyek dan database baru.
• Membuat table baru, dan menetapkan field dan indeks.
• Menambahkan data pada table yang sudah ada.
• Menghubungkan table
• Menetapkan hubungan antar table
• Memastikan keutuhan referensi
Inti dari aplikasi Microsoft Visual FoxPro adalah table yang berisi data.

Membuat Proyek

Disini akan menggunakan Visual FoxPro Project Manager, Table Designer, dan Database Designer untuk membuat table, dan menempelkan data pada table.

Project Manager disusun menyerupai lemari arsip dan mempunyai beberapa label, seperti All, Data, Document, Classes, Code dan Other. Label tersebut memberikan akses yang cepat dan mudah pada obyek yang akan digunakan dalam proyek. Saat aplikasi tersebut, akan digunakan teknik mouse tunjuk-dan-klik atau seret-dan-letakkan untuk mengakses dan memanipulasi komponen aplikasi.

Membuat Database
Dalam kasus ini akan membuat database dengan menempatkan informasi ke dalam table.

Membuat tabel
Tabel dapat ditambahkan pada database dengan menggunakan dua peranti
yang berbeda:
• Table Designer
• Table Wizard
Di sini dapat memanfaatkan kemudahan yang lebih besar dari Table Designer untuk membuat dan memodifikasi table, field, dan indeks. Dapat juga dilaksanakan aturan validasi, nilai default, dan nilai null (tak ada) dengan mudah.

Menjalankan Database
Setelah membuat dan menambahkan table yang diperlukan untuk aplikasi kasus ini, baru dapat dihubungkan antara table yang memungkinkan table untuk berfungsi bersama di dalam aplikasi.
Penjelasan Indeks:

Primary (Utama) Untuk memastikan bahwa nilai khusus yang dimasukkan ke dalam field dan menentukan urutan catatan tersebut diproses. Setiap table hanya bisa mempunyai satu indeks utama. Hal ini memastikan keutuhan referensi dalam hubungan yang tetap.
Candidate (Kandidat) Untuk menjalankan nilai khusus dan dapat menjadi kandidat untuk digunakan sebagai indeks utama. Kandidat bisa lebih dari satu dalam setiap table.
Unique (Khusus) Ini memungkinkan pengadaan nilai dan menyimpan daftar setiap nilai khusus dalam indeks table.
Reguler (Biasa) Indeks biasa tidak menjalankan kekhususan pada data, tetapi dapat digunakan untuk mengurutkan dan mencari data dari query dan laporan.

Menggunakan jenis apapun dari ke-4 tersebut secara otomatis membuat sekumpulan file indeks yang terpisah (.cdx), yang berisi semua indeks yang digunakan dalam database. File .cdx berisi panduan untuk setiap indeks dalam table dan digunakan untuk menyusun catatan dan membuat rantai penghubung. File .cdx terbuka setiap kali menggunakan table.

Local View
Pembuatan View dilakukan bila Anda menginginkan seperangkat data yang dapat diperbaharui kapan saja. View merupakan kombinasi Query dan Tabel (database). Artinya dengan menggunakan View Anda dapat menyaring data dari satu atau lebih tabel serta menggunakannya untuk memperbaharui informasi pada View.

Cara pembuatan View adalah dengan memilih tabel serta field yang ingin anda masukkan ke dalam view, field tersebut harus memiliki kondisi tertentu yang sama dengan tabel lain yang akan direlasikan. Kemudian pilih bagaimana data dala view tersebut dikirimkan ke tabel dasar dimana view tersebut dibuat.

Pada saat view dibuat, Visual FoxPro akan menyimpan View definition pada database yang bersangkutan. Definisi tersebut berisi nama tabel serta field pada View. View dibagi menjadi dua yaitu Local dan remote. View yang akan dipelajari sekarang adalah Local View.

Cara pembuatannya adalah pada Project manager pilih database kemudian pilih Local View Ialu pilih New untuk membuka View Designer.

Atau bisa juga dengan menggunakan perintah CREATE SQL VIEW pada window command.

Nama view yang baru akan muncul pada Project Manager. Jika anda membuka Database Designer maka View akan ditampilkan sebagai tabel dalam skema dengan nama View sebagai nama Tabel.

Forms
Salah satu bagian yang paling penting dalam pembuatan program aplikasi adalah form, karena pada bagian inilah user akan berinteraksi dengan data yang ada dalam komputer. Dengan kata lain membuat form adalah merancang format interfacei atau format dokumen atau bentuk tampilan dimana data dikomunikasikan dalam bentuk yang dapat dimenegrti pada para pengguna.

Pada Visual FoxPro, form dapat dibuat dengan dua cara yaitu dengan form designer (secara manual) dan Form wizard (dipandu komputer). Agar dapat memahami inti pembuatan form secara keseluruhan lebih baik kita menggunakan Form Designer. Sedangkan wizard digunakan untuk membuat program entry data yang sederhana, dimana kita hanya perlu menjawab serangkaian pertanyaan yang akan diberikan oleh Form Wizard Ialu Visual FoxPro akan membuatkan Form tersebut secara otomatis.

Visual FoxPro adalah suatu bahasa pemrograman OOP (Object Oriented Programming) dimana kita memanipulasi obyek untuk pembuatan label, kotak teks, tombol perintah, dan Iain-lain.

Membuat Form Baru
Langkah-langkah awal membuat form dari Form Designer
1. Pada project manager, klik tab documents
2. Klik icon forms
3. Klik tombol “New...”
Kotak dialog New Form akan muncul, sehingga kita dapat memilih menggunakan Form Wizard atau Form Designer.
4. Klik tombol New Form untuk membuat Form menggunakan Form Designer, jendela Form Designer akan muncul.


Didalam FormDocl terdapat jendela Form 1 yang bearti ini adalah layar form pertama untuk proyek ini dan merupakan daerah kerja atau layar form yang digunakan untuk membuat Form sesungguhnya. Sedangkan FormDocl adalah nama file yang akan disimpan dalam harddisk dan akan memiliki ekstensi SCX.

Di bawah baris menu terdapat toolbar Form Designer yang membantu mempercepat dan mempermudah dalam membuat Form. Sedangkan disebelah kanan jendela Form Designer terdapat Toolbar Form Control, dimana Anda bisa memilih obyek-obyek yang dapat dimanipulasi di dalam Form. Kedua toolbar tersebut dapat dimunculkan dengan perintah "Toolbars" dari menu View. Dan pada kotak dialog toolbar, pilih toolbar Form Controls dan Form Designer.
Object
Pada Visual FoxPro ada dua jenis object, yaitu:
1. Container Objects
Yaitu parent object yang mengandung beberapa object lain dibawahnya. Misalnya layar Form merupaka sebuah object kontainer yang dapat mengandung obyek-obyek lainnya seperti label, kotak teks dan lain sebagainya.
2. Control Objects
Yaitu obyek individual yang digunakan oleh pemakai untuk memasukkan data atau melakukan tindakan. Contohnya adalah tombol perintah, radiobutton, dan sebagainya. Setelah dibuat, setiap obyek akan memiliki metode (cara), properti (sifat) dan Code (Kode program) masing-masing.
Dengan menggunakan Jendela Properties yang diaktifkan dengan klik kanan pada obyek lalu dipilih "properties..." dari menu pop-up, kita dapat merubah sifat daripada obyek tersebut. Misalnya nama, warnanya, captionnya, dan Iain sebagainya.

Reports
Report menampilkan dan meringkas data dalam format cetak atau pada layar. Dua komponen utama dari laporan adalah data dan rancangan. Sumber data untuk laporan bisa label, query, atau pun view.

Dalam report designer, kita bisa memasukkan obyek-obyek berupa textbox, label, line, rectangle, rounded rectangle, dan picture / ole bound control. Obyek-obyek tersebut bisa kita masukkan ke dalam beberapa bagian report yang berbeda. Pada report yang tidak memiliki data grouping, report dibagi ke dalam tiga bagian, pageheader, detail, dan page footer. Page header dan page footer hanya akan ditampilkan satu kali (maksimal) dalam satu halaman. Bagian detail akan dicetak berulang-ulang selama datanya masih ada (misalnya dari tabel). Pada report yang memiliki data grouping, ada dua bagian tambahan, yaitu group header dan group footer.

Variables
Di dalam report, kita dapat membuat satu atau beberapa buah variabel yang perlu ditampilkan dalam report sebagai hasil dari perhitungan tertentu, baik perhitungan fisik tabel (misalnya COUNT) maupun perhitungan matematis (misalnya SUM).

Pembuatan variabel dalam report dapat dilakukan dengan membuka dialog variables (pilih menu reports, variables). Berikut beberapa komponen dalam dialog variables:

Komponen Keterangan
Variables
Tuliskan nama-nama variabel yang akan kita buat dalam list ini.
Value to Store
Tuliskan variabel, nama field, atau apapun yang akan dimasukkan ke dalam variabel.
Calculate
Beberapa perlakuan (penghitungan) yang dilakukan pada value to store sebelum disimpan pada variabel. Pilihannya adalah:
• Nothing
• Count
• Sum
• Average
• Lowest
• Highest
• Std. Deviation
• Variation
Initial Value Nilai awal yang disimpan pada variabel.
Release after report
Pilihan untuk me-release variabel setelah report selesai ditampilkan
Reset at
Pilihan waktu pengulangan proses Calculate. Ketika pengulanagn dilakukan, nilai variabel akan berubah menjadi initial value.


Data Grouping
Seringkali kita perlu untuk mengelompokkan beberapa data dalam tabel yang ditampilkan dalam report berdasarkan kategori tertentu, pengelompokkan ini dapat kita lakukan dalam Visual FoxPro dengan menggunakan fasilitas data grouping.

Untuk membaut data grouping, pilih menu report, data Grouping. Pada dialog box data grouping, ada beberapa komponen yang perlu diisi.
Komponen Keterangan
Group Expression Dalam kotak ini, kita isikan dasar pengelompokkan.
Group Properties Pilihan-pilihan preferensi perlakuan terhadap grup.


Menu
Dalam pembuatan system menu membutuhkan langkah sebagai berikut:
• Rencana dan Design system menu
• Pembuatan menu dan submenu
• Menghubungkan menu dengan perintah seperti yang diinginkan
• Men-generate menu
• Menjalankan menu untuk testing

Perencanaan Menu System
Kegunaan dari suatu aplikasi akan tercermin dari system menu yang baik sehingga mudah dipahami oleh user, untuk itu perlu perencanaan yang baik dan matang.

Patokan dalam mendesign system menu :
a. Atur menu berdasarkan kriteria penggunaan, bukan berdasar tingkatan program dalam aplikasi.
b. Beri judul yang menarik.
c. Atur menu berdasar frekwensi penggunaan, urutan logis proses, atau berdasar alphabet.
d. Kelompokkan menu dalam grup-grup, dan beri jarak diantaranya.
e. Gunakan shortcuts untuk mempermudah akses.
f. Gunakan kata yang menggambarkan kegunaan menu.

Membuat design menu
Dalam Visual FoxPro pembuatan menu dapat dilakukan dengan suatu Menu Designer. Dengan Menu Designer kita dapat menentukan judul menu, bagian dari menu dan sub menu. Untuk memulainya pilih File, New, Menu, New File, Menu. Lalu akan muncul Menu Designer.

Menghubungkan menu dengan perintah sepertiyang diinginkan
Setelah kita selesai membuat design menu, kita dapat mendefinisikan untuk apa menu itu dibuat, dengan menghubungkan bagian menu tersebut dengan suatu perintah atau aplikasi lainnya.

Men-generate menu
Setelah kita yakin bahwa menu yang kita buat telah baik dan benar, kita harus men-generate design menu tersebut agar dapat dijalankan. Untuk itu pilih Menu, Generate.

Uji coba menu
Setelah menu selesai di-generate maka kita siap untuk menjalankan menu yang telah selesai kita buat dengan memilih Program, Do, lalu pilih file menu yang telah kita generate tadi.

Program

Program adalah sekumpulan instruksi yang beraturan yang dapat dijalankan secara spesifik untuk tujuan tertentu yang telah dikondisikan dalam baris programnya. Penggunaan program ini akan mempermudah pengelolaan database dan menghindari prosedure yang harus dilakukan berulang-ulang.

Dalam Visual FoxPro kita dapat membuat file program dengan perintah Modify Command pada window command. Nantinya file tersebut akan disimpan dalam file yang berekstensi .PRG. Itu hanya salah satu bentuk file program yang ada dari sekian file serupa yang ada.

Dalam membuat file program kita harus memperhatikan hal-hal seperti pendefinisian memory variable, parameter, dan alur programnya.

Program diolah dalam urutan logika, yaitu pengolahan dimulai pada baris instruksi pertama dan dilanjutkan sampai perintah terakhir dilaksanakan. Ada berbagai cara penulisan program. Cara mengubah urutan pengolahan yang normal dengan menggunakan pencabangan kondisional dan loop (perulangan) program. Salah satu diantaranya dengan struktur IF dan struktur DO CASE.

Kasus
Foxie Cars merupakan perusahaan dealer mobil yang memiliki show room di banyak tempat. Setiap harinya, perusahaan tersebut melakukan banyak sekali penjualan mobil, hingga tentu menghasilkan omzetnya yang besar pula.
Perusahaan ini telah menugaskan karyawannya untuk memberikan pelayanan di bagian penjualan, antara lain bertugas melayani pelanggan, memeriksa ke bagian persediaan mengenai produk yang dipesan pelanggan, memeriksan dan melakukan perubahan yang berkaitan dengan data pelanggan, serta menangani keluhan pelanggan.
Beberapa bulan belakangan ini, sejalan dengan semakin meningkatnya permintaan dari pelanggan, keluhan yang ada pun semakin meningkat baik dari pelanggan sendiri maupun dari internal perusahaan khususnya di bagian persediaan dan di bagian penjualan. Bagian penjualan mengatakan bahwa banyak pelanggan yang kecewa karena mobil yang dipesannya tidak tersedia atau tidak ada pada waktu yang dijanjikan, disamping itu bagian persediaan pun memberikan respon lambat terhadap permintaan bagian penjualan.Hal ini dikhawatirkan akan menyebabkan beralihnya para pelanggan Foxie Cars karena merasa kecewa.
Sementara itu karyawan di bagian persediaan yang juga menangani bagian pembelian menyatakan keluhannya bahwa seringkali mobil yang dipesan dari bagian penjualan tidak dapat disediakan karena penyediaan/pembelian mobil dari supplier yang terlambat.

Tidak ada komentar:

Posting Komentar