Seperti yang sudah dibahas sebelumnya, program posting untuk APP_TYPE tidak bisa digabungkan dengan layar QUERY_TYPE. Oleh karena itu kita akan buat program posting ini di layar 472. Sebelum kita masuk ke layar 472, ketikkan terlebih dahulu perintah berikut di layar 471 di bwh perintah SCR_FILE pbc.
SCR_NXT_POSTING 472 SCR_NXT_MAP mnext MAP(mnext) pbcnoprc r_string1 REPLACE pbctgl r_date1 REPLACE
Setelah menuliskan perintah di atas marilah kita segera masuk ke layar editor 472 dengan cara mengetikkan perintah vi prt9000/sct472 pada editor vi. Setelah kita masuk ke layar editor 472, ketikkan perintah sebagai berikut.
SCREEN 472 APP_TYPE Posting Bayar Hutang LOCAL PGM_FIELDS lmutawl STRING 15 lstatus STRING 5 lganti INT2 2 IMAGE(master) {BASE_ROW=1} {FRSFLD_BACKUP} {LSTFLD_ADVANCE} SCT472 @DATE /---------------------Posting Pembayaran Hutang------------------------------\ | | | Status : ____ | | | | Nomor. Bukti : ______________ | | | |----------------------------------------------------------------------------| | No O/S Nomor Sts Kode Jumlah Suplier | | Perencanaan Cek Rekening Pembayaran | \----------------------------------------------------------------------------/ FIELD(master) lstatus PROTECT NONE 1 lmutawl ALLCAPS INPUTRI 2 CALCS() cganti0 lganti == 0 DEFAULTS(master) lmutawl INIT {r_string1} lstatus INIT OPEN /*-------------------- SUBFILE INFORMATION (trans) --------------------*/ IMAGE(transt) {NO_CLS} {LSTFLD_ADVANCE} {FRSFLD_BACKUP} {BASE_ROW=15} +5 +5 {TOP} Nomor Fak Tgl jt Sisa Hutang Jumlah Bayar +6 +6 {TOP} IMAGE(trans) {NO_CLS} {LSTFLD_ADVANCE} {FRSFLD_BACKUP} {BASE_ROW=20} ______________ ________ ____________ ___________.__ ____ __________ ____________ __________ FIELD(trans) pbdnofak ALLCAPS SCROLL INPUTRI 1 pbdtgljtp PROTECT {DD-MM-YY} NONE 3 pbddvs PROTECT NONE 5 pbdjml NUMERIC NONE 7 pbdnobuk PROTECT SCROLL NONE 2 pbdnobbm PROTECT NONE 2 pbccab2 PROTECT NONE 2 pbccab PROTECT NONE 2 SUBFILE(trans) SFL_TITLE(transt) SFL_LINES(2) SFL_TARGET pbdbukdvsidx lmutawl /*-------------------- SUBFILE INFORMATION --------------------*/ /* No O/S Nomor Sts Kode Jumlah Suplier Perencanaan Cek Rekening Pembayaran */ IMAGE(trans2) {NO_CLS} {LSTFLD_ADVANCE} {FRSFLD_BACKUP} {BASE_ROW=13} ____________ _ _ ___________ ____ ________ _ ___________.__ ______ ____ ________ FIELD(trans2) pcmnoprc NOCHANGE SCROLL INPUTRI 1 pcmtype NOCHANGE SCROLL INPUTRI 2 pcmtype2 NOCHANGE SCROLL INPUTRI 3 pcmnocek NOCHANGE SCROLL INPUTRI 4 pcmsts PROTECT INPUTRI 5 pcmnobbm PROTECT SCROLL INPUTRI 6 pcmtgl PROTECT UNSEEN INPUTRI 7 pcmtotal PROTECT INPUTRI 8 pcmplg PROTECT SCROLL INPUTRI 9 pcmdvs PROTECT SCROLL INPUTRI 10 pcmtgljtp PROTECT {DD-MM-YY} INPUTRI 11 SUBFILE(trans2) SFL_LINES(4) SFL_COND cganti0 SFL_TARGET pcmnoprcidx pbdnobuk /*--------------- dupdpmb ---------------*/ CALCS() cpmbsisa pmbsisa - pbdjml cCLSD CLSD cINPG INPG c1 1 ctunai pcmtype == "T" cCEK pcmtype == "C" MAP(mupdpmb) cpmbsisa pmbsisa DO_CALC DBCALCS(dupdpmb) DBC_COMMAND UPDATE DBC_TARGET pmbnofakidx pbdnofak DBC_MAP mupdpmb /*--------------- dupdpbc ---------------*/ MAP(mupdpbc) cCLSD pbcsts DO_CALC g_tgltrn pbcpostgl REPLACE DBCALCS(dupdpbc) DBC_COMMAND UPDATE DBC_TARGET pbcnoprcidx pbdnobuk DBC_MAP mupdpbc /*-------------- dupdpbd ---------------*/ MAP(mupdpbd) cCLSD pbdsts DO_CALC DBCALCS(dupdpbd) DBC_COMMAND UPDATE DBC_TARGET pbdprmidx pbdprm DBC_MAP mupdpbd /*-------------- dupdpcm ---------------*/ MAP(mupdpcm) cCLSD pcmsts DO_CALC_IF ctunai cINPG pcmsts DO_CALC_IF cCEK c1 lganti DO_CALC DBCALCS(dupdpcm) DBC_COMMAND UPDATE DBC_TARGET pcmprmidx pcmprm DBC_MAP mupdpcm SPCALCS(spcal1) dupdpmb Berfungsi mengubah field pmbsisa yang menyimpan informasi sisa hutang dupdpbc Berfungsi mengubah field pbcsts menjadi CLSD dupdpbd Berfungsi mengubah field pbdsts menjadi CLSD SPCALCS(spcal2) dupdpcm POSTING(trans) PST_COMMAND spcal1 POSTING(trans2) PST_COMMAND spcal2 END_SCREEN Kata - kata yang berwarna merah hanyalah keterangan saja jadi tidak perlu ditulis
Setelah kita menyelesaikan program posting di atas, langkah terakhir yang kita lakukan adalah membuat program laporan rts.