В CICS имеются различные блокноты для сохранения данных или передачи данных между транзакциями. CICS предоставляет пять областей хранения, которые мы обсудим в этом модуле.
COMMAREA
COMMAREA ведет себя как блокнот, который можно использовать для передачи данных из одной программы в другую, либо в рамках одной транзакции, либо из разных транзакций. Он должен быть определен в разделе LINKAGE с использованием имени DFHCOMMAREA.
Общая рабочая зона
Любая транзакция в регионе CICS может получить доступ к Общей рабочей области, и, следовательно, формат и ее использование должны быть согласованы всеми транзакциями в системе, которая решит использовать ее. Во всем регионе CICS есть только один CWA.
Рабочая область транзакций
Рабочая область транзакции используется для передачи данных между прикладными программами, которые выполняются в одной транзакции. TWA существует только на время транзакции. Его размер определяется в таблице управления программой.
Очередь временного хранения
Очередь временного хранения (TSQ) — это функция, предоставляемая программой управления временным хранилищем (TSP).
-
TSQ — это очередь записей, которые могут быть созданы, прочитаны и удалены различными задачами или программами в одном и том же регионе CICS.
-
Идентификатор очереди используется для идентификации TSQ.
-
Запись в TSQ идентифицируется относительной позицией, известной как номер позиции.
-
Записи в TSQ остаются доступными до тех пор, пока весь TSQ явно не будет удален.
-
Записи в TSQ могут быть прочитаны последовательно или напрямую.
-
TSQ могут быть записаны в основном хранилище или вспомогательном хранилище в DASD.
TSQ — это очередь записей, которые могут быть созданы, прочитаны и удалены различными задачами или программами в одном и том же регионе CICS.
Идентификатор очереди используется для идентификации TSQ.
Запись в TSQ идентифицируется относительной позицией, известной как номер позиции.
Записи в TSQ остаются доступными до тех пор, пока весь TSQ явно не будет удален.
Записи в TSQ могут быть прочитаны последовательно или напрямую.
TSQ могут быть записаны в основном хранилище или вспомогательном хранилище в DASD.
WRITEQ TS
Эта команда используется для добавления элементов в существующий TSQ. Также мы можем создать новый TSQ с помощью этой команды. Ниже приводится синтаксис команды WRITEQ TS —
Синтаксис
EXEC CICS WRITEQ TS QUEUE ('queue-name') FROM (queue-record) [LENGTH (queue-record-length)] [ITEM (item-number)] [REWRITE] [MAIN /AUXILIARY] END-EXEC.
Ниже приведены подробные сведения о параметрах, используемых в команде WRITEQ TS.
-
QUEUE идентифицируется по имени, которое упоминается в этом параметре.
-
Параметры FROM и LENGTH используются для указания записи, которая должна быть записана в очередь, и ее длины.
-
Если указана опция ITEM, CICS назначает номер позиции записи в очереди и устанавливает для области данных, предоставленной в этой опции, номер позиции. Если запись начинает новую очередь, назначенный номер элемента равен 1, и последующие номера элементов следуют последовательно.
-
Опция REWRITE используется для обновления записи, уже присутствующей в очереди.
-
Опция MAIN / AUXILIARY используется для хранения записей в основном или вспомогательном хранилище. По умолчанию ВСПОМОГАТЕЛЬНЫЙ.
QUEUE идентифицируется по имени, которое упоминается в этом параметре.
Параметры FROM и LENGTH используются для указания записи, которая должна быть записана в очередь, и ее длины.
Если указана опция ITEM, CICS назначает номер позиции записи в очереди и устанавливает для области данных, предоставленной в этой опции, номер позиции. Если запись начинает новую очередь, назначенный номер элемента равен 1, и последующие номера элементов следуют последовательно.
Опция REWRITE используется для обновления записи, уже присутствующей в очереди.
Опция MAIN / AUXILIARY используется для хранения записей в основном или вспомогательном хранилище. По умолчанию ВСПОМОГАТЕЛЬНЫЙ.
READQ TS
Эта команда используется для чтения очереди временного хранения. Ниже приводится синтаксис READQ TS —
Синтаксис
EXEC CICS READQ TS QUEUE ('queue-name') INTO (queue-record) [LENGTH (queue-record-length)] [ITEM (item-number)] [NEXT] END-EXEC.
DELETEQ TS
Эта команда используется для удаления очереди временного хранения. Ниже приводится синтаксис DELETEQ TS —
Синтаксис
EXEC CICS DELETEQ TS QUEUE ('queue-name') END-EXEC.
Переходная очередь данных
Временная очередь данных носит временный характер, поскольку ее можно быстро создавать и удалять. Это позволяет только последовательный доступ.
-
Содержимое очереди может быть прочитано только один раз, так как оно уничтожается после выполнения чтения и, следовательно, с именем Transient.
-
Это не может быть обновлено.
-
Требуется запись в DCT.
Содержимое очереди может быть прочитано только один раз, так как оно уничтожается после выполнения чтения и, следовательно, с именем Transient.
Это не может быть обновлено.
Требуется запись в DCT.
WRITEQ TD
Эта команда используется для записи очередей временных данных, и они всегда записываются в файл. Ниже приводится синтаксис команды WRITEQ TD —
Синтаксис
EXEC CICS WRITEQ TD QUEUE ('queue-name') FROM (queue-record) [LENGTH (queue-record-length)] END-EXEC.
READQ TD
Эта команда используется для чтения очереди данных Transient. Ниже приводится синтаксис READQ TD —
Синтаксис
EXEC CICS READQ TD QUEUE ('queue-name') INTO (queue-record) [LENGTH (queue-record-length)] END-EXEC.
DELETEQ TD
Эта команда используется для удаления очереди данных Transient. Ниже приводится синтаксис DELETEQ TD —