Pasang IKLAN

Mau Pasang iklan?? 30rb/bulan. berminat kirim email ke hadisucipto1989@yahoo.com. Atau isi coment untuk memesan tempat.


Selamat Datang di Blog Gery Casakom Tempat Belajar Bersama Berbagi Ilmu dan Pengalaman
free counters
ShoutMix chat widget

Kamis, 29 Oktober 2009

PENGERTIAN KOMUNIKASI ANTAR PRIBADI (KAP) DAN FAKTOR-FAKTOR YANG MEMPENGARUHI KAP

PENGERTIAN KOMUNIKASI ANTARA PRIBADI (KAP)
DAN FAKTOR-FAKTOR YANG MEMPENGARUHI KAP

Pengertian KAP
Secara umum komunikasi antar pribadi (KAP) dapat diartikan sebagai suatu proses pertukaran makna antara orang-orang yang saling berkomunikasi. Komunikasi terjadi secara tatap muka (face to face) antara dua individu. . Dalam pengertian tersebut mengandung 3 aspek:
- Pengertian proses, yaitu mengacu pada perubahan dan tindakan yang berlangsung terus menerus.
- KAP merupakan suatu pertukaran, yaitu tindakan menyampaikan dan menerima pesan secara timbal balik.
- Mengandung makna, yaitu sesuatu yang dipertukarkan dalam proses tersebut, adalah kesamaan pemahaman diantara orang-orang yang berkomunikasi terhadap pesan-pesan yang digunakan dalam proses komunikasi.
Dari ketiga aspek tersebut maka KAP menurut Judy C. Pearson memiliki karakteristik sebagai berikut:
1. KAP dimulai dengan diri pribadi (self). Berbagai persepsi komunikasi yang menyangkut pemaknaan berpusat pada diri kita, artinya dipengaruhi oleh pengalaman dan pengamatan kita.
2. KAP bersifat transaksional. Anggapan ini mengacu pada pihak-pihak yang berkomunikasi secara serempak dan bersifat sejajar, menyampaikan dan menerima pesan.
3. KAP mencakup aspek-aspek isi pesan dan hubungan antarpribadi. Artinya isi pesan dipengaruhi oleh hubungan antar pihak yang berkomunikasi.
4. Komunikasi antarpribadi mensyaratkan kedekatan fisik antar pihak yang berkomunikasi.
5. KAP melibatkan pihak-pihak yang saling bergantung satu sama lainnya dalam proses komunikasi.
6. KAP tidak dapat diubah maupun diulang. Jika kita salah mengucapkan sesuatu pada pasangan maka tidak dapat diubah. Bisa memaafkan tapi tidak bisa melupakan atau menghapus yang sudah dikatakan.
KAP berlangsung antar dua individu, karenanya pemahaman komunikasi dan hubungan antar pribadi menempatkan pemahaman mengenai komunikasi dalam proses psikologis. Setiap individu dalam tindakan komunikasi memiliki pemahaman dan makna pribadi terhadap setiap hubungan dimana dia terlibat di dalamnya.
Hal terpenting dari aspek psikologis dalam komunikasi adalah asumsi bahwa diri pribadi individu terletak dalam diri individu dan tidak mungkin diamati secara langsung.

Teori Organisasi

Organisasi adalah kesatuan (entity) sosial yang di koordinasikan secara sadar, dengan sebuah batasan yang relatif dapat diidentifikasi, yang bekerja secara terus menerus untuk mencapai tujuan bersama.

Definisi Tersebut mengandung arti:

1. Dikoordinasikan secara sadar  secara manajemen.
2. Kesatuan sosial  terdiri dari orang –orang yang berinteraksi satu sama lain.
3. Batasan yang relatif dapat diidentifikasi  batasan dapat berubah dalam kurun waktu tertentu.
4. Bekerja relatif terus menerus  keterikatan terus menerus tapi tidak seumur hidup.
5. Tujuan bersama tidak dapat dicapai secara individu.

Organisasi menurut James D. Money
Organisasi adalah Bentuk setiap perserikatan manusia untuk pencapaian suatu tujuan bersama.

Rabu, 28 Oktober 2009

CPU (CENTRAL PROCESSING UNIT)

merupakan tempat pemrosesan instruksi-instruksi program. Pada komputer mikro, processor ini disebut dengan microprocessor.

CPU terdiri dari dua bagian utama,yaitu
1. Unit kendali ( Control Unit )
2. Unit Arithmatika dan logika (arithmetic and logic unit)

CPU juga mempunyai beberapa simpanan yang berukuran kecil yang disebut dengan register.

PEMROGRAMAN INFORMIX

Memulai informix-4gl

Ketik i4gl atau r4gl pada shell prompt

Informix-4gl RDS (Rapid Development System)

Informix-4gl C compiler

/u/komputer> r4gl ¿

maka akan tampil menu sbb :

INFORMIX-4GL : Module Form Program Query-language Exit

Create , modify , or run individual 4gl program modules

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -

Module : bekerja pada program module Informix-4gl

Form : bekerja pada screen form

Program : spesifikasi komponen dari program multi-module

Query language : menggunakan SQL interaktif

Exit : kembali ke shell prompt

Menu MODIFY Dalam Module 4GL

Module ; Modify New Compile Program_Compile Run Debug Exit

Change an existing 4gl program module

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -

Modify : untuk memodifikasi module 4gl yang sudah ada

New : untuk membuat module 4gl yang baru

Compile : untuk mengkompile module 4gl yang stand_alone tanpa melalui

pilihan modify.

Program_compile : mengijinkan kita mengkompile dan menggabung module.

Pilihan ini berguna jika kita mempunyai satu module dari sekelom-

pok program yang kompleks & ingin menguji dengan cara meng-

kompilenya dengan module lain.

Run : menjalankan module program

Debug : menggunakan Informix-4gl interaktif debugger untuk menganalisa

program.

MODIFY MODULE >> 

Choose a module with Arrow Keys or enter a name, and press RETURN

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -

Prog_latihan1

Prog_latihan2

Prog_latihan3

USE-EDITOR >> vi 

Enter editor name. (Return only for default editor)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -

Kemudian muncul program yang sudah pernah dibuat,sbb.:

MAIN

DISPLAY “ Selamat Belajar Informix-4gl” AT 5,10

