Jump to content

PeopleCode

PeopleCode
Парадигма мультипарадигмальность : объектно-ориентированная , императивная
Разработчик Корпорация Oracle

PeopleCode — это собственный объектно-ориентированный язык программирования, используемый для выражения бизнес-логики приложений PeopleSoft . Синтаксически PeopleCode похож на другие языки программирования и может быть найден как в свободно типизированной, так и в строго типизированной форме. PeopleCode и его среда выполнения являются частью более крупной структуры PeopleTools . PeopleCode со временем развивался, и его реализация через приложения PeopleSoft не является последовательной. PeopleCode предлагает некоторую совместимость с языком программирования Java. Например, ссылки на имена определений позволяют ссылаться на определения PeopleTools, такие как определения записей или страницы, без использования жестко запрограммированных строковых литералов . [1] Другие функции языка, такие как типы данных PeopleCode и метастроки , отражают тесное взаимодействие PeopleTools и языка структурированных запросов (SQL). Нотация через точку , классы и методы в PeopleCode аналогичны другим объектно-ориентированным языкам, таким как Java . Синтаксис объектов был важной особенностью PeopleTools 8. [2]

Особенности языка

[ редактировать ]

Поддерживаемые функции

[ редактировать ]

PeopleCode поддерживает следующие типы функций: [3]

  • Встроенный: стандартный набор функций PeopleCode. Их можно вызывать без объявления.
  • Внутренние: функции, определенные (с помощью оператора Function) в программе PeopleCode, в которой они вызываются.
  • Внешний PeopleCode: функции PeopleCode, определенные вне вызывающей программы. Обычно они содержатся в определениях записей, которые служат библиотеками функций.
  • Внешний код, отличный от PeopleCode: функции, хранящиеся во внешних (вызываемых на языке C) библиотеках.

Кроме того, PeopleCode поддерживает методы. Основные различия между встроенной функцией и методом:

  • Встроенная функция находится на отдельной строке и (как правило) не имеет никаких зависимостей.
  • Функцию можно использовать перед созданием экземпляра объекта.
  • Метод может быть выполнен только объектом (с использованием точечной записи).
  • Сначала необходимо создать экземпляр объекта.

Описание структуры классов приложения

[ редактировать ]
  • Импортируйте любые классы, которые будут использоваться классом, включая суперкласс, расширяемый этим классом.
   Import PackageName:Superclassname;
  • Класс определяется с помощью конструкции Class.
    Class Classname [Extends SuperClassname]
         [Method_declarations]
         [Property_declarations]
    [Private
         [Method_declaration]
         [Instance_decalarion]
         [[Constant declaration]]
     End-class;
  • Первый набор объявлений — это свойства и методы, являющиеся частью общедоступного внешнего интерфейса.
   Property datatype PropertyName [get][set];
   Method MethodName ([parameter_list])
  • Переменные, константы и методы частного экземпляра объявляются после ключевого слова Private.
   Private
     Instance DataType &InstanceName;
     Constant &Constant = {Number | String | True | False | Null };
  • Ключевое слово end-class следует за объявлениями свойств, методов, экземпляров и констант.
  • После end-class ключевое слово и перед get и set определения или определения методов, объявляйте любые переменные и функции, которые будут использоваться методами.
  • Методы Get и Set соответствуют свойствам, объявленным с помощью ключевых слов get и set.
  • Используйте get определение метода для выполнения PeopleCode, который вернет значение.
   get Propertyname
    Return &Value;
   end-get;
  • Используйте set определение метода для выполнения PeopleCode, который изменит значение.
   set PropertyName
    
   end-set;
  • Определения методов аналогичны определениям функций.
   method Methodname
    statements;
   end-method;
  • Особым случаем определения метода является constructor.
  • Конструктор имеет то же имя, что и класс, и всегда будет запускаться при создании экземпляра класса.
  • Класс, который не расширяет какой-либо другой класс, не нуждается в конструкторе.
  • Класс, который расширяет другой класс, должен иметь конструктор, и в конструкторе он должен инициализировать свой суперкласс.

Выполнение SQL в PeopleCode

[ редактировать ]
  • Где SQLExec(встроенная функция) доставляет только одну строку, используя SQL class вы можете получить и обработать несколько строк.
  • Создайте экземпляр объекта SQL с помощью CreateSQL встроенная функция.
    • Использовать CreateSQL("SQLString") чтобы передать текстовую строку в ваш объект SQL.
    • Использовать GetSQL(SQL.sqlname) чтобы получить SQL из определения SQL.
   &SQL = CreateSQL("SQL Statement",[bind values]);

Значения переменных связывания можно опустить и указать позже. Для команд «Вставить», «Обновить» или «Удалить» эти значения будут предоставлены с помощью Execute метод. (Если предоставлены все необходимые входные значения, SQL выполняется немедленно.)

    &SQL = CreateSQL("SQL Statement");
    &SQL.Execute([bind_values]);
  • Для объекта SQL, содержащего оператор Select, Fetch Метод используется для извлечения следующей строки из курсора.

Функции PeopleCode , получено 14 декабря 2008 г.

См. также

[ редактировать ]
[ редактировать ]
  1. ^ ДеЛиа, Тони и др. (2001). Основное руководство по разработке и настройке Peoplesoft. Manning Publications Co. стр.260
  2. ^ ДеЛиа, Тони и др. (2001). Основное руководство по разработке и настройке Peoplesoft. Manning Publications Co. стр.417
  3. ^ ДеЛиа, Тони и др. (2001). Основное руководство по разработке и настройке Peoplesoft. стр.375
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 82ae2ec584229336c24f5e2ea6474b83__1661709540
URL1:https://arc.ask3.ru/arc/aa/82/83/82ae2ec584229336c24f5e2ea6474b83.html
Заголовок, (Title) документа по адресу, URL1:
PeopleCode - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)