Вызов Apex относится к процессу выполнения класса Apex. Класс Apex может быть выполнен только тогда, когда он вызывается одним из способов, перечисленных ниже —
-
Триггеры и анонимный блок
-
Триггер, вызываемый для указанных событий
-
Асинхронная вершина
-
Планирование запуска класса Apex через указанные интервалы или запуск пакетного задания
-
Класс веб-сервисов
-
Класс обслуживания электронной почты Apex
-
Веб-сервисы Apex, которые позволяют выставлять ваши методы через веб-сервисы SOAP и REST
-
Контроллеры Visualforce
-
Apex Email Service для обработки входящей электронной почты
-
Вызов Apex с помощью JavaScript
-
Набор инструментов Ajax для вызова методов Web-сервиса, реализованных в Apex
Триггеры и анонимный блок
Триггер, вызываемый для указанных событий
Асинхронная вершина
Планирование запуска класса Apex через указанные интервалы или запуск пакетного задания
Класс веб-сервисов
Класс обслуживания электронной почты Apex
Веб-сервисы Apex, которые позволяют выставлять ваши методы через веб-сервисы SOAP и REST
Контроллеры Visualforce
Apex Email Service для обработки входящей электронной почты
Вызов Apex с помощью JavaScript
Набор инструментов Ajax для вызова методов Web-сервиса, реализованных в Apex
Теперь мы поймем несколько распространенных способов вызова Apex.
От выполнения анонимного блока
Вы можете вызвать класс Apex с помощью execute anonymous в консоли разработчика, как показано ниже —
Шаг 1 — Откройте консоль разработчика.
Шаг 2 — Нажмите на отладку.
Шаг 3 — Выполнить анонимное окно откроется, как показано ниже. Теперь нажмите на кнопку Выполнить —
Шаг 4 — Откройте журнал отладки, когда он появится на панели журналов.
Из триггера
Вы также можете вызвать класс Apex из Trigger. Триггеры вызываются, когда происходит указанное событие, и триггеры могут вызывать класс Apex при выполнении.
Ниже приведен пример кода, который показывает, как класс выполняется при вызове Trigger.
пример
// Class which will gets called from trigger public without sharing class MyClassWithSharingTrigger { public static Integer executeQuery (List<apex_customer__c> CustomerList) { // perform some logic and operations here Integer ListSize = CustomerList.size(); return ListSize; } } // Trigger Code trigger Customer_After_Insert_Example on APEX_Customer__c (after insert) { System.debug('Trigger is Called and it will call Apex Class'); MyClassWithSharingTrigger.executeQuery(Trigger.new); // Calling Apex class and // method of an Apex class } // This example is for reference, no need to execute and will have detail look on // triggers later chapters.
Из кода контроллера страниц Visualforce
Класс Apex также может быть вызван со страницы Visualforce. Мы можем указать контроллер или расширение контроллера, и будет вызван указанный класс Apex.
пример
Код страницы VF
Код класса Apex (расширение контроллера)