Бесплатный онлайн ресурс для изучения RPGIV

Я хочу изучить некоторые RPGIV. Я не очень понимаю язык. Я ищу бесплатный онлайн-ресурс, поэтому я только что нашел сайты, где мне нужно платить.

Причина, по которой я хотел бы узнать, заключается в том, что мы используем функцию RPG, которая вызывает веб-сервис. Он дает общую внутреннюю ошибку сервера 500. Итак, я хочу изучить RPGIV, чтобы я мог задавать правильные вопросы и решать их.

1 ответ

Решение

Это очень широкий вопрос. Полезность ответа возрастет, если вы сможете немного объяснить, почему RPG IV и для чего вы будете его использовать.

В отличие от Java или C++, для RPG IV нет компиляторов для ПК. RPG IV работает только на компьютерах IBM среднего класса, поэтому для тестирования любого кода необходим доступ к нему. У Хольгера Шерера есть общедоступная машина; могут быть и другие, но это тонкий рынок.

Вообще говоря, недостаточно изучить RPG IV. Для того, чтобы быть полезным на компьютере среднего уровня, вам также необходимо понимать DDS и CL как минимум. Наряду с этим вы должны изучить некоторые элементарные концепции управления работой, такие как поиск очереди вывода, в которую вошли ваши списки компиляторов, как отправить задание в пакет (и что такое "задание"!) И как использовать список библиотек. Я также настоятельно рекомендую узнать об ИОС. Встроенная база данных является вариантом DB2; начинающий программист не будет озабочен созданием базы данных, а будет понимать, как она уже построена, как различные таблицы связаны друг с другом. Это строго зависит от базы данных, от бизнеса, который ее разработал. Будучи программистом, вы будете использовать встроенный SQL, поэтому посмотрите это руководство, а также справочные руководства по программированию на SQL и SQL.

РЕДАКТИРОВАТЬ:

RPG IV не так сложно понять, если вы читаете его. Написание этого немного больше работы:-) Плюс, это звучит так, как будто у вас есть местный источник, который может провести вас через некоторые части, которые могут показаться странными. Мой непосредственный совет - запустить программу RPG IV в отладку и смотреть, что происходит вперед и назад. (STRDBG) Сравните это с любым примером, предоставленным автором веб-службы (возможно, на Java), и посмотрите, не искажен ли HTTP-запрос.

Поскольку этот вопрос касается изучения RPG, а не отладки ошибки 500, я остановлюсь на аспекте обучения. Если вам нужна помощь с отладкой, начните другой вопрос и опубликуйте соответствующий код. Чтобы добраться до кода, нужно DSPPGM на программе RPG IV и найдите модуль (ы), которые его составляют. Отобразите детали модуля (опция 5) и отследите исходный файл, библиотеку и имена членов. Затем, WRKMBRPDM в исходном файле и библиотеке и укажите имя исходного члена в поле "Position to" в правом верхнем углу. Нажмите Enter, и этот источник будет в верхней части списка. Используйте опцию 5, чтобы просмотреть исходный элемент.

Вкратце, F-спецификации описывают таблицы, которые будет использовать программа. RPG использует файлы с кодами операций, такими как READ, WRITE, EXCEPT, UPDATE, Если программа использует встроенный SQL, могут быть таблицы, которые SQL использует в дополнение к тем, которые использует RPG. Вы увидите те, которые указаны на EXEC SQL заявление.

D-спецификации описывают все рабочие переменные, включая отдельные переменные, массивы и структуры данных.

С-спецификации - это место, где происходят фактические расчеты. Они считаются устаревшими для тех, кто использует вычисления в произвольной форме, но вы можете столкнуться с ними. C-спецификации фиксированной формы являются columnnar; конкретные столбцы означают очень конкретные вещи. Наиболее важными столбцами являются Фактор 1, Код операции, Фактор 2 и Результат. Типичный расчет в этом стиле может быть BUFFERLEN ADD 1 BUFFERLEN который увеличивает переменную BUFFERLEN на 1.

Вариантом C-спецификации фиксированного формата является расширенный фактор 2. Тот же расчет будет выглядеть так (empty factor 1) EVAL BUFFERLEN = BUFFERLEN + 1, Это будет иметь больше смысла, когда вы увидите это в коде.

Расчеты в свободном формате не заботятся о столбцах вообще. Приведенный выше расчет будет выглядеть так: BUFFERLEN += 1; или же BUFFERLEN = BUFFERLEN + 1;

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

Подпрограммы говорят сами за себя. Подпроцедуры могут потребовать небольшого объяснения. Это в основном вызовы функций. Спецификации PR описывают прототип, поэтому компилятор сможет проверять переменные, а спецификации PI описывают реальную процедуру. Переменные, объявленные в процедуре (в D-спецификациях), являются локальными для этой процедуры. Вы можете столкнуться с процедурами, которые не содержатся в исходном тексте программы RPG, но вместо этого связаны с сервисной программой. Вы сможете увидеть их в DSPPGM,

Другие вопросы по тегам