Учебники

CICS — временное хранилище

В 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 —