Adalah fasilitas untuk menghubungkan file master dengan file trans (detail dari master) atau file trans2 (detail dari trans). Dengan fungsi ini anda dapat mengisi data di trans atau trans2. Tanpa fungsi ini anda tidak akan bisa masuk ke file trans ataupun trans2. Susunan subfile adalah sebagai berikut :
SUBFILE(trans/trans2) SFL_LINES(jumlah baris) SFL_TITLE nama image judul SFL_TARGET index file trans field master (4 perintah di atas harus ada agar anda bisa masuk ke file trans atau trans2) SFL_MAP field master field trans SFL_COND nama kondisi SFL_SELECT nama kondisi
Berikut adalah keterangan dari tiap - tiap perintah yang ada di perintah SUBFILE :
SFL_LINES berfungsi untuk menentukan jumlah baris yang ingin ditampilkan di trans/trans2. Rumus jumlah baris adalah : 22-baris data trans/trans2 (base_row trans/trans2). SFL_TARGET berfungsi sebagai penghubung master ke trans berdasarkan index trans SFL_MAP berfungsi untuk memindahkan isi field master ke field trans/trans2. SFL_MAP tidak memerlukan nama MAP. Jadi, field - field master yang akan dipindah langsung diletakkan di bawah fungsi SFL_MAP. SFL_COND berfungsi untuk memberi kondisi pada saat akan masuk ke file trans. Apabila kondisi benar, maka dapat masuk ke layar trans, tapi bila kondisi salah maka anda tidak akan dapat mengisi ataupun masuk ke layar trans. SFL_SELECT berfungsi untuk menyeleksi data yang akan dikumpulkan berdasarkan index yang dipakai sesuai dengan kondisi dari select. Data yang sudah diseleksi akan ditampilkan di trans. SFL_TITLE berfungsi untuk menentukan nama yang dipakai untuk judul pada saat kursor berada di trans.
Sebagai contoh kita akan menghubungkan file master (bkk) dan file trans (bkd) di screen 271 ini. Maka langkah - langkah yang harus dilakukan adalah sebagai berikut :
1. Kita buat dulu IMAGE yang akan ditampilkan di file trans ini (bkd). IMAGE(transt) {NO_CLS} {LSTFLD_ADVANCE} {FRSFLD_BACKUP} {BASE_ROW=9} /--t-----t------------t----t---------------t----------t--------------t----------------------\ |No| F/L | No.Faktur |Type| Jumlah | Rek.Debit| Ket.Rekening | Keterangan | |--|-----|------------|----|---------------|----------|--------------|----------------------| \--.-----.------------.----.---------------.----------.--------------.----------------------/ /*** SUBFILE INFORMATION ***/ IMAGE(trans) {NO_CLS} {LSTFLD_ADVANCE} {FRSFLD_BACKUP} {BASE_ROW=12} {COVER_MASTER} |__| __ |___________ | __ |____________.__|__________|______________|______________________| 2. Setelah itu kita isi field2 yang diperlukan untuk ditampilkan pada IMAGE di atas yaitu sebagai berikut : FIELD(trans) /* Symbol Name Input Attribute Output Attribute Input Order I/O Special */ bkdnourt NUMERIC INPUTRI 1 /* Kode Rekening */ bkdcab NOCHANGE SCROLL INPUTRI 2 /* Kode Rekening */ bkdbgn ALLCAPS SCROLL INPUTRI 3 /* Kode Rekening */ bkdtype NOCHANGE INPUTRI 4 bkdjml NUMERIC INPUTRI 5 /* jumlah */ bkdnobbm ALLCAPS INPUTRI 6 /* Kode Rekening */ bbmket PROTECT INPUTRI 7 /* jumlah */ bkdket ALLCAPS SCROLL INPUTRI 8 3. Setelah IMAGE dan FIELD terisi barulah kita menghubungkan file detail tersebut (bkd) dengan file master (bkk) dengan menggunakan perintah SUBFILE. Perintah ini dituliskan di bwh nama - nama FIELD yang sudah kita buat pd langkah ke-2. Susunan perintah SUBFILE yang ditulis adalah sebagai berikut : SUBFILE(trans) SFL_LINES(6) /* total number of lines sfl takes up on screen */ SFL_TITLE(transt) SFL_TARGET /* Index file detil Field master */ bkdnumurtbbm bkknum SFL_MAP /* Field master Field Detil Type Map */ bkknum bkdnum REPLACE bkktgl bkdtgl REPLACE bkksts bkdsts REPLACE bkktype2 bkdtype2 REPLACE bkkkode bkdsup REPLACE bkkscr bkdscr REPLACE
Dengan melakukan 3 langkah di atas maka file master bkk dan file detail trans sudah terhubung dan anda dapat masuk dan mengisi data di file trans tersebut. Setelah itu marilah kita mempelajari file - file bkd yang dipakai di layar 271 ini.
Nama File : bkd File ini berfungsi untuk menyimpan perincian/detil dari file bkk. Field - field penting pada bkd : bkdnum : isi field ini sama dengan bkknum yaitu no.bukti transaksi. bkdtgl : isi field ini sama dengan bkktgl yaitu tanggal transaksi. bkdsts : status transaksi ( OPEN : data belum diposting, CLSD : data sudah diposting ) bkdnourt : nomor urut transaksi. bkdcab : isi field ini sama dengan bkkcab yaitu cabang yang melakukan transaksi pengeluaran kas. bkdbgn : No.Faktur bkdjml : nominal pengeluaran kas/bank/cek bkdnobbm : no.rekening lawannya kas/bank/cek. Misalnya diisi dengan rek.biaya, pendapatan lain, piutang karyawan, dll bkdket : keterangan dari transaksi bkdtype2 : isi field ini sama dengan bkktype2 (pada layar ini diisi dengan KK (Kas Keluar) ) bkdscr : menunjukkan berada di screen mana (dalam hal ini berada di screen 271)
Setelah kita cukup mengenal file bkd, maka langkah selanjutnya yang harus kita lakukan adalah menghubungkan file pcm dengan file bkk. File pcm juga berfungsi sebagai detail dari bkk. File pcm ini berfungsi untuk mengetahui kita melakukan pengeluaran dengan menggunakan kas / bank / cek. Langkah - langkah yang harus dilakukan untuk menghubungkan file bkk dengan pcm sama persis dengan langkah - langkah menghubungkan bkk dengan bkd yaitu sebagai berikut :
1. Kita buat dulu IMAGE yang akan ditampilkan di file transa (menggunakan nama transa karena merupakan detail ke-2 dari master) IMAGE(transat) {NO_CLS} {LSTFLD_ADVANCE} {FRSFLD_BACKUP} {BASE_ROW=9} /----t---t------------t------------t-------------t--------t--------------t-------------------------\ |Type|S/O| Nomor Cek |Rek.Kas/Bank| Nama Bank |Tgl Jtp | Nilai | Keterangan | |----|---|------------|------------|-------------|--------|--------------|-------------------------/ \----.---.------------.------------.-------------.--------.--------------.-------------------------/ IMAGE(transa) {NO_CLS} {LSTFLD_ADVANCE} {FRSFLD_BACKUP} {BASE_ROW=12} {COVER_MASTER} | _ | _ |____________|____________|_____________|________|___________.__|_________________________| 2. Setelah itu kita isi field - field yang akan ditampilkan pada IMAGE transa tersebut. FIELD(transa) pcmtype NOCHANGE INPUTRI 1 /* Type O/S */ pcmtype2 NOCHANGE INPUTRI 2 /* Type O/S */ pcmnocek ALLCAPS INPUTRI 3 /* nomor cek */ pcmnobbm ALLCAPS INPUTRI 4 /* Kode Rekening */ pcmbank ALLCAPS NONE 5 /* Keterangan */ pcmtgljtp NONE NOLIMIT {DD-MM-YY} INPUTRI 6 /* Tanggal jt */ pcmtotal NUMERIC INPUTRI 7 /* Nilai Cek */ pcmket ALLCAPS SCROLL INPUTRI 8 /* Kode Rekening */ 3. Langkah terakhir untuk menghubungkan file master dengan file pcm ini sama seperti ketika kita menghubungkan bkk dengan bkd. yaitu dengan menggunakan perintah SUBFILE. Susunan perintah SUBFILE adalah sebagai berikut : SUBFILE(transa) SFL_LINES(6) /* total number of lines sfl takes up on screen */ SFL_TITLE(transat) SFL_TARGET pcmty3prcidx bkktype2 bkknum SFL_MAP /* parent field child field length */ bkknum pcmnoprc bkktgl pcmtgl bkkkode pcmplg bkktype2 pcmtype3 bkknama pcmnama bkktype pcmasaltr bkkscr pcmscr bkkdvs pcmdvs bkkcab pcmcab
Setelah menghubungkan file pcm dengan file master maka alangkah baiknya bila kita mengenal field - field pcm yang digunakan di layar 271 ini.
Nama File : pcm Berfungsi sebagai file yang menyimpan informasi penerimaan dan pengeluaran kas / bank / cek pcmnoprc : isi dari field ini sama dengan bkknum yaitu no.bukti transaksi pcmnocek : no.cek / giro bila penerimaan / pengeluaran lewat kas /giro pcmsts : status dari transaksi pcm pcmtype : tipe dari pcm ( T:Tunai, C:Cek, M:Mutasi, K:Kredit Card ) pcmtgl : tanggal transaksi pcmtgljtp : tanggal jatuh tempo pcmnobbm : no.rekening kas / bank pcmnobbm2 : no.rekening piutang giro / hutang giro apabila pcmtype = C pcmtotal : total kas / bank / cek yang dikeluarkan / diterima pcmdk : terisi D apabila penerimaan kas / bank / cek terisi K apabila pengeluaran kas / bank /cek pcmscr : nomor screen di mana data diisikan