Я использую старую версию PeopleSoft (SCM 8.80, Tools 8.51), поэтому ваш пробег может отличаться. Я предполагаю, что вы знакомы с App Designer. Если нет, прокомментируйте ниже, и я добавлю некоторые подробности о том, на что я нажимаю.
Найдите имя компонента «Добавить/обновить заказ на покупку».
Откройте компонент PURCHASE_ORDER
в App Designer. Теперь давайте найдем имя записи поиска. Обратите внимание, что для добавления записи поиска существует другая запись, поэтому, если вы хотите изменить и ее, сделайте все это и для этой записи.
Откройте запись PO_SRCH
и добавьте в нее поле REQ_ID
. Убедитесь, что вы пометили поле как ключ. Вам следует подумать о сохранении измененного PO_SRCH
под новым именем на случай, если вы захотите вернуться к ванильному PeopleSoft. Если вы это сделаете, измените запись поиска в компоненте на новое имя записи.
Мы видим, что PO_SRCH
— это представление. Итак, давайте изменим представление, чтобы извлечь REQ_ID
из PO_LINE_DISTRIB
. Как вы упомянули выше, не существует другой таблицы с PO_ID
и REQ_ID
, поэтому вам придется сделать SELECT DISTINCT
.
Мы должны сделать LEFT OUTER JOIN
вместо стандартного соединения, потому что, если вы сделаете стандартное соединение и введете заказ на покупку без строк и сохраните его, вы никогда не сможете получить этот заказ на покупку в этом окне. Поскольку REQ_ID
является ключевым полем, у нас не может быть нуля, поэтому мы должны сделать CASE
.
Одна странная вещь, с которой я столкнулся здесь, заключалась в том, что создание представления теперь дало мне ошибку о выборе меньшего количества столбцов в SQL, чем у меня было в моем определении записи. Я решил это, изменив представление для SQL Server. Мне никогда не приходилось делать это раньше, и я не знаю, почему я должен был делать это для этой конкретной записи. Но в любом случае я ввел тот же SQL под определением записи «Microsoft SQL Server».
В свойствах PO_SRCH
мы видим, что у него есть связанная языковая запись. Если вы используете только один язык, вы, вероятно, можете обойтись без его изменения, но я сделаю это для полноты картины. Откройте PO_SRCHLN
. Теперь добавьте к нему REQ_ID
(отметьте его как ключевое поле, как вы сделали выше) и сохраните его как PO_SRCHLN2
(я сохраняю его под новым именем, чтобы не сломать ничего, что может использовать PO_SRCHLN
).
Отредактируйте SQL так же, как вы делали выше. Примечание. Мне не пришлось также изменять определение Microsoft SQL Server, как я сделал выше. Я понятия не имею, почему.
Теперь постройте PO_SRCHLN2
.
Вернитесь к PO_SRCH
и измените соответствующую языковую запись на PO_SRCHLN2
.
Теперь постройте PO_SRCH
.
Надеюсь, вы не столкнулись с какими-либо ошибками, и теперь на вашей странице поиска есть идентификатор заявки. Моя система не использует заявки, поэтому в приведенном ниже примере все они пусты, но есть новое поле.
person
Ben Rubin
schedule
01.06.2019