Розетки и КОБОЛ - PullRequest
       24

Розетки и КОБОЛ

4 голосов
/ 13 апреля 2010

Я получил работу в больнице, которая все еще использует COBOL для всей организационной работы, вся база данных (теперь 20 терабайт) (которая была доморощенной, угадайте, что, COBOL) заполнена данными о каждом пациенте с момента последние 45 (или около того) лет.

Так что это была моя история. Теперь на мой вопрос:

В настоящее время все сокеты (из того, что я видел) были реализованы программами COBOL, записывающими свои данные в файлы. Затем эти файлы были считаны программами C ++ (это был дополнительный модуль, добавленный в конце 1980-х годов) и с использованием сокетов C ++, отправленных в базу данных.

Теперь это решение перестало работать, поскольку они перемещают базу данных из COBOL в COBOL, да - они не использовали MySQL или около того - они внедрили новую базу данных - снова в COBOL. Я спросил парня, который работал там до меня (ему сейчас около 70), какого черта кто-то это сделал, и он сказал мне, что он настолько хорош в COBOL, что не хочет писать это на любом другом языке.

Пока все хорошо, теперь мой вопрос:

  • Как я могу реализовать сокетные соединения в COBOL? Мне нужно создать интерфейс для внешней базы данных COBOL, расположенной, например, по адресу 192.168.1.23:283.

Ответы [ 4 ]

5 голосов
/ 08 июня 2010

Вам нужно предоставить больше информации о вашей ОС и компиляторе.

Если вы используете IBM z / OS с компилятором, поддерживающим языковую среду, вы можете просто вызвать функции EZASOCK из служб связи z / OS. Звонки хорошо документированы в своих ссылках и имеют хорошие примеры Cobol.

Другие платформы будут иметь другие опции.

В большинстве случаев вы можете просто "ВЫЗОВАТЬ" внешний модуль, написанный на любом языке, который вам нужен, но это DLL, sharedLib или что-то еще.

Не могли бы вы рассказать подробнее о вашей среде?

Почему бы вам просто не написать напрямую в базу данных из программы Cobol?

1 голос
/ 08 июня 2010

В мэйнфреймах IBM есть два API-интерфейса для сокетов, которые можно использовать из COBOL.Один для использования в программах CICS (где существуют особые соображения по безопасности потоков и окружающей среде) и один для использования в обычных программах Batch или IMS.

Полная функциональность TCP / IP реализована и достаточно надежна для обработки кредитовКарточные протоколы по стандартам MVA (я знаю, потому что я сделал это).

0 голосов
/ 14 апреля 2010

Вспомните, что Google - ваш ДРУГ.

Ответ будет сильно зависеть от вашей среды выполнения.

IBM утверждает, что Sockets API вызывается из COBOL, как часть CICS для z / OS.

Микрофокус, кажется, что-то имеет.

0 голосов
/ 13 апреля 2010

Большинство компиляторов COBOL позволят вам связывать и вызывать объектный модуль или DLL. Как говорит Кати, я знаю, что могу помочь, но мне нужна дополнительная информация. Я делал это ранее из окон в DEC, так что я знаю, что это можно сделать.

...