Документация по Clarion

MEMBER (Идентифицирует принадлежность модуля-члена)


MEMBER (программа)
[MAP
прототипы
.]
[метка] локальные данные
;процедуры или функции



ПрограммаСтроковая константа, содержащая имя файла (без расширения) модуль PROGRAM. Этот параметр требуется.
MAPОписание локальных процедур и функций. Любые процедуры или функции объявленные здесь могут быть использованы только теми процедурами или функциями, чей код находится в этом модуле-ЧЛЕНЕ.
прототипыОбъявления PROCEDURE или FUNCTION.
локальные данныеОбъявление локальных Статических данных, которые могут использоваться только теми процедура- ми и функциями чей исходный код находится в этом модуле-ЧЛЕНЕ.
CODEНачало блока выполнимых операторов.
операторыВыполнимые инструкции программы.
RETURNЗавершает выполнение программы. Возвращает уп равление операционной системе.
Процедуры или ФункцииИсходный текст для процедур и функций в модуля-ЧЛЕНА.

MEMBER - первый оператор в исходном модуле, который не является PROGRAM-модулем. Ему могут предшествовать только комментарии к исходному тексту и-или директивы компилятора или TITLE и SUBTITLE. Это слово требуется в начале любого исходного файла который содержит процедуры и-или ФУНКЦИИ которые используются в ПРОГРАММЕ. Оператор MEMBER идентифицирует программу к которой принадлежит данный исходный МОДУЛЬ.
Модуль-ЧЛЕНА может иметь собственную MAP-структуру. Процедуры и функции, объявленные в этой MAP, доступны только другим процедурам и функциям в этом модуле-ЧЛЕНЕ. Исходный код для процедур и функций, объявленных в MAP этого модуля-ЧЛЕНА, может содержаться в файле самого модуля-ЧЛЕНА, или другом файле. Если исходный код для ПРОЦЕДУРЫ или ФУНКЦИИ объявленной в MAP модуля-ЧЛЕНА содержится в отдельном файле, прототип такой процедуры и-или функции должен быть объявлен в структуре MODULE в пределах MAP данного модуля-ЧЛЕНА. Этот отдельный исходный файл модуля-ЧЛЕНА должен также содержать собственную MAP, которая объявляет тот же самый прототип для этой ПРОЦЕДУРЫ или ФУНКЦИИ. Любая PROCEDURE или FUNCTION не объявленная в Глобальной MAP (ПРОГРАММЫ) должна быть объявлена в локальной MAP в МОДУЛЕ-ЧЛЕНЕ который содержит исходный код.
Данные объявленные в модуле-ЧЛЕНЕ, между ключевыми словами MEMBER и PROCEDURE или FUNCTION, является "Локальными Статическими данными" и к ним могут обращаться только PROCEDURE или FUNCTION в пределах модуля.
Пример:
MEMBER('OrderSys')
!Модуль относится к программе OrderSys
MAP !Описываем локальные процедуры
Func1(STRING),STRING
!Func1 известна только в этом модуле
.
LocalData STRING(10) !Описываем данные, локальные для данно-
!го модуля-ЧЛЕHА
HistOrd PROCEDURE !Описание процедуры HistOrd
HistData STRING(10) !Данные, локальные для PROCEDURE
CODE
LocalData = Func1(HistData)
HistOrd2 PROCEDURE !Еще одна процедура
CODE
LocalData = Func1(LocalData)
Funcl FUNCTION(RecField)
CODE
См. Также: , , ,



Содержание раздела