#cobol #mainframe #jcl #cics
#cobol #мэйнфрейм #jcl #cics
Вопрос:
Возможно ли вызвать CICS-программу из пакета JCL?
Если да, то каким образом? Если нет, то почему бы и нет?
Ответ №1:
ДА. Технически, пакетная программа на COBOL обменивается данными с CICS, и вы выполняете пакетную программу на COBOL из JCL. Вы можете прочитать больше в руководстве по серверу транзакций CICS.
Внешний интерфейс CICS® — это интерфейс прикладного программирования, который позволяет программе, отличной от CICS (клиентской программе), запущенной в MVS ™, вызывать программу (серверную программу), запущенную в регионе CICS, и передавать и получать данные посредством области связи. Прикладная программа CICS вызывается так, как если бы она была связана с другой прикладной программой CICS.
Введение во внешний интерфейс CICS
Я полагаю, что ваша CICS-программа не может использовать карты (должна быть диалоговой), но прошло некоторое время с тех пор, как я работал с CICS, поэтому я могу ошибаться.
Комментарии:
1. На одном из моих концертов мы многое сделали для обновления файлов VSAM, потому что мы находились в странной неопределенности с обновлением ОС и у нас была какая-то проблема с общим доступом (опция совместного доступа 5 iirc), из-за которой не удалось обновить файлы напрямую. Я полагаю, что мы также вызывали CICS-программы из пакета, чтобы возвращать результаты обработки обратно в MQ. Ни одна ситуация не требовала maps.
Ответ №2:
Это можно сделать тремя способами:
- Используйте EXCI, который является стандартным способом IBM для этого. Она имеет умеренный уровень настройки. Он не поддерживает корректную зависимость нескольких событий. Она совсем недавно была расширена для поддержки контейнеров (превышающих ограничение в 64 кб).
- Вызовите CICS-программу через сеть, как если бы вы вызывали ее из какого-нибудь приложения для ПК. Это довольно странно и не весело, но это возможно. Вам нужно было бы написать программу на COBOL для реализации HTTP с использованием TCP / IP и вызвать ее из batch.
- Но продукт третьей стороны, такой как Shadow от DataDirect. Они в основном упрощают то, что делает интерфейс EXCI IMB.
Или, если возможно, просто не делайте этого. Переместите логику в общий ресурс или предоставьте общий доступ к данным в DB2, что-нибудь еще.