Подключение к CICS из приложения Windows для настольных ПК - PullRequest
3 голосов
/ 26 августа 2011

Теперь есть новое требование. У меня есть кое-какая работа под рукой. Требуется подключить настольное Java-приложение для чтения данных из мэйнфрейма, сгенерированных некоторой транзакцией CICS. [По сути, я должен прочитать все записи, добавляемые в файл (так же, как мы делаем tail-f filename в linux). Это только из-за того, что я к вашему сведению. Это другое.]

Я спросил и узнал, что мой работодатель не может предоставить мне доступ к шлюзу транзакций MQ или CICS. Он предложил какой-то метод очистки экрана. Я уже сделал это, используя приложение VB.Net и Quick3270, а также эмуляторы IBM Communicator. Оба эти эмулятора предоставляют функции, которые можно использовать для чтения всего, что есть на экране.

Вы можете обратиться к деталям программирования EHILLAPI (Язык программирования на эмуляторе) - http://publib.boulder.ibm.com/infocenter/pcomhelp/v5r9/index.jsp?topic=/com.ibm.pcomm.doc/books/html/emulator_programming07.htm, если вы заинтересованы в обучении.

Но этот метод ограничивает меня максимальным количеством байтов, которые могут появиться на экране. При использовании этого метода возникает значительная задержка в сети, так как мне приходится каждый раз обновлять (в основном, переходить с одной страницы на другую в CICS), чтобы получать данные, охватывающие несколько страниц.

Можете ли вы предложить мне какой-либо метод, чтобы моему работодателю не нужно было просить клиента открыть какой-либо порт на его мэйнфрейме или установить какое-либо программное обеспечение (поскольку это не представляется возможным для моего работодателя).

Могу ли я использовать эмуляцию терминала 3270 и получить все (или, как минимум, больше данных). Таким образом, требование моего работодателя выполняется, и ему не нужно ничего просить у своего клиента. (В любом случае из эмулятора мы запускаем транзакции CICS). Мы хотим, чтобы все было сделано на стороне самого моего работодателя, не нарушая ни одного мэйнфрейма клиента.

Пожалуйста, не предлагайте MQ, так как у клиента его нет.

Если вы по-прежнему предлагаете шлюз транзакций CICS, пожалуйста, дайте мне знать, как мне подключиться к удаленному компьютеру (мне нужны технические данные).
- Какую информацию мне нужно спросить у клиента.
- Какое программное обеспечение мне нужно установить на мою машину. - Технические детали использования этого программного обеспечения.

С уважением,

Нитин

1 Ответ

2 голосов
/ 26 августа 2011

У меня есть два предложения для вас. Я сделал оба успешно. Ваша клиентская установка может решить, является ли любой из них приемлемым (вопрос не включает , а не , делающий эти вещи).

  1. Вы можете вызвать свой код CICS на мейнфрейме с помощью хранимой процедуры DB2. Существует стандартная поставляемая IBM EXECCICS, которую мы использовали для проекта. Вы предоставляете стандартные параметры CICS и область связи. Хранимая процедура выполняет программу в мейнфрейме и возвращает вам область связи. Вы используете JDBC. Это простое и легкое решение.

  2. Мы также включили HTTP-доступ к программе CICS на мэйнфрейме. Насколько я понимаю (помню, я только что назвал это - не включил его), это довольно стандартная конфигурация. Код клиента просто выполняет HTTP POST для конкретной конечной точки. Полученный документ - это область связи и другие полезности.

Эти решения были разработаны независимо для одного и того же проекта и находятся в производстве. Единственная причина, по которой метод HTTP был добавлен к миксу, был из-за ограничения размера данных в хранимой процедуре, которую HTTP удалил.

...