Perintah ini berfungsi untuk menghubungkan dua file data dalam formasi master file dan detail file. Field atau kombinasi field dari file master akan digunakan untuk mencari rekord rekord yang ada di file detail dengan menggunakan index dari file detail. Index ini sendiri harus bisa duplikat. Bila SUBFILE ada DEFAULT mis. SUBFILE(trans) ada DEFAULT(trans) maka setiap rekord yang ditemukan di detail akan disimpan di file sementara di harddisk sehingga perubahan data di trans akan terus disimpan di file sementara tsb. Bila tidak ada kebutuhan menyimpan ke file sementara, jangan menggunakan DEFAULT untuk SUBFILE tsb.
Cara Memakai: SUBFILE(trans/trans2) SFL_LINES(8) /* Jumlah baris yang akan digunakan oleh detail */ SFL_TITLE(transt/trans2t) SFL_COPY_IMAGE(copy_image) /* Nama IMAGE untuk copy dari detail ke detail */ /* Di dalam IMAGE fieldnya harus satu saja dan ** harus field master yang ** dipakai sebagai target untuk ke subfile */ SFL_MAP_MAP(namaMap) /* Map umum, tidak bisa bareng dengan SFL_MAP */ SFL_RKP_SCR nomorScreen /* Scr ini akan dijalankan pada saat ke master, ke detail atau 'o'. */ SFL_RKP_MAP(namaMap) /* Map ini dijalankan sebelum SFL_RKP_SCR */ SFL_RKP_COND namaCalc /* Bila cond ini ada, akan dicek dulu sebelum menjalankan SFL_RKP_SCR*/ SFL_SELECT namaCalc /* kondisi yang diselect */ SFL_COND namaCalc /* kondisi untuk ke detail */ SFL_COPY_COND namaCalc /* kondisi untuk copy */ SFL_DEL_COND namaCalc /* kondisi untuk menghapus tampilan rekord ** sfl yang bukan hasil dari ctrl-N, tapi ** rekord sesungguhnya belum dihapus dari ** hard-disk. Gunakan PST_AFT_DELCMD bila ** ingin menghapus rekord dari hard-disk. */ SFL_TARGET SFL_TARGET_GTE /* index dari file detail field field master u/ target */ SFL_MAP /* parent field child field */ SFL_APP_TYPE /* Mengubah subfile tipe query menjadi applikasi */ SFL_ADD_OK /* Boleh menambah rekord tambahan di subfile yang lain dari yang pertama ditampilkan di layar dengan menggunakan Ctrl-N */ SFL_ADD_ENTER Tombol enter pada baris terakhir di SUBFILE akan diubah menjadi Ctrl-N secara otomatis untuk penambahan rekord. SFL_DIR YYMM atau {namaField} Gunakan rekord di direktori YYMM untuk ditampilkan di subfile. Bila ada VALIDATE maka rekord divalidasi terhadap file lain di direktori YYMM kecuali bila VALIDATE_DIR dihidupkan. SFL_HOOKS_AFTER_EDIT Fasilitas ini menjalankan HOOKS BEFORE_INPUT (yang tidak PROTECT) pada saat turun ke detail. SFL_NO_LAST_LINE Fasilitas ini menghilangkan baris terakhir dari subfile, berfungsi untuk mempermanis tampilan, biasanya tampilan subfile ditutup pada baris terakhir oleh title. SFL_SHOW_SFL Menampilkan detail dari rekord ini. Sementara hanya berjalan bila sedang di trans dan akan menampilkan trans2. SFL_SORT_BY_FIELD namaField Fasilitas ini mengurutkan detail berdasarkan field ini. Berguna untuk mengurutkan detail dari field yang tidak punya index. SFL_SORT_UPDOWN UP/DOWN untuk mengurutkan naik atau turun Keterangan: 1. Rekord rekord yang muncul di detail dicari dengan cara menggabung field field master menjadi satu target pencarian. Kemudian target ini dicari di index dari file detail. 2. Bila SFL_TARGET yang digunakan, rekord rekord di detail dicari dengan memastikan bahwa index yang ditemukan cocok dengan target yang dicari SEPANJANG target itu. contoh: SFL_TARGET ppdfakbrgidx ppmfak ppmfak = "FAK1" maka semua rekord di ppd yang depannya FAK1 akan ditampilkan, tapi FAK2 tidak akan ditampilkan. 3. Bila SFL_TARGET_GTE (Greater or Equal) yang digunakan, rekord rekord di detail dicari dengan memastikan bahwa index yang ditemukan lebih besar atau sama dengan target awal dan lebih kecil atau sama dengan target akhir. Dengan kata lain SFL_TARGET_GTE SELALU membutuhkan pasangan target awal dan akhir. Target akhir ditandai dengan kurung paragraph. contoh: SFL_TARGET_GTE ppdfakbrgidx ppmfak {lfak} ppmfak = "FAK1" lfak = "FAK5" maka semua rekord di ppd yang lebih besar FAK1 dan lebih kecil FAK5 akan ditampilkan. 4. SFL_MAP berfungsi mengopi field dari master ke detail HANYA pada saat PENAMBAHAN rekord di detail. 5. Pada layar tipe QUERY_TYPE, SUBFILE atau detail yang biasanya berbentuk QUERY_TYPE juga dapat diubah menjadi APPLICATION_TYPE dengan menambahkan perintah SFL_APP_TYPE 6. Untuk mempercepat pencarian rekord rekord detail khusus untuk layar dengan tipe APPLICATION_TYPE, harap gunakan SFL_TARGET_GTE.