CICS - BẢN ĐỒ

BMS nhận dữ liệu do người dùng nhập vào và sau đó định dạng nó thành một vùng bản đồ tượng trưng. Chương trình ứng dụng chỉ có quyền truy cập vào dữ liệu có trong bản đồ tượng trưng. Chương trình ứng dụng xử lý dữ liệu và đầu ra được gửi đến bản đồ tượng trưng. BMS sẽ hợp nhất đầu ra của dữ liệu biểu tượng với bản đồ vật lý.

Bản đồ vật lý

Bản đồ vật lý là một mô-đun tải trong thư viện tải chứa thông tin về cách hiển thị bản đồ.

  • Nó chứa thông tin chi tiết về thuộc tính của tất cả các trường trong bản đồ và vị trí của chúng.

  • Nó chứa định dạng hiển thị của bản đồ cho một thiết bị đầu cuối nhất định.

  • Nó được mã hóa bằng macro BMS. Nó được tập hợp riêng biệt và liên kết được chỉnh sửa vào thư viện CICS.

Bản đồ tượng trưng

Bản đồ tượng trưng là một cuốn sách Sao chép trong thư viện. Sách Copy được chương trình ứng dụng CICS sử dụng để gửi và nhận dữ liệu từ thiết bị đầu cuối.

  • Nó chứa tất cả dữ liệu biến được sao chép vào phần WORKINGSTORAGE của chương trình.

  • Nó có tất cả các trường được đặt tên. Người lập trình ứng dụng sử dụng các trường này để đọc và ghi dữ liệu vào bản đồ.

Trường Skipper và Stopper

Đối với trường có tên không được bảo vệ, trong bản đồ, nếu chúng tôi đã chỉ định độ dài là 10, điều này có nghĩa là trường tên có thể nhận các giá trị có độ dài không được vượt quá 10. Nhưng khi bạn hiển thị bản đồ này bằng CICS và bắt đầu nhập giá trị cho trường này trên màn hình, chúng ta có thể nhập hơn 10 ký tự, tức là, cho đến cuối màn hình và chúng ta có thể nhập ngay cả ở dòng tiếp theo. Để ngăn chặn điều này, chúng tôi sử dụng trường Skipper hoặc trường nút chặn. Trường Skipper nói chung sẽ là trường Không tên có độ dài 1, được chỉ định sau trường được đặt tên.

Trường Skipper

Nếu chúng ta đặt trường bỏ qua sau trường không được bảo vệ đã đặt tên, thì trong khi nhập giá trị, khi đạt đến độ dài được chỉ định, con trỏ sẽ tự động chuyển sang trường không được bảo vệ tiếp theo. Ví dụ sau cho thấy cách thêm trường bỏ qua:

NUMBER  DFHMDF POS = (01,01), X
   LENGTH = 5, X
   ATTRB = (UNPROT,IC)
      DFHMDF POS = (01,07), X
      LENGTH = 1, X
      ATTRB = (ASKIP)

Trường nút

Nếu chúng ta đặt trường nút chặn sau trường không được bảo vệ đã đặt tên, thì trong khi nhập giá trị, khi đạt đến độ dài được chỉ định, con trỏ sẽ dừng vị trí của nó. Ví dụ sau đây cho thấy cách thêm trường nút:

NUMBER  DFHMDF POS = (01,01), X
   LENGTH = 5, X
	ATTRB = (UNPROT,IC)
	   DFHMDF POS = (01,07), X
      LENGTH = 1, X
      ATTRB = (PROT)

Thuộc tính Byte

Byte thuộc tính của bất kỳ trường nào lưu trữ thông tin về các thuộc tính vật lý của trường. Sơ đồ sau và bảng giải thích ý nghĩa của từng bit.

Vị trí bit Sự miêu tả Cài đặt bit
0 & 1   Được xác định bởi nội dung của bit 2 đến bit 7
2 & 3 Bảo vệ & Dịch chuyển 00 - Chữ và số không được bảo vệ
01 - Chữ số
10 không được bảo vệ - Điểm dừng được bảo vệ
11 - Bỏ qua được bảo vệ
4 & 5 Cường độ 00 - Bình thường
01 - Bình thường
10 - Sáng
11 - Không hiển thị (Tối)
6   Phải luôn luôn bằng 0
7 Thẻ dữ liệu được sửa đổi 0 - Trường chưa được sửa đổi
1 - Trường đã được sửa đổi

Thẻ dữ liệu được sửa đổi

