импорт / экспорт CSV в IBM i (AS400) DB2

Я готовлюсь к предстоящему интеграционному проекту, в котором мне нужно будет импортировать / экспортировать некоторые данные в / из нашей ERP в файловую систему. Мы запускаем JD Edwards World 9.2 на компьютере IBM iSeries / AS400 V6R1.

Программное обеспечение, с которым мы интегрируем, требует, чтобы мы интегрировали его с использованием файлов CSV, которые экспортируются / импортируются по расписанию и доступны через SFTP.

У меня установлен Zend-сервер (apache), и я счастлив, что использую Apache, PHP и SQL, но практически не имею знаний о программировании на CL и RPG (но готов учиться). У нас также нет WebQuery. Для экспортируемых файлов требуются данные между таблицами, которые должны быть объединены и отфильтрованы, поэтому потребуется SQL или аналогичный, поэтому я не ожидаю, что это будет прямой CPYTOIMPF.

В качестве очень грубой схемы я подумал, что мог бы написать быстрый php-файл, который будет запускать SQL-запрос для анализа результатов в CSV-формате в IFS и наоборот, загруженный cget-wget (или эквивалентом IBM).

Прежде чем начать, я хочу посмотреть, может ли кто-нибудь порекомендовать лучший подход

Какие стратегии и / или ссылки вы бы порекомендовали? Каковы эквиваленты cron и wget?

2

Решение

Cron эквивалент будет планировщик заданий. Он поставляется в двух вариантах от IBM, базовая версия включена в каждую систему «Работа с записями расписания заданий (WRKJOBSCDE)» и Расширенный планировщик заданий «Работа с заданиями с использованием планировщика заданий (WRKJOBJS)».

В вашей системе также может быть один или несколько сторонних планировщиков.

В ОС нет встроенного аналога wget. Существуют различные сторонние утилиты и даже некоторые бесплатные и / или открытые утилиты. Также вы можете установить и использовать AIX-версию wget в PASE.
http://yips.idevcloud.com/wiki/index.php/PASE/PackageManager

Теперь, насколько импорт / экспорт. IBM, конечно, предоставляет команды CPYTOIMPF и CPYFRMIMPF. Но для производительности и гибкости в обработке ошибок многие предпочитают катиться самостоятельно, используя RPG. PHP будет альтернативой для вас.

Еще пара очков …

Хотя это правда, что CPYTOIMPF не поддерживает запрос. Он поддерживает копирование из представления SQL. Так что, пока вы можете создать представление, которое обеспечивает «объединение и фильтрацию», о котором вы упомянули, требуется, CPYTOIMPF может работать.

Наконец, IBM включает команду «Выполнить операторы SQL» (RUNSQLSTM), которая будет выполнять операторы SQL, содержащиеся в элементе исходного файла; в том числе INSERT INTO somefile (SELECT ...) так что вы можете загрузить физическую таблицу, на которой вы затем можете использовать CPYTOIMPF. Кроме того, в этом исходном члене вы можете включить команды CL, добавив к ним префикс CL:

4

Другие решения

Навигатор System I имеет инструмент «Запуск сценариев SQL». Этот инструмент имеет возможность сохранить результаты, и один из вариантов в файл CSV.

3

По вопросам рекламы [email protected]