Вопрос

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

Какие у меня варианты?

Это было полезно?

Решение

Да - Integration Broker - это проприетарная реализация PeopleSoft механизма публикации/подписки, говорящая XML. Конечно, вы можете просто написать код, который противоречит вашей базе данных, используя JDBC или OLE/ODBC. Ничто не мешает вам это делать. Тем не менее, вы должны понимать схему базы данных PeopleSoft, чтобы вы вытащили или вставляли/обновляли/удаляли все правильные данные. PeopleSoft позаботится об этом для вас.

Кроме того, проверьте интерфейсы компонентов - и они выставлены как API для Java или C/C ++.

Другие советы

Это старое, но это все еще может быть интересным.

PeopleSoft имеет свою собственную схему в базе данных хоста (Oracle, SQL Server, DB2 и т. Д.), Которые являются таблицами PSXXX, например: PSRECDEFN является эквивалентом DBA_TATS Oracle. Эти таблицы не должны касаться какого -либо внешнего кода. Таблицы приложений хранятся в таблицах PS_XXX, например: PS_JOB. Эти таблицы могут быть прочитаны и обновлены любым кодом SQL.

Многие пакетные программы в PeopleSoft (например, прикладные двигатели, COBOL или SQRS) доступны напрямую к таблицам, и это самый быстрый способ донести данные в базу данных или вне. Однако у PeopleSoft есть довольно богатый уровень приложений, который обходит при выполнении прямого SQL. Этот уровень приложения должен быть воспроизведен в прямом коде SQL, особенно для вставки или обновлений. Могут быть обновления для других таблиц, расчетов или приращений счетчиков, хранящихся в базе данных.

Чтобы определить, как сделать это, нужно просмотреть PeopleCode (VB6-подобный язык интерпретируемого), дизайн страницы (через дизайнер приложений) и использовать инструменты Trace PeopleCode и SQL. В наши дни слой приложения огромный, так что это может быть длительной задачей для нетривиальных страниц. Группы PeopleSoft связаны с страницами с «компонентами», и все страницы в компоненте сохраняются одновременно.

Компонентные интерфейсы были введены с Peopletools 8 как средство избежать всего этого. Используя генератор в дизайнере приложения PeopleSoft, на основе компонента генерируется интерфейс компонента. Для многих компонентов они могут использоваться для доступа к страницам как пользователь, и можно получить доступ через программы PeopleCode, и, следовательно, через программы App Engine и через Integration Broker. Они также могут быть обернуты в код Java и доступ непосредственно с помощью кода, способного выполняться против сервера приложений с помощью обертки веб -службы. Этот метод лучше всего подходит для транзакций с низким объемом: тяжелые экстракты работают лучше с Native SQL.

Инструменты разработки и отслеживания онлайн в PeopleSoft довольно хороши, и документация отличная (хотя и довольно обширная) и доступна на: http://download.oracle.com/docs/cd/e17566_01/epm91pbr0/eng/psbooks/psft_homepage.htm

Если вы просто смотрите на получение данных из данного компонента, самым простым способом было бы включить SQL Trace (под меню утилит в PeopleSoft) и вывести некоторые записи для компонента. Пробравшись по файлу трассировки, даст вам хорошее представление о том, что делать, и большая часть SQL может быть вырезана и вставлена. Другим методом будет найти существующий отчет, который похож на то, что вы пытаетесь сделать, и вырезать SQL.

Имейте под рукой бизнес -аналитик PeopleSoft, чтобы помочь вам разработать требования тоже не повредит.

Я предполагаю, что это зависит от вашего требования, и какую версию PeopleSoft вы находитесь.

Вы хотите поиска в реальном времени? Если это так, то вы захотите посмотреть на веб -сервис/интеграционную брокер.

Если вам нужен пакетный/объемный экспорт, то запланированный двигатель приложений сделает трюк.

Лучший способ - использовать службы Integration Broker (IB) для предоставления данных базы данных PeopleSoft на внешние приложения. Внешнее приложение сможет получить доступ к Сервисам PeopleSoft IB в качестве XML по HTTP, что позволит вам использовать любые широко используемые анализаторы XML для этой цели.

Проблема с интерфейсами компонентов, в отличие от интеграционного брокера, заключается в том, что интерфейсы компонентов, как правило, намного медленнее, чем прямой доступ БД из IB Service Peoplecode. Также будущие дополнения к компоненту, прикрепленному к интерфейсу компонента, иногда имеют тенденцию «разбить» интерфейс.

Для получения более подробной информации о Integration Broker PeopleSoft, вы можете получить доступ к онлайн -документации на http://docs.oracle.com/cd/e26239_01/pt851h3/eng/psbooks/tibr/book.htm

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

Вы также можете написать процесс SQR для извлечения данных. SQR создаст выходной файл, который может выбрать другое приложение. SQR будет быстрее, чем программы Engine Application, поскольку он выполняет большую часть операций в памяти.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top