CICS - Tombol Bantuan
Seperti yang telah kita bahas di modul sebelumnya, kunci AID dikenal sebagai Attention Identifier Keys. CICS hanya dapat mendeteksi kunci AID. Setelah mengetik semua input, hanya ketika pengguna menekan salah satu tombol AID, CICS mengambil kendali. Kunci AID termasuk ENTER, PF1 hingga PF24, PA1 hingga PA3, dan CLEAR.
Memvalidasi kunci AID
Tombol yang ditekan oleh pengguna diperiksa dengan menggunakan EIBAID.
EIBAID panjangnya satu byte dan menyimpan nilai pengenal perhatian aktual yang digunakan dalam aliran input 3270.
CICS memberi kita seperangkat variabel pra-kode yang dapat digunakan dalam program aplikasi dengan menulis pernyataan berikut -
SALIN DFHAID
DFHAID
DFHAID adalah buku salinan yang digunakan dalam program aplikasi untuk menyertakan kumpulan variabel yang telah dikodekan sebelumnya CICS. Konten berikut ada di buku fotokopi DFHAID -
01 DFHAID.
02 DFHNULL PIC X VALUE IS ' '.
02 DFHENTER PIC X VALUE IS ''''.
02 DFHCLEAR PIC X VALUE IS '_'.
02 DFHCLRP PIC X VALUE IS '¦'.
02 DFHPEN PIC X VALUE IS '='.
02 DFHOPID PIC X VALUE IS 'W'.
02 DFHMSRE PIC X VALUE IS 'X'.
02 DFHSTRF PIC X VALUE IS 'h'.
02 DFHTRIG PIC X VALUE IS '"'.
02 DFHPA1 PIC X VALUE IS '%'.
02 DFHPA2 PIC X VALUE IS '>'.
02 DFHPA3 PIC X VALUE IS ','.
02 DFHPF1 PIC X VALUE IS '1'.
02 DFHPF2 PIC X VALUE IS '2'.
02 DFHPF3 PIC X VALUE IS '3'.
02 DFHPF4 PIC X VALUE IS '4'.
02 DFHPF5 PIC X VALUE IS '5'.
02 DFHPF6 PIC X VALUE IS '6'.
02 DFHPF7 PIC X VALUE IS '7'.
02 DFHPF8 PIC X VALUE IS '8'.
02 DFHPF9 PIC X VALUE IS '9'.
02 DFHPF10 PIC X VALUE IS ':'.
02 DFHPF11 PIC X VALUE IS '#'.
02 DFHPF12 PIC X VALUE IS '@'.
02 DFHPF13 PIC X VALUE IS 'A'.
02 DFHPF14 PIC X VALUE IS 'B'.
02 DFHPF15 PIC X VALUE IS 'C'.
02 DFHPF16 PIC X VALUE IS 'D'.
02 DFHPF17 PIC X VALUE IS 'E'.
02 DFHPF18 PIC X VALUE IS 'F'.
02 DFHPF19 PIC X VALUE IS 'G'.
02 DFHPF20 PIC X VALUE IS 'H'.
02 DFHPF21 PIC X VALUE IS 'I'.
02 DFHPF22 PIC X VALUE IS '¢'.
02 DFHPF23 PIC X VALUE IS '.'.
02 DFHPF24 PIC X VALUE IS '<'.
Contoh
Contoh berikut menunjukkan cara menggunakan buku salinan DFHAID dalam program aplikasi -
IDENTIFICATION DIVISION.
PROGRAM-ID. HELLO.
DATA DIVISION.
WORKING-STORAGE SECTION.
COPY DFHAID.
PROCEDURE DIVISION.
A000-AIDKEY-PARA.
EVALUATE EIBAID
WHEN DFHAID
PERFORM A000-PROCES-PARA
WHEN DFHPF1
PERFORM A001-HELP-PARA
WHEN DFHPF3
PERFORM A001-EXIT-PARA
END-EVALUATE.
Penempatan Kursor
Ada dua cara untuk mengganti posisi yang ditentukan dalam definisi peta.
Salah satu caranya adalah menentukan posisi layar relatif terhadap nomor baris dan kolom dalam opsi KURSOR pada perintah kirim peta.
Cara lain adalah dengan memindahkan -1 ke variabel peta simbolik yang diakhiri dengan L. Kemudian, kirim peta dengan opsi KURSOR di KIRIM PETA.
Contoh
Contoh berikut menunjukkan cara mengganti posisi kursor untuk bidang NAME -
MOVE -1 TO NAMEL
EXEC CICS SEND
MAP ('map-name')
MAPSET ('name-field')
ERASE
FREEKB
CURSOR
END-EXEC.
Mengubah Atribut Secara Dinamis
Saat mengirim peta, jika kita ingin memiliki atribut berbeda untuk bidang selain yang ditentukan di peta, maka kita dapat menimpanya dengan menyetel bidang di program. Berikut penjelasan untuk menimpa atribut suatu field -
Untuk menimpa atribut dari sebuah field, kita harus memasukkan DFHATTR ke dalam program aplikasi. Ini disediakan oleh CICS.
Atribut yang diperlukan dapat dipilih dari daftar dan dipindahkan ke variabel bidang simbolik dengan akhiran 'A'.
DFHATTR menyimpan konten berikut -
01 CICS-ATTRIBUTES.
05 ATTR-UXN PIC X(01) VALUE SPACE.
05 ATTR-UXMN PIC X(01) VALUE 'A'.
05 ATTR-UXNL PIC X(01) VALUE 'D'.
05 ATTR-UXMNL PIC X(01) VALUE 'E'.
05 ATTR-UXBL PIC X(01) VALUE 'H'.
05 ATTR-UXMBL PIC X(01) VALUE 'I'.
05 ATTR-UXD PIC X(01) VALUE '<'.
05 ATTR-UXMD PIC X(01) VALUE '('.
05 ATTR-U9N PIC X(01) VALUE '&'.
05 ATTR-U9MN PIC X(01) VALUE 'J'.
05 ATTR-U9NL PIC X(01) VALUE 'M'.
05 ATTR-U9MNL PIC X(01) VALUE 'N'.
05 ATTR-U9BL PIC X(01) VALUE 'Q'.
05 ATTR-U9MBL PIC X(01) VALUE 'R'.
05 ATTR-U9D PIC X(01) VALUE '*'.
05 ATTR-U9MD PIC X(01) VALUE ')'.
05 ATTR-PXN PIC X(01) VALUE '-'.
05 ATTR-PXMN PIC X(01) VALUE '/'.
05 ATTR-PXNL PIC X(01) VALUE 'U'.
05 ATTR-PXMNL PIC X(01) VALUE 'V'.
05 ATTR-PXBL PIC X(01) VALUE 'Y'.
05 ATTR-PXMBL PIC X(01) VALUE 'Z'.
05 ATTR-PXD PIC X(01) VALUE '%'.
05 ATTR-PSN PIC X(01) VALUE '0'.
05 ATTR-PSMN PIC X(01) VALUE '1'.
05 ATTR-PSNL PIC X(01) VALUE '4'.
05 ATTR-PSMNL PIC X(01) VALUE '5'.
05 ATTR-PSBL PIC X(01) VALUE '8'.
05 ATTR-PSMBL PIC X(01) VALUE '9'.
05 ATTR-PSD PIC X(01) VALUE '@'.
05 ATTR-PSMD PIC X(01) VALUE "'".