Kamis, 29 April 2010

MAHASISWA ITB BANGUN SISTEM TEKNOLOGI INFORMASI DI DAERAH PERBATASAN

MAHASISWA ITB BANGUN SISTEM TEKNOLOGI INFORMASI DI DAERAH PERBATASAN
Berita ini dipostkan pada hari : Friday, April 9, 2010, 21:15

Jakarta, 9/4/2010 (Kominfo-Newsroom) – Sebanyak 55 mahasiswa
Institut Teknologi Bandung (ITB) diterjunkan ke daerah terdepan dan
tertinggal di perbatasan untuk menyiapkan sistem teknologi
informasi (TI) melalui sistem multicast sehingga diharapkan semua
guru, murid, dan masyarakat di daerah itu mendapatkan ilmu-ilmu
terbaru dan terkini.

“Kami akan mencoba melakukan akselerasi dengan
fasilitas-fasilitas TI, sehingga masyarakat yang tinggal di daerah
tertinggal dan di kawasan perbatasan tetap bisa mengikuti
perkembangan dan mendapatkan ilmu-ilmu yang terbaru,” kata Direktur
SEAMOLEC Gatot Hari Priowirjanto saat jumpa pers di Gerai Informasi
dan Media Kementerian Pendidikan Nasional, Jakarta, Jumat
(9/4).

Program tersebut, menurutnya, merupakan kerja sama antara
SEAMOLEC dan ITB serta atas permintaan Direktorat Jenderal
Peningkatan Mutu Pendidik dan Tenaga Kependidikan (Ditjen PMPTK)
Kemendiknas RI.

Dikemukakan, selain akan melengkapinya dengan peralatan TI,
program itu juga untuk membantu percepatan kualifikasi serta
pelatihan guru.

Gatot menambahkan, lokasi-lokasi yang sudah terpasang dengan
peralatan multicast semacam itu di antaranya adalah SMKN 1 Bunguran
Timur (Kabupaten Natuna, Provinsi Kepulauan Riau), SMKN 1 Entikong
(Kabupaten Sanggau, Provinsi Kalimantan Barat), dan SMAN Tabukan
Utara (Kabupaten Sangihe, Provinsi Sulawesi Utara).

Ia menambahkan, untuk tahap selanjutnya, ia juga telah
menyiapkan sebanyak 66 mahasiswa untuk menggantikan dan membantu
daerah lain yang memerlukan percepatan kualifikasi guru dan
peningkatan mutu sekolah.

“Harapannya pada Juli 2010 ini bisa dilaksanakan dan
diprioritaskan untuk guru-guru PGSD (Pendidikan Guru Sekolah
Dasar),” katanya.

Sementara itu pada kesempatan sama Kepala Bagian Perencanaan
Ditjen PMPTK Kemendiknas Siswoyo menyampaikan, untuk mengejar
target pada tahun 2014 semua guru harus berkualifikasi S1, maka
diperlukan terobosan, salah satunya adalah dengan menggandeng
SEAMOLEC.

Untuk daerah tertinggal, satu kelompok kerja guru telah diberi
lima buah laptop, dan dengan sistem multicast ini, harapannya
perguruan tinggi yang akan mengirim materi dapat diterima oleh
teman-teman di daerah,” katanya. (T.Ad/ysoel)

modul pascal


Pascal Programming
Pembahasan
Pengenalan Pascal

Sejarah Pascal
 Berakar dari Bahasa Algol dan PL/1 pada tahun 60-an di benua Eropa
 Pascal disusun oleh Prof.Niklaus Wirth pada tahun 70 dan dipublikasikan tahun 71
 Diujicoba pada Komputer CDC 6000
 Turbo Pascal bersifat Compiler dan termasuk bahasa tingkat tinggi

Struktur Bahasa Pascal
 Judul
Program ;
Uses ;
 Bagian Deklarasi
Label ;
Const ;
Type ;
Var ;
Procedure ;
Function ;
 Bagian Pernyataan
Begin
;
End.

Contoh Program

Listing Programnya
Uses Crt;
Begin
WriteLn( ‘Saya’ );
Write( ‘Belajar’ );
WriteLn( ‘Turbo’ );
Write( ‘Pascal’ );
Write( ‘Versi 7.0’ );
End.
Tekan Ctrl F9 untuk ekseskusi program
Tekan F5 untuk melihat hasilnya
Hasilnya :
Saya
Belajar Turbo
Pascal Versi 7.0

Tugas:
Buatlah Program cetak dilayar Biodata diri anda

Pembahasan 2
PERINTAH DASAR – IDENTIFIER - DEKLARASI

Perintah Dasar/Sederhana Pascal
 Write ( ‘Text/tulisan’,Variabel);
Perintah untuk menampilkan atau cetak dilayar monitor tanpa pindah baris
 WriteLn( ‘Text/Tulisan’,Variabel);
Perintah untuk menampilkan/cetak dilayar monitor lalu pindah baris kebawah
 Read(Variabel);
Perintah untuk menginput/mengisi data tanpa pindah baris
 ReadLn(Variabel);
Perintah untuk menginput/mengisi data lalu pindah baris

Identifier/Pengenal Data
Digunakan untuk penamaan elemen-elemen deklarasi seperti Label, Constanta, type, variabel, procedure, function

Syarat Identifier
 Diawali huruf
 Tidak boleh ada spasi/blank
 Tidak boleh menggunakan reserved word
 Tidak boleh menggunakan simbol khusus,
kecuali underscore(tanda bawah)
 Panjang maximal 63 character

Pembahasan 3
PENGUNAAN USES CRT – TIPE SEDERHANA - OPERATOR

Penggunaan Unit CRT (Cathoda Ray Tube)
 CLRSCR ;
Untuk membersihkan layar
 Delay (nilainya);
Untuk menghentikan program dalam satuan milisecond
 Gotoxy(x,y);
Untuk menempatkan kursor diposisi x dan y
 Window(x1,y1,x2,y2)
Untuk membuat batasan jendela pada layar

Tipe Data Bahasa Pascal
 Bilangan Bulat [integer] Terdiri dari

Tipe Jangkauan nilainya
Shortint -128 .. 127
Byte 0 .. 255
Integer -32768 .. 32767
Word 0 .. 65535
Longint -21747483648 .. 21747483647

 Bilangan Pecahan [real] terdiri dari single, real, double, extended
 Character à satu huruf/simbol saja
 String à lebih dari satu huruf/simbol
 Boolean à data berisi True/False

Operator-Operator Pascal
 Assignment Operator (Operator Pengerjaan) à :=
Contoh A:=5 Nama:=Budi
 Binari Operator à * / + - DIV MOD
 Unary Operator (Operator Tunggal) à
Contoh -5 +2.5
 Bitwise Operator à NOT, AND, OR, XOR, SHL, SHR
 Relasi Operator (Operator Relasi) à = <> > < <= >= IN
 Logical Operator (Operator Logika) à NOT, AND, OR, XOR
 Address Operator (Operator Alamat) à @ ^
 Set Operator (Operator Himpunan) à + - *
 String Operator à +
Contoh Nama1:= ‘Syaiful Anwar’; Nama2:= ‘Anwar’;
Nama3 := Nama1 + Nama2 ;
Hasilnya Nama3 à SyaifulAnwar





Tugas Program
1. Buatlah Program Luas Segi Tiga
2. Buatlah Program Luas dan Keliling Lingkaran
3. Buatlah Program Persegi Panjang


Pembahasan 4
DEKLARASI TIPE - DEKLARASI LABEL

Deklarasi Type
Pengenal (identifier) dari data yang digunakan harus diperkenalkan Tipenya. Jika ingin menggunakan tipe data dengan nama yang dibuat oleh pemakai, maka harus disebutkan tipe data standarnya.













Deklarasi Label
Deklarasi label digunakan untuk melompati beberapa perintah program. Memiliki arah dan tujuan yaitu dengan menggunakan GOTO
Tugas :

Tugas Program
1. Rubah Program Labelnya dgn Layout sbb
TEXT2 TEXT4 TEXT6
2. Buat luas dan Keliling lingkaran dengan menggunakan deklarasi type dan Var

Pembahasan 5
FORMAT TIPE DATA– LOKASI CURSOR

Tampilan Terformat
Untuk mengatur bentuk tampilan dari tampilan default ke bentuk yang diinginkan atau Batasan cetak
 Parameter Char:n
Batasan cetak/ bentuk tampilan/ jarak tampil data char
 Parameter String:n
Batasan cetak/ bentuk tampilan/ jarak tampil data string
 Parameter Boolean:n
Batasan cetak/ bentuk tampilan/ jarak tampil data Boolean
 Parameter Integer:n
Batasan cetak/ bentuk tampilan/ jarak tampil data Integer
 Parameter Real:n:m
Batasan cetak/ bentuk tampilan/ jarak tampil data Real

Uses Crt;
Const Kampus=‘Bsi’; {Tipe String}
Nrata=2.5; {Tipe Real}
Ntotal=55; {Tipe Integer}
Cek =True; {Tipe Boolean}
Huruf =‘A’; {Tipe Char}
BEGIN
Clrscr;
Writeln(‘Nama Kampus :’,Kampus);
Writeln(‘Nama Kampus :’,Kampus:3);
Writeln(‘Nama Kampus :’,Kampus:6);
Writeln(‘Nilai Rata :’,Nrata);
Writeln(‘Nilai Rata :’,Nrata:3:0);
Writeln(‘Nilai Rata :’,Nrata:6:1);
Writeln(‘Nilai Total :’,Ntotal:2);
Writeln(‘Nilai Total :’,Ntotal:5);
Writeln(‘Cek Boolean :’,Cek);
Writeln(‘Cek Boolean :’,Cek:7);
Writeln(‘Huruf Abjad :’,Huruf);
Writeln(‘Huruf Abjad :’,Huruf:3);
Readln;
End.

Contoh Program Lokasi Cursor
BEGIN
CLRSCR;
GOTOXY(10,2);
WRITE(‘JUDUL INI TERCETAK DI KOLOM 10 BARIS 2’);
READLN;
END.


Pembahasan 6
BRANCHING IF TUNGGAL/MAJEMUK – CASE OF

Bracnhing/ Penyeleksian Kondisi
Untuk menyeleksi kondisi-kondisi suatu proses makan diperlukan perintah IF. Adapun bentuk-bentuk IF sbb:

 Statement IF
Bentuk Umum : If Then ;
contoh : IF N>=60 Then Ket:=‘Lulus’;

Bentuk Umum : If Then
Else ;
contoh : IF N>=60 Then Ket:=‘Lulus’
Else Ket:=‘Gagal’;

Nb : apabila dalam satu statement lebih dari 1 baris perintah maka statemen tsb dimasukkan blok





Branching Majemuk
Bentuk Umum : If Then
Else If Then
Else ;