DISPLAY “ Semoga Sukses” AT 6,15

END MAIN

:wq

MODIFY MODULE : Compile Save-and-exit Discard-and-exit

Compile the 4gl module specification

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -

COMPILE MODULE : Object Runable Exit

Create an object file (.4go suffix)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -

COMPILE MODULE : Object Runable Exit

Create an runable program (.4gi suffix)

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -



Setelah sukses mengkompile, tampilan berikutnya sbb.:

MODIFY MODULE : Compile Save-and-exit Discard-and-exit

Save the 4GL module and return to MODULE Menu

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -

Menu NEW Dalam Module 4GL

Module ; Modify New Compile Program_Compile Run Debug Exit

Create a new 4GL program module

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -

NEW MODULE >>_

Enter the name you want to assign to the module, and press RETURN

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -



~

~ ketik program anda

~

~

Dalam setiap modul program 4GL harus terdapat main program, yang ditandai dengan statement MAIN.

MAIN

……………………………….. ………………………………..

…..statement…………

………………..………………

END MAIN

MAIN ® menyatakan awal blok program .

END MAIN ® menyatakan akhir blok program.

Contoh :

MAIN

CREATE DATABASE filkom

CREATE TABLE t_matakuliah

(kd_mk char(8),

nm_mk char(30),

sks smallint,

jenis char(1))

INSERT INTO t_matakuliah

VALUES (“DU-14201”,”Agama”,2,”W”)

END MAIN

MAIN

DISPLAY ‘Universitas Gunadarma’ AT 6,7

DISPLAY ‘Jl. Akses UI Kelapa Dua’ AT 7,7

ATTRIBUTE(reverse,blink)

END MAIN

Output :

MAIN

DEFINE

Nm char(25),

Ket char(30)

LET ket = ‘mahasiswa Universitas Gunadarma’

PROMPT ‘Nama anda : ‘ FOR nm

DISPLAY ‘Mhs. yang bernama ‘,nm,ket AT 10,5

DISPLAY ‘Mhs. yang bernama ‘,nm,’ adalah’,ket AT 12,5

END MAIN

Output :

MAIN

DEFINE nm char(25),

kls char(5)

PROMPT ‘Masukkan nama anda : ‘ FOR nm

PROMPT ‘Masukkan kelas anda : ‘ FOR kls

DISPLAY ‘Saya yang bernama : ‘,nm

DISPLAY ‘Sekarang duduk di kelas ‘,kls

DISPLAY ‘Sedang belajar Informix’

END MAIN

Output :

Program dengan menggunakan DATABASE

DATABASE filkom #contoh program cari data

MAIN

DEFINE

nm char(25), kls char(5)

SELECT nama,kelas INTO nm,kls

FROM t_master

WHERE npm=’10197477’

DISPLAY ‘Nama : ‘,nm AT 5,9

DISPLAY ‘Kelas : ‘,kls AT 6,9

END MAIN

DATABASE filkom

MAIN

DEFINE

nm LIKE t_master.nama,

kls LIKE t_master.kelas,

m_npm LIKE t_master.npm

PROMPT ‘Masukkan NPM yang dicari : ‘ FOR m_npm

SELECT nama,kelas INTO nm,kls

FROM t_master WHERE npm=m_npm

DISPLAY nm CLIPPED,’/’,m_npm,’/’,kls AT 10,12

END MAIN

Contoh program INSERT

# Statement yg diawali tanda ‘#’ tidak diakses

# Ini adalah contoh untuk memasukkan data ke dalam tabel

# Program ini dibuat oleh : ROSNI

# Tanggal pembuatan : 01 /10/2001

#-------------------------------------------------------------------

DATABASE filkom

MAIN

INSERT INTO t_matakuliah (kd_mk,nm_mk,sks,jenis)

VALUES (‘DK-14202’,’Fisika’,2,’W’)

END MAIN

{ contoh kedua program insert data

dibuat oleh …………………

selain menggunakan tanda ‘#’ boleh juga menggunakan tanda’{ }’

}

DATABASE filkom

MAIN

DEFINE kode_mk char(8),

nama_mk char(25),

jsks smallint,

jns char(1)

LET kode_mk = ‘DK-14202’ #contoh penggunaan LET

LET nama-mk = ‘fisika’

LET jsks = 2

LET jns =’W’

INSERT INTO t_matakuliah(kd_mk,nm_mk,sks,jenis)

VALUES (kode_mk,nama_mk,jsks,jns)

END MAIN

#contoh ketiga program insert data

# bandingkan format penulisan define

DATABASE filkom

MAIN

DEFINE kode_mk char(8),nama_mk char(25),jsks smallint,

jns char(1)

PROMPT ‘masukkan kode matakuliah = ‘ FOR kode_mk

PROMPT ‘masukkan nama matakuliah = ‘ FOR nama_mk

PROMPT ‘masukkan jumlah sks = ‘ FOR jsks

PROMPT ‘masukkan jenis matakuliah = ‘ FOR jns

#dibawah ini adalah statement ‘sql’

# penulisan statement sql-nya sama dengan contoh kedua

INSERT INTO t_matakuliah (kd_mk,nm_mk,sks,jenis)

VALUES (kode_mk,nama_mk,jsks,jns)

END MAIN

Contoh Program DELETE

DATABASE filkom

MAIN

DEFINE np LIKE t_master.npm

PROMPT ‘masukkan npm anda : ‘ FOR np

DELETE FROM t_master WHERE npm=np

END MAIN

DATABASE filkom

MAIN

DELETE FROM t_master WHERE kelas[1]=’4’ and ket_lulus=’W’

END MAIN

Contoh Program UPDATE

DATABASE filkom

MAIN

DEFINE

np LIKE t_master.npm,

almt LIKE t_master.alamat

PROMPT ‘masukkan npm anda : ‘ FOR np

PROMPT ‘masukkan alamat baru : ‘ FOR almt

#perintah sql

UPDATE t_master SET alamat = almt WHERE npm = np

END MAIN

DATABASE filkom

MAIN

UPDATE t_master SET kota=’Depok’ WHERE kota=’Cimanggis’

END MAIN

Contoh penggunaan FOR ….. END FOR

-- membuat program dengan menggunakan FOR … END FOR

-- kegunaan tanda ‘--‘ sama dengan tanda ‘#’

DATABASE filkom

MAIN