Thẻ dữ liệu sửa đổi (MDT) là bit cuối cùng trong byte thuộc tính.

  • MDT là một cờ chứa một bit duy nhất. Nó chỉ định liệu giá trị có được chuyển vào hệ thống hay không.

  • Giá trị mặc định của nó là 1, khi giá trị trường được thay đổi.

  • Nếu MDT bằng 0, thì không thể chuyển dữ liệu; và nếu MDT là 1, thì dữ liệu có thể được chuyển.

Gửi bản đồ

Lệnh gửi bản đồ ghi đầu ra được định dạng vào thiết bị đầu cuối. Nó được sử dụng để gửi bản đồ đến thiết bị đầu cuối từ chương trình ứng dụng. Đoạn mã sau đây cho thấy cách gửi bản đồ đến thiết bị đầu cuối:

EXEC CICS SEND 
   MAP('map-name')
   MAPSET('mapset-name')
   [FROM(data-area)]
   [LENGTH(data_value)]
   [DATAONLY]
   [MAPONLY]
   [CURSOR]
   [ERASE/ERASEAUP]
   [FREEKB] 
   [FRSET]
END-EXEC

Bảng sau liệt kê các tham số được sử dụng trong lệnh gửi bản đồ cùng với ý nghĩa của chúng.

Sr.No Mô tả về Thông Số
1

Map-name

Đó là tên của bản đồ mà chúng tôi muốn gửi. Nó là bắt buộc.

2

Mapset-name

Nó là tên của tập bản đồ có chứa tên bản đồ. Tên bộ bản đồ là cần thiết trừ khi nó giống với tên bản đồ.

3

FROM

Nó được sử dụng nếu chúng ta quyết định sử dụng một tên DSECT khác, chúng ta phải sử dụng tùy chọn FROM (dsect-name) cùng với lệnh SEND MAP.

4

MAPONLY

Nó có nghĩa là không có dữ liệu nào từ chương trình của bạn được hợp nhất vào bản đồ và chỉ thông tin trong bản đồ được truyền đi.

5

DATAONLY

Nó đối lập hợp lý với MAPONLY. Chúng tôi sử dụng nó để sửa đổi dữ liệu biến trong một màn hình đã được tạo. Chỉ dữ liệu từ chương trình của bạn được gửi đến màn hình. Các hằng số trong bản đồ không được gửi.

6

ERASE

Nó khiến toàn bộ màn hình bị xóa trước khi những gì chúng ta đang gửi được hiển thị.

7

ERASEUP

Nó chỉ khiến các trường không được bảo vệ bị xóa.

số 8

FRSET

Flag Reset sẽ tắt thẻ dữ liệu đã sửa đổi trong byte thuộc tính cho tất cả các trường trên màn hình trước khi những gì bạn đang gửi được đặt ở đó.

9

CURSOR

Nó có thể được sử dụng để định vị con trỏ trên màn hình đầu cuối. Con trỏ có thể được đặt bằng cách di chuyển -1 đến phần L của trường và sau đó gửi bản đồ.

10

ALARM

Nó khiến báo động âm thanh được phát ra.

11

FREEKB.

Bàn phím được mở khóa nếu chúng tôi chỉ định FREEKB trong bản đồ hoặc lệnh GỬI.

12

PRINT

Nó cho phép in đầu ra của lệnh SEND trên máy in.

13

FORMFEED

Thao tác này khiến máy in khôi phục giấy lên đầu trang tiếp theo trước khi in đầu ra.

Nhận bản đồ

Khi chúng ta muốn nhận đầu vào từ một thiết bị đầu cuối, chúng ta sử dụng lệnh RECEIVE MAP. Các tham số MAP và MAPSET có ý nghĩa chính xác như đối với lệnh SEND MAP. Đoạn mã sau cho biết cách nhận bản đồ -

EXEC CICS RECEIVE 
   MAP('map-name')
   MAPSET('mapset-name')
   [INTO(data-area)]
   [FROM(data-area)]
   [LENGTH(data_value)]
END-EXEC

Thực thi Mapset

Các bước sau là cần thiết để phát triển và thực thi một bộ bản đồ:

  • Step 1 - Mở phiên TSO.

  • Step 2 - Tạo một PDS mới.

  • Step 3 - Mã một bộ bản đồ trong một thành viên mới theo yêu cầu.

  • Step 4 - Lắp ráp bộ bản đồ bằng JCL do quản trị viên CICS cung cấp.

  • Step 5 - Mở một phiên CICS.

  • Step 6 - Cài đặt chương trình bằng lệnh -

    CEMT SET PROG (tên tập bản đồ) MỚI

  • Step 7 - Gõ lệnh sau để gửi Bản đồ đến thiết bị đầu cuối -

    CECI GỬI BẢN ĐỒ (tên-bản đồ) MAPSET (tên-bản đồ) XÓA FREEKB