contoh : IF (N>=84) and (N<100) Then Mutu:=‘Amat Baik’
Else IF N>74 Then Mutu:=‘Baik’
Else IF N>60 Then Mutu:=‘Cukup’
Else Mutu:=‘Kurang’;

Statement Case…OF



Pembahasan 7
LOOPING ( PERULANGAN )

1. Statement For....Do (Perulangan Counter)
B.U : For variabel_kontrol : = nilai_awal To nilai_akhir Do
Statement ;
B.U : For variabel_kontrol:= nilai_awal DownTo nilai_akhir Do
Statement ;
2. Statement While ... Do (Perulangan Kondisi Terpenuhi)
B.U : While ungkapan_logika Do
Statement ;
3. Statement Repaet...Until (Perulangan Kondisi Tidak Terpenuhi)
B.U : Repeat
Statement ;
Until ungkapan_logika ;


















Tugas :
1. Buat deret bilangan ganjil dan deret bilangan genap
2. Buatlah deret bilangan Fibonanci  1 1 2 3 5 8 13 21 34 55
3. Buatlah deret
1 2 3 4 5 b. 1 c. 5 d. 1 2 3 4 5
1 2 3 4 1 2 4 5 2 3 4 5
1 2 3 1 2 3 3 4 5 3 4 5
1 2 1 2 3 4 2 3 4 5 4 5
1 1 2 3 4 5 1 2 3 4 5 5
4. Buatlah deret
1 . 2 1 . 4 1 . 6 1 . 8
2 . 2 2 . 4 2 . 6 2 . 8


Pembahasan 8
HIMPUNAN / SET

Himpunan termasuk salah satu tipe data terstruktur,yang terdiri dari sejumlah elemen yang bertipe data sama.
Pendefinisian tipe data himpunana diawali dengan kata tercadang Set dan Of,kemudian didikuti dengan tipe elemen.

Bentuk umum : SET OF tipe_elemen
Elemen Himpunan mempunyai bentuk eperti : [daftar_elemen] yang mana etiap elemen harus bertipe sama.

Operator hubungan dalam himpunan

Himp1 = Himp2 Dua Himpunan Dikatakan sama jika jumlah elemen sama dan masing-masing elemen sama.Hasilnya True bila Himp1 sama dengan Himp2
Himp1 <> Himp2 Dua Himpunan Dikatakan tidak sama jika jumlah elemen tidak sama dan masing-masing elemen tidak sama. Hasilnya True bila Himp1 tidak sama dengan Himp2

Himp1 <= Himp2 Hasil bernilai True jika semua elemen dari Himp1 terdapat pada Himp2

Himp1 >= Himp2 Hasil bernilai True jika semua elemen dari Himp2 terdapat pada Himp1
Elemen In Himp Memeriksa elemen adalah anggota himpunan Himp atau tidak.Hasil true jika elemen adalah anggota dari Himp


Operator Operasi Himpunan

Himp1 * Himp2 Operasi Interseksi himpunan.untuk memperoleh himpunan yang terdiri dari elemen yang merupakan anggota himpunan Himp1 dan sekaligus juga merupakan anggota Himp2
Himp1 + Himp2 Operasi penggabungan himpunan.Untuk memperoleh himpunan yang terdiri dari gabungan elemen anggota Himp1 dan Himp2
Himp1 - Himp2 Operasi selisih himpunan.Untuk memperoleh himpunan yang terdiri dari elemen anggota Himp1 yang bukan anggota himpunan Himp2



Contoh Ungkapan Hasil
[1,2,3,4,5] * [1,3,5,7] [1,3,5]
[1,2,3,4,5] * [6,7,8,9,10] []
[1,2,3] * [] []
[1,2,3,4,5] + [6,7] [1,2,3,4,5,6,7]
[1,2,4] + [1,2,3] [1,2,3,4]
[1,2,3,4,5] - [1,2] [3,4,5]
[1,2,3,4,5] - [4,5,6,7] [1,2,3]
[4,5,6,7] - [1,2,3,4,5] [4,6,7]


Contoh Program Himpunan
Program Himpunan;
Uses Crt;
Type Hs = Set Of 1..9;
Var H1,H2,H3 : Hs;
BEGIN
CLRSCR;
H1:=[1,2,3,4,5];
H2:=[3,5,6,7,8];
H3:=H1+H2;
IF H3=[1..8] Then Writeln('H1+H2 Adalah [1..8]') Else Writeln('Salah');
Readln;
H3:=H1-H2;
IF H3=[1,2,4] Then Writeln('H1-H2 Adalah [1,2,4]') Else Writeln('Salah');
Readln;
H3:=H1*H2;
IF H3=[3,5] Then Writeln('H1*H2 Adalah [3,5]') Else Writeln('Salah');
Readln;
END.



Pembahasan 9
ARRAY / LARIK

Array ( larik ) adalah tipe terstruktur yang terdiri dari sejumlah komponen yang mempuyai tipe sama.

B.U : Array [ 1 . . 20 ] of tipe_data ; (Dimensi 1)
B.U : Array [1 . . 3 , 1 . . 2] of tipe_data; (Dimensi 2)

Contoh Program Array :
Uses crt ;
Var
Nama : array [1..30 ] of string ;
Tugas, uts, uas, absen : array [1..30] of integer ;
Rata : array [1..30] of real ;
x , jd : byte;
BEGIN
CLRSCR ;
Write ( ‘ Masukan Jumlah data : ‘ ) ; readln ( jd ) ;
For x : = 1 to jd do
begin
Writeln ( ‘ ***************************** ‘ ) ;
Writeln ( ‘ PENILAIAN UJIAN MAHASISWA BSI ‘ ) ;
Writeln ( ‘ ***************************** ‘ ) ;
Write ( ‘ Input Nama : ‘ ) ; readln (nama[x] ) ;
Write ( ‘ Input Nilai Tugas : ‘ ) ; readln (tugas[x] ) ;
Write ( ‘ Input Nilai Absen : ‘ ) ; readln (absen[x] ) ;
Write ( ‘ Input Nilai UTS : ‘ ) ; readln (uts[x] ) ;
Write ( ‘ Input Nilai UAS : ‘ ) ; readln (uas[x]) ;
Rata[x]:=(0.1*tugas[x])+(0.2*absen[x])+(0.3*uts[x])+(0.4*uas[x]);
End ;
CLRSCR ;
For i : = 1 to j do
Begin
Writeln ( ‘ ***************************** ‘ ) ;
Writeln ( ‘ PENILAIAN UJIAN MAHASISWA BSI ‘ ) ;
Writeln ( ‘ ***************************** ‘ ) ;
Writeln ( ‘ Nama : ‘ , nama[i] ) ;
Writeln ( ‘ Nilai Tugas : ‘ , tugas[i] ) ;
Writeln ( ‘ Nilai Absen : ‘ , absen[i] ) ;
Writeln ( ‘ Nilai UTS : ‘ , uts[i] ) ;
Writeln ( ‘ Nilai UAS : ‘ , uas[i]) ;
Writeln ( ‘ **************************** ‘ ) ;
Writeln ( ‘ Rata-rata : ‘ , rata : 1: 0 ) ;
Readln ;
End;
END.

Pembahasan 10
PROCEDURE


Prosedur adalah suatu program terpisah dalam blok sendiri yang berfungsi sebagai subprogram ( program bagian ). Parameter pada procedure ada 2 :

Bentuk Umum :









Parameter didalam prosedur terdiri dari 2 yaitu :
a. Parameter bersifat Lokal artinya bahwa nilai yang terdapat didalam suatu modul program hanya dapat digunakan pada modul yang bersangkutan sehingga tidak dapat digunakan pada modul lain.
b. Parameter bersifat Global artinya bahwa nilai dapat digunakan pada semua modul maka nilai tersebut harus dideklarasikan di atas modul yang akan menggunakannya.














Pemanggilan parameter pada prosedur terdiri dari 2 yaitu :
a. Parameter Secara Nilai ( By Value )
Bersifat satu arah, jika terjadi perubahan pada subprogram, maka tidak akan mempengaruhi program utama.
b. Parameter Secara Acuan ( By Reference )
Bersifat dua arah, jika terjadi perubahan pada subprogram, maka program utamanya akan ikut berubah.

Contoh Program Prosedure Standar
Uses Crt;
Const Bsi='Bina Sarana';
Begin
Clrscr;
Writeln(Copy(Bsi,6,4));  mengambil sebagian dari string
Writeln(Pos('Sarana',Bsi));  mencari posisi string
Writeln(Length(Bsi));  panjang string
Writeln(Concat(Bsi,' Informatika'));  mengabungkan string
Readln;
End.





Pembahasan 11
FUNGSI

Fungsi secara garis besar sama dengan prosedure baik parameter maupun pemanggilan parameternya hanya yang membedakannya adalah nama fungsi harus dideklarasikan dengan type datanya.

Bentuk Umum :


Contoh :
Uses crt ;
Function Hitung ( Var A, B : integer ) : integer ;
Begin
Hitung : = A+B ;
End ;
Var
X, Y : integer ;
BEGIN
Write ( ‘ Nilai X ? ‘ ) ; readln ( X ) ;
Write ( ‘ Nilai Y ? ‘ ) ; readln ( Y ) ;
Writeln ;
Writeln ( X, ‘ + ‘, Y , ‘ =’, Hitung ( X, Y )) ;
Readln ;
END.

Parameter pada fungsi sama dengan parameter yang ada pada prosedure yaitu :
a. Pemanggilan secara Nilai ( By Value )
Contoh :
Uses crt ;
Function Hitung ( X, Y, Z : integer ) : integer ;
Begin
Z : = X+Y ;
Writeln ( ‘ Nilai X = ‘, X ) ;
Writeln ( ‘ Nilai Y = ‘, Y ) ;
Writeln ( ‘ Nilai Z = ‘, Z ) ;
End ;
Var
A, B, C : integer ;
BEGIN
A : = 5 ; B : = 7 ; C : = 3 ;
Hitung ( A, B, C ) ;
Writeln ( ‘ Nilai A =’, A, ‘ Nilai B = ‘, B, ‘ Nilai C = ‘, C ) ;
Readln ;
END.
c. Pemanggilan secara Reference ( Acuan )
Contoh :
Uses crt ;
Function Hitung ( var A, B, C : integer ) : integer ;
Begin
Hitung : = A+B ;
C : = A * B ;
End ;

Var
X, Y, Z : integer ;
BEGIN
Write ( ‘ Nilai X : ‘ ) ; readln ( X ) ;
Write ( ‘ Nilai Y : ) ; readln ( Y ) ;
Writeln ;
Writeln ( X , ‘ + ‘ , Y, ‘=’, Hitung ( X, Y, Z )) ;
Writeln ( X, ‘ * ’,Y, ‘=’, Z ) ;
Readln ;
END.