DEFINE np char(8), nama char(25), kls char(5),i smallint

FOR i = 1 TO 5

PROMPT ‘ketik npm anda = ‘ FOR np

PROMPT ‘ketik nama anda = ‘ FOR nama

PROMPT ‘ketik kelas anda = ‘ FOR kls

INSERT INTO t_master (npm,nama_mhs,kelas)

VALUES (np,nama,kls)

DISPLAY ‘N P M : ‘,np AT 6,5

DISPLAY ‘Nama : ‘,nama AT 7,5 ATTRIBUTE(blink)

DISPLAY ‘Kelas : ‘,kls AT 8,5

SLEEP 2

CLEAR SCREEN

END FOR

DISPLAY ‘Selesai dech ……bye…….’ AT 15,10

END MAIN

{contoh penggunaan WHILE …..END WHILE }

DATABASE filkom

MAIN

DEFINE np char(8), nama char(25), kls char(5), jawab char(1)

LET jawab=’y’

WHILE jawab=’y’ OR jawab=’Y’ #dpt ditulis jawab MATCHES’[Yy]’

PROMPT ‘ketik npm anda = ‘ FOR np

PROMPT ‘ketik nama anda = ‘ FOR nama

PROMPT ‘ketik kelas anda = ‘ FOR kls

INSERT INTO t_master (npm,nama_mhs,kelas)

VALUES (np,nama,kls)

PROMPT ‘ingin tambah data lagi [y/t] ? ‘ FOR jawab

CLEAR SCREEN

END WHILE

END MAIN

PENGGUNAAN FUNCTION

Mendefinisikan function

Function adalah satu routine yang merupakan bagian dari modul program 4GL. Function diletakkan diluar routine MAIN

MAIN

…..

..….

END mAIN

FUNCTION nama_function( )

…….

……

END FUNCTION

#contoh penggalan program yg menggunakan function

FUNCTION jum_mhs( )

DEFINE jum integer,

kls char(5)

PROMPT ‘menghitung jumlah mahasiswa kelas ‘ FOR kls

# perintah sql untuk menghitung

SELECT count(*) INTO jum
FROM t_master

WHERE kelas = kls

DISPLAY ‘Banyaknya mahasiswa kelas ‘,kls, ’=’ , jum

END FUNCTION

Memanggil FUNCTION

Untuk menggunakan function yang telah didefinisikan, dapat dilakukan dengan memanggil function tersebut dari dalam MAIN atau dari dalam FUNCTION lain.

Perintah yg diperlukan untuk memanggil function adalah ‘CALL

MAIN

………

……….

CALL nama_function( )

…….

END MAIN

# contoh program untuk memanggil function

MAIN

CALL berita( )

END MAIN

FUNCTION berita( )

DISPLAY ‘lagi belajar function’

END FUNCTION

Pengertian variabel global, variabel module & variabel local

Routine adalah seperti MAIN, REPORT dan FUNCTION dapat mempunyai tiga jenis tingkatan variabel terhadap data yaitu global, module dan local.

Variabel global

Variabel yang dapat dikenal dan diterima diseluruh program

Variabel module

Variabel yg dikenal disemua routine yg terletak didalam program 4gl yg sama

Variabel local

Variabel ini hanya berlaku & dimengerti didalam routine yg mendefinisikannya.

Skema lingkup data variabel


Globals

Define var A modul 1

Main

Define var B modul 2

End main

Define var C

Function x

Define var D modul 3

Function y

Define var E

Lokasi

Nama variabel

Type

Scope

Globals

Var A

Global

Main

Function x

Function y

Main

Var B

Local

Main

Module

Var C

Module

Function x

Function y

Function x

Var D

Local

Function x

Function y

Var E

Local

Function y

Contoh :

Globals

Define a integer

End globals

Main

Let a = 0

Call ganti( )

Display a

End main

Function ganti( )

Let a = 99

End function

#outputnya = 99

Globals

Define a integer

End globals

Main

Let a = 0

Call ganti( )

Display a

End main

Function ganti( )

Define a integer

Let a = 99

End function

# outputnya = 0

Parameter

Jenis variabel atau nilai yang terletak antara tanda kurung ( ) pada perintah FUNCTION dan berhubungan dengan perintah CALL.

Parameter ini digunakan untuk melewatkan / mengirim nilai/informasi darii MAIN ke FUNCTION tanpa mempengaruhi nilainya.

PASSING VALUE (melewatkan/mengirim nilai melalui function)

Untuk mengirim/melewatkan nilai melalui function, digunakan parameter pada function yang terletak antara tanda kurung ( ).

Variabel yang menerima nilai/informasi disebut variabel argument.

Parameter harus didefinisikan juga dengan define.

Function tampil (nama,alamat)

Define nama char(25), alamat char(30)

……………………….

………………………….

End function

Function lihat (rec_mhs) #baca catatan ttg record

Define rec_mhs record like t_master.*

………………..

……………….

End function

Main

Define nama,kota char(30) #2 var bertype sama

Let nama = ‘audi’

Let kota = ‘Bandung’

Call lihat(nama,kota) # passing value

End main

Function lihat(nm,kt) # argument value

Define nm,kt char(30)

Display ‘nama = ‘,nm at 7,10

Display ‘kota = ‘,kt at 8,10

End function

RETURN VALUE

Mengembalikan nilai dari function kembali ke routine yang memanggilnya.

Main

Define juml integer

Call hitung( ) RETURNING juml

Display ‘jumlah = ‘,juml at 10,10

End main

Function hitung( )

Define jml integer

Select count(*) into jml from t_master

RETURN jml

End function

Penggunaan PASSING VALUE & RETURN VALUE

Database filkom

Main

Define npm char(8), nama char(25),

Alamat char(30), kota char(15)

Prompt ‘tampilkan data mahasiswa , npm = ‘ for npm

Call cari(npm) returning nama,alamat,kota

Display ‘N P M = ‘,npm at 15,5

Display ‘Nama = ‘,nama at 16,5

Display ‘Alamat = ‘,alamat at 17,5

Display ‘Kota = ‘,kota at 18,5

End main

Function cari(np)

Define np char(8), nm char(25),

alm char(30), kt char(15)

select nama,alamat,kota

into nm , alm, kt

from t_master

where npm = np

#perintah sql diatas bisa ditulis dalam satu baris seperti dibawah ini

