Создать объект динамически из строки в Peoplecode - PullRequest
0 голосов
/ 18 января 2019

Я работаю над проектом Peoplesoft, и я борюсь с Peoplecode. Я хочу создать объект с динамическим именем класса в Peoplecode. Вроде как в Java. Это будет выглядеть примерно так:

&my_object = create My_Application_Package : Class_string_name()
&my_object.commonMethodCall();

где " Class_string_name " будет динамическим. Это возможно ? И нужно ли мне обязательно создавать интерфейс для всех заинтересованных классов?

Любая помощь или совет приветствуется

Спасибо

1 Ответ

0 голосов
/ 21 января 2019

Наконец, это довольно просто.

Я только что использовал функцию CreateObject:

CreateObject (str_class_name, create_par,...)

Где str_class_name либо:

- определяет класс по имени класса

- определяет класс объекта OLE Automation в виде:

app_name.object_name

Описание

Используйте функцию CreateObject для возврата экземпляра класса. Вы может использовать эту функцию для доступа к классу приложения, PeopleCode встроенный объект (например, диаграмма) или объект автоматизации OLE.

Если создаваемый класс требует передачи значений, используйте параметры create_par, чтобы предоставить их, или использовать CreateObjectArray функция.

Особенности использования классов приложений

Вы можете использовать функцию CreateObject для доступа к классу приложения. Вы хотели бы сделать это, когда вы программируете на высоком уровне, когда вы можете не знать имя класса, к которому хотите получить доступ до времени выполнения. Вы должны указать полное имя класса. В Кроме того, имя класса чувствительно к регистру.

Возвращаемый объект имеет тип класса, который вы указали.

...