Contoh Function Standar Aritmatika & Transfer
Uses Crt;
Const A=2; B=-2;
C=4; D=2.5;
E=2.3; F=2.7;
G='A';
Begin
Clrscr;
Writeln('Absnya : ',A, '=' ,Abs(A));  Argumen Mutlak
Writeln('Absnya : ',B, '=' ,Abs(-B));
Writeln('Expnya : ',A, '=' ,Exp(A));  Eksponensial Argumen
Writeln('Lnnya : ',A, '=' ,Ln(A));  Logaritma Natural Argumen
Writeln('Sqrnya : ',A, '=' ,Sqr(A));  Kuadrat Argumen
Writeln('Sqrtnya : ',C,'=' ,Sqrt(C));  Akar Argumen
Writeln('Pinya : ',Pi);  angka Pi=3.14
Writeln('Intnya : ',D, '=' ,Int(D));  bagian bulat angka real
Writeln('Truncnya : ',D, '=' ,Trunc(D));  bagian bulat angka real
Writeln('Fracnya : ',D, '=' ,Frac(D));  bagian pecahan real
Writeln('Roundnya : ',E, '=' ,Round(E));  bulatkan angka real
Writeln('Roundnya : ',F, '=' ,Round(F));
Writeln('Ordnya : ',G, '=' ,Ord(G));  Character ke ordinal
Writeln('Chrnya : ',A, '=' ,Chr(67));  ordinal ke character
Readln;
End.



Contoh Dengan Format
Uses Crt;
Const A=2; B=-2;
C=4; D=2.5;
E=2.3; F=2.7;
G='A';
Begin
Clrscr;
Writeln('Absnya : ',A, '=' ,Abs(A));
Writeln('Absnya : ',B, '=' ,Abs(-B));
Writeln('Expnya : ',A, '=' ,Exp(A):5:2);
Writeln('Lnnya : ',A, '=' ,Ln(A):5:2);
Writeln('Sqrnya : ',A, '=' ,Sqr(A));
Writeln('Sqrtnya : ',C,'=' ,Sqrt(C):1:0);
Writeln('Pinya : ',Pi:4:2);
Writeln('Intnya : ',D:3:1, '=' ,Int(D):1:0);
Writeln('Truncnya : ',D:3:1, '=' ,Trunc(D));
Writeln('Fracnya : ',D:3:1, '=' ,Frac(D):3:1);
Writeln('Roundnya : ',E:3:1, '=' ,Round(E));
Writeln('Roundnya : ',F:3:1, '=' ,Round(F));
Writeln('Ordnya : ',G, '=' ,Ord(G));
Writeln('Chrnya : ',A, '=' ,Chr(67));
Readln;
End.


Pembahasan 12
RECORD

Adalah kumpulan item data (field) yang masing-masing dapat mempunyai tipe data yang beda

Contoh
Type
Lgn= Record
Kode : integer;
Nama : string[35];
Piutang : real;
End;
Var Langganan : Lgn;

Menggunakan Tipe Data Record
Tiap-tiap komponen field dari record dapat dipergunakan dengan cara menuliskan
Pengenalrecord.pengenalfield

Contoh
Langganan.Nama := ’Maulana’ ;
PengenalField
PengenalRecord

Penulisan statemen diatas dapat menyebabkan statement menjadi panjang
Contoh lain :
Lingkaran.Keliling := 2 * Pi * JariJari ;

Menggunakan Statemen With Do menjadi :
With Lingkaran Do
Begin
Keliling := 2 * Pi * JariJari ;
End;

Contoh :
Uses Crt;
Type
Recsis = Record
Nama : string[15];
Nu : byte;
End;
Var DataSis : Array[1..10] of RecSis;
X, JD : Byte ;
Pred : String[6] ;


BEGIN
CLRSCR ;
Write( ’ Jumlah Data : ’ ) ; Readln(JD) ;
For X := 1 To JD Do
Begin
Write( ’ Nama Siswa : ’ ) ; ReadLn(Datasis[x].Nama) ;
Write( ’ Nilai Ujian : ’ ) ; ReadLn(Datasis[x].Nu) ;
End;
For X := 1 To JD Do
Begin
With Datasis[X] Do
Begin
IF Nu > 60 Then Pred := ’Lulus’ ;
Else Pred := ’Gagal’ ;
WriteLn(X, ’ ’ , Nama:10, ’ ’ ,Nu:2, ’ ’ , Pred:6);
End;
End;
ReadLn;
END.


Pembahasan 13
FILE

Suatu File terdiri dari urutn komponen yang mempunyai tipe sama. Berbeda dengan larik yang jumlah komponennya sudah pasti, jumlah komponen dalam file sifatnya luwes, yaitu dapat ditambah dan dikurangi sewaktu-waktu

File Teks
Merupakan file yang berisi kumpulan dari karakter yang dibentuk dalam baris-baris dan masing-masing baris diakhiri dengan tanda akhir dari baris berupa karakter carriage return dan karakter line feed. File teks sebenarnya merupakan file dengan tipe char; tetapi mempunyai perbedaan, yaitu nilai yang bukan tipe char dapat direkam dan dibaca oleh File Teks

Prosedur Standar File Teks
Append : digunakan untuk membuka file yang telah ada untuk keperluan menambah data ke dalam file
Write : digunakan untuk merekam data ke file
Flush : digunakan untuk segera merekam data yang ada di buffer ke file Teks
Read : untuk membaca satu atau lebih nilai dari file ke dalam satu atau lebih variabel
SetTextBuf : digunakan untuk membuat buffer yang baru sebagai pengganti dari internal buffer untuk file variabel

Fungsi Standar File Teks
EoLn : untuk mengetahui apakah posisi dari file berada di end-of-line marker atau tidak
SeekEOF : untuk menghasilkan status akhir dari File
SeekEoLn : untuk menghasilkan status akhir baris