#select nama,alamat,kota into nm,alm,kt from t_master where npm=np

return nm, alm, kt

end function

Latihan :

Buat program untuk menghitung luas segitiga dengan input alas dan tinggi di main section, sedangakan perhitungan luas di function hitung.

RECORD

Record merupakan kumpulan dari program variable yang kemungkinannya berbeda tipe data yang satu dengan lainnya.

Sebelum memakai suatu record, kita harus mendefinisikan terlebih dahulu pada DEFINE.

record_name

RECORD

Var_list data_type [,…….]

END RECORD

Define

rec_mk RECORD

kd_mk char(8),

nm_mk char(25),

sks smallint,

jenis char(1)

END RECORD

Main

Select kd_mk,nm_mk,sks,jenis INTO rec_mk.*

from t_matakuliah where kd_mk = ‘TI-17203’

#--------------------------------------------------------------

#sql diatas bisa ditulis seperti dibawah ini

{ Select kd_mk,nm_mk,sks into rec_mk.kd_mk THRU rec_mk.sks

From t_matakuliah where kd_mk=’TI-17203’ }

#--------------------------------------------------------------

display ‘Nama Matakuliah : ‘,rec_mk.nm_mk

display ‘Kode Matakuliah : ‘,rec_mk.kd_mk

end main

Jika kita mendefinisikan record sama seperti pada suatu table (seperti contoh diatas), maka penulisannya dapat disederhanakan menjadi :

record_name RECORD LIKE table_name.*

Define

rec_mk RECORD LIKE t_mk.*

main

………………….

end main

PERINTAH SELECT DENGAN CURSOR

· Mendeklarasikan cursor untuk mewakili perintah SELECT

· Mendapatkan row dengan FOREACH

· Mendapatkan row dengan OPEN , FETCH dan CLOSE

Mendeklarasikan cursor untuk select

sintaks : DECLARE nama_cursor [scroll] CURSOR FOR

SELECT statement

DECLARE k1 CURSOR FOR

Select * from t_master

Where kelas[1,2] = ‘4K’

DECLARE kur CURSOR FOR

Select npm,nama from t_master

Where nama[1]=’R’

Mendapatkan row dengan FOREACH

Statement ‘foreach’ menyebabkan urut-urutan statement dikerjakan satu persatu.

sintaks : FOREACH nama_kursor [INTO var]

………statement………

……………………………….

[CONTINUE FOREACH]

…………………………….

[EXIT FOREACH]

………………………

END FOREACH

· Nama kursor di FOREACH harus sudah pernah didefinisikan pada statement DECLARE

· INTO digunakan untuk menampung hasil query setiap row

· CONTINUE FOREACH atau EXIT FOREACH digunakan untuk interupsi pada kondisi tertentu

· Diakhiri dengan END FOREACH

# contoh penggunaan FOREACH

database filkom

main

define rec_mk RECORD LIKE t_matakuliah.*

declare k1 cursor for

select * from t_matakuliah where kd_mk[1,2]=’DU”

foreach k1 INTO rec_mk.*

display ‘Kode Matakuliah : ‘,rec_mk.kd_mk

display ‘Nama Matakuliah : ‘,rec_mk.nm_mk

display ‘Sks : ‘,rec_mk.sks

end foreach

end main

CONTINUE FOREACH

Statement IF dapat digunakan bersama statement CONTINUE FOREACH untuk menghentikan urutan statement yang ada pada FOREACH loop, dan melanjutkan pembacaan baris berikutnya.

#contoh penggunaan statement ‘continue foreach’

database filkom

main

define rec_mhs RECORD LIKE t_master.*

declare k2 cursor for

select * from t_master

foreach k2 into rec_mhs.*

if rec_mhs.kota = ‘Jakarta’ then

continue foreach

end if

display ‘N P M : ‘,rec_mhs.npm

display ‘Nama : ‘,rec_mhs.nama

display ‘Kota : ‘,rec_mhs.kota

display ‘

end foreach

end main

EXIT FOREACH

Statement IF dapat digunakan bersama statement EXIT FOREACH untuk menghentikan urutan statement yang ada pada ‘foreach loop’ , serta keluar dari ‘foreach loop’

# contoh penggunaan ‘exit foreach’

database filkom

main

define rec_mhs RECORD LIKE t_master.*,jw char(1)

declare k3 cursor for

select * from t_master

foreach k3 into rec_mhs.*

display ‘N P M : ‘,rec_mhs.npm

display ‘Nama : ‘,rec_mhs.nama

display ‘Alamat : ‘,rec_mhs.alamat

prompt ‘Ingin lihat data berikutnya ?[y/t] : ‘ for jw

if jw matches’[Tt]’ then

exit foreach

end if

end foreach

end main

Mendapatkan row dengan OPEN , FETCH dan CLOSE

Statement foreach diatas, sebenarnya mengkombinasikan beberapa fungsi statement tunggal :

· melakukan OPEN cursor yang terkait dengan statement SELECT

· Secara berulang melakukan FETCH (mengambil) baris, dan menjalankan sejumlah statement yang ada pada FOREACH loop.

· Melakukan CLOSE cursor, setelah seluruh baris terbaca seluruhnya.

OPEN

Untuk melakukan aktif set dari statement SELECT yang dikaitkan dengan suatu cursor.

DECLARE kur CURSOR FOR

SELECT * FROM t_matakuliah

WHERE jenis = ‘P’

OPEN kur

Informix-4GL akan mencari baris sesuai statement diatas dan meletakkan cursor pada posisi awal, sebelum baris pertama.

DK-14301 Pemrog.Gene.4 3 P

TI-17204 Sistem Pakar 2 P

TI-18201 Automata 2 P

FETCH

Untuk menggerakkan cursor pada baris berikutnya dalam suatu aktif set, dan mengambil informasi pada baris tersebut.

#contoh penggunaan statement fetch

FETCH kur INTO rec_mk.*

Output dari statement di atas, sbb.

DK-14301

Pemrog.Gene.4

3

P cursor

TI-17204

Sistem Pakar

2

P

TI-18201

Automata

2

P

Jika FETCH dijalankan sekali lagi, maka cursor akan berpindah ke baris kedua. Bila cursor berada setelah baris terakhir, maka tidak ada lagi informasi yang akan diambil. Pada saat yang sama Informix akan mengisi variabel status dengan informasi NOT FOUND, sebagai tanda bahwa cursor sudah berada di ‘luar batas’.

