Как происходит выполнение программы PeopleSoft App Engine - PullRequest
2 голосов
/ 17 мая 2019

Я узнаю больше о потоке программы PeopleSoft Application Engine.Из того, что я прочитал в PeopleBooks, любые действия в пределах шага, которые задают Do Select, Do When или Do While, выполняют циклическое действие, где все последующие действия (в пределах этого шага) циклически повторяются по одной строке за раз,

Я видел некоторые программы App Engine, в том числе нижеприведенную, в которой на шаге происходит действие Do Select, за которым следует действие Call Section, которое выполняет часть программы, находящуюся в другом месте.Означает ли это, что циклы все еще итерируют по вызываемому разделу по одной строке за раз, точно так же, как любые другие действия будут повторяться на этапе вызова?

Мой 2-й вопрос относится к приведенному ниже App Engineпрограмма.В выделенном действии PeopleCode в нижней части программы вы можете увидеть, как запускается PeopleCode для проверки / сравнения элементов данных, а затем «Выход».Мой вопрос заключается в том, выполняется ли этот код в контексте циклического действия, происходящего выше, когда он выполняет одну строку за раз, или это выполняется путем одновременного просмотра всего в буфере?Я думаю, что он может обрабатывать только строку за строкой, так как он должен правильно выйти / прервать шаг.Надеюсь, мой вопрос имеет смысл, но я с удовольствием уточню, что нужно.Спасибо!

enter image description here enter image description here enter image description here

1 Ответ

1 голос
/ 20 мая 2019

Оба ваших предположения верны.

Если вы вызываете другой раздел программы в пределах Do ..., то этот вызов выполняется один раз для каждой строки, возвращаемой из Do ....В контексте вызываемого раздела данные в ваших таблицах состояний и временных таблицах будут такими же, какими они были, когда вы нажимали действие Call Section.

Когда вы выполняете действие PeopleCode, оно выполняется с теми данными, которые находятся в записях состояния и временных таблицах в это время.

...