Contoh :
Uses Crt ;
Label a,b ;
Var
Vfbarang : text ;
Nabrg : string [20 ];
Hrg : longint ;
Jml : integer ;
X, y : byte ;
Ttl, gth : longint ;
Lagi : char ;
Pil : byte ;
BEGIN
A:
Clrscr ;
Writeln ( ‘ MENU PILIHAN FILE TEXT ‘ ) ;
Writeln ( ‘ 1. Rekam Data File Baru ‘ ) ;
Writeln ( ‘ 2. Tambah Data File ‘ ) ;
Writeln ( ‘ 3. Lihat Data’ ) ;
Writeln ( ‘ 4. Exit’ ) ;
Write ( ‘ Silakan Pilih Menu [ 1/2/3/4 ] : ‘ ); readln ( pil ) ;
Case pil of
1..2 : begin
Assign (vfbarang,’barang.txt’ ) ; { variabel file barang }
IF pil =1 then
Rewrite ( vfbarang )
Else
Append (vfbarang ) ;
Lagi : = ‘Y’ ; X : = 0 ;
While (lagi =’Y’) or (lagi = ‘T’) do
begin
write ( ‘ Nama Barang : ‘ ) ; readln ( nabrg );
write ( ’ Harga Barang : ’ ) ; readln ( hrg ) ;
write ( ’ Jumlah Barang : ’ ) ; readln ( jml ) ;
write ( vfbarang, nabrg:1 5 , hrg : 10, jml : 4 ) ;
write ( ’ Isi Data Lagi [ Y/T ] : ’ ) ; readln ( lagi ) ;
end ;
close (vfbarang) ;
goto a ;
end ;
end;
3 : begin
Assign ( vfbarang , ’ barang.txt ’ ) ;
Reset ( vfbarang ) ;
Writeln(’ DATA PENJUALAN BARANG ’ ) ;
Writeln(’**************************************** ’) ;
Writeln(’No Nama Barang Harga Jumlah Total ’ ) ;
Writeln(’*************************************** ’ ) ;
{ proses dan cetak data detail }
y : = 0 ; fth : = 0 ;
While not eof ( vfbarang ) do
Begin
Read ( vfbarang, nabrg, hrg, jml ) ;
Total : = hrg * jml ;
gth : = gth + ttl ;
Inc ( y) ;
Write (y, ’ ’ ,nabar:15, ’ ’ ,hrg:7,’ ’,jml:3, ’ ’,ttl) ;
End ;
{ garis penutup subtotal }
Writeln(’**************************************** ’ ) ;
Writeln (’Grand Total: Rp. ’, gth ) ;
Writeln(’**************************************** ’ ) ;
Close(vfbarang ) ;
Readln ;
goto a ;
end ;
4 : Goto b ;
End ;
Readln ;
b:
END.
File Bertipe
Berbeda dengan file teks yang hanya dapat diakses secara urut, file bertipe disamping dapt pulajuga diakses secara urut(sequential acces, dapat juga diakses secara aaak (randam access). Dan Tipe dari file bertipe dapat berupa tipe integer, real, char, string array, record

Write : digunakan untuk merekam satu atau lebih nilai ke dalam file
Read : digunakan untuk membaca atau lebih, nilai dari file
Seek : Digunkan untuk mengarahkan penunjuk file ke suatu komponen tertentu di dalam file
Trunccate : digunakan untuk menghapus sejumlah komponen atau record mulai dari posisi record tertentu
FileSize : digunakan untuk menghasilkan jumlah dari komponen atau record

Contoh Program Bertipe Input Data
Uses Crt;
Type MHS = Record
NM : string[15];
UTS,UAS : byte;
End;
Var FileMHS : File of MHS;
RecMHS : MHS;
No, Bts, JD, T, RN : Byte;
BEGIN
CLRSCR;
Write('Jumlah Data : '); ReadLn(JD);
Assign(FileMHS,'C:\MHS.DAT');
ReWrite(FileMHS);
For No := 1 To JD Do
Begin
With RecMHS Do
Begin
Write('Nama : '); ReadLn(NM);
Write('UTS : '); ReadLn(UTS);
Write('UAS : '); ReadLn(UAS);
End;
Write(FileMHS,RecMHS);
End;
Close(FileMHS);
ReadLn;
END.
Lalu disimpan










Contoh Program Bertipe Tampil Data
Uses Crt;
Procedure Judul;
Begin
WriteLn('DAFTAR NILAI MAHASISWA');
WriteLn('--------------------------------------------------------------------');
WriteLn('No. Nama Mahasiswa UTS UAS Total Rata Predikat Kelulusan');
WriteLn('--------------------------------------------------------------------');
End;

Type MHS=Record
NM : string[15];
UTS,UAS : byte;
End;
Var FileMHS : File of MHS;
RecMHS : MHS;
No,Brs,JD,T,R,RN : byte;
P : string[10];
K : string[5];
BEGIN
CLRSCR;
Judul;
Assign(FileMHS,'C:\MHS.DAT');
Reset(FileMHS);
No:=0;
While Not EOF (FileMHS) Do
Begin
With RecMHS Do
Begin
Read(FileMHS,RecMHS);
T:= UTS+UAS; R:= T div 2; inc(No);
Case R of
00..59 : P:='Kurang';
60..74 : P:='Cukup';
75..84 : P:='Baik';
85..100: P:='Amat Baik';
End;
IF R<60 Then K:='Gagal' Else K:='Lulus';
WriteLn(No:3,' ',NM:15,' ',UTS:3,' ',UAS:3,' ',T:3,' ',R:3,' ',P:10,' ',K:5);
End;
End;
ReadLn;
Close(FileMHS);
END.


Pembahansan 14
PEMBUATAN UNIT BARU

Contoh Program Pembentukan Unitku
Unit Unitku;

Interface
Uses Crt;
Procedure Bersihkan;
Function Ls3(A,T:Integer):Real;

Implementation
Procedure Bersihkan;
Begin
Clrscr;
End;

Function Ls3(A,T:Integer):Real;
Begin
Ls3:=A*T/2;
End;
End
Lalu simpan

Contoh Program Pemakaian Unit Baru
Uses Unitku;
Var A,T :Integer;
Begin
Bersihkan;
Write('Nilai Alas :');Readln(A);
Write('Nilai Tinggi :');Readln(T);
Write('Luas Segitiga :',Ls3(A,T):5:1);
Readln;
End..

Menghitung luas bangun dengan Bahasa Pascal

Program Bahasa Pascal (Procedure)
Mengitung bangun datar dengan mengunkan bahasa pemrograman pascal, dan kali saya buat dengan mengunakan subprogram ( procedure). Dan anda bisa tau perbedaan pungsi dari subprogram function dan procedure.
Dibawah ini sourcecode pemrograman tersebut.
program menghitung_bangun_datar;
uses wincrt;
const
phi=3.14;
var
sisi,P,L,r,luas,kell,no:integer;
ls,kl:real;
lagi:char;
ulang:boolean;
procedure garis;
begin
writeln(‘============================================’);
end;
procedure bujursangkar;
begin
write(‘masukan sisi =’); readln(sisi);
luas:=sisi*sisi;
kell:=4*sisi;
writeln;
writeln(‘luas bujur sangkar=’,luas);
writeln(‘keliling bujur sangkar=’,kell)
end;
procedure persegipanjang;
begin
write(‘masukan panjang =’); readln(P);
write(‘masukan lebar =’); readln(L);
luas:=p*l;
kell:=2*(p+l);
writeln;
writeln(‘luas persegi panjang=’,luas);
writeln(‘keliling persegi panjang=’,kell);
end;
procedure lingkaran;
begin
write(‘masukan jari-jari/r =’); readln(r);
ls:=phi*r*r;
kl:=2*phi*r;
writeln;
writeln(‘luas lingkaran=’,luas);
writeln(‘keliling lingkaran=’,kell);
end;
begin
ulang:=true;
while ulang=true do begin
clrscr;
writeln(‘>>> pilih menu <<<’);
writeln(’1. menghitung luas dan keliling bujur sangkar’);
writeln(’2. menghitung luas dan keliling persegi panjang’);
writeln(’3. menghitung luas dan keliling lingkaran’);
garis;
write(‘masukan no pilihan program=’); readln(no);
case no of
1:begin
lagi:=’y';
while lagi=’y’ do
begin
clrscr;
writeln(‘>>>menghitung luas dan keliling bujur sangkar’);
garis;
bujursangkar;
write(‘jika mau menghitung lagi tekan y/n =’); readln(lagi);
end;
end;
2:begin
lagi:=’n';
clrscr;
repeat
begin
clrscr;
writeln(‘>>>menghitung luas dan keliling persegi panjang’);
garis;
persegipanjang;
end;
write(‘jika mau menghitung lagi tekan y/n =’); readln(lagi);
until lagi=’n';
end;
3:begin
lagi:=’y';
while lagi=’y’ do
begin
clrscr;
writeln(‘>>>menghitung luas dan keliling lingkaran’);
garis;
lingkaran;
write(‘jika mau menghitung lagi tekan y/n =’); readln(lagi);
end;
end;
else
writeln(‘tidak ada menu’);
end;
end;
end.

Selasa, 27 April 2010

Transaksi Penjualan di Visual Basic
Transaksi penjualan adalah suatu alur proses dalam pemrograman di visual basic yang berfungsi untuk menginput data penjualan yang dilakukan oleh kasir terhadap barang- barang yang terjual. dengan melakukan penginputan pada form transaksi penjualan maka, data yang diinputkan akan tercatat di dua tabel yaitu: tabel transaski dan tabel detail, serta akan merubah nilai stok yang terdapat pada tabel barang.
berikut adalah sedikit koding yang bisa di pakai dalam form transaksi:
Private Sub TxtData_KeyPress(Index As Integer, KeyAscii As Integer)
If KeyAscii = 13 Then
Txnota = TxtData(0).Text
If Index = 4 Then
If Val(TxtData(4).Text) < Val(TxtData(3).Text) Then
MsgBox “Periksa Kembali Pembayaran anda!”
Else
TxtData(5).Text = Val(TxtData(4).Text) – Val(TxtData(3).Text)
‘===!!to be continue, proses penyimpanan
If DE.rsPENJUALAN.State = adStateClosed Then DE.rsPENJUALAN.Open
DE.rsPENJUALAN.AddNew
DE.rsPENJUALAN.Fields(0) = TxtData(0).Text
DE.rsPENJUALAN.Fields(1) = DTPicker1.Value
DE.rsPENJUALAN.Fields(2) = TxtData(1).Text
DE.rsPENJUALAN.Fields(3) = TxtData(2).Text
DE.rsPENJUALAN.Fields(4) = TxtData(3).Text
DE.rsPENJUALAN.Fields(5) = “K001″
DE.rsPENJUALAN.Update
If DE.rsDETAIL1.State = adStateClosed Then DE.rsDETAIL1.Open
For i = 1 To ListView1.ListItems.Count
kdbrg = ListView1.ListItems(i).Text
HARGA = ListView1.ListItems(i).SubItems(2)
diskon = ListView1.ListItems(i).SubItems(3)
jumlah = ListView1.ListItems(i).SubItems(4)
DE.rsDETAIL1.AddNew
DE.rsDETAIL1(0) = TxtData(0).Text
DE.rsDETAIL1(1) = kdbrg
DE.rsDETAIL1(2) = Val(ListView1.ListItems(i).SubItems(2))
DE.rsDETAIL1(3) = Val(jumlah)
DE.rsDETAIL1(4) = Val(diskon)
DE.rsDETAIL1.Update
If DE.rsBARANG.State = adStateClosed Then DE.rsBARANG.Open
DE.rsBARANG.MoveFirst
DE.rsBARANG.Find “kd_brg=’” + kdbrg + “‘”
If Not DE.rsBARANG.EOF Then
jml = DE.rsBARANG.Fields(3)
xsetok = jml – jumlah
DE.rsBARANG.Fields(3) = xsetok
DE.rsBARANG.Update
End If
Next
If DE.rsRptNota_Grouping.State = 0 Then DE.rsRptNota_Grouping.Open
DE.rsRptNota_Grouping.Requery
DE.rsRptNota_Grouping.Filter = adFilterNone
DE.rsRptNota_Grouping.Filter = “nOTA = ‘” & TxtData(0).Text & “‘”
RptNota.Show 1
DE.rsRptNota_Grouping.Filter = adFilterNone
ListView1.ListItems.Clear
End If
End If
End If
End Sub
koding ini dimaksud untuk menyimpan nilai-nilai terkait ke dalam tabel-tabel yang di maksud.
Membuat Program Penjualan Visual Basic 4 : Membuat Form Transaksi
Membuat Program Penjualan Visual Basic 4 : Membuat Form Transaksi
Selamat datang kembali di tutorial belajar VB. Pada kali ini kita akan belajar yang lebih sulit lagi yaitu membuat form transaksi yang merupakan inti dari program ini dibuat. Kalau yang namanya penjualan sudah pasti ada transaksi yang terjadi disitu. Pada tutorial yang ke 1 dulu kita sudah membuat sebanyak 7 Table dan yang akan kita bahas disini adalah semua table tersebut yang dijadikan satu di dalam form transaksi ini. Sudah siap? Bismillahirrohmanirrohim !
4. Membuat FORM TRANSAKSI
- Buat form baru lagi lalu isikan dengan isi dan properties dibawah ini:
NAME CAPTION/TEXT KETERANGAN TAMBAHAN
Label1 No Faktur Label
Label2 Kode Pelanggan Label
Label3 Nama Pelanggan Label
Label4 Nomor Hp/Telpon Label
Label5 Alamat Label
Label6 ID User Label
Label7 Kode Buku Label
Label8 Nama Buku Label
Label9 Stok Buku Label
Label10 Harga Buku Label
Label11 Biaya Pengiriman Label
Label12 Jumlah beli Label
Label13 Total Harga Label
Label14 Total Bayar Label
Label15 Uang bayar Label
Label16 Uang Kembali Label
Label17 Masukan Kode Buku Label
Label18 Masukan Kode Pelanggan Label
txtnofak - Textbox
txtkdpel - Textbox
txtnmpel - Textbox
txttelpon - Textbox
txtalamat - Textbox
txtkasir - Textbox
txtkdbuku - Textbox
txtnmbuku - Textbox
txtstok - Textbox
txtharga - Textbox
txtkirim - Textbox
txtjumbel - Textbox
txttohar - Textbox
txttobay - Textbox
txtubar - Textbox
txtukem - Textbox
txtfindb - Textbox
txtfindp - Textbox
txtjam - Textbox
txttgl - Textbox
cmdfindp Find Pelanggan Command Button
cmdfindb Find Barang Command Button
Cmdadd &add Command Button
Cmdclear &clear Command Button
Cmdsave &save Command Button
Cmdexit &exit Command Button
Cmdlagi lagi Command Button
Cmdselesai selesai Command Button
Optdalam Dalam kota Command Button
Optluar Luar kota Command Button
Opttidak Tidak dikirim Command Button
Timer1 - Timer Interval : 10
Dbgrid1 - Dbgrid Data source: data6
Dbgrid2 - Dbgrid Data source: data2
Dbgrid3 - Dbgrid Data source: data1
Data1 Data
Data2 Data
Data3 Data
Data4 Data
Data5 Data
Data6 Data
Data7 Data
FTransaksi Transaksi Form
Frame1 Biaya Pengiriman Buku Frame
Frame2 Buku Frame Visible: False
Frame3 Pelanggan Frame Visible: False
Frame4 - Frame
Frame5 - Frame
CR - Crystal Report Jika Punya CR
Adapun Listing Program dari Form Transaksi Ini Adalah :
Private Sub Form_Activate()
Call nonaktif
Call kosong
TXTKASIR.Text = Menuutama.txtuser.Text
End Sub

Private Sub Form_Load()
Data1.DatabaseName = App.Path & "/buku.mdb"
Data1.RecordSource = "select * from Table_buku order by Kode_buku"
Data2.DatabaseName = App.Path & "/buku.mdb"
Data2.RecordSource = "select * from Table_pelanggan"
Data3.DatabaseName = App.Path & "/buku.mdb"
Data3.RecordSource = "select * from Table_transaksi"
Data4.DatabaseName = App.Path & "/buku.mdb"
Data4.RecordSource = "select * from Table_detail"
Data5.DatabaseName = App.Path & "/buku.mdb"
Data5.RecordSource = "select * from Table_user"
Data6.DatabaseName = App.Path & "/buku.mdb"
Data6.RecordSource = "select * from Table_bantu"
Data7.DatabaseName = App.Path & "/buku.mdb"
Data7.RecordSource = "select * from Table_bayar"
End Sub

Private Sub CMDADD_Click()
Call Auto
Call aktif
CMDFINDP.Enabled = True
CMDADD.Enabled = False
CMDEXIT.Enabled = False
End Sub

Private Sub CMDCLEAR_Click()
Call kosong
Call hapus_grid
Call nonaktif
CMDADD.Enabled = True
CMDEXIT.Enabled = True
End Sub

Private Sub CMDEXIT_Click()
Unload Me
Menuutama.Show
End Sub

Sub aktif()
CMDCLEAR.Enabled = True
CMDSAVE.Enabled = False
End Sub

Sub nonaktif()
CMDFINDB.Enabled = False
CMDFINDP.Enabled = False
TXTKASIR.Enabled = False
TXTNOFAK.Enabled = False
TXTKDPEL.Enabled = False
TXTNMPEL.Enabled = False
TXTTELPON.Enabled = False
TXTALAMAT.Enabled = False
TXTKDBUKU.Enabled = False
TXTNMBUKU.Enabled = False
TXTSTOK.Enabled = False
TXTHARGA.Enabled = False
TXTJUMBEL.Enabled = False
TXTTOHAR.Enabled = False
TXTTOBAY.Enabled = False
TXTUBAR.Enabled = False
TXTUKEM.Enabled = False
TXTKIRIM.Enabled = False
OPTDALAM.Enabled = False
OPTLUAR.Enabled = False
OPTTIDAK.Enabled = False
CMDCLEAR.Enabled = False
CMDSAVE.Enabled = False
CMDLAGI.Enabled = False
CMDSELESAI.Enabled = False
End Sub

Sub kosong()
TXTNOFAK.Text = ""
TXTKDPEL.Text = ""
TXTNMPEL.Text = ""
TXTALAMAT.Text = ""
TXTTELPON.Text = ""
TXTKDBUKU.Text = ""
TXTNMBUKU.Text = ""
TXTSTOK.Text = ""
TXTHARGA.Text = ""
TXTJUMBEL.Text = ""
TXTTOHAR.Text = ""
TXTUBAR.Text = ""
TXTUKEM.Text = ""
TXTTOBAY.Text = ""
TXTKIRIM.Text = ""
OPTDALAM.Value = False
OPTLUAR.Value = False
OPTTIDAK.Value = False
End Sub

Private Sub CMDFINDB_Click()
Frame2.Visible = True
TXTFINDB.SetFocus
End Sub

Private Sub CMDFINDP_Click()
Frame3.Visible = True
TXTFINDP.SetFocus
End Sub
VISIBLE digunakan sebagai pilihan apakah suatu objek akan ditampilkan atau disembunyikan.
Jika VISIBLE = TRUE maka objek akan ditampilkan.
Jika VISIBLE = FALSE maka objek akan disembunyikan.
Private Sub TXTFINDB_Change()
Data1.RecordSource = "SELECT*FROM Table_buku WHERE Kode_buku LIKE’*" & TXTFINDB.Text & "*’"
DBGrid3.Refresh
Data1.Refresh
If Data1.Recordset.EOF Then
MsgBox "DATA TIDAK ADA !"
End If
End Sub
Private Sub TXTFINDB_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
TXTKDBUKU.Text = Data1.Recordset!Kode_buku
TXTNMBUKU.Text = Data1.Recordset!Judul_buku
TXTSTOK.Text = Data1.Recordset!Stok_buku
TXTHARGA.Text = Data1.Recordset!Harga_buku
Frame2.Visible = False
TXTJUMBEL.Enabled = True
TXTJUMBEL.SetFocus
TXTFINDB.Text = ""
CMDFINDB.Enabled = False
End If
End Sub
Private Sub TXTFINDP_Change()
Data2.RecordSource = "SELECT*FROM Table_pelanggan WHERE Kode_pelanggan LIKE’*" & TXTFINDP.Text & "*’"
DBGrid2.Refresh
Data2.Refresh
If Data2.Recordset.EOF Then
MsgBox "DATA TIDAK ADA !"
End If
End Sub
Private Sub TXTFINDP_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
TXTKDPEL.Text = Data2.Recordset!Kode_pelanggan
TXTNMPEL.Text = Data2.Recordset!Nama_Pelanggan
TXTTELPON.Text = Data2.Recordset!Telp_pelanggan
TXTALAMAT.Text = Data2.Recordset!Almt_pelanggan
Frame3.Visible = False
CMDFINDB.Enabled = True
CMDFINDP.Enabled = False
TXTFINDP.Text = ""
End If
End Sub

Private Sub CMDLAGI_Click()
CMDFINDB.Enabled = True
CMDSELESAI.Enabled = False
CMDLAGI.Enabled = False
TXTJUMBEL.Text = ""
End Sub

Private Sub CMDSELESAI_Click()
OPTDALAM.Enabled = True
OPTLUAR.Enabled = True
OPTTIDAK.Enabled = True
If Data6.Recordset.RecordCount = 0 Then
Data6.Recordset.AddNew
Data6.Recordset!Nofak = TXTNOFAK.Text
Data6.Recordset!Kode_buku = TXTKDBUKU.Text
Data6.Recordset!Jumlah_beli = TXTJUMBEL.Text
Data6.Recordset!Total_harga = Val(TXTTOHAR.Text)
Data6.Recordset.Update
Data6.Refresh
DBGrid1.Refresh
TXTTOBAY.Text = Val(TXTTOBAY.Text) + Val(TXTTOHAR.Text)
End If
CMDLAGI.Enabled = False
CMDSELESAI.Enabled = False
TXTJUMBEL.Enabled = False
End Sub
Maksud dari If Data6.Recordset.RecordCount = 0 Then dst… yang ada pada CmdSelesai ini adalah jika isi dari field data6 (Table_bantu) masih kosong maka terjadi penyimpanan data dan isi data txttobay adalah txttobay yang lama ditambah dengan txttohar.

Private Sub OPTDALAM_Click()
If OPTDALAM.Value = True Then
TXTKIRIM.Text = 5000
TXTTOBAY.Text = Val(TXTTOBAY.Text) + Val(TXTKIRIM.Text)
TXTUBAR.Enabled = True
TXTUBAR.SetFocus
OPTLUAR.Enabled = False
OPTTIDAK.Enabled = False
TXTUBAR.SetFocus
End If
End Sub
Private Sub OPTLUAR_Click()
If OPTLUAR.Value = True Then
TXTKIRIM.Text = 10000
TXTTOBAY.Text = Val(TXTTOBAY.Text) + Val(TXTKIRIM.Text)
TXTUBAR.Enabled = True
TXTUBAR.SetFocus
OPTDALAM.Enabled = False
OPTTIDAK.Enabled = False
TXTUBAR.SetFocus
End If
End Sub
Private Sub OPTTIDAK_Click()
If OPTTIDAK.Value = True Then
TXTKIRIM.Text = 0
TXTTOBAY.Text = Val(TXTTOBAY.Text) + Val(TXTKIRIM.Text)
TXTUBAR.Enabled = True
TXTUBAR.SetFocus
OPTLUAR.Enabled = False
OPTDALAM.Enabled = False
TXTUBAR.SetFocus
End If
End Sub
Maksud dari VALUE pada Option Button adalah:
Jika VALUE = TRUE berarti Option Button tersebut dipilih.
Jika VALUE = FALSE berarti Option Button tersebut tidak dipilih.
Keterangan dari data biaya pengirimannya adalah:
Jika yang dipilih adalah OptDalam (dalam kota) maka biaya kirimnya adalah 5000
Jika yang dipilih adalah OptLuar(luar kota) maka biaya kirimnya adalah 10000
Jika yang dipilih adalah OptTidak (tidak dikirim) maka biaya kirimnya adalah 0
Total bayar berisi penjumlahan dari Total bayar yang lama ditambah biaya kirim tersebut.

Private Sub TXTJUMBEL_Change()
TXTTOHAR.Text = Val(TXTJUMBEL.Text) * Val(TXTHARGA.Text)
End Sub
Private Sub TXTJUMBEL_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If Val(TXTJUMBEL.Text) > Val(TXTSTOK.Text) Then
MsgBox "stok terbatas"
Else
Data6.Recordset.AddNew
Data6.Recordset!No_faktur = TXTNOFAK.Text
Data6.Recordset!Kode_buku = TXTKDBUKU.Text
Data6.Recordset!Jumlah_beli = Val(TXTJUMBEL.Text)
Data6.Recordset!Total_harga = Val(TXTTOHAR.Text)
Data6.Recordset.Update
Data6.Refresh
DBGrid1.Refresh
TXTTOBAY.Text = Val(TXTTOBAY.Text) + Val(TXTTOHAR.Text)
TXTJUMBEL.Text = ""
TXTTOHAR.Text = ""
CMDFINDB.Enabled = False
CMDLAGI.Enabled = True
CMDSELESAI.Enabled = True
TXTKDBUKU.Text = ""
TXTNMBUKU.Text = ""
TXTSTOK.Text = ""
TXTHARGA.Text = ""
TXTJUMBEL.Enabled = False
End If
End If
End Sub
Perhatikan bahwa TxtJumbel (jumlah beli) disitu ada 2 bagian yaitu CHANGE dan KEYPRESS.
CHANGE: Pada txtjumbel ketika ditulis suatu data maka secara langsung akan terjadi perkalian antara txtjumbel dan txtharga dan hasilnya akan ditaruh di txttohar (total harga).
KEYPRESS: Pada txtjumbel ketika ditekan Enter maka akan terjadi perhitungan data stok, Jika angka yang dimasukan pada txtjumbel lebih besar daripada angka yang ada di txtstok maka akan muncul pesan bahwa Stok terbatas. Tapi jika lebih kecil maka akan terjadi proses penyimpanan data.

Private Sub TXTUBAR_KeyPress(KeyAscii As Integer)
If KeyAscii = 13 Then
If Val(TXTUBAR.Text) < Val(TXTTOBAY.Text) Then
MsgBox "uang bayar kurang"
Else
TXTUKEM.Text = Val(TXTUBAR.Text) – Val(TXTTOBAY.Text)
CMDSAVE.Enabled = True
CMDSAVE.SetFocus
End If
End If
End Sub
Pada txtubar apabila ditekan Enter maka akan terjadi perhitungan data sebagai berikut:
Jika angka yang dimasukan pada txtubar (uang bayar) lebih kecil dari angka yang ada di txttobay (total bayar) maka akan muncul pesan bahwa uang bayar kurang.
Tapi jika lebih besar maka terjadi pengurangan antara txtubar dikurangi dengan txttobay yang hasilnya diletakkan pada txtukem (uang kembali).

Private Sub Timer1_Timer()
TXTTGL.Text = Date
TXTJAM.Text = Time
End Sub
Listing ini digunakan untuk memunculkan tanggal dan waktu terjadinya transaksi (hari itu juga)
Txttgl berisi Tanggal terjadinya transaksi.
txtjam berisi Jam terjadinya transaksi.
Diperlukan Tool TIMER dan jangan lupa untuk merubah INTERVAL nya pada properties.

Sub hapus_grid()
If Data6.Recordset.RecordCount <= 0 Then
Exit Sub
End If
Data6.Recordset.MoveFirst
Do While Not Data6.Recordset.EOF
Data6.Recordset.Delete
Data6.Recordset.MoveNext
Loop
End Sub

Sub hapus_bayar()
If Data7.Recordset.RecordCount <= 0 Then
Exit Sub
End If
Data7.Recordset.MoveFirst
Do While Not Data7.Recordset.EOF
Data7.Recordset.Delete
Data7.Recordset.MoveNext
Loop
End Sub

Private Sub CMDSAVE_Click()
‘TABLE DETAIL DAN TABLE BANTU
While Not Data6.Recordset.EOF
Data4.Recordset.AddNew
Data4.Recordset!No_faktur = Data6.Recordset!No_faktur
Data4.Recordset!Kode_buku = Data6.Recordset!Kode_buku
Data4.Recordset!Jumlah_beli = Data6.Recordset!Jumlah_beli
Data4.Recordset!Total_harga = Data6.Recordset!Total_harga
‘ PENGURANGAN STOK
Data1.Recordset.MoveFirst
Data1.Recordset.FindFirst "Kode_buku= ‘" & Data6.Recordset!Kode_buku & "’"
If Not Data1.Recordset.NoMatch Then
Data1.Recordset.Edit
Data1.Recordset!Stok_buku = Val(Data1.Recordset!Stok_buku) – Val(Data6.Recordset!Jumlah_beli)
Data1.Recordset.Update
Data1.Refresh
End If
Data4.Recordset.Update
Data6.Recordset.MoveNext
N = N + 1
Wend
Data4.Refresh
Data6.Refresh
‘TABLE TRANSAKSI
Data3.Recordset.AddNew
Data3.Recordset!No_faktur = TXTNOFAK.Text
Data3.Recordset!Tgl_faktur = TXTTGL.Text
Data3.Recordset!Kode_pelanggan = TXTKDPEL.Text
Data3.Recordset!Total_bayar = TXTTOBAY.Text
Data3.Recordset!Id_user = TXTKASIR.Text
Data3.Recordset!Biaya_kirim = TXTKIRIM.Text
Data3.Recordset.Update
Data3.Refresh
‘TABLE BAYAR
Data7.Recordset.AddNew
Data7.Recordset!No_faktur = TXTNOFAK.Text
Data7.Recordset!Uang_bayar = TXTUBAR.Text
Data7.Recordset!Uang_kembali = TXTUKEM.Text
Data7.Recordset.Update
Data7.Refresh

‘MENCETAK FAKTUR
‘CR.ReportFileName = App.Path & "\Faktur.rpt"
‘CR.SelectionFormula = "({Table_detail.No_faktur}=’" & TXTNOFAK.Text & "’)"
‘CR.WindowState = crptMaximized
‘CR.RetrieveDataFiles
‘CR.Action = 1

CMDADD.Enabled = True
CMDSAVE.Enabled = False
Call kosong
Call nonaktif
Call hapus_grid
Call hapus_bayar
CMDEXIT.Enabled = True
End Sub
Dalam Tombol Save ini terjadi Penyimpanan data pada beberapa Table yaitu: Table Detail (diambil dari Table Bantu), Table Transaksi (diambil dari form), dan Table Bayar (diambil dari form).
Isi dari Table Detail didapat dari isi dari Table Bantu. Sedangkan isi Table Bantu itu sendiri didapat dari data yang dimasukan pada form transaksi ini.
Pada Penyimpanan data ke dalam Table Detail terjadi perintah perulangan yaitu WHILE WEND karena data Table Bantu yang akan disimpan ke dalam Table Detail berjumlah banyak sehingga berulang ulang memasukannya.
Contoh dari perulangan itu adalah apabila ada pelanggan yang membeli buku banyak yang berbeda beda pastinya semua itu hanya dicatat dalam 1 faktur atau 1 struk saja. Makanya disini terjadi pengulangan. Karena tidak mungkin setiap 1 pelanggan yang membeli buku yang banyak harus menggunakan banyak faktur juga.
Didalam penyimpanan Table Detail diatas juga terjadi PENGURANGAN STOK.
Maksud Listing Programnya adalah:
FINDFIRST dipakai untuk mencari kode_buku yang ada pada data1 (Table_buku) yang sama dengan kode_buku yang ada pada data6 (Table_bantu).
Dan jika data tersebut ditemukan maka stok_buku yang ada di data1 (Table_buku) akan dikurangi oleh Jumlah_beli yang ada di data6 (Table_bantu).
Dan setelah data tersebut di Save, maka terjadi perintah untuk memanggil Sub Hapus_Grid dan Sub Hapus_bayar.
Dengan adanya Sub Hapus_Grid tersebut, maka semua data yang ada di data6 (table_bantu) akan dikosongkan karena sudah disimpan pada data4 (table_detail).
Dan dengan adanya Sub Hapus_Bayar tersebut, maka semua data yang ada di data7 (table_bayar) juga akan dikosongkan karena sudah dipakai dan ditampilkan di dalam Faktur.

MENCETAK FAKTUR hanya dipakai jika anda mempunyai software pembuat laporan yang bernama CRYSTAL REPORT. Jika tidak punya, silahkan hapus rumusnya. Tapi jika anda punya, gunakan listing program tersebut dan hilangkan tanda petik di depan rumusnya. Untuk keterangan lebih lanjut baca Tutorial Membuat Laporan dengan Crystal Report.

Private Sub Auto()
Data3.RecordSource = "select * from Table_Transaksi Where No_faktur In(Select Max(No_faktur)From Table_Transaksi)Order By No_faktur Desc"
Data3.Refresh
Dim Urutan As String * 10
Dim Hitung As Long
With Data3.Recordset
If .EOF Then
Urutan = Right(Date, 2) + Mid(Date, 4, 2) + Left(Date, 2) + "0001"
No_faktur = Urutan
Else
If Left(!No_faktur, 6) <> Right(Date, 2) + Mid(Date, 4, 2) + Left(Date, 2) Then
Urutan = Right(Date, 2) + Mid(Date, 4, 2) + Left(Date, 2) + "0001"
Else
Hitung = (!No_faktur) + 1
Urutan = (Right(Date, 2) + Mid(Date, 4, 2) + Left(Date, 2)) + Right("0000" & Hitung, 4)
End If
End If
TXTNOFAK.Text = Urutan
End With
End Sub
Sub AUTO ini digunakan untuk memunculkan nomor faktur secara otomatis.
Jumlah karakter dari nomor faktur ini adalah 10 digit angka yang terdiri dari: 2 angka pertama untuk Tahun faktur, 2 angka berikutnya untuk Bulan faktur, 2 angka berikutnya untuk Tanggal faktur dan 4 angka terakhir digunakan untuk Nomor faktur.
Contoh: jika ada Nomor Faktur yang bertuliskan 0806250099 maka
Tahun faktur tersebut adalah 08 (2008)
Bulan faktur tersebut adalah 06 (Juni)
Tanggal faktur tersebut adalah 25
Nomor faktur tersebut adalah 0099
PERHATIAN: untuk memakai nomor faktur otomatis ini, settingan waktu komputer anda harus berformat ”dd/mm/yy” (2 digit angka hari/bulan/tahun). Contoh: 30/12/09.
Jika belum dirubah, maka rubahlah format tanggal tersebut dari CONTROL PANEL lalu pilihlah REGIONAL AND LANGUAGE OPTIONS lalu tekan tombol CUSTOMIZE dan pilih DATE lalu rubahlah SHORT DATE FORMAT menjadi dd/mm/yy jika sudah tekan Oke.

CARA MEMAKAI FORM TRANSAKSI INI:
1. Klik Add, untuk memasukan data transaksi yang baru
2. Klik tombol find yang ada disamping kode pelanggan lalu masukan kode pelanggan pada kotak pencarian data kemudian tekan enter.
3. Klik tombol find yang ada disamping kode buku lalu masukan kode buku pada kotak pencarian data kemudian tekan enter.
4. Masukan jumlah beli, lalu tekan enter.
5. Klik tombol Lagi untuk membeli buku yang lainnya lagi.
6. Klik tombol Selesai bila semua buku yang diinginkan sudah selesai dimasukkan.
7. Pilih cara pengiriman buku yang telah disediakan.
8. Masukan uang bayar pada tempat yang disediakan.
9. Klik Save, untuk menyimpan data atau Klik Clear, untuk mengosongkan dan membatalkan data yang akan disimpan.
10. Klik Exit untuk keluar.
- Jangan lupa untuk mengganti Name dari form ini di properties menjadi ”Ftransaksi” dan menyimpannya dengan nama ”Transaksi.frm”.
Masjid Pertama di Indonesia ternyata yang memberi nama adalah orang Tionghoa!

Cheng Hoo, dikenal sebagai laksamana dan bahariawan dari daratan China yang sangat tangguh. Ia bersama 28.000 prajurut dengan 300 armada kapal berhasil mengarungi planet bumi melalui samudera hingga tujuh kali putaran. Dalam pelayaran perdamaian atas perintah kekaisaran Ming itu, Cheng Hoo sempat menginjakkan kakinya di tanah kekuasaan Majapahit antara tahun 1406-1409 M.


Belakangan nama Cheng Hoo begitu dikenal di masyarakat tanah air setalah film Cheng Hoo yang disyuting di tiga negara dan dibintangi mantan Mensesneg RI Yusrul Ilza Mahendara dan Saifullah Yusuf selesai dibuat.
Tidak hanya itu, kebesaran nama Cheng Hoo juga memberi inspirasi kepada warga Tionghoa muslim di Surabaya untuk mendirkan yayasan dan bangunan masjid dengan nama Masjid Muhamad Cheng Hoo. Agak kurang sreg memang, dengan nama masjid ini. Telinga kita terlalu diakrabkan dengan nama-nama masjid dalam bahasa arab atau campuran bahasa arab-Indonesia. Kesan kita selama ini terbangun, keislaman atau yang berbau Islam erat sekali hubungannya dengan bahasa dan dunia arab, baik dalam sastra, terutama tradisi-tradisi keagamaan. Sehingga di benak kita, hal-hal yang berbau Tionghoa sudah sangat identik dengan kelenteng atau kepercayaan Tao bahkan identik dengan ritual membakar dupa dan kemenyan.
Namun tidak demikian jika berkunjung ke Masjid Muhamad Cheng Hoo di Surabaya. Masjid Pertama yang didirikan tahun 2002 dan diresmikan oleh Menteri Agama RI Prof KH Agil Syiraz Almunawar itu, mulai lantai hingga kubah sama sekali tidak menunjukkan arsitektur timur tengah. Seperti lengkungan kubah yang sangat mudah dijumpai di masjid-masjid.
Berkunjung ke masjid ini tidak terlalu sulit. Selain di peta sudah tercantum, letaknya tidak jauh dari Stasiun Gubeng-Surabaya. Bila menggunakan jasa taksi dari Stasiun Gubang paling menghabiskan perjalanan 10 menit. Alamat lengkapnya, di Jalan Gading Nomor 2 Surabaya. Memang posisinya agak menjorok di pemukiman warga. Saat itu juga, penulis dan rekan-rekan sempat salah masuk jalan.
Jika masuk dari arah timur, masjid ini tidak terlalu kentara karena terhalang gedung yayasan dan kantor pengurus. Namun jika dari arah selatan, meski terhalang dinding tinggi, puncak masjid terlihat hijau dan merah menyala.
Jalan menuju masjid ini hanya satu pintu yang dijaga oleh beberapa satpam. Tak banyak tanya satpam di sana. Mungkin karena terbiasa, atau memang menujukkan bahwa masjid ini sangat terbuka dikunjungi siapapun, termasuk pengunjung non muslim. Saat itu, ada remaja yang berkulit putih dan komunikasinya menggunakan bahasa China. Mereka leluasa mengambil foto bahkan dengan bebas masuk ke ruang utama masjid.
Memasuki kompleks masjid, di sebelah kanan terlihat WC berjajar dengan atap berarsitektur China. Tteapi pagar di sekeliling, seperti halnya pagar masjid atau perkantoran pada umumnya. Menggunakan kawat yang dianyam dan tinggi sekitar tiga meter.
Masjid berukuran 11 X 12 meter persegi ini, didominasi warna merah dan kuning serta hijau, layaknya warna klenteng-klenteng di tanah air. Dari arah depan, warna merah tersebut nampak mencolok. Namun dari dua tangga kiri kanan, sangat kentara tulisan kaligrafi arab menggunakan bahan kuningan, berdiameter sekitar satu meter. Kaligrafi ini jika dibaca ternyata isinya bismillahirrohmaanirroohim.
Dominasi warna merah juga terdapat dalam lespang di setiap undak bangunan. Ada tiga tingkatan atap masjid ini. Jika dilihat dari atas akan terlihat seperti jaring laba-laba. Di antara atap ke tiga dan empat, dalam ukiran kaca diisi dengan kaligrafi sifat-sifat Allah yang 20. Mulai sifat wujud hingga sifat mutakaliman. Sifat-sifat ini yang menjadi pegangan logika ilmu kalam yang dicetuskan Asyariyah yang banyak dianut di Asia Tenggara termasuk di Indonesia yang beraliran “ahlusunnah waljamaah”. Sementrara itu, di pinggir kanan masjid terdapat realif Laksamana Chengho beserta perahu yang menjadi armada pelayaran Cheng Hoo mengelilingi dunia.
Gambaran yang menunjukan tradisi China juga terdapat beduk yang bentuknya seperti beduk-beduk yang digunakan dalam pertunjukan barongsai. Beduk tersebut disimpan di pintu masuk sebelah kanan dan bagi yang postur tubuhnya tinggi, beduk itu bisa tersundul.
Beduk di masjid atau mushola di pulau Jawa sudah biasa dan fungsinya tidak berbeda dengan beduk di masjid Cheng Hoo. Yakni, untuk pertanda masuknya waktu shalat, selain dengan lantunan suara muadzjin.
Suasana China juga sangat terasa saat masuk ke dalam masjid yang terdiri dari dua tangga tersebut. Di antara ruang istirahat dan ruang utama masjid ini dipisahkan dengan pagar besi tempa yang mengesankan dibuat ratusan tahun lalu. Terlihat sangat kokoh dengan ukiran khas China, ikurannya mirip kepala barongsai juga kotak-kotak yin dan yang. Dinding belakang dan depan terbuat dari bata-bata yang tidak diplester namun terlihat ditata apik. Warna catnya, merah bata menyala dan terlihat lekak-lekuk antra bata-bata yang tersusun dicorok itu. Sementara seluruh tiang, terlihat tinggi menjukang dan dikakinya dilapisi besi tempa yang mengesankan bangunan kuno.
Namun naunsa arab agak terasa jika kita memalingkan penglihatan ke atas masjid. Meski dari luar terlihat bangunan China, namun dari dalam ini terliat lengkungan kubah yang kiri kananya bertuliskan asmaul husna yang 99. Kaligrafi seperti ini sangat mudah ditemukan pada lukisan masjid-masjid di tanah air.
Mengapa diberi nama Masjid Muhammad Cheng Hoo? Pengurus Persatuan Islam Tionghoa Indonesia (PITI) Jawa Timur yang juga imam masjid Cheng Hoo, Ustad H Haryono Oong menjelaskan, nama tersebut sebagai salah satu bentuk penghargaan atas kebesaran Choing Hoo yang telah berlayar menyuarakan perdamaian ke penjuru dunia termasuk ke Kerajaan Majapahit saat itu. Sedangkan bentuk masjid katanya, diadopsi dari sebuah masjid di Kota China. Namun dia, di China sendiri tidak ada masjid bernama Masjid Muhammad Cheng Hoo. Sehingga masjid ini diyakni merupakan masjid pertama di dunia yang diberi nama Muhamad Cheng Hoo.
Selain masjid di bawah yayasan PITI tersebut, di lokasi yang sama, terdapat lembaga pendidikan TK dan TPA. Murid TK di sini tidak semunya bergama Islam. Kata warga keturunan lulusan IAIN Sunan Ampel Surabaya ini, sekitar 10 persen muridnya non muslim.

Meskipun belum termasuk masjid terindah di dunia, kita sebagai Warga Negara Indonesia harus merasa memiliki dan bangga akan semua yang ada dan di hadirkan oleh nenek moyang kita, para pejuang kita. Sematkan di dada semuanya satu, satu untuk Indonesia, jangan pernah mau untuk dipecah belah, karena kita semua bersaudara.

Jumat, 23 April 2010

Back to List Prev Next
Tips Selamatkan Data Pada CD Rusak Atau Tergores
Di post Des 25, 2009 Email ke teman Cetak


Pada masa sekarang ini media penyimpanan data yang paling aman, tahan lama, kapasitas besar dan murah adalah CD (Compact Disc) dan DVD. Dengan harga Drive CD-Writer 52x sudah dibilang relatif murah yang hampir menjadi syarat mutlak bagi kelengkapan sebuah PC.

Dipasaran dijual berbagai macam merk dan bahan CD-R / CD-RW dengan kualitas dan harga yang beragam. Kualitas CD kadang ditentukan oleh harga yang mahal . Walaupun harganya mahal namun bila perlakuan anda terhadap CD tersebut tidak semestinya, tentu hal ini sia - sia.

Terlepas dari hal itu apapun CD yang anda miliki, punya peluang untuk tergores, berjamur, patah, dan lain sebagainya. Sekarang bagaimana bila CD yang kita miliki beserta data, file - file penting di dalamnya tidak dapat dibaca karena tergores, berjamur, dll.

Pada kesempatan kali ini penulis hanya akan mengutamakan trik untuk menyelamatkan data pada CD tergores. Banyak software-software penyelamat data, yang free atau shareware diantaranya seperti CD Check dari http://elpros.si/CDCheck/, Badcopy Pro dari http://www.jufsoft.com, dan CD Data Rescue dari http://www.naltech.com.

Sehebat apapun software tersebut tetap saja tergantung pada kualitas hardware. Hardware yang sangat berperan dalam penyelamatan data pada CD adalah CD-ROM / CD-RW / DVD-ROM Drive. Semakin baik kualitas error corection CD-ROM drive tersebut maka semakin besar peluang terselamatkannya data dari CD.

Di pasaran CD-ROM drive dijual dengan harga yang bervariasi. Biasanya harga tidak pernah menipu, harga yang tinggi memiliki kualitas terbaik dan pilihan serta idaman banyak orang, namun tidak ada salahnya anda menanyakan kepada penjual tersebut atau mencari informasi test beberapa CD-ROM drive dari majalah atau tabloid mengenai komputer, cd-rom mana yang memiliki error correction terbaik itulah yang anda pilih.

Dalam penyelamatan data selain fitur error correction, tips yang dianjurkan oleh penulis CD-ROM tersebut memiliki fitur Multispeed, dengan maksud agar kecepatan maksimal CD-ROM bisa diatur secara manual dengan bantuan software seperti Nero DriveSpeed yang bisa di download secara gratis dari http://www.nero.com atau Http://www.cdspeed2000.com. pengaturan kecepatan maksimal secara manual ini hanya mengoptimalkan kemampuan baca CD-ROM.

Secara default kecepatan CD-ROM akan berkurang secara otomatis ketika membaca data pada cd yang tergores atau yang kurang baik dan akan bertambah setelah goresan tersebut terlewati. Baik tidaknya pengaturan kecepatan otomatis ini tergantung dari firmware CD-ROM tersebut, oleh karena itu update-lah CDROM anda dengan firmware terbaru.

Namun pengalaman penulis, CD-ROM yang memiliki error correction baik dan firmware terbaru kadang masih belum sanggup menangani goresan pada keping CD yang sudah benar-benar cacat akibat goresan, namun dengan menurunkan kecepatan maksimal CD-ROM pada kecepatan terendah (misal 4x atau 8x) hal ini kadang dapat diatasi, karena CDROM tersebut dengan kecapetan konstan tidak otomatis naik turun.

Selain CD-ROM Drive, hardware lain yang berperan adalah kepingan CD itu sendiri. Untuk Mengetahui tidak terbacanya data tersebut akibat kegagalan proses burning atau karena kerusakan fisik, bisa dilihat dari keping CD tersebut apakah ada kotoran / goresan atau tidak, bila tidak ada maka kemungkinan besar akibat kegagalan pada saat burning.

Oleh karena itu setiap anda melakukan burning lebih baik diakhiri dengan verifikasi data (gambar 5) atau dengan software Nero CD Speed (gambar 1), yang juga bisa di download secara gratis dari http://www.nero.com atau http://www.cdspeed2000.com atau keduanya akan terinstall secara otomatis bila anda menginstall software Nero Burning ROM.


Gambar 1

Gambar 5. Hasil Scandisc Sebelum (kiri) dan Sesudah (kanan) dipoles
Sekarang bagaimana menyelamatkan data pada CD yang tergores? Lihat secara fisik keping CD tersebut pastikan tidak ada kotoran pada permukaan bawahnya (bagian sensitif, yang dibaca oleh optik CD-ROM). Bila ada kotoran atau goresan ringan bersihkan dengan cairan pembersih khusus keping CD, yang dijual dipasaran dalam kemasan botol kaleng.

Bila hal ini telah dilakukan dan kotoran serta goresan berkurang atau hilang, maka sudah dipastikan semua data dalam CD tersebut bisa diselamatkan 98%, 1% nya tergantung kualitas penulisan data tersebut ke CD dan 1% lagi kualitas error correction CD-ROM drive.
Gambar 2

Bagaimana bila goresan tersebut masih ada? untuk melakukannya sangat diperlukan keterampilan, ketekunan, pengalaman dan beberapa peralatan serta bahan khusus. Alat tersebut adalah yang biasa dipakai untuk poles mobil, berupa kain poles yang diputar oleh bor. Serta bahan yang dipakai adalah pasta untuk memoles mobil terutama yang baik dalam menghilangkan goresan (scratch) (gambar 2).

Namun jangan khawatir, anda tidak perlu berlatih berbulan – bulan. Anda cukup berlatih dengan mengorbankan 1 CD yang sengaja digores. Beberapa hal penting yang harus diperhatikan yaitu :

1. Backup seluruh data dalam CD yang masih terbaca dengan baik ke harddisk sebelum dipoles.
2. Bersihkan optik CDROM dengan cd dan cairan pembersihnya jika diperlukan.
3. Saat memoles cd tidak menekan kain poles secara berlebihan.
4. Hindari memoles pada 1 lokasi, poles seluruh permukaan cd secara merata, agar tidak terbentuk cekungan.
5. Usahakan permukaan yang dipoles selalu basah oleh bahan poles, lakukan secara intermittent (sebentar-sebentar) dengan maksud bahan tidak menguap karena panas dari gesekan antara kain poles dengan permukaan CD.
6. Setelah goresan berkurang coba copy data-data yang tidak terbaca tadi ke hardisk.
7. Setelah semua data-data terselamatkan, cek data-data tersebut dari file corrupt dengan membuka data-data tersebut. Bila OK,segera Backup ke cd yang baru.
8. CD yang sudah dipoles jangan dibiarkan terlalu lama tidak dibackup, karena permukaan cd semakin tipis dan lebih mudah berjamur, atau bila tergores-gores lagi, kecil kemungkinan data akan terselamatkan.

Selamat Mencoba, Semoga Artikel ini Bisa menjadi salah satu solusi menyelamatkan data

ARTIKEL TIPS DAN TRIK

Tips Unloading File DLL di Memori & Akses File Lebih Cepat
Di post Des 17, 2009 Email ke teman Cetak


File DLL (Dinamic Link Libraries) adalah perpustakaannya Windows. Apa pun yang dibutuhkan Windows, bakal dicari di file berjenis DLL ini.

Saat program aplikasi dijalankan, file-file DLL yang menyertainya akan dipanggil ke dalam memori (RAM) dan terus berada di sana selama si program masih dijalankan. Kadang, beberapa program meninggalkan file DLL ini di memori, yang tentu saja akan memenuhi ruang memori.

Nah, supaya ruang memori terasa lebih lega, ikuti langkah berikut.
1. Klik “Start”, lalu ketikkan “regedit” untuk membuka jendela Windows Registry Editor.
2. Carilah alamat registry “HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Explorer”.
3. Di alamat tersebut, buat satu string value baru bernama “AlwaysUnloadDll”.
4. Berikan nilai 1 pada String value ini. Jika suatu saat Anda ingin menonaktifkannya, cukup ganti nilainya dengan 0.
5. Tutup jendela Registry Editor dan reboot komputer.

Mulai sekarang, caching file DLL akan dihindari dan ruang memori untuk program lain menjadi semakin besar.

Mengakses File Lebih Cepat

NTFS adalah file sistemnya sistem operasi yang dibangun dengan fondasi NT. Karena Windows 7 menggunakan kernel atau inti dari OS Windows NT, maka sistem operasi ini juga mendukung NTFS.

Nah, sebagai OS yang dapat menggunakan file sistem NTFS, ia membutuhkan sebuah cache yang berfungsi menampung informasi mengenai file yang terdapat di dalam sebuah folder. Seperti apa cara kerjanya?

Ketika Anda membuka sebuah folder untuk pertama kalinya, Windows akan membaca dan menampung informasi detail mengenai folder yang Anda buka tersebut ke dalam sebuah cache. Informasi ini kemudian akan digunakan jika Anda membuka folder yang sama di lain waktu sehingga prosesnya akan lebih cepat.

Dengan memperbesar cache ini, tentunya kecepatan Windows Anda dalam membaca sebuah folder akan meningkat pula. Untuk melakukannya, praktekkan langkah berikut.
1. Jalankan Registry Editor melalui menu “Start”, lalu ketik: regedt32.
2. Masuklah ke sub key HKEY_LOCAL_MACHINE-SYSTEM-CurrentControlSet-Control-FileSystem.
3. Pada sub key “FileSystem”, klik kanan mouse di bagian kanan window, lalu klik “New > DWORD (32 bit) Value”.
4. Beri nama DWORD Value baru tersebut dengan nama “NtfsMftZone Reservation”.
5. Klik kanan DWORD Value NtfsMftZone Reservation ini, kemudian pilih “Modify”.
6. Isikan Value Data yang diminta dengan nilai 2.
7. Tekan “OK”, tutup jendela Registry Editor, lalu restart PC. (PCPlus)
Komputer Anda Bermasalah? Microsoft Fix It Akan Memperbaikinya
Di post Apr 23, 2010 Email ke teman Cetak


Layanan terbaru dari Microsoft bernama Fix It, bertujuan untuk memperbaiki masalah komputer secara otomatis dan disesuaikan dengan mesin individual.

Microsoft telah meluncurkan layanan perbaikan mandiri untuk komputer. Layanan yang dinamakan Fix It tersebut merupakan produk baru Microsoft berdasarkan fitur online yang sama dengan yang ada pada Windows 7, namun lebih luas cakupannya dari Windows XP.

Software Fix It secara otomatis akan mendiagnosa komputer dan memperbaiki masalah umum yang terjadi. Program tersebut akan bekerja secara teratur mengecek masalah software dan membandingkannya dengan daftar perbaikan.

Jika solusi untuk masalah yang terjadi di komputer tersedia, Fix It akan secara otomatis menginstalnya. Fix It juga mendeteksi kondisi terbaru yang menimbulkan masalah pada komputer.

Meski tidak menawarkan jaminan apa pun, hadirnya layanan ini berarti bahwa sejumlah besar masalah komputasi dasar, baik bagi konsumen skala besar maupun kecil, dapat diselesaikan tanpa peran aktif si pengguna.

Perusahaan teknologi sejak lama memiliki tujuan mengembangkan layanan otomatis untuk komputer individual. Hal ini pun menjadi bagian dari keputusan mereka untuk mengumpulkan sejumlah besar data mengenai berbagai masalah yang dialami pengguna komputer. (Okezone/Telegraph)

Kamis, 22 April 2010

BPPT kembangkan software untuk tunanetra

BPPT Kembangkan Software untuk Tunanetra
By admin
Monday, March 08, 2010 15:47:00 Clicks: 135 Send to a friend Print Version
BPPT Kembangkan Software untuk Tunanetra
Laporan wartawan KOMPAS.com Caroline Damanik

Senin, 8 Maret 2010 | 15:47 WIB

JAKARTA, KOMPAS.com - Menarik! Badan Pengkajian dan Penerapan Teknologi (BPPT) ternyata sudah mengembangkan software-software khusus untuk para tunanetra dan tunadaksa yang membuka seluas-luasnya akses kalangan ini terhadap komputer dan internet.

Ada dua software yang dipegang oleh BPPT, yaitu Linux dengan Lisan (LISAN) dan Membaca dengan Dengar (Mem-Dengar). LISAN adalah software dengan sistem operasi Linux yang memungkinkan pengguna untuk mengoperasikan komputer hanya dengan berbicara.

Dibandingkan dengan JAWSforWindows, LISAN lebih canggih karena pengguna bisa memerintahkan komputer seratus persen dengan lisan, tutur Koordinator Pusat Sumber Daya Open Source BPPT Oskar Riandi di sela peluncuran pelatihan 'Komputer Bicara untuk Tina Netra' di Gedung Dewan Pers, Senin (8/3/2010).

Para tunanetra dan tunadaksa cukup menyebutkan perintah-perintah standar untuk mengaktifkan komputer dan menulis sesuatu. Oskar mengatakan program ini sudah siap digunakan meski belum diluncurkan.

Memang, lanjutnya, masih ada beberapa pengembangan khususnya untuk para tunanetra. Soalnya komputer kan harus memberikan respon yang diperlukan tunanetra kalau sudah diberi perintah, katanya.

Sementara itu, software Mem-dengar masih dalam tahap pengembangan. Targetnya, tahun ini pengembangannya akan rampung. Sesuai namanya, software ini akan membantu para tunanetra untuk membaca suatu artikel atau dokumen karena software ini mengkonversikan tulisan ke dalam bentuk audio.

Mem-dengar juga memungkinkan para tunanetra membaca suatu buku dengan memindainya terlebih dahulu, diubah ke teks lalu dikonversikan ke bentuk suara. Menariknya, kedua software ini akan ditawarkan secara opensource tanpa bayar dan keduanya dioperasikan dalam bahasa Indonesia sehingga memudahkan bagi para tunanetra yang tak menguasai bahasa asing.

Oskar mengaku belum memiliki kerja sama khusus dengan Pertuni. Mereka kebetulan juga baru tahu tadi katanya, tandasnya.

Sumber: Kompas.Com
http://edukasi.kompas.com/read/2010/03/08/15474119
/BPPT.Kembangkan.Software.untuk.Tunanetra