DK-14301

Pemrog.Gene.4

3

P

TI-17204

Sistem Pakar

2

P

TI-18201

Automata

2

P

Status = NOT FOUND cursor

Karena kita tidak dapat memperkirakan berapa jumlah baris dalam aktif set, maka kita harus selalu memeriksa isi variabel status, segera setelah statement FETCH.

Contoh :

FETCH kur INTO rec_mk.*

IF status = notfound then

Message ‘Tidak ada data’

ELSE
display ‘Kode Matakuliah :,rec_mk.kd_mk

Display ‘Nama Matakuliah :,rec_mk.nm_mk

END IF

CLOSE

Jika sudah tidak membutuhkan informasi atas baris-baris yang diperoleh dari statement SELECT, maka gunakan statement CLOSE atas kursor yang terkait.

#contoh penggunaan statement Close

CLOSE kur

Dapat menggunakan WHILE loop untuk pengulangan pembacaan (FETCH) suatu baris dan memeriksa variabel status selama seluruh baris yang ada dalam aktif set diproses.

Sintaks :

WHILE ekspresi Boolean

…………………………….

…………………………….

[ CONTINUE WHILE ]

…………………………….

…………………………….

[ EXIT WHILE ]

END WHILE

#contoh 1

Database filkom

Define r_mk RECORD LIKE t_mk.*,jawab char(1)

Main

DECLARE kurs CURSOR FOR

Select * from t_mk where nm_mk[1]=’A’

OPEN kurs

Let jawab=’y’

WHILE jawab matches’[Yy]’

FETCH kurs INTO r_mk.*

IF status = notfound then

Message ‘Data tidak ada’

EXIT WHILE

END IF

Display ‘Nama Matakuliah : ‘,r_mk.nm_mk

Display ‘Kode Matakuliah : ‘,r_mk.kd_mk

Prompt ‘Lihat data selanjutnya ? [y/t]’ for jawab

ENDWHILE

CLOSE kurs

End main

#contoh 2, untuk memastikan suatu aktif set itu kosong

Database filkom

Define r_mk RECORD LIKE t_mk.*,jawab char(1)

Main

DECLARE kurs SCROLL CURSOR FOR

Select * from t_mk where nm_mk[1]=’B’

OPEN kurs

FETCH FIRST kurs INTO r_mk.*

If status = notfound then

Message ‘Tidak ada data pada aktif set’

Else

Message ‘Minimal ada satu data pada aktif set’

End if

CLOSE kurs

End main

NEXT :menandakan baris berikutnya setelah baris aktif (active set)

PREVIOUS :menandakan baris sebelumnya dari baris aktif

PRIOR

FIRST : menandakan baris pertama pada baris aktif

LAST : menandakan baris terakhir pada baris aktif

CURRENT : menandakan pada baris yg aktif pada active list

RELATIVE m : menandakan baris ke-m relatif pada kursor yg aktif

ABSOLUTE n : menandakan baris ke-n, n bias integer atau variabel dari

program

ARRAY

Array merupakan kumpulan record dengan tipe yang sama

Sintaks : array_name ARRAY[n] OF RECORD

Var_list data_type[..,…..]

END RECORD

n = bilangan integer, merupakan jumlah record yg dapat ditampung

oleh array tersebut.

#contoh

ar_krs ARRAY[12] OF RECORD

npm1 like t_nilai.npm,

nama1 like t_nilai.nama,

kd_mk1 like t_nilai.kd_mk,

nm_mk1 like t_nilai.nm_mk

END RECORD

#contoh

ar_mhs ARRAY[150] OF RECORD LIKE t_master.*

#contoh program lengkap tentang ARRAY

Database filkom

Main

Define ar_mhs ARRAY[150] OF RECORD LIKE t_master.*,

i,j smallint

DECLARE k1 CURSOR FOR

SELECT * from t_master where kelas[1]=’4’

Let i=1

FOREACH k1 INTO ar_mhs[i].*

Let i = i + 1

END FOREACH

Let j = i – 1

FOR i = 1 to j

Display ‘Data ke-‘,i,’ ‘,ar_mhs[i].*

END FOR

End main

Pembuatan FORM dengan 4GL

Screen FORM adalah media yg digunakan untuk input & output variabel pada program 4GL , juga digunakan sebagai penghubung data secara interaktif untuk menghapus , mencari & memodifikasi data .

Sebelum digunakan pada program, screen form harus dibuat & dicompile terlebih dahulu.

Spesifikasi file FORM

File FORM pada Informix-4GL terdiri atas 5 bagian (section) yaitu :

· DATABASE

Untuk mengidentifikasi database (jika digunakan)

· SCREEN

Untuk mengidentifikasi ukuran (dimensi), field tags, & tampilan dari form

· TABLE (bersifat optional)

Untuk mengidentifikasi table (jika digunakan) yg berhubungan dengan field yg digunakan dalam form

· ATTRIBUTE

Untuk mengidentifikasi spesifikasi & kegunaan setiap field pada setiap form seperti tampilan pada layar, komentar dsb.

· INSTRUCTION (bersifat optional)

Mengidentifikasi field delimiter, screen record & screen array.

Tampilan menu FORM pada 4GL

INFORMIX-4GL : Module Form Program Query-language Exit

Modify , Generate,New, Compile a form

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -

FORM : Modify Generate New Compile Exit

Change an existing form specification

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - -- - - - - - - - - -- - Press CTRL-W for help - - - -

Struktur umum form (sama dengan struktur form pada ISQL, hanya pada 4GL ada tambahan INSTRUCTION)

Database {nama database| formonly}

Screen section

{

[text] [field_tag] [char_graphics]

}

end

Tables [nama table]

Attributes

Field_tag = table.column [,type]

End

