Внешние и внутренние процедуры
В языке ABL есть два типа процедур: внешние и внутренние. Эти процедуры создаются в файлах с расширением «.p». Но между ними есть отличия в том, как они определяются, как вызываются и как они используются в приложении.
Внешняя процедура определена основным блоком (Main Block) в файле процедуры. В процедурном файле может быть только одна внешняя процедура. Процедуры, которые мы рассматривали ранее, являются внешними процедурами. Вызов внешних процедур выполняется с использованием имени процедурного файла. Внешние процедуры полезны для работы клиентов и обеспечения процессной обработки, такой как генерация отчётов. Они также широко используются в среде разработки для тестирования приложения.
Внутренние процедуры определяются с помощью оператора procedure в процедурном файле. Вызов внутренних процедур выполняется с использованием имени процедуры. В основном они используются для предоставления дополнительной функциональности для внешней процедуры. Например, внешняя процедура может вызывать внутреннюю процедуру в том же файле для форматирования данных. Использование внутренних процедур совместно с внешней процедурой является хорошей практикой для организации кода. Вы также можете создать отдельный процедурный файл, который будет содержать только внутренние процедуры. Такие файлы используются для объединения набора взаимосвязанных процедур в библиотеки. Например, вы можете создать процедурный файл, содержащий библиотеку процедур, которые реализуют сервисные интерфейсы (Service Interfaces) для бизнес-сущности (Business Entity). Каждая такая процедура вызывается по имени, определённом в её описании.
Далее вы узнаете, как:
- описать параметры для процедуры;
- вызвать внешнюю процедуру из другой части приложения;
- описать внутреннюю процедуру;
- вызвать внутреннюю процедуру локально и из другой части приложения.