[Instruction

[delimiter ‘[]’ ]

[screen record nama_record [n]

({table.*

| table.column1 THRU table.column2})

…..]

[end]

Pembuatan form dapat dilakukan dari ‘isql’ atau ‘r4gl’, khusus jika ada instruction, peng-compile-an harus dilakukan melalui r4gl.

#contoh form yg menggunakan instruction

database pelanggan

screen size 24 by 80

{\g--------------------------------------------------------\g

FORM PELANGGAN

Nomor pelanggan : [f000 ]

Nama pelanggan : [f001 ]

A l a m a t : [f002 ]

K o t a : [f003 ]

Jumlah tagihan : [f004 ]

\g-------------------------------------------------------\g

}

end

table customer

attributes

f000 = customer.no;

f001 = customer.nama;

f002 = customer.alamat;

f003 = customer.kota;

f004 = customer.tagihan;

end

INSTRUCTION

SCREEN RECORD rec_cust (customer.nama THRU customer.tagihan)

End

Statement pada INSTRUCTION section, antara lain :

· Statement untuk menampilkan ARRAY

Digunakan perintah SCREEN RECORD

Screen record nama_record [n]

({table.* |table.column1 THRU table.column2|table.column3})

Pada screen section dibentuk sbb:

Database mahasiswa

Screen

{ N P M Nama kelas

-----------------------------------------

[p ] [q ] [r ]

[p ] [q ] [r ]

[p ] [q ] [r ]

}

end

table t_master

attributes

p = t_master.npm;

q = t_master.nama;

r = t_master.kelas;

end

Instruction

Screen record sc_mhs[3]

(t_master.npm,t_master.nama,t_master.kelas)

end

Untuk menampilkan screen form pada program, maka harus ditulis statement pembuka & penutup, yaitu : OPEN FORM & CLOSE FORM

Sintaks : OPEN FORM var_nm_form FROM “form_file”

DISPLAY FORM var_nm_form

CLOSE FORM var_nm_form form yg sdh dicompile

#contoh

OPEN FORM form_cust FROM “f_cust”

Display FORM form_cust

CLOSE FORM form_cust

INPUT statement

Digunakan untuk mengisi nilaipd prog.variabel dgn data dimasukkan melalui screen field

Sintaks : INPUT var_list FROM field_list

Contoh:

· Define rec_cust RECORD LIKE customer.*

INPUT rec_cust.nama,rec_cust.kota FROM nama,kota

· Input rec_cust.nama THRU rec_cust.tagihan

From nama,alamat,kota,tagihan

· Input rec_cust.nama THRU rec_cust.tagihan from r_cust.*

· Kalau semua nama var sama dgn nama field, dpt digunakan :

INPUT BY NAME rec_cust.nama THRU rec_cust.tagihan

DISPLAY statement

Untuk menampilkan nilai variabel melalui screen field

Sintaks : DISPLAY display_list TO field_list

Contoh :

Let rec_cust.nama =’Didi’

Let rec_cust.kota = ‘Jakarta’

Display rec_cust.nama,rec_cust.kota TO nama,kota

{program ini utk melihat data customer berdasarkan nomor customer dgn menggunakan screen form}

database pelanggan

define rec_cust RECORD LIKE customer.*,

in_no LIKE customer.no

main

OPEN FORM form_cust from ‘f_cust’

Display FORM form_cust

Prompt ‘masukkan nomor customer yg dicari :’ form in_no

Select * into rec_cust.*

from customer

where no=in_no

Display by name rec_cust.*

CLOSE FORM form_cust

End main

REPORT Pada R4GL

Cara membuat REPORT

· Routine report berada diluar main routine.

Dengan menggunakan routine report, kita dapat mengatur informasi sebagai suatu laporan dengan menentukan judul laporan, perhitungan, margin, ukuran kertas dan elemen-elemen lainnya.

· Data yg akan ditampilkan dalam report diperoleh dari main routine atau dari function routine.

· Gunakan looping (seperti FOREACH atau WHILE) bersama dengan START REPORT, OUTPUT TO REPORT dan FINISH REPORT, untuk mengirim data ke report.

STRUKTUR REPORT

MAIN

START REPORT report_name

begin loop

statement yg memberikan nilai a,b,c

OUTPUT TO REPORT report_name

……….

End loop

FINISH REPORT report_name

END MAIN

REPORT report_name(x,y,z)

…………….

END REPORT

FORMAT REPORT ROUTINE

REPORT report_name (argument list)

[DEFINEdefine statement]

[OUTPUT output statement]

[ORDER BY sort list]

FORMAT

control block

……….statement…….

………………………………

END REPORT

STATEMENT REPORT

· Report didefinisikan diluar blok MAIN program (main routine)

· Semua variabel yg dikirim ke report diletakkan pada argument_list

· Argument_list tidak boleh terdiri dari array atau record yg mengandung nilai array. (satu argument hanya boleh mempunyai satu nilau yg unik)

DEFINE SECTION

Semua argument_list pada report harus didefinisikan

Report cust_report (no,nama,kota)

Define no smallint,

nama char(25),

kota char(15)

Report cust_daf (r_cust)

Define r_cust record like cust.*

OUTPUT SECTION

· Untuk mengubah margin

· Untuk menentukan panjang kertas

· Mengirim output ke printer atau ke file

· Default margin :

Left margin 5 spaces

Top margin 3 lines

Bottom margin 3 lines

Page length 66 lines

ORDER BY SECTION

· Untuk mengurutkan data melalui report

· Dapat dilakukan berdasarkan argument_list

Report cust_daf (no,nama,kota)

Define no smallint, nama char(25), kota char(15)

order by nama

FORMAT SECTION

Pada bagian ini ditulis control block dan statement² untuk :

· Membuat page header and trailers

· Mencetak informasi dengan format tertentu

· Mengelompokkan informasi

· Perhitungan seperti total atau rata².

END REPORT

Ditulis untuk mengakhiri suatu report, setelah format section.

J MENJALANKAN REPORT J

Data dikirim ke report dari MAIN routine atau function dengan menggunakan loop seperti : WHILE atau FOREACH dgn statement

START REPORT report_name

OUTPUT TO REPORT report_name (variable_list)

FINISH REPORT report_name

#contoh penggunaan looping foreach utk mengirim data ke report

database pelanggan

main

define rec_cust record like cust.*

declare kur cursor for

select * from cust

start report cust_daf

foreach kur into rec_cust.*

output to report cust_daf (rec_cust.*)

end foreach

finish report cust_daf

end main

report cust_daf(r_cust)

define r_cust record like cust.*

format

on every row

end report

Space/spaces

Untuk menyisipkan space diantara 2 ekspresi pada statement

Contoh : print nomor clipped,”,”,2 spaces,nama

Skip

Untuk menyisipkan baris kosong

Contoh : skip 2 lines

Pageno

Penomoran halaman secara otomatis

Cth : Print ‘Laporan Keuangan’,column 50,’Hal : ‘,pageno using ‘##”

#contoh penulisan format section

format

page header

print column 25,”Daftar Pelanggan”

skip 2 lines

print ‘Nomor Pelanggan’,

column 25,’N a m a’,

column 50,’K o t a’

print ‘-------------------------------------------------------‘

skip 1 line

on every row

print no,column 25,nama,column 50,kota

page trailer

print ‘Data pelanggan’,column 60,’hal :’,pageno using ‘##’

output :

Daftar Pelanggan

Nomor Pelanggan N a m a K o t a

1015002 Evita Aulia Jakarta

…………… ………….. ………

Data pelanggan Hal : 1

#contoh pembuatan report

database pelanggan

main

define rec_cust record like cust.*

declare kur cursor for

select no,nama,kota from t_cust

order by kota

start report cust-daf

foreach kur into rec_cust.no,rec_cust.nama,rec_cust.kota

output to report cust_daf(rec_cust.no,rec_cust.nama,

rec_cust.kota)

end foreach

finish report cust_daf

end main

report cust_daf(nomor,nm,kt)

define nomor smallint,nm char(25),kt char(15)

format

on every row

print nomor,column 25,nm,column50,kt

after group of kt

skip 2 lines

end report

output :

103 Dina Bandung

105 Tio Bandung

107 Adi Bandung

104 Doni Bogor

108 Rini Bogor

101 Mira Jakarta

102 Lina Jakarta

106 Tania Jakarta

#contoh penggunaan operasi aritmatika

on every row

print nomor,

column 25,nama,

column 50,tagih*0.8 using “Rp ###,###.##”

#contoh penggunaan function

on last row

print ‘Total Tagihan’,

column 20,SUM(tagih) using ‘Rp ###,###.##’

skip 1 line

print ‘jumlah pelanggan’,

column 20,COUNT(*) using ‘###’

Group function

Yaitu agregate function yg dapat digunakan untuk perhitungan suatu group informasi pada report

· Group sum(eksp)

· Group count(*)

· Group min(eksp)

· Group max(eksp)

· Group avg(eksp)

#contoh menghitung jumlah tagihan setiap kota

…………………

Report hit_tag(nomor,nm,kt,tagih)

Define nomor smallint

nm char(25), kt char(15),

tagih like cust.tagihan

order by kt

format

page header

print ‘NOMOR’,

column 15,’NAMA’,

column 40,’KOTA’,

column 60,’TAGIHAN’

skip 2 lines

on every row

print nomor,column 15,nm,column 40,kt,

column 60,tagih using ‘Rp ###,###.##’

after group of kt

skip 1 line

print column 20,’Total tagihan kota ‘,kt,

column 55,GROUP SUM(tagih) using ‘Rp ###.###.##’

skip 2 lines

page trailer

print column 20,'TOTAL TAGIHAN',

column 55, SUM(tagih) using 'Rp ###.###.##'

end report

………….

Outputnya :

NOMOR NAMA KOTA TAGIHAN

103 Dina Bandung Rp 60.000,00

105 Tio Bandung Rp 15.000,00

107 Adi Bandung Rp 20.000,00

Total tagihan kota Bandung Rp 95.000,00

104 Doni Bogor Rp 30.000,00

108 Rini Bogor Rp 25.000,00

Total tagihan kota Bogor Rp 55.000,00

101 Mira Jakarta Rp 75.000.00

102 Lina Jakarta Rp 35.000,00

106 Tania Jakarta Rp 40.000,00

Total tagihan kota Jakarta Rp 150.000,00

TOTAL TAGIHAN Rp 300.000.00

Menampilkan REPORT

Report dapat ditampilkan ke layar, printer atau ke file.

Report didefinisikan pada output section

OUTPUT

Left margin 10

Page length 50

Report to “/dev/lp0” #cetak ke printer

OUTPUT

Report to “hasil’ #cetak ke file ‘hasil’

OUTPUT

# Report to “hasil’ #cetak ke layar monitor

#contoh pembuatan report tanpa pengiriman parameter

# buat blanko KRS hilang

main

define i,jum smallint

prompt ‘Mau cetak berapa kali : ‘ for jum

for I = 1 to jum

start report cetakan

output to report cetakan( )

finish report cetakan

end for

end main

report cetakan( )

output report to ‘dev/lp1’

format

page header

print ‘Setoran Universitas Gunadarma’

print ‘N P M = ………………’

print ‘Nama = …………………………………………………’

print ‘Kelas = …………’

skip 2 lines

print ‘Biaya pencetakan KRS pengganti Rp 5000’

end report

#prog. pencetakan report npm dan nama mhs per kelas dgn m’gunakan array

database filkom

main

define a_mhs ARRAY[150] of record

npm like t_master.npm,

nama like t_master.nama

end record,

kls char(5),

i,j,k smallint

prompt ‘Masukkan kelas yg akan dicetak : ‘ for kls

declare kur cursor for

select npm,nama from t_master where kelas=kls

order by npm

let i = 1

foreach kur into a_mhs[i].*

let i = i + 1

end foreach

let j = i –1

start report cetak

for k = 1 to j

output to report cetak(a_mhs[k].npm,a_mhs[k].nama,kls,k]

end for

finish report cetak

end main

report cetak(np,nm,kl,m)

define np like t_master.npm,

nm like t_master.nama,

kl like t_master.kelas,

m smallint

output

report to ‘/dev/lp0’

top margin 5

bottom margin 6

left margin 5

page length 66

format

page header

print ‘Universitas Gunadarma’

print ‘Kelas : ‘,kl,column 40,’Hal : ‘,pageno using’##’

print ‘-------------------------------------------------------------------------‘

print column 3,’No’,column 10,’N P M’,column 25,’N A M A’

print ‘-------------------------------------------------------------------------‘

on every row

print column 3, m using ‘###’,column 10,np,column 25,nm

page trailer

print ‘-------------------------------------------------------------------------‘

on last row

print ‘-------------------------------------------------------------------------‘

end report

Tiga (3) contoh program dengan ouput yang sama

#contoh 1

database filkom

globals

define

rec_byr record like t_uang_klh.*

end globals

main

declare kur cursor for

select * from t_uang_klh

where npm[4,5]=’97’ and ket=’L’

start report cetak

foreach kur into rec_byr.*

output to report cetak( )

end foreach

finish report cetak

end main

report cetak( )

output

top margin 5

bottom margin 4

page length 66

report to ‘/dev/lp2’

format

page header

print column 25,’Contoh Laporan Pembayaran’,

column 55,’Hal : ‘,pageno using ‘##’

print ‘-----------------------------------------------------------------‘

print ‘N P M Jumlah Bayar Tanggal Bayar Keterangan’

print ‘-----------------------------------------------------------------‘

on every row

print rec_byr.npm,

column 13,rec_byr.jml_bayar using ‘Rp ##,###,###.##’,

column 34,rec_byr.tgl_bayar using ‘dd/mm/yy’,

column 55,rec_byr.ket

print ‘-----------------------------------------------------------------‘

page trailer

print column 34,’Pem.Generasi 4 ‘,today using ‘ddd,dd/mmm/yyyy’

end report

#contoh 2 : menggunakan parameter

database filkom

main

define

rec_byr record like t_uang_klh.*

declare kur cursor for

select * from t_uang_klh

where npm[4,5]=’97’ and ket=’L’

start report cetak

foreach kur into rec_byr.*

output to report cetak(rec_byr.* ) #contoh kirim parameter

end foreach

finish report cetak

end main

report cetak( rec_byr) #contoh menggunakan parameter

#parameter ini didefenisikan ulang,krn rec_byr tdk didef. secara global

define rec_byr record like t_uang_klh.*

output

top margin 5

bottom margin 4

page length 66

report to ‘/dev/lp2’

format

page header

print column 25,’Contoh Laporan Pembayaran’,

column 55,’Hal : ‘,pageno using ‘##’

print ‘-----------------------------------------------------------------‘

print ‘N P M Jumlah Bayar Tanggal Bayar Keterangan’

print ‘-----------------------------------------------------------------‘

on every row

print rec_byr.npm,

column 13,rec_byr.jml_bayar using ‘Rp ##,###,###.##’,

column 34,rec_byr.tgl_bayar using ‘dd/mm/yy’,

column 55,rec_byr.ket

print ‘-----------------------------------------------------------------‘

page trailer

print column 34,’Pem.Generasi 4 ‘,today using ‘ddd,dd/mmm/yyyy’

end report

#contoh 3 : menggunakan ARRAY

database filkom

globals

define rec_byr array[500] of record like t_uang_klh.*,

i,j smallint

end globals

main

declare kur cursor for

select * from t_uang_klh

where npm[4,5]=’97’ and ket=’L’

let i=1

foreach kur into rec_byr[i].*

let i = i + 1

end foreach

start report cetak

for j = 1 to i-1

output to report cetak( )

end for

finish report cetak

end main

report cetak( )

output

top margin 5

bottom margin 4

page length 66

report to ‘/dev/lp2’

format

page header

print column 25,’Contoh Laporan Pembayaran’,

column 55,’Hal : ‘,pageno using ‘##’

print ‘-----------------------------------------------------------------‘

print ‘N P M Jumlah Bayar Tanggal Bayar Keterangan’

print ‘-----------------------------------------------------------------‘

on every row

print rec_byr[j].npm,

column 13,rec_byr[j].jml_bayar using ‘Rp ##,###,###.##’,

column 34,rec_byr[j].tgl_bayar using ‘dd/mm/yy’,

column 55,rec_byr[j].ket

print ‘-----------------------------------------------------------------‘

page trailer

print column 34,’Pem.Generasi 4 ‘,today using ‘ddd,dd/mmm/yyyy’

end report

Output ketiga program di atas sbb.:

Contoh Laporan Pembayaran Hal : 1

N P M

Jumlah Bayar

Tanggal Bayar

Keterangan

10699009

Rp 3.991.500,00

15/07/99

L

10699017

Rp 3.757.950,00

25/06/99

L

10699026

Rp 3.618.450,00

01/07/99

L

10699028

Rp 4.216.500,00

23/07/99

L

10699036

Rp 4.216.500,00

09/06/99

L

10699049

Rp 3.676.500,00

10/05/99

L

10699061

Rp 3.753.450,00

22/06/99

L

10699086

Rp 3.618.450,00

05/07/99

L

10699087

Rp 3.618.450,00

16/08/99

L

10699104

Rp 3.991.500,00

02/08/99

L

10699105

Rp 3.753.450,00

21/06/99

L

10699142

Rp 3.618.450,00

01/06/99

L


LATIHAN

Diketahui :

nama database yang digunakan -> pegawai

nama table yang digunakan -> t_barang

struktur file sbb :

kd_brg char(4)

nm_brg char(25)

hrg_brg money

stock_min smallint

jml_brg smallint

ket_brg char(1)

Ketentuan untuk field tag yang didiskripsikan dalam attribute :

- kd_brg harus diisi 2x

- nm_brg harus huruf besar dan jika pengisian nm_brg sudah penuh maka kursor otomatis akan pindah pada field berikutnya

- ket_brg hanya boleh diisi angka '1','2','3' atau '4'

Syarat perintah query yang digunakan pada report yaitu :

"tampilkan semua data barang yang ket_brg adalah '1' atau '2' saja !"

SOAL :

1. Buatkan program untuk menampilkan FORM

2. Buatkan program untuk membuat REPORT dengan ketentuan sbb :

- batas atas 5

- batas bawah 5

- batas kiri 5

- batas kanan 5

- panjang kertas 60

- dicetak dikertas dengan nama printer '/dev/lp3'

OUTPUT :

LAPORAN PERSEDIAAN BARANG

Hal : ....

-----------------------------------------------------

Kode Brg Nama Brg Harga Jumlah

-----------------------------------------------------

A012 Kertas Folio Rp. 12.000 30

xxxx xxxxxx Rp.999.999 99

xxxx xxxxxx Rp.999.999 99

xxxx xxxxxx Rp.999.999 99

xxxx xxxxxx Rp.999.999 99

-----------------------------------------------------

Twitter Delicious Facebook Digg Stumbleupon Favorites More

 
Design by Free WordPress Themes | Bloggerized by Lasantha - Premium Blogger Themes | Enterprise Project Management