Мельница данных- Руководство разработчика на платформе  (раздел целиком)  (17.05.2022)
Руководство разработчика на платформе

1. Решения, предлагаемые технологией "Мельница данных"

Технология "Мельница данных" предлагает решения традиционных проблем разработки и сопровождения учетных систем за счет следующих инноваций:

  1. Объектная модель хранится в системе по тем же принципам, что и модель бизнес-данных, т.е. объекты классов, описывающих метаданные системы (классы, поля, методы, свойства, пользовательские формы) хранятся в базе данных и отображаются при помощи стандартного пользовательского интерфейса. Моделирование системного слоя метаданных системы произведено разработчиками платформы. Модель системного слоя документирована и доступна для просмотра и использования разработчикам прикладных систем.
  2. Разработка прикладных учетных систем ведется в той же среде, что и работа конечных пользователей. Текущая модель прикладной системы доступна для просмотра и использования всеми разработчиками.
  3. На основе заложенной объектной модели прикладной системы автоматически генерируется SQL-код (как DML, так и DDL составляющие), что полностью освобождает разработчика прикладной системы от SQL-программирования.
  4. Пользовательские интерфейсы (формы, представления) также описываются при помощи объектной модели и хранятся в базе данных. Это позволяет автоматически генерировать формы просмотра данных и формы задания параметров методов, что освобождает разработчика прикладной системы от написания кода клиентского приложения. Для тонкого управления поведением форм задания параметров может использоваться язык VB-script.
  5. При внесении изменений в объектную модель:
    • новое состояние модели отображается в пользовательском интерфейсе в доступной для всех разработчиков форме;
    • текущая объектная модель в виде диаграммы классов может быть выгружена в HTML-отчет, что является базовой возможностью платформы;
    • внесение изменений в структуру базы данных и пользовательские интерфейсы производится автоматически средствами платформы.

Основными элементами стандартизованного пользовательского интерфейса являются развитые элементы управления, работающие с данными:

  • Таблицы данных - отображают списки объектов в табличной форме, удобной для восприятия пользователя. Таблицы данных позволяют производить сортировку, группировку объектов, фильтрацию данных по ряду условий, подведение агрегатов (количества объектов, наибольшего, наименьшего значения, суммы, среднего и т.д.), отображение и скрытие групп, подведение итогов по группе. Таблицы данных имеют функционал, позволяющий отображать иерархические структуры, а также производить произвольный отбор отображаемых объектов пользователем. Используемые таблицы данных позволяют работать с большими объемами данных без потери производительности.
  • Инспектор объектов - отображает все свойства выбранных (одного или нескольких) объектов в двух колонках: имя свойства - значение свойства. Инспектор объектов позволяет просматривать все свойства объектов, а также изменять значения свойств как одного объекта, так и для всех выделенных объектов одним действием.
  • Форма задания параметров - отображается при вызове пользователем одного из методов. На форме расположены элементы управления Поле ввода, соответствующие описанным для метода параметрам. Внешний вид и поведение элементов управления зависят от типа описанных параметров. Поведением элементов управления на форме можно управлять при помощи скрипта формы, разрабатываемого на языке VB-script.
  • Поле ввода - используется для задания значений свойств и параметров как в Таблице данных, так и в Инспекторе объектов и на формах задания параметров. Имеет функционал, позволяющий редактировать значения различных типов. Использование стандартизованного пользовательского интерфейса позволяет снизить издержки как на его сопровождение, так и на обучение пользователей работе на новых участках.

Реализованы развитые возможности интеграции с третьесторонними системами. Они обеспечиваются следующими механизмами:

  1. Возможность переноса в Microsoft Excel любого видимого представления "as-is" с сохранением всех группировок, сортировок, агрегатов и т. п.
  2. Возможность вывода отчетов в виде документов Microsoft Office с передачей в среду функционирования Office соединения с БД, что позволяет строить отчеты любой степени сложности.
  3. Возможность использования в системе любого внешнего Ole-объекта как метода любого класса без ограничений.
  4. Возможность использования скриптлетов (фрагментов кода на скриптовом языке VBScript и/или JScript) как методов системы, фактически - возможность реализации на этих языках сколь угодно сложного поведения.
  5. Возможность формирования отчетов непосредственно в виде html-документов для последующей публикации их в сети Internet.

2. Системный слой объектной модели "Мельница данных"

Технология разработки и сопровождения учетных систем "Мельница данных" требует для своего функционирования объектную модель бизнес-сущностей. Технология диктует ряд дополнительных требований к объектной модели.

  1. Все классы наследуются от единого корня, класса TObject. Класс TObject вводит ряд элементов состояния, поведения и представления, которые наследуются всеми учитываемыми объектами в обязательном порядке.
  2. Множественное наследование не поддерживается (т.е. у каждого класса может быть один и только один родитель).
  3. Множественная инкапсуляция не поддерживается (т.е. у каждого объекта может быть один либо ни одного инкапсулирующего объекта).
  4. Простые типы данных вводятся посредством доменов. Домены определяют обязательность своих значений, а также другие характеристики, зависящие от класса домена. Домены бывают:
    • строковые (определяют максимальную длину строки);
    • целочисленные (определяют максимальное и минимальное значение целого числа);
    • вещественные (определяют максимальное и минимальное значение числа, количество значащих цифр);
    • логические;
    • значения типа "дата";
    • значения типа "время";
    • значения типа "дата со временем";
    • перечисления (определяют список возможных значений);
    • ссылка (определяют класс-приемник ссылки);
    • большие двоичные объекты (текст, изображение, файл, и т.д.).

3. Наследование и переопределение членов класса и параметров подпрограмм

Все члены родительского класса наследуются дочерним классом следующим образом:

Поля

Все поля родительского класса доступны в дочернем классе. При создании в дочернем классе поля с тем же именем, что и в родительском классе, класс-наследник теряет возможность напрямую манипулировать полем родительского класса и получает поле с тем же именем. Можно сказать, что новое поле "закрывает" старое, но не "замещает" его.

Методы

Все методы родительского класса наследуются дочерним классом. При создании в дочернем классе метода с тем же именем, что и в родительском классе, метод переопределяется, т.е. вместо старого метода будет существовать новый. Единственный способом обратиться к старому (унаследованному) методу является использование в теле метода оператора унаследованного вызова inherited (см. раздел 5.3.14.). Переопределенный метод имеет все параметры родительского метода и может расширять список параметров, а также переопределять унаследованные параметры (создавая параметры с тем же именем и изменяя любой другой атрибут параметра по своему усмотрению). Скрипты форм задания параметров не наследуются и должны быть полностью заданы в переопределенном методе. Изображения-иконки методов наследуются и могут не переопределяться явно.

Свойства

Все свойства родительского класса доступны в дочернем классе. При создании в дочернем классе свойства с тем же именем, что и в родительском классе, класс-наследник теряет возможность напрямую манипулировать свойством родительского класса и получает свойство с тем же именем. Можно сказать, что новое свойство "закрывает" старое, но не "замещает" его. На практике часто бывает необходимо в унаследованном методе (особенно в конструкторе) скрыть часть параметров от пользователя, либо сузить область выбора значений для каких либо параметров. В этом случае необходимо переопределить параметры в унаследованном методе с новыми значениями свойства Scope ("Область видимости") или Domain ("Домен"). Это нормальная рекомендуемая практика. Необходимо понимать, что скрыв с формы элемент управления, соответствующий параметру, значение которого обязательно, необходимо предусмотреть, чтобы этот параметр получил значение до вызова унаследованного метода, либо из скрипта формы задания параметров, либо в теле самого метода.

        В конструкторе класса, унаследованного от класса TObject, переопределен параметр Name, таким образом, что в свойстве "Область видимости" установлено значение "Не видимо пользователям". При этом тело метода конструктора должно выглядеть следующим образом:
begin
  Name := UniqueValue;                    (1)
  inherited;                         (2)
  // инициализация собственных полей
end;
  
Параметр конструктора Description, унаследованный от конструктора класса TObject останется видимым и его значение будет в обязательном порядке установлено пользователем при помощи формы задания параметров. Значения параметров Parent и Master будут определены из контекста вызова или запрошены у пользователя. Параметр Name не будет отображен на форме задания параметров и в начале выполнения тела метода его значение будет пустым (nil). В связи с этим в строке (1) тела метода производится установка значения параметра Name при помощи функции UniqueValue. Если этого не сделать, то вызов унаследованного метода при помощи оператора inherited вернет ошибку, связанную с тем, что параметр Name имеет недопустимое значение.

4. Средства моделирования пользовательского интерфейса

4.1. Представления

4.2. Визуальные группы

4.3. Формы, связь представлений в формах

5. Объектно-реляционное отображение

6. Обзор возможностей Платформы

7. Этапы разработки прикладных решений

7.1. Формирование видения модели

7.2. Создание структур хранения и средств обработки данных

7.2.1. Класс TObject, члены класса TОbject

7.2.2. Создание классов

7.2.3. Создание полей

7.2.4. Создание свойств

7.2.5. Создание методов

7.3. Синхронизаци базы данных

7.4. Создание пользователей и ролей

7.5. Средства моделирования пользовательских интерфейсов

7.5.1. Представления

7.5.2. Формы. Включение представлений в формы

7.5.3. Визуальные группы. Включение форм в визуальные группы

7.5.4. Организация доступа пользователей к формам и визуальным группам

7.6. Разработка отчетов

7.6.1. Создание шаблонов PDF-отчетов

7.6.1.1. Описание

Portable Document Format (PDF) — кроссплатформенный формат электронных документов, созданный фирмой Adobe Systems с использованием ряда возможностей языка PostScript. В первую очередь предназначен для представления в электронном виде полиграфической продукции, — значительное количество современного профессионального печатного оборудования может обрабатывать PDF непосредственно. Для просмотра можно использовать официальную бесплатную программу Adobe Reader, а также программы сторонних разработчиков. Традиционным способом создания PDF-документов является виртуальный принтер, то есть документ как таковой готовится в своей специализированной программе — графической программе или текстовом редакторе, САПР и т. д., а затем экспортируется в формат PDF для распространения в электронном виде, передачи в типографию и т. п. Формат PDF позволяет внедрять необходимые шрифты (построчный текст), векторные и растровые изображения, формы и мультимедиа-вставки. Поддерживает RGB, CMYK, Grayscale, Lab, Duotone, Bitmap, несколько типов сжатия растровой информации. Имеет собственные технические форматы для полиграфии: PDF/X-1, PDF/X-3. Включает механизм электронных подписей для защиты и проверки подлинности документов. В этом формате распространяется большое количество сопутствующей документации. Чаще всего PDF-файл является комбинацией текста с растровой и векторной графикой, реже — текста с формами, JavaScript'ом, 3D-графикой и другими типами элементов.

В приложениях Платформы "Мельница данных" для создания PDF-документов используется собственная библиотека PDFCreator.dll. С помощью библиотеки возможно прямое создание документов версии 1.3 . Создание PDF-документов осуществляется путем ввода предопределенных в библиотеке команд, которые в дальнейшем интерпретируются на основе языка описания страниц POSTSCRIPT.

        Все размеры графических объектов, размеры страниц, шрифтов и т.п. по умолчанию заданы в миллиметрах.
        Для удобства построения шаблона PDF-документа создана функция DrawGrid. При ее включении при отладке при создании шаблона будет отображена визуальная сетка с шагом 5 миллиметров.
C гридом

7.6.1.2. Методы

7.6.1.2.1. Свойства документа

Для создания и описания свойств PDF-документа в библиотеке PDFCreator.dll используется класс IPDFDocument, обладающий следующими свойствами:

  • Title (WideString) - заголовок документа. По умолчанию - пустая строка.
           
    Title = "DOC1"
  • CanEmbedFonts (WordBool) - Признак возможности построения PDF- документа со встроенными шрифтами (Embedded Fonts). В случае включения признака, все объявленные в скрипте шрифты будут включены в сборку документа и будут передаваться целиком вместе с документом. По умолчанию - False.
           
    CanEmbedFonts = True 
    CanEmbedFonts = False
  • CanCompress (WordBool) - признак сжатия документа при создании по собственным алгоритмам. По умолчанию - True.
           
    CanCompress = False 
    CanCompress = True
  • Author (WideString) - автор документа. По умолчанию - текущий пользователь ОС.
  • Subject (WideString) - описание документа. По умолчанию - пустая строка.
  • Keywords (WideString) - ключевые слова для поиска по документу. По умолчанию - пустая строка.
  • Creator (WideString) - приложение-родитель документа. Указывается в том случае, если документ был сконвертирован из другого формата.
  • PageCount (Integer) - свойство, содержащее общее количество страниц в документе.
  • Pages[Index: Integer]: IPDFPage - свойство документа, предназначенное для перебора страниц документа для совершения над ними однотипных действий.
           

    Пример использования:

    for I = 0 to PageCount - 1
      Pages(I).rectangle 10,10,10,10, false
    next
    Save "c:\pdf.pdf"

    Результат: На всех страницах документа будут нарисованы квадраты 10х10 мм.
  • procedure Save(Target: OleVariant) - процедура для сохранения документа PDF на жесткий диск сразу после создания.
           
    Save "c:\pdf.pdf"
    - сохранит документ в файл c:\pdf.pdf


7.6.1.2.2. Свойства страницы

Для создания страницы используется функция

function CreatePage(Parent: OleVariant): IPDFPage;

Параметр Parent указывает страницу-родителя для данной страницы. Если страницы- родителя быть не должно - формат вызова функции примет вид:

set page = CreatePage(Null)

Параметры страницы:

  • Title - заголовок страницы.
           
    page.Title = "Page name"
          
  • Width - ширина страницы, миллиметры
           
    page.Width = 80
          
  • Height - высота страницы, миллиметры
           
    page.Height = 80
          
  • DrawGrid - процедура, выводящая на страницу сетку с шагом 5 миллиметров для удобства отладки вида документа.
  • Perform - процедура, позволяющая выполнить дополнительные команды PostScript на странице.
           
    page.perform "1 0.7 0 0 k"
    page.perform "0 0 m"

7.6.1.2.2.1. Объявление цвета

Для объявления цвета объектов на странице используется цветовая модель R:G:B (Red:Green:Blue). Объявление цвета для выполнения последующих операций (цвет шрифта, цвет линии/фигуры) осуществляется процедурой

procedure SetColor(R: Integer; G: Integer; B: Integer);
Где параметры R, G, B - значения базисных цветов для выбранного цвета (от 0 до 255).

       
ЦветRGB
Белый 255 255 255 +++
Черный 0 0 0 +++
Серый 190 190 190 +++
Синий 0 0 255 +++
Красный 255 0 0 +++
Зеленый 0 255 0 +++
       

Если предварительно цвет не был объявлен, используется цвет по умолчанию - черный (0,0,0)


7.6.1.2.3. Графика

7.6.1.2.3.1. Линии

Для отрисовки линий используется процедура

procedure Line(X1: Double; Y1: Double; X2: Double; Y2: Double);
Здесь:

  • X1 - координата начала линии по горизонтали в миллиметрах от верхнего левого угла листа.
  • Y1 - координата начала линии по вертикали в миллиметрах от верхнего левого угла листа.
  • X2 - координата конца линии по горизонтали в миллиметрах от верхнего левого угла листа.
  • Y2 - координата Конца линии по вертикали в миллиметрах от верхнего левого угла листа.

Для задания толщины линии используется свойство

property LineWidth: Double
Значение толщины задается в миллиметрах. Значение по умолчанию - минимально возможная единица рисования для устройства. Так для монитора - 1 pixel, для принтера - 1 dot (точка)

Для задания стиля отрисовки начала/окончания линии используется свойство property LineCap: TPDFLineCap
Возможные стили:
Значение свойства: Отображение: Описание:
0Линия 0Прямой срез точно по точкам начала и окончания линии (по умолчанию)
1Линия 1С закруглением
2Линия 2Прямой срез с продолжением линии на половину толщины линии

Объявление цвета линии.

        Две линии разной толщины, с разными окончаниями и цветами:
set page = CreatePage(Null)

page.DrawGrid

page.LineCap = 1

page.LineWidth = 2

page.Line 10, 10, 30, 30

page.LineWidth = 4

page.SetColor 255, 0, 0

page.LineCap = 2

page.Line 10, 30, 30, 10."I 


Результат:
2 линии

При необходимости соединения линий под углом в определенной точке можно задать тип соединения. Для объявления типа соединения используется свойство property LineJoin: TPDFLineJoin;
Типы соединения двух линий:
Значение свойстваОтображениеОписание
02 линии 0С острым углом
12 линии 1С закруглением
22 линии 2С обрезанным углом

Пунктир

Для создания пунктира используется процедура отображения линии с предварительно объявленными дополнительными значениями.

Процедура procedure SetDash(DashArray: OleVariant; Phase: Integer); Здесь DashArray - массив значений в миллиметрах, указывающий последовательность чередования штрихов и пропусков на линии, Phase - смещение в миллиметрах по линии.

        Пример 1. Штрих 10 мм, Промежуток 5 мм, Смещения нет
Пример 2. Штрих 10 мм, Промежуток 5 мм, Смещение 5 мм
Пример 3. Различные значения штрихов и промежутков, Смещения нет
set page = CreatePage(Null)

page.DrawGrid

page.LineWidth = 3

page.SetDash Array(10, 5), 0

page.Line 10, 10, 100, 10

page.SetDash Array(10, 5), 5

page.Line 10, 20, 100, 20

page.SetDash Array(10, 5, 3, 2, 12, 20), 0

page.Line 10, 30, 100, 30

Результат:
Пунктир 1

Ломанная линия - здесь непрерывная линия, состоящая из нескольких прямых. Для отображения ломанной используется процедура procedure Poly(Points: OleVariant; Fill: WordBool), где Points - массив координат точек соединяемых прямыми, а Fill - признак заливки полученной замкнутой фигуры (если замкнута).

        Пример Звезда без заливки
set page = CreatePage(Null)

page.DrawGrid

page.LineWidth = 3

page.Poly  Array(10, 45, 100, 45, 27, 103, 55, 10, 82, 103, 10, 45), false

Результат:
Звезда
        Пример Звезда с заливкой
set page = CreatePage(Null)

page.DrawGrid

page.LineWidth = 3

page.Poly  Array(10, 45, 100, 45, 27, 103, 55, 10, 82, 103, 10, 45), true

Результат:
Звезда заливка

7.6.1.2.3.2. Прямоугольник

Rectangle (Прямоугольник) - для создания используется процедура:

procedure Rectangle(X1: Double; Y1: Double; Width: Double; Height: Double; Fill: WordBool);
Здесь:

  • X1 - координата верхнего левого угла прямоугольника по горизонтали в миллиметрах от верхнего левого угла листа шаблона.
  • Y1 - координата верхнего левого угла прямоугольника по вертикали в миллиметрах от верхнего левого угла листа шаблона.
  • Width - ширина прямоугольника с миллиметрах.
  • Height - высота прямоугольника с миллиметрах.
  • Fill - признак заливки прямоугольника (True/False). Если значение True то заливка производится объявленным заранее цветом (см. Объявление цвета). Если False - заливка не производится. Прямоугольник отрисовывается линиями с предварительно заданной толщиной. См. Линии
        Пример 1. Создание красного прямоугольника:
set page = CreatePage(Null)

page.SetColor 255, 0, 0

page.Rectangle 10, 15, 40, 20, True

page.DrawGrid
Результат:
Прямоугольник
Пример 2. Пустой прямоугольник без задания цвета:
set page = CreatePage(Null)

page.DrawGrid

page.Rectangle 12, 17, 42, 25, false

page.DrawGrid

Результат:
Прямоугольник false

Также существует возможность изменения стиля отображения углов прямоугольника. Для этого нужно использовать свойство property LineJoin: TPDFLineJoin;

Значение свойстваОтображениеОписание
02 линии 0С острым углом
12 линии 1С закруглением
22 линии 2С обрезанным углом

Пример построения прямоугольников с различными типами соединения сторон:

       
set page = CreatePage(Null)

page.DrawGrid

page.LineWidth = 4

page.LineJoin = 0

page.Rectangle 10, 10, 20, 10, false

page.LineJoin = 1

page.Rectangle 40, 10, 20, 10, false

page.LineJoin = 2

page.Rectangle 70, 10, 20, 10, false


Результат:
3 прямоугольника

7.6.1.2.3.3. Вставка готовых изображений

Для вставки на создаваемую страницу готового изображения используется процедура procedure Image(const FileName: WideString; X: Double; Y: Double; Width: Double; Height: Double)

Параметры:

  • const FileName - имя файла изображения и путь к нему на жестком диске. Задается в кавычках.
  • X - координата левой верхней точки изображения по отношению к верхнему левому углу страницы по горизонтали в миллиметрах
  • Y - координата левой верхней точки изображения по отношению к верхнему левому углу страницы по вертикали в миллиметрах
  • Width - ширина изображения в миллиметрах
  • Height - высота изображения в миллиметрах.
       
set page = CreatePage(Null)
page.drawgrid
page.Image "c:\mill.bmp", 10,10, 30, 30

Результат:
Картинка

Вне зависимости от размера исходного изображения, при вставке изображения на создаваемую страницу оно будет растянуто по размерам, прописанным в процедуре.


7.6.1.2.3.4. Векторная графика

Язык PostScript, с помощью которого создаются векторные изображения для PDF-документа, поддерживает создание типичных примитивных объектов, таких как:

  • Прямые и ломанные линии
  • Многоугольники
  • Окружности и эллипсы
  • Кривые Безье
  • Текст

При создании векторного изображения на странице PDF-документа в приложениях Платформы, команды построения примитивных объектов PostScript передаются на исполнение при помощи процедуры Perform. Подробнее об операторах и командах PostScript для создания PDF-документов можно узнать на сайте Adobe


7.6.1.2.4. Шрифты

Шрифты, которые должны использоваться в создаваемом документе, должны быть предварительно объявлены. Для объявления используемых шрифтов используется функция
function CreateFont(const FontName: WideString; Size: Double; Bold: WordBool; Italic: WordBool): IPDFFont; где:

  • const FontName - имя шрифта, аналогичное имени объявляемого шрифта в операционной системе. В Функции объявляется в кавычках.
  • Size - размер шрифта в пунктах
  • Bold - признак начертания шрифта "жирный". Значения - True или False
  • Italic - признак начертания шрифта "курсив". Значения - True или False
        Примеры объявления шрифтов:
set font = page.createFont("Arial", 20, False, False)
set labelFont = page.createFont("Times New Roman", 16, False, True)
set dataFont = page.createFont("Tahoma", 18, True, False)
  

Для вывода текстовой информации на страницу используются процедуры:

  • procedure WriteLine(const LineText: WideString; X: Double; Y: Double);
    - используется для вывода текстовой строки
  • function WriteText(const AText: WideString; X: Double; Y: Double; Width: Double; Alignment: TPDFTextAlignment): Double;
    - используется для вывода текстового блока.

Параметры для procedure WriteLine :

  • const LineText - текстовая строка для вывода. Прописывается в кавычках. Будет выведена на страницу одной строкой.
  • X - координата верхней левой точки текстовой строки по горизонтали в миллиметрах.
  • Y - координата верхней левой точки текстовой строки по вертикали в миллиметрах.
        Примеры вывода текстов на страницу:
set page = CreatePage(Null)
page.DrawGrid
set font = page.createFont("Arial", 20, False, False)
set labelFont = page.createFont("Times New Roman", 16, False, True)
set dataFont = page.createFont("Tahoma", 18, True, False)
Font.WriteLine "Фамилия", 5, 2
Font.WriteLine "Имя", 5, 10
Font.WriteLine "Отчество", 5, 18
labelFont.WriteLine "Дата рождения", 5, 26
dataFont.WriteLine "Национальность", 5, 34
  

Результат:
Разные шрифты

Параметры для function WriteText :

  • const AText - текст для вывода на страницу. Прописывается в кавычках. Будет выведена на страницу в виде текстового блока.
  • X - координата верхней левой точки текстового блока по горизонтали в миллиметрах.
  • Y - координата верхней левой точки текстового блока по вертикали в миллиметрах.
  • Width - ширина текстового блока в миллиметрах
  • Alignment - тип выравнивания текста в текстовом блоке.
    Значение параметраТип выравнивания
    0 По левому краю
    1 По правому краю
    2 По центру
    3 Выравнивание по ширине
        Примеры вывода текстовых блоков на страницу:
set page = CreatePage(Null)
page.DrawGrid
set font = page.createFont("Arial", 14, False, False)
set labelFont = page.createFont("Times New Roman", 12, False, True)
set dataFont = page.createFont("Tahoma", 11, True, False)
Q = font.WriteText ("Тест работы свойства для выравнивания текста в текстовом блоке для документа PDF, создаваемого на Платформе Мельница Данных", 5, 5, 100, 0)
Q = labelFont.WriteText ("Тест работы свойства для выравнивания текста в текстовом блоке для документа PDF, создаваемого на Платформе Мельница Данных", 5, 35, 100, 1)
Q = dataFont.WriteText ("Тест работы свойства для выравнивания текста в текстовом блоке для документа PDF, создаваемого на Платформе Мельница Данных", 5, 55, 100, 2)
Q = dataFont.WriteText ("Тест работы свойства для выравнивания текста в текстовом блоке для документа PDF, создаваемого на Платформе Мельница Данных", 5, 80, 100, 3)
  

Результат:
Выравнивание

Свойства шрифтов:

property Spacing: Double; - свойство, отвечающее за величину промежутка между буквами в слове. Задается в виде отклонения от промежутка между буквами по умолчанию для выбранного шрифта по горизонтальной оси в миллиметрах. Значение свойства равное "0" соответствует значению по умолчанию.

        Пример:
set page = CreatePage(Null)
page.DrawGrid
set font = page.createFont("Arial", 14, False, False)
set labelFont = page.createFont("Arial", 14, False, False)
set dataFont = page.createFont("Arial", 14, False, False)
font.Spacing = 0
labelFont.Spacing = 1
dataFont.Spacing = 2
font.WriteLine "Промежуток по умолчанию (0)", 5, 5
labelFont.WriteLine "Промежуток с отклонением (1 мм)", 5, 10
dataFont.WriteLine "Промежуток с отклонением (2 мм)", 5, 15
  

Результат:
Промежуток букв

property WordSpacing: Double; - свойство, отвечающее за величину промежутка между соседними словами. Задается в виде отклонения от промежутка между словами по умолчанию для выбранного шрифта по горизонтальной оси в миллиметрах. Значение свойства равное "0" соответствует значению по умолчанию.

        Пример:
set page = CreatePage(Null)
page.DrawGrid
set font = page.createFont("Arial", 14, False, False)
set labelFont = page.createFont("Arial", 14, False, False)
set dataFont = page.createFont("Arial", 14, False, False)
font.WordSpacing = 0
labelFont.WordSpacing = 2
dataFont.WordSpacing = 5
font.WriteLine "Промежуток по умолчанию (0)", 5, 5
labelFont.WriteLine "Промежуток с отклонением (2 мм)", 5, 10
dataFont.WriteLine "Промежуток с отклонением (5 мм)", 5, 15
  

Результат:
Промежуток слов

property Scaling: Double; - свойство, отвечающее за горизонтальное масштабирование букв используемого шрифта. Устанавливается в процентах. Горизонтальный масштаб по умолчанию - 100%.

        Пример:
set page = CreatePage(Null)
page.DrawGrid
set font = page.createFont("Arial", 14, False, False)
set labelFont = page.createFont("Arial", 14, False, False)
set dataFont = page.createFont("Arial", 14, False, False)
font.Scaling = 50
labelFont.Scaling = 100
dataFont.Scaling = 200
font.WriteLine "Сжатие (50)", 5, 5
labelFont.WriteLine "По умолчанию (100)", 5, 10
dataFont.WriteLine "Растягивание (150)", 5, 15
  

Результат:
Scaling

property RenderingMode: TPDFFontRenderingMode; - свойство, отвечающее за заливку букв используемого шрифта.
Типы заливки:
Значение параметра:Отображение:Описание:
0 Font Fill Сплошная заливка (по умолчанию). Буква заливается сплошным цветом,
объявленным на данный момент.
1 Font Stroke Только граница. Прорисовывается граница буквы. Тело остается незалитым.
2 Font FillStroke Сначала заливка, потом граница. Граница прорисовывается всегда черным цветом.
Заливка осуществляется сплошным цветом, объявленным на данный момент.
3 Inv Невидимый шрифт.

        Пример:
set page = CreatePage(Null)
set font = page.createFont("Arial", 20, False, False)
set labelFont = page.createFont("Arial", 20, False, False)
set dataFont = page.createFont("Arial", 20, False, False)
font.RenderingMode = 0
labelFont.RenderingMode = 1
dataFont.RenderingMode = 2
page.setColor 255, 0, 0
Q = font.WriteText ("Олимпиада", 5, 5, 50, 0)
Q = labelFont.WriteText ("Олимпиада", 5, 15, 50, 0)
Q = dataFont.WriteText ("Олимпиада", 5, 25, 50, 0)
  

Результат:
Заливка букв

property Rise: Double; - свойство, отвечающее за перемещение текста по вертикали.

       
set page = CreatePage(Null)
page.DrawGrid
set font = page.createFont("Arial", 20, False, False)
set labelFont = page.createFont("Arial", 7, False, False)
set dataFont = page.createFont("Arial", 7, False, False)
labelFont.rise = -17
dataFont.rise = -2
Q = font.WriteText ("Олимпиада", 5, 5, 50, 0)
Q = labelFont.WriteText ("Олимпиада", 44, 5, 50, 0)
Q = dataFont.WriteText ("Олимпиада", 44, 5, 50, 0)
  

Результат:
Rise

Для определения размеров текстовой строки используется процедура MeasureLine(const LineText: WideString; out Width: OleVariant; out Height: OleVariant);

Здесь:

  • LineText - исходный текст для размещения на странице
  • Width - возвращаемый параметр ширины текстового блока на странице
  • Height - возвращаемый параметр высоты текстового блока на странице
       
S = "шифр"
font.MeasureLine S, W, H
Q = font.WriteText(S, 139, 244 + ((23 - H) / 2), 40, 2)
  


Здесь для текста "Шифр" замеряется ширина и высота получившегося текстового блока. Затем полученные данные используются для корректного размещения текста на странице.

Для определения высоты текстового блока используется функция MeasureText(const AText: WideString; Width: Double): Double; safecall;

Функция распределит текст по задаваемому значению ширины текстового блока и вернет значение высоты текстового блока в милиметрах.

Здесь:

  • AText - исходный текст для размещения на странице. Прописывается в кавычках.
  • Width - задаваемая ширина текстового блока на странице в милиметрах.
       
S = "Текст для размещения на странице..."
Q = font.MeasureText(S, 139)
  
Здесь для текста "Текст для размещения на странице..." замеряется высота получившегося текстового блока. Затем полученные данные могут использоваться для корректного размещения текста на странице.

7.6.1.3. Порядок создания

Для создания шаблона PDF-документа необходимо в системной форме Платформы выбрать класс, к которому будет строиться документ. В подменю "Подпрограммы" вызвать контекстное меню и выбрать пункт "Создать шаблон отчета PDF". Заполнить необходимые поля и приступить к созданию скрипта в окне "Скрипт шаблона".

Конструктор
  1. Объявляем все переменные.
  2. Создаем страницы
  3. Устанавливаем все свойства документа и страниц
  4. Рисуем простые графические объекты
  5. Объявляем все используемые шрифты
  6. Расставляем постоянный текст на странице
  7. Расставляем переменный текст на странице
  8. Вставляем или создаем сложные графические объекты
        Пример документа PDF:
set LDataSet = createDataSet("TRoundAbiturSt")
'Объявление переменных
LDataSet.AddQueryItem 1, "ID", ID
LDataSet.AddQueryItem 0, "RoundComp$N"
LDataSet.AddQueryItem 0, "BachRound$N"
LDataSet.AddQueryItem 0, "LastName"
LDataSet.AddQueryItem 0, "FirstName"
LDataSet.AddQueryItem 0, "MiddleName"
LDataSet.AddQueryItem 0, "BirthDate"
LDataSet.AddQueryItem 0, "RegNumber"
LDataSet.AddQueryItem 0, "SecondStageCity$D"
LDataSet.AddQueryItem 0, "PhoneList"

'Присваивание переменным значений
OlympName = LDataSet.Field("RoundComp$N")
OlympClass = LDataSet.Field("BachRound$N")
LastName = LDataSet.Field("LastName")
FirstName = LDataSet.Field("FirstName")
MiddleName = LDataSet.Field("MiddleName")
if not IsNull(LDataSet.Field("BirthDate")) then
  BirthDate = LDataSet.Field("BirthDate")
else
  BirthDate = "(не задана)"
end if
RegNo = LDataSet.Field("RegNumber")
if not IsNull(LDataSet.Field("SecondStageCity$D")) then
  OlympCity = LDataSet.Field("SecondStageCity$D")
else
  OlympCity = "(не выбран город участия)"
end if
if not IsNull(LDataSet.Field("PhoneList")) then
  Phone = LDataSet.Field("PhoneList")
else
  Phone = ""
end if

'CanCompress = False - признак сжатия файла
set page = CreatePage(Null) ' создаем страницу
'Объявляем используемые шрифты
set font = page.createFont("Arial", 20, False, False)
set labelFont = page.createFont("Arial", 16, False, False)
set dataFont = page.createFont("Arial", 18, True, False)
set bigFont = page.createFont("Arial", 24, False, False)

'page.DrawGrid  - рисуем сетку для удобства отладки

page.LineWidth = 0.5 ' Установка толщины линии

' Рисуем прямоугольники
page.Rectangle 8, 12, 4, 4, True
page.Rectangle 190, 12, 4, 4, True

page.Rectangle 8, 273, 4, 4, True
page.Rectangle 105, 273, 4, 4, True
page.Rectangle 190, 273, 4, 4, True

'Выводим постоянный и переменный текст
Q = font.WriteText ("Межрегиональная олимпиада школьников", 12, 20, 178, 2)
Q = bigFont.WriteText (OlympName, 12, 45, 178, 2)
Q = bigFont.WriteText (OlympClass, 12, 56, 178, 2)

Q = font.WriteText ("Титульный лист", 12, 72, 178, 2)

labelFont.WriteLine "Фамилия", 25, 115 - 23
labelFont.WriteLine "Имя", 25, 123 - 23
labelFont.WriteLine "Отчество", 25, 131 - 23
labelFont.WriteLine "Дата", 25, 139 - 23
labelFont.WriteLine "рождения", 25, 145 - 23

labelFont.WriteLine "Регистрационный номер", 25, 169 - 30
labelFont.WriteLine "Город проведения", 25, 177 - 30
labelFont.WriteLine "Аудитория", 25, 185 - 30


labelFont.WriteLine "Дата", 25, 211
labelFont.WriteLine "Подпись", 25, 219
labelFont.WriteLine "Телефон", 25, 227


dataFont.WriteLine LastName, 63, 114 - 23
dataFont.WriteLine FirstName, 63, 122 - 23
dataFont.WriteLine MiddleName, 63, 130 - 23
dataFont.WriteLine BirthDate, 63, 141 - 23

dataFont.WriteLine RegNo, 100, 168 - 30
dataFont.WriteLine OlympCity, 100, 176 - 30

' Рисуем линии
page.line 100, 192 - 30, 150, 192 - 30
page.line 58, 218, 108, 218
page.line 58, 226, 108, 226
Q = dataFont.WriteText(Phone, 58, 226, 65, 0)



' Устанавливаем новый цвет
page.setColor 192, 192, 192

S = "шифр"
font.MeasureLine S, W, H  ' измеряем текстовый блок
Q = font.WriteText(S, 139, 244 + ((23 - H) / 2), 40, 2) ' располагаем текстовый
блок на странице

' Устанавливаем новый цвет
page.setColor 255, 0, 0
' Устанавливаем толщину линий в 1 пиксель
page.LineWidth = 0
' Рисуем линии по координатам
X = 139
Y = 267

page.line X, Y - 3, X, Y + 3
page.line X - 3, Y, X + 3, Y

X = X + 40
page.line X, Y - 3, X, Y + 3
page.line X - 3, Y, X + 3, Y


Y = Y - 23
page.line X, Y - 3, X, Y + 3
page.line X - 3, Y, X + 3, Y

X = X - 40
page.line X, Y - 3, X, Y + 3
page.line X - 3, Y, X + 3, Y

Результат:

Титул

7.7. Поставка решений

8. Интеграция

Интеграция - комплекс работ по настройке механизмов взаимодействия между различными учетными системами, которые функционируют независимо друг от друга в одной организационной структуре ("лоскутная" автоматизация).

Концептуально реализация интеграции может быть осуществлена двумя способами (рассмотрены более подробно далее):

  • Интеграция на базе интеграционной платформы (некоего ядра, которое осуществляет взаимодействие между учетными системами)
  • Интеграция без внедрения интеграционной платформы, с использованием связей между учетными системами только там где это необходимо.

Практически, реализация интеграции может быть осуществлена слежующими способами:

Пути интеграции


8.1. Интеграция данных

В свою очередь интеграцию данных можно разделить на два типа:


8.1.1. Репликативная интеграция

Репликативная интеграция - передающая сторона формирует реплику, передает ее принимающей стороне, которая в свою очередь загружает в себя реплику. В этом случае стандартами формата реплики являются двоичный формат и  XML-схема. Платформа Мельница Данных имеет готовые механизмы для реализации обоих форматов. 

Варианты реализации репликационной интеграции:

1. Данные должны быть переданы из сторонней учетной системы и загружены в Платформу Мельница данных:

УС-МД Реплика

В Платформе уже реализованы механизмы загрузки реплик в двоичном (бинарном) формате, а также в формате XML-схемы. В случае, если разработчики или сопровождающие сотрудники сторонней учетной системы имеют возможность выгрузки реплики в данных форматах, взаимодействие производится стандартными средствами Платформы. В противном случае создается конвертер для перевода данных реплики в один из стандартных форматов для дальнейшей загрузки реплики в Мельницу Данных.

2. Данные должны быть переданы из Платформы Мельница Данных и загружены в стороннюю учетную систему:

МД-УС Репликация

При необходимости выгрузки данных из Платформы Мельница Данных используются стандартные механизмы выгрузки реплики в двоичном (бинарном) формате или в формате XML-схемы. В случае, если эти варианты не являются приемлемыми для принимающей стороны (сторонней учетной системы), можно выполнить выгрузку данных через скриптлет, Microsoft Excel-файл, отчет или любыми механизмами просто выгрузить требуемый файл для дальнейшей обработки (загрузки) принимающей стороной. В этом случае необходимо четкое согласование протоколов и форматов обмена данными.

3. Данные должны быть переданы из одной сторонней учетной системы в другую. При этом Платформа Мельница Данных выступает в качестве интеграционной платформы:

МД - интеграционное ядро

Если Платформа выступает в качестве интеграционного ядра, в ней необходимо объявить структуры для хранения тех элементов данных, которые в Платформе по умолчанию не хранятся, но загружаются в нее из сторонних учетных систем и в дальнейшем подлежат какому-либо анализу. При этом нет необходимости обеспечивать функционирование бизнес-процессов над этими данными в рамках Платформы, данные просто хранятся.

Подобная интеграция осуществляется простыми готовыми средствами платформы в самые сжатые сроки.


8.1.2. On-Line доступ

Второй путь интеграции данных - Интеграция с использованием доступа к данным в режиме On-Line.

1. В том случае когда Платформа является серверной стороной, то есть стороной-поставщиком данных для других систем, возможны следующие варианты предоставления данных:

OnLine

- СУБД, то есть база данных, которая хранит все данные Платформы. На данный момент поддерживаются Oracle, Firebird, MS SQL. Возможна реализация поддержки и других систем управления базами данных. Для указанных баз данных доступны стандартные протоколы доступа, с помощью которых осуществляются запросы к данным Платформы непосредственно. Запросы формируются при помощи стандартизированного языка запросов Structured Query Language (SQL).  

- RESTful-сервис используется для реализации более сложной механики предоставления доступа к данным и входит в состав поставки сервера приложений Платформы. С его помощью, в частности, осуществляется удаленный доступ и доступ к данным через SOAP (Simple Object Access Protocol — простой протокол доступа к объектам) с автоматическим формированием по данным Платформы WSDL-документа, описывающего сервисы. Таким образом реализуется продвинутый функционал по отбору объекта по критериям, а также в части доступа ко всем данным Платформы по протоколу SOAP/

В случае если требуются какие-либо специфические протоколы для обмена данными, они реализовываются на уровне обработчика сервера-приложения. То есть осуществляется "надстройка"  сервера приложений Платформы для работы с данными в том виде, в котором это необходимо и по тому протоколу, который требуется в каждом конкретном случае. Таким образом, Сервер приложений Платформы востребован в большинстве случаев организации взаимодействия между системами.

       

  Практический пример реализации:

Компания "Мельница технологий" в одном из московских ВУЗов осуществяла интеграцию с тестирующей системой по проведению олимпиад. С использованием протокола SOAP в тестирующую систему из Платформы предоставлялась информация о реквизитах олимпиад, которые были выбраны каждым школьником-участником. Был реализован обработчик-"переходник", через который передавалсь информация. 

Для системы LMS (Learning Management System) компании Asteros данные также предоставляются по протоколу SOAP.

2. В случае когда Платформе необходим доступ к данным сторонних систем, используется готовый RESTful-"обработчик". Частными случаями данной ситуции являются взаимодействия Платформы с различными собственными web-приложениями, а также с "Обозревателем данных", работающим через удаленный доступ.

RESTful

Для получения данных в режиме On-Line от сторонних систем используются те же стандартные протоколы. При необходимости создаются "обработчики", которые отображают для конечного пользователя в визуальных формах Платформы данные, полученные из сторонних систем.

3. При использовании Платформы в качестве платформы интеграции различных сторонних систем, данные предварительно загруженные по описанным выше протоколам могут передаваться средствами Платформы. Однако, может быть реализован и механизм прозрачной передачи данных между сторонними системами.

RESTFUL интеграция


8.2. Интеграция функций
Данный тип развития интеграции в свою очередь можно разделить на 2 пути:

8.2.1. Взаимные вызовы

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

Доступ к функциям возможен с помощью выполнения хранимых процедур (каждое бизнес-действие, которое производит пользователь, обязательно оформляется в виде хранимой процедуры на уровне СУБД Платформы). Процедуру можно вызывать, получив доступ к СУБД. Аналогично тому, как создаются select-запросы, запросы к данным, можно делать запросы, вызывающие бизнес-функции. Все методы, отчеты, и все, что доступно пользователю, может быть вызвано и через RESTful-сервис. При этом методы будут выполняться, отчеты будут формироваться в виде Excel, Word, PDF, HTML, в соответствии с запросом вызывающей стороны. Данный функционал обеспечивается готовым "обработчиком", входящим в состав поставки Платформы.

С помощью протокола SOAP можно вызывать любой метод любого объекта, получать результаты его выполнения без ограничений. 

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

       

 Пример реализации:

В ВУЗе при формировании приказа о зачислении студента в Платформе, также автоматически создается объект "Приказ" в системе документооборота ВУЗа. В дальнейшем, передвижение приказа по маршруту согласования в решении на Платформе аналогично отображается в системе документооборота. 

Если для сторонней системы существуют какие-либо стандартные протоколы, по которым можно вызывать функцию, то средствами Платформы не составляет труда вызов данной функции.


8.2.2. Встраивание

Данный путь интеграции функций представляет собой ситуацию, когда сторонняя система непосредственно "встраивается" в решения на Платформе и код сторонней системы исполняется с использованием данных Платформы.

Существуют разные способы реализации данного пути:

- В open-source системах, как правило, слой доступа к данным вынесен в некий отдельный модуль. Характерный пример - это LMS eFront. Это Open-Source разработка, содержащая в себе большой объем php-кода, с развитым web-интерфейсом, и, в том числе, содержащая модуль доступа к данным. В процессе работы создается база MySQL база достаточно примитивной структуры. В этом случае можно изменить модуль доступа, так, чтобы вместо запросов к MySQL-базе механика делала бы запросы к базе данных Платформы. Тогда исполнение php-кода, его интерпретация происходит в рамках сервера приложений Платформы.

       

  Пример реализации:

Так как в базе данных Платформы уже хранятся данные о студентах, преподавателях, курсах и т.д., то при взаимодействии с системой обучения LMS, естественным, удобным и надежным решением является хранение все этих данных в одной базе данных

- В тех случаях, когда решения Платформы сами являются частью какой-либо более общей системы, и должны предоставлять свои функции, то это решается на уровне СУБД. То есть, сгенерированный Платформой прикладной код (код на соответствующем диалекте SQL) может быть интегрирован в код более масштабного хранилища, функционировать там, исполняться там, если в этом есть необходимость.

         Прикладные системы на базе СУБД Teradata позволяют использовать PL/SQL-код для каких-либо наборов данных, притом, что сама база гораздо имеет продвинутые возможности автоматического контроля версий, хроникальности, аналитики.


9. Положения и определения

9.1. Работа с типами данных

9.1.1. Домены

9.2. Язык PascalScript

На языке PascalScript на платформе "Мельница данных" описываются тела методов и выражения. Выражения используются в условиях отбора объектов определенного класса при их отображении в представлениях, а также как встраиваемые выражения, которые могут служить членами класса для чтения свойств.

Здесь и далее зарезервированные слова выделены жирным шрифтом.


9.2.1. Структура программного блока тела метода
  [Описание переменных]
  begin
    //Операторы
  end;

Комментарии расположены между символами { и } либо от символов // до конца строки.


9.2.2. Описание переменных
var
    Имя переменной[, Имя переменной…]: Тип;
    Имя переменной[, Имя переменной…]: Тип;
    ...
Имя переменной должно быть идентификатором (последовательность символов a-z, A-Z, 0-9, _). "Тип" может быть одним из следующих:
  • integer - определяет переменные целочисленного типа;
  • string[целое_число] - определяет переменные строкового типа с заданной максимальной длиной; максимальная длина задается в квадратных скобках и обязательна для задания;
  • float - определяет переменные вещественного типа;
  • date - определяет переменные типа "дата";
  • time - определяет переменные типа "время";
  • datetime - определяет переменные типа "дата со временем";
  • boolean - определяет переменные логического типа;
  • blob - определяет переменные типа больших двоичных объектов;
  • Имя класса - определяет переменные-ссылки на экземпляры соответствующих классов;
       
  var
   I: integer;
   LSomeObject: TObject;
   LStart, LStop: datetime;
   LNewName: string[64];

9.2.3. Операторы PascalScript

Операторы разделяются точкой с запятой (;). Операторы могут быть одним из следующих:


9.2.3.1. Составной оператор
begin
  //Другие операторы
end
Операторы, размещенные внутри составного оператора, разделяются точкой с запятой. Никаких ограничений на состав операторов и количество уровней вложенности не накладывается.
       
begin
  Result := LCurrentValue;
  Exit;
end;

9.2.3.2. Оператор присваивания
Выражение1 := Выражение2

Присваивает значение выражения Выражение2 выражению Выражение1. Типы Выражения1 и Выражения2 должны быть совместимы (совпадать по классу домена либо оба быть числовыми). Для этого на Выражение1 (стоящее слева от знака равенства, lvalue) накладывается ряд ограничений. Это выражение должно быть:

  • Полем или свойством экземпляра класса
  • Локальной переменной
  • Параметром
  • Зарезервированной переменной Result
       
LObject.Name := 'Новое имя';
       
Result := 25;
       
LStartTime := StrToDateTime('01.01.2006 00:00:30'); 
       
var
  LObject: TObject;
  LClass: TClass;
  I: Integer; 
  F: Float;
begin
  I := F;  //неверно
  F := I;  //верно
  LObject := LClass; //верно
  LClass := LObject; //неверно. Должно быть LClass := (LObject as TClass);
end;  

9.2.3.3. Оператор вызова
ИмяПроцедуры [(Параметр1, Параметр2 ...)]

"ИмяПроцедуры" должно быть:

  • Именем метода класса и вызываться с указанием класса либо экземпляра;
  • Именем метода экземпляра и вызываться с указанием экземпляра;
  • Именем метода своего класса либо предка и вызываться без указания спецификаторов.
Порядок и количество параметров в операторе вызова должны строго совпадать с описанием метода.

       
  //метод класса, указан класс
  LList := TObjectList.Create(Name, Description, TObjectList, nil, nil, Folder);    

  //метод экземпляра, указан экземпляр. Метод не имеет параметров.
  LList.Destroy;

  //свой либо унаследованный метод
  BuildDefaultActions(Name, True); 

9.2.3.4. Оператор ветвления
if Выражение then
  //Оператор1
[else
  //Оператор2]

Выражение должно быть логического типа. В случае если значение Выражения истинно, выполняется Оператор1. Часть else является необязательной и относится к последнему оператору if, не имеющему таковой. В случае ее наличия Оператор2 выполняется, если значение Выражения ложно.

       
if LIndex > 25 then
  raise 'Индекс слишком большой.';
       
if LMonth = 'январь' then
  January
else if LMonth = 'февраль' then
  February
else   
  OtherMonth;  //обратите внимание на точки с запятой.

9.2.3.5. Оператор выбора
case Выражение of
  Значение1: //Оператор1
  Значение2: //Оператор2
  ...
[else
  //Оператор ]
end

Заменяет каскад операторов if. Значение Выражения должно быть числового типа. Часть else выполняется в случае, если Выражение не равно ни одному из перечисленных вариантов. Эта часть не является обязательной.

       
сase LIndex of
  0: ZeroIndex;
  1,2,3: SmallIndex;
  4,5,6,7,8,9,10: BigIndex;
else
  raise 'Слишком большой или отрицательный индекс.';
end;

9.2.3.6. Цикл с предусловием
while Выражение do
  //Оператор

Оператор выполняется до тех пор, пока значение Выражения истинно. Выражение должно быть логического типа. Если при входе в цикл Выражение не истинно, то тело цикла не будет выполнено ни одного раза.

       
while LList.Count > 0 do
  LList.GetItem(0).Destroy;

while True do
begin
  LValue := LValue.NextValue;
  if LValue.Value > 10 then
  begin
    Result := LValue.Value;
    exit;
  end;
end;

9.2.3.7. Цикл с постусловием
repeat
  //Операторы
until Выражение

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

       
repeat
  Result := Result + 1;
  LObject := LObject.Parent;
until LObject = nil;

9.2.3.8. Цикл с параметром
for Параметр := Выражение1 (to|downto) Выражение2 do
  //Оператор

Параметр цикла обязан быть простой локальной переменной. Функционально цикл с параметром эквивалентен циклам:

  • Для формы to
    Параметр := Выражение1;
    while Параметр <= Выражение2 do
    begin Оператор; Параметр := Параметр + 1; end;
  • Для формы downto
    Параметр := Выражение1;
    while Параметр >= Выражение2 do
    begin Оператор; Параметр := Параметр - 1; end;
Если Выражение1 равно Выражению2, тело цикла будет выполнено один раз.

       
for I := LList.Length - 1 downto 0 do
// если LList.Length = 0, тело цикла ни разу не будет выполнено.
begin
  LClass := LList.GetItem(I);
  LMethod := any(TMethod with (Name = LName) and (Master = LClass));
  LParamList.Add(any(TMethod with (Name = LName) and (Master = LClass)));
end; 

9.2.3.9. Цикл по экземплярам
for each Параметр of ИмяКласса [with Выражение]
       [by [-] Выражение [, [-] Выражение]] do
         //Оператор

Цикл осуществляется по выборке среди экземпляров класса ИмяКласса, для которых истинно Выражение. Если Выражение не задано, то по всем экземплярам. Ссылка на текущий в рамках цикла экземпляр присваивается в локальную переменную Параметр. Выражение должно определяться относительно переменной Параметр. Выраженния, следующие за ключевым словом by, определяют порядок обхода экземпляров. Знак "-" перед выражением (любого типа) определяет обратный порядок обхода.

       
for each LOption of TOption with LOption.Domain.Required do
    // для каждой настройки, домен которой обязателен
  LOption.SetDefaultValue;

9.2.3.10. Оператор прекращения цикла
break

Происходит немедленный выход из цикла. Выполняется финализация операторов защиты завершения, которыми защищено тело цикла. Допустим только в теле цикла с предусловием, цикла с постусловием, цикла с параметром или цикла по экземплярам.


9.2.3.11. Оператор выхода из подпрограммы
exit

Происходит немедленный выход из программного блока. Выполняется финализация операторов защиты завершения.


9.2.3.12. Оператор защиты завершения
try
  //Операторы1
finally
  //Операторы2
end

Выполняются операторы Операторы1, разделенные точкой с запятой. В случае возникновения исключительной ситуации управление сразу передается на Операторы2, и после их выполнения исключение остается активным. Если исключения не произошло, выполняются Операторы2. Если среди Операторов1 встречается оператор exit, то Операторы2 все равно выполняются.

       
//создание временного объекта-списка
LList := TObjectList.Create(Name, Description, TObjectList, nil, nil, Folder);    
try
  LList.Add(LValue);
  Exit;
finally
  //гарантированное уничтожение созданного объекта независимо от исключений.
  LList.Destroy;
end;

9.2.3.13. Оператор обработки исключительных ситуаций
try
  //Операторы1
except
  //Операторы2
end

Выполняются операторы Операторы1. В случае возникновения исключительной ситуации управление передается на Операторы2. Если исключительных ситуаций не возникло, Операторы2 не выполняются никогда. При передаче управления на Операторы2 исключительная ситуация деактивирована. Для ее повторного возбуждения можно воспользоваться оператором возбуждения исключения без указания текстовой строки сообщения.

       
try
  LObject.NeverTouch := True;
  LObject.ExecuteCoolMethod; //если метод выполнен неудачно
except
  LObject.NeverTouch := True;  //установить флаг и ничего не сообщать пользователю.
end;
       
try
   LObject.ExecuteCoolMethod; //если метод выполнен неудачно
except
   LObject.Destroy; //удалить неудачный объект
   raise;           // продолжить обработку исключения.
end;

9.2.3.14. Оператор возбуждения исключения
raise [Выражение]
Возбуждает исключение, которое, если не было обработано блоком except оператора обработки, дойдет до пользователя. Пользователь увидит сообщение, определяемое Выражением. Выражение должно иметь строковый тип и является обязательным для всех случаев, кроме части except оператора обработки исключений.

9.2.3.15. Оператор унаследованного вызова
inherited

Работает только в унаследованном переопределенном методе. Вызывается метод предка с параметрами, заданными в параметрах к моменту вызова. Если программный блок представляет собой тело функции, то в псевдопеременной Result будет результат выполнения метода предка.

       
// в теле конструктора
Name := 'Object name';
Description := 'Object description';
inherited; //вызов предка с параметрами Name и Description, 
           //заданными двумя предыдущими операторами. Ссылка на 
           //созданный объект лежит в 
           //псевдопеременной Result
Result.Name := 'New name';

9.2.4. Выражения и операции

9.2.4.1. Состав выражения
Любое выражение имеет тип. Выражения состоят из следующих элементов:
  • Целая числовая константа (0 3 234);
  • Вещественная числовая константа. Дробная часть отделяется от целой точкой (".") (3.14 2.71);
  • Строковая константа. Заключается в апострофы. ('Some string' '10', '01.01.2006' 'now');
  • Логическая константа (True False);
  • Безтиповая (любого типа) константа nil;
  • Зарезервированное слово Self. Обозначает разный объект в зависимости от контекста:
    • В методах класса кроме конструктора - использование запрещено.
    • В методах экземпляра - всегда экземпляр, для которого вызван метод.
    • В конструкторе - до вызова унаследованного метода значение не определено. После вызова - ссылка на сконструированный объект.
    • В выражениях условий отбора - объект, для которого принимается решение о его вхождении в отбор.
  • Квалификатор.
  • Агрегат.

9.2.4.2. Квалификатор

Квалификатор обозначает объект, переменную, параметр, свойство, поле, вызов функции. Квалификатор состоит из идентификаторов, разделенных точкой.

        Result
        AName
        Caption
        LObject.Name
        LObject.Parent.Name
        LObject.ChildCount
        LObject.HasAsParent(LOtherObject)

При интерпретации квалификатора используется следующий порядок разбора идентификатора:

  1. Контекстная переменная (для выражений условий отбора доменов)
  2. Локальная переменная
  3. Параметр
  4. Имя элемента перечисления
  5. Имя класса. Вне контекста означает ссылку на соответствующий объект класса TClass
  6. Имя поля
  7. Имя метода
  8. Имя свойства

При интерпретации квалификатора внутри выражения агрегата правила разбора идентификатора изменяются:

  1. Контекстная переменная (для выражений условий отбора доменов)
  2. Имя элемента перечисления
  3. Имя класса. Если это имя агрегируемого класса, то дальнейшие разыменования относятся к агрегируемому объекту
  4. Имя поля
  5. Имя метода
  6. Имя свойства
  7. Локальная переменная
  8. Параметр


9.2.4.3. Агрегат

Агрегат определяет агрегированное значение над экземплярами определенного класса, удовлетворяющими условиям агрегации. Агрегаты бывают следующих типов:

  • any - первый попавшийся объект. Результат имеет тип ссылки на объект агрегируемого класса.
           
    any(TObject with Master = Self.Parent)  
    //первый попавшийся объект, имеющий значение 
    //свойства Master равным значению свойства 
    //Parent текущего (контекстного) объекта.
    
  • count - количество объектов. Результат имеет целочисленный тип.
           
    count(TObject with Master = Self.Parent) 
    //количество объектов, имеющих значение свойства 
    //Master равным значению свойства Parent 
    //текущего объекта.
    
  • sum - сумма значений свойства, поля или функции объектов. Результат имеет тип суммируемого поля, свойства или функции
           
    sum(TExam.Mark with Master = LStudent) //сумма 
    //баллов студента по его испытаниям
    
  • max, min - соответственно максимальное и минимальное значений свойства, поля или функции объектов. Результат имеет тип агрегируемого поля, свойства или функции
           
    min(TObject.Created) // момент создания первого 
    //объекта Системы.
    

Внутри выражения агрегата правила разбора идентификатора изменяются на следующие:

  1. Контекстная переменная (для выражений условий отбора доменов)
  2. Имя элемента перечисления
  3. Имя класса. Если это имя агрегируемого класса, то дальнейшие разыменования относятся к агрегируемому объекту
  4. Имя поля
  5. Имя метода
  6. Имя свойства
  7. Локальная переменная
  8. Параметр


9.2.4.4. Операции

Операции связывают элементы выражений.

Таблица операций в порядке приоритета:
Левый
операнд
Правый операнд
Целый Вещест-
венный
Дата Время Дата со временем Логи-
ческий
Строковый Объект nil
not
Нет ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
ЗапрещеноЗапрещеноЗапрещено
* (звездочка)
Целый Целый Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Вещест-
венный
Вещест-
венный
Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Время ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата со временем ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Строковый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Объект ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
nil ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
/ (слэш, дробь)
Целый Вещест-
венный
Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Вещест-
венный
Вещест-
венный
Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Время ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата со временем ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Строковый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Объект ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
nil ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
div
Целый Целый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Время ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата со временем ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Строковый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Объект ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
nil ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
and
Целый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Время ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата со временем ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
ЗапрещеноЗапрещеноЗапрещено
Строковый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Объект ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
nil ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
or
Целый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Время ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата со временем ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
ЗапрещеноЗапрещеноЗапрещено
Строковый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Объект ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
nil ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
+ (плюс)
Целый Целый Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Вещест-
венный
Вещест-
венный
Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата Дата Дата со временем Запрещено Дата со временем ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Время Время Время Дата со временем Время Дата со временем ЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата со временем Дата со временем Дата со временем Запрещено Дата со временем ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Строковый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Строковый ЗапрещеноЗапрещено
Объект ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
nil ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
- (минус)
Целый Целый Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Вещест-
венный
Вещест-
венный
Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата Дата Дата со временем Целый Дата со временем Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещено
Время Время Время Дата со временем Время Дата со временем ЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата со временем Дата со временем Дата со временем Вещест-
венный
Дата со временем Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещено
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Строковый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Объект ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
nil ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
=, <> (равно, не равно)
Целый Логи-
ческий
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
Вещест-
венный
Логи-
ческий
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
Дата ЗапрещеноЗапрещено Логи-
ческий
Запрещено Логи-
ческий
ЗапрещеноЗапрещеноЗапрещено Логи-
ческий
Время ЗапрещеноЗапрещеноЗапрещено Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
Дата со временем ЗапрещеноЗапрещено Логи-
ческий
Запрещено Логи-
ческий
ЗапрещеноЗапрещеноЗапрещено Логи-
ческий
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
ЗапрещеноЗапрещено Логи-
ческий
Строковый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
Запрещено Логи-
ческий
Объект ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
Логи-
ческий
nil ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
<, >, <=, >= (меньше, больше, меньше либо равно, больше либо равно)
Целый Логи-
ческий
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Вещест-
венный
Логи-
ческий
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата ЗапрещеноЗапрещено Логи-
ческий
Запрещено Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещено
Время ЗапрещеноЗапрещеноЗапрещено Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата со временем ЗапрещеноЗапрещено Логи-
ческий
Запрещено Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещено
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
ЗапрещеноЗапрещеноЗапрещено
Строковый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
ЗапрещеноЗапрещено
Объект ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
nil ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
is
Целый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Время ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата со временем ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Строковый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Объект ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Логи-
ческий
Запрещено
nil ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
as
Целый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Вещест-
венный
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Время ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Дата со временем ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Логи-
ческий
ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Строковый ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено
Объект ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено Объект Запрещено
nil ЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещеноЗапрещено


9.2.4.4.1. Особенности применения операций
  1. Приоритет сравнений ниже приоритета операций булевой логики. Поэтому выражение
    LObject.Master = LMaster and LObject.Parent = LParent
    будет интерпретироваться следующим образом:
    LObject.Master = (LMaster  and LObject.Parent) = LParent
    и вызовет ошибку компиляции из-за применения операции and к объектам. Необходимо писать:
    (LObject.Master = LMaster) and (LObject.Parent = LParent)
  2. Любое значение (выражение любого типа) сравнивается с безтиповой константой nil:
          LObject := any(TObject with Name = 'Some name');
          if LObject = nil then
             .....
          
  3. Операции "Унарный минус" не существует. Для задания отрицательных констант пользуйтесь конструкцией 0-Значение:
    Result := 0-1;

9.2.5. Формальная грамматика
Goal: MethodBody | Expression;

MethodBody: [ConstantDeclaration] [VariableDeclaration] CompoundStatement ";";

ConstantDeclaration: "const" Ident ":" DomainSpecification ";" 
  [{Ident ":" DomainSpecification ";"}];

VariableDeclaration: "var" DomainDefinition [{DomainDefinition}];

DomainDefinition: Ident ":" DomainSpecification ";";

DomainSpecification: IntegerDomainDefinition
  | StringDomainDefinition
  | FloatDomainDefinition
  | DateDomainDefinition
  | TimeDomainDefinition
  | DateTimeDomainDefinition
  | BooleanDomainDefinition
  | BlobDomainDefinition
  | EnumerationDomainDefinition
  | Ident;

IntegerDomainDefinition: "integer";
StringDomainDefinition: "string" "[" Number "]";
FloatDomainDefinition: "float" ["(" Number ["." Number] ")"];
DateDomainDefinition: "date";
TimeDomainDefinition: "time";
DateTimeDomainDefinition: "datetime";
BooleanDomainDefinition: "boolean";
BlobDomainDefinition: "blob" | "clob";
EnumerationDomainDefinition: "(" Ident {"," Ident} ")";

CompoundStatement: "begin" Statement [{";" Statement}] "end";

Statement:
  | CompoundStatement
  | AssignmentStatement
  | InheritedStatement
  | CallStatement
  | IfStatement
  | CaseStatement
  | ForStatement
  | WhileStatement
  | RepeatStatement
  | TryFinallyStatement
  | TryExceptStatement
  | RaiseStatement
  | ForEachStatement
  | ExitStatement;

AssignmentStatement:  Qualifier ":=" Expression;

CallStatement: Qualifier;

InheritedStatement: "inherited";

IfStatement: "if" Expression "then" Statement ["else" Statement];

CaseStatement: "case" Expression "of" {CaseBranch} ["else" Statement ";"] "end";

CaseBranch: CaseLabel [{',' CaseLabel}] ":" Statement ";";

CaseLabel: Number | Ident;

ForStatement: "for" Ident ":=" Expression ("to"|"downto") 
  Expression "do" Statement;

WhileStatement: "while" Expression "do" Statement;

RepeatStatement: "repeat" Statement [{";" Statement}] "until" Expression;

TryFinallyStatement: "try" Statement [{";" Statement}] "finally" 
  Statement [{";" Statement}] "end";

TryExceptStatement: "try" Statement [{";" Statement}] "except" 
  Statement [{";" Statement}] "end";

RaiseStatement: "raise" [Expression];

ForEachStatement: "for" "each" Ident "of" Ident ["with" Expression] 
  ["by" Expression] "do" Statement;

ExitStatement: "exit";

Expression: ComparedExpression [{RelationOperation Expression}];

ComparedExpression: Addon [{AdditionOperaton ComparedExpression}];

Addon: Factor [{MultiplicativeOperation Addon}];

Factor: "(" Expression ")"
  | "not" Expression
  | Number ["." Number]
  | StringConstant
  | Qualifier
  | "nil"
  | "True"
  | "False"
  | "(" Expression "is" Ident ")"
  | "any" Aggregate
  | "count" Aggregate
  | "sum" Aggregate
  | "max" Aggregate
  | "min" Aggregate;

Aggregate: "(" Ident ["." Ident] ["with" Expression] ")";

Qualifier: QualifierPart [{"." QualifierPart}];

QualifierPart: Ident ["(" Expression [{", " Expression}] ")"]
  | "self"
  | "(" Qualifier "as" Ident ")";

RelationOperation: "<"
  | ">"
  | "<="
  | ">="
  | "="
  | "<>";

AdditionOperaton: "+"
  | "-"
  | "or";

MultiplicativeOperation: "*"
  | "/"
  | "div"
  | "and";

9.2.6. Соглашения

9.2.6.1. Соглашения о наименованиях

В качестве вводимых (объявляемых) идентификаторов необходимо использовать так называемую нотацию InfixCaps. Если при создании имени используется несколько слов, то необходимо использовать заглавную букву для каждого слова в имени. Для разделения слов нельзя использовать символ подчеркивания. Все сущности именуются на английском языке, при этом использование сокращений является оправданным только в случае, если длина образуемого имени не согласуется с внешними по отношению к соображениям бизнес-логики ограничениям.

  • Имя класса должно начинаться с латинской буквы 'T'.
           
    Имя Наименование
    TObjectList Список объектов
    TLearnPlan Учебный план
  • Имя поля должно начинаться с латинской буквы 'F'.
           
    Имя Наименование
    FLearnPeriod Период обучения
    FExamMark Оценка за экзамен
  • Имя свойства не имеет префикса.
           
    Имя Наименование
    ExamKind Вид рубежного испытания
    ContactPhone Контактный телефон
    Если членом класса для чтения свойства является поля, то имя свойства должно повторять имя поля без префикса 'F'. Если членом класса для чтения свойства является метод, то имя поля должно повторять имя метода без слова 'Get'.
  • Имя параметра не имеет префикса.
           
    Имя Наименование
    OrderNumber Номер приказа
    ExamDate Дата проведения экзамена
    Параметры, используемые для инициализации значений полей, должны иметь имя, повторяющее имя поля без префикса 'F'. При компиляции тела метода, написанного на языке PascalScript имена параметров и имена свойств будут распознаваться в соответствии с порядком разбора идентификаторов, как это описано здесь и здесь.
  • Имена методов должны представлять собой императивный глагол на английском языке, выражающий смысл того, что метод делает. Имена методов не имеют префикса. Имена методов, используемых для получения значений свойств должны (как члены класса для чтения), должны начинаться со слова Get. Имена методов, используемых для установки значений свойств должны (как члены класса для записи), должны начинаться со слова Set.
           
    Имя Наименование
    CountMarkSumm Вычислить сумму баллов
    GetAge Получить значение возраста
    SetMark Установить значение оценки
  • Имена локальных переменных должны начинаться с латинской буквы 'L'.
            LMarkSumm (сумма баллов), LObjectCount (количество объектов).
  • Имена доменов должны начинаться с латинской буквы 'T'. В именах доменов допустимы пробелы. Рекомендуется к имени домена добавлять слово 'domain' (через пробел), а для обязательных доменов 'required domain' (через пробел) тогда, когда необходимо исключить возможность использования этих доменов в текстах на PascalScript. Первым словом в имени домена-ссылки должно быть имя класса домена. Исключением являются имена доменов, соответствующих простым типам данных без дополнительных ограничений. Имена таких доменов могут повторять имена типов языка PascalScript (Integer, Boolean, Float).
           
    Имя Класс домена Наименование
    TPrice domain Вещественный домен Цена
    TWeight required domain Целочисленный домен Вес (обязательный)
    Boolean Логический Логический
    TClassMember required domain Ссылка домен Член класса
  • Имена элементов перечислений должны иметь префикс из двух или трех символов, идентифицирующий соответствующий домен-перечисление. Префикс записывается строчными буквами. Например,
           
    Имя Наименование
    для домена TExamKind (вид испытания)
    ekTest зачет
    ekExam экзамен
    ekDifTest дифференцированный зачет
    для домена TAggregateKind (вид агрегата)
    agCount количество
    agSumm сумма
    agAverage среднее значение
    Настоятельно рекомендуется давать уникальные имена элементов перечислений в пределах всей системы.

9.2.6.2. Cтилевое оформление исходного кода

Код на языке PascalScript, являющийся частью поставляемого решения, должен быть оформлен в соответствии с изложенными правилами.


9.2.6.2.1. Использование строк, пробелов и отступов

Пустые строки могут повысить читабельность путем группирования секций кода, которые логически связаны между собой.

Пробелы, запрещенные к использованию:

  • До или после точки "."
  • Между именем вызываемого метода и открывающей скобкой "("
  • После открывающей скобки "(" или перед закрывающей ")"
  • Перед точкой с запятой ";"
  • Перед двоеточием ":"
  • Перед запятой ","

Двоеточие для всех объявлений переменных не должно содержать перед собой пробелов и иметь один пробел после перед именем типа.

Всегда необходимо использовать два пробела для всех уровней отступа. Другими словами, первый уровень отступает на два пробела, второй на четыре и так далее. Никогда не используйте символы табуляции.

Существует несколько исключений из этого правила. Зарезервированные слова var, begin и end, относящиеся к программному блоку вцелом, всегда должны примыкать к левой границе. Код внутри блока begin..end должен иметь отступ два символа.

Все строки должны быть ограничены 80 столбцами. Строки, длиннее чем 80 столбцов должны быть разделены и перенесены. Все перенесенные строки должны быть выровнены по первой строке и иметь отступ в два символа. Зарезервированное слово begin всегда должно находиться на своей отдельной строке.

Нельзя переносить строки в тех местах, где не допускаются пробелы, например между именем метода и открывающей скобкой. Никогда нельзя помещать зарезервированное слово begin на строку, содержащую другой код.


9.2.6.2.2. Оформление объявлений и операторов

Все переменные с их типами должны быть объявлены на различных строках.

Простые операторы содержат одну точку с запятой. Если Вам необходимо разделить оператор, то перенесите продолжение оператора на следующую строку с отступом в два пробела.
       
  MyValue :=
    MyValue + (SomeVeryLongStatement / OtherLongStatement);

Составные операторы всегда заканчиваются точкой с запятой.
       
begin
  MyStatement;
  MyNext Statement;
  MyLastStatement;
end;

Каждое присвоение и каждое выражение должно располагаться на разных строках.

Оператор "if"

Оператор if всегда должен располагаться по крайней мере на двух строках
       
if A < B then DoSomething; 
       
if A < B then
  DoSomething;
В случае составного оператора необходимо поместить каждый оператор на новую строку.
       
  if A < B then begin
    DoSomething;
    DoSomethingElse;
  end else begin
    DoThis;
    DoThat;
  end;
       
  if A < B then
  begin
    DoSomething;
    DoSomethingElse;
  end
  else
  begin
    DoThis;
    DoThat;
  end;
Все остальные варианты расположения операторов не рекомендуются и не одобряются, хотя и являются синтаксически правильными.

Оператор "for"

       
  for i := 0 to 10 do begin
    DoSomething;
    DoSomethingElse;
  end;
       
  for i := 0 to 10 do
  begin
    DoSomething;
    DoSomethingElse;
  end;

  for I := 0 to 10 do
    DoSomething;

Оператор "while"

       
  while x < j  do begin
    DoSomething;
    DoSomethingElse;
  end;
       
  while x < j do
  begin
    DoSomething;
    DoSomethingElse;
  end;

  while x < j do
    Something;

Оператор "repeat..until"

       
  repeat
    x := j;
    j := UpdateValue;
  until j > 25;

Оператор "case"

Несмотря на то, что существует множество синтаксически правильных конструкций, одобренной и рекомендованной считается следующая:
       
  case LCode of
    1, 3:
      begin
        Incr := FIncrement + 1;
        FinalIncr := FIncrement div FLineDiv;
        Count := FLineDiv;
      end;
    2, 4:
      begin
        Incr := FPageIncrement;
        FinalIncr := Incr + 1;
        Incr := Incr div FPageDiv;
        Count := FPageDiv;
      end;
  else
    begin
      Count := 0;
      Incr := 0;
      FinalIncr := 0;
    end;
  end;

Оператор "try"

Несмотря на то, что существует множество синтаксически правильных конструкций, одобренной и рекомендованной считается следующая:
       
try
  try
    EnumItems(CurrentThreadID, LDisable, 0);
    Result := TaskList;
  except
    EnableItems(TaskList);
    raise;
  end;
finally
  TaskList := SaveList;
  TaskActive := SaveActive;
end; 

9.3. Интерфейсы взаимодействия с внешними подсистемами

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


9.3.1. Интерфейс IContext
  IContext = interface(IDispatch)
    ['{79847D79-A3BE-408F-B59F-662B91BC6350}']
    function Handle: Integer;
    function getName(ID: OleVariant): WideString;
    function getDescription(ID: OleVariant): WideString;
    function createDataSet(const TargetClassName: WideString):
      IContextDataSet;
    function executeMethod(const ClassName: WideString;
      const MethodName: WideString;
      Params: OleVariant): OleVariant;
    function executeReport(const ClassName: WideString;
      const TemplateName: WideString;
      Params: OleVariant): IDispatch;
    function getPropValue(const ClassName: WideString;
      const PropName: WideString;
      const ID: OleVariant): OleVariant;
    procedure setPropValue(const ClassName: WideString;
      const PropName: WideString;
      const ID: OleVariant; Value: OleVariant);
    function select(const ClassName: WideString;
      QueryItems: OleVariant): IDispatch;
    function enumerationItem(ItemIdentifier: OleVariant): WideString;
    function getClass(const ClassName: WideString): WideString;
    function createGUID: WideString;
    procedure processStart(const Description: WideString;
      ItemCount: Integer);
    procedure processStep;
    procedure processStop;
    function PlaceDataSet(const Range: IDispatch;
      const DataSet: IContextDataSet;
      ShiftRows: WordBool; ShiftColumns: WordBool): Integer;
    procedure DebugString(const Message: WideString);
    procedure ExportObject(var Document: OleVariant; const ID: WideString;
      const ClassID: WideString);
    function callRoutine(const ClassName, RoutineName: WideString;
      var RetValue: OleVariant; const ScriptPart: OleVariant): WordBool;
    function getOleObject(const ClassID, AccessibleFileName: WideString): IDispatch;
    function getResource(const Name: WideString): WideString;
    function getTempFileName(const Extension: WideString): WideString;
    function selectVaue(const ClassDomain: WideString;
      const ExpressionContext: IContextExpressionInfo;
      var Value: OleVariant): WordBool;
    procedure raiseManagedException(const ExceptionMessage: WideString);
    function getCRC(Data: OleVariant): WideString;
    function downloadData(const Host: WideString; const Url: WideString;
      const UserName: WideString; const Password: WideString;
      NegotiateAuth: WordBool; PostData: OleVariant;
      const PostContentType: WideString; PostDataIsBinary: WordBool;
      CanCache: WordBool; NewSession: WordBool; TimeOut: Integer): OleVariant;
    function createBinaryData: IDispatch;
    function BinaryToBitmap(const Data: IDispatch): IDispatch; safecall;
    function editValues(const ValuesList: WideString; const Title: WideString;
      UseTabs: WordBool; HideOKButton: WordBool;
      const ScriptPart: OleVariant): WordBool;
    function MsgBox(const Prompt: WideString; Buttons: LongWord;
      const Title: WideString;
      const HelpFile: WideString; Context: LongWord): Integer;
    function ShowMsgBox(const Prompt: WideString; Buttons: LongWord;
      const Title: WideString;
      const HelpFile: WideString; Context: LongWord): Integer;
    function buildNamedFile(const Data: IDispatch; const StoredFileName: WideString;
                            Propmpt: WordBool; Compress: WordBool): IDispatch;
    procedure parseNamedFile(const NamedFile: IDispatch; out FileName: OleVariant;
                             out Data: OleVariant);
    procedure showView(const ViewName: WideString; Key: OleVariant;
                       const DetailPropertyName: WideString);
    procedure showDataSet(const DataSet: ContextDataSet; const Caption: WideString;
                          ColumnCaptions: OleVariant; ColumnOnChangeHandlers: OleVariant;
                          TakeActionsFromView: OleVariant);
    function executeConsoleProcess(const CommandLine: WideString; MaxDuration: Integer;
                                   const OutputData: OleVariant): Integer;
    function createRaster: IDispatch;
    function createZIPArchive: IDispatch;
    function ConvertExcel(Source: OleVariant; const Format: WideString): IDispatch;
    property ContextObject: IDispatch;
    property Language: WideString;
    property UserName: WideString;
    property NegotiateAuth: WordBool;
    property Variable[const Name: WideString; Persistent: WordBool]: OleVariant;
  end;

Члены интерфейса доступны для использования в скриптах форм задания параметров, а также в отчетах как члены класса передаваемого контекстного объекта.

  • Функция Handle возвращает дескриптор главного окна приложения.
  • Функция getName возвращает имя объекта по его идентификатору.
  • Функция getDescription возвращает наименование объекта по его идентификатору.
  • Функция createDataSet создает набор данных, основанный на экземплярах класса, имя которого передано как параметр. Возвращаемый объект реализует интерфейс IContextDataSet.
  • Функция executeMethod осуществляет вызов метода с параметрами. Имя класса передается в параметре ClassName, имя вызываемого метода - в параметре MethodName. Если вызываемый метод явяется функцией, то результат ее выполнения возвращается как результат вызова executeMethod. Параметры вызова метода передаются через параметр Params следующим образом:
    • Для методов класса без параметров можно передавать любое значение, например, Null.
    • Для методов класса, имеющих один параметр, значение Params есть значение этого единственного параметра.
    • Для методов класса, имеющих более одного параметра, значение Params есть массив значений параметров.
             
      VBScript, VBA LValue = executeMethod("TObject", "Round", Array(10.24, 1))
      JScript LValue = executeMethod("TObject", "Round", new Array(10.24, 1));
      Object Pascal LValue := executeMethod('TObject', 'Round', VarArrayOf([10.24, 1]));
    • Для методов экземпляра без параметров значение Params есть идентификатор объекта, для которого вызывается метод.
    • Для методов экземпляра, имеющих параметры, значение Params есть массив значений параметров. При этом первым элементом массива является идентификатор объекта, для которого вызывается метод.
             
      VBScript, VBA executeMethod "TObject", "MergeTo", Array(LOldObject, LNewObject)
      JScript executeMethod("TObject", "MergeTo", new Array(LOldObject, LNewObject));
      Object Pascal executeMethod('TObject', 'MergeTo', VarArrayOf([LOldObject, LNewObject]));
  • Функция executeReport осуществляет вызов отчета с параметрами. Имя класса передается в параметре ClassName, имя вызываемого метода - в параметре TemplateName. Параметры вызова передаются в параметре Params аналогично вызову executeMethod. В результате вызова функции возвращается ссылка на рабочую книгу Microsoft Excel, документ Microsoft Word и так далее. Судьба приложения, в рамках которого создан возвращенный объект, остается на усмотрение вызывающей стороны. Если вызывающая сторона предполагает взаимодействие объекта с пользователем, то необходимо обеспечить видимость объекта-приложения (Application.Visible := True;). В противном случае необходимо закрыть приложение после освобождения объекта документа (Application.Quit).
  • Функция getPropValue возвращает значение свойства объекта. Имя класса, имя свойства и идентификатор объекта задаются в параметрах.
  • Процедура setPropValue устанавливает значение свойства объекта в значение, заданное параметром Value. Для очистки значения можно использовать пустую строку или значение Null. Имя класса, имя свойства и идентификатор объекта задаются в параметрах.
  • Функция select возвращает ссылку на XML-документ, содержащий в корневом элементе элементы, представляющие собой записи набора данных на основе класса ClassName (с полями, разнесенными по элементам), определяемого структурой параметра QueryItems.
  • Функция enumerationItem возвращает идентификатор элемента перечисления по имени.
           
    VBScript, VBA LItemID = enumerationItem("rsReplicatableMetadata")
    JScript LItemID = enumerationItem("rsReplicatableMetadata");
    Object Pascal LItemID := enumerationItem('rsReplicatableMetadata');
  • Функция getClass возвращает идентификатор объекта типа Класс TClass (Классы) по имени.
           
    VBScript, VBA LClassID = getClass("TDocumentType")
    JScript LClassID = getClass("TDocumentType");
    Object Pascal LClassID := getClass('TDocumentType');
  • функция createGUID является оберткой над функцией Windows API CoCreateGuid. Возвращает сгенерированный глобально-уникальный идентификатор, преобразованный в строку.
  • процедура processStart информирует систему о необходимости показать окно выполнения длительного процесса. Текст, описывающий процесс (он появляется в показываемом окне) задается параметром Description. В случае, если есть возможность определить количество "шагов" процесса, то это количество необходимо передать в параметре ItemCount. В случае, если параметр ItemCount больше нуля, окно выполнения будет снабжено индикатором прогресса. Если значение ItemCount равно нулю, то окно появится без индикатора прогресса. Если значение ItemCount меньше нуля, то решение о появлении окна будет принято системой самостоятельно на основании загрузки процессора и окно процесса не появится, если процесс завершится достаточно быстро.
  • процедура processStep информирует систему о завершении очередного "шага" процесса, что найдет отражение в индикаторе прогресса окна выполнения длительного процесса, если таковые случатся.
  • процедура processStop информирует систему о завершении длительного процесса, что приведет к закрытию окна выполнения длительного процесса, если таковое случится.
  • функция PlaceDataSet осуществляет перенос данных из набора, задаваемого параметром DataSet в некоторое место документа Microsoft Office. Место назначения определяется параметром Range следующим образом:
    Microsoft Word
    • Объект Range. По месту расположения этого объекта будет создана таблица (Table), в которой будут размещены данные из набора.
              PlaceDataSet ThisDocument.Bookmarks("BookMarkName").Range, LDataSet
              PlaceDataSet Selection.Range, LDataSet
    • Объект Document. В самом начале переданного документа будет создана таблица (Table), в которой будут размещены данные из набора.
              PlaceDataSet ThisDocument, LDataSet
    Microsoft Excel
    • Объект Range. По месту расположения этого объекта (диапазона) будут размещены данные из набора. Если параметр ShiftRows задан и равен True, то заданный диапазон будет расширен вниз на необходимое количество строк, и информация, лежащая ниже переданного диапазона, будет по-прежнему лежать ниже. Если нет, то она (скорее всего) будет затёрта данными набора. Если параметр ShiftColumns задан и равен True, то этот диапазон будет расширен вправо на необходимое количество столбцов, и информация, лежащая правее переданного диапазона, будет по-прежнему лежать правее. Если нет, то она (скорее всего) будет затёрта данными набора.
              PlaceDataSet Range("C4"), LDataSet
    • Объект WorkSheet. На переданном листе будут размещены данные из набора.
              PlaceDataSet WorkSheets("HiddenSheet"), LDataSet
    Функция возвращает количество размещенных записей.
  • процедура DebugString выводит переданную в качестве аргумента строку в отладочный монитор.
  • процедура ExportObject осуществляет экспорт информации об объекте, задаваемом параметром ID в XML-документ, передаваемый в параметре Document. Если объект документа не был создан, то он создается автоматически. Если документ не имеет корневого узла, он будет создан автоматически.
           
    set LDataSet = CreateDataSet("TSecurityAccount")
    
    LDataSet.AddQueryItem qpWhat, "ID"
    
    set LDocument = CreateObject("Msxml2.DOMDocument.4.0") 'Не обязательно.
    
    while not LDataSet.Eof
      ExportObject LDocument, LDataSet.Field("ID")
      LDataSet.Next
    wend
    
    LDocument.save "c:\RolesAndUsers.xml"
          
  • Функция callRoutine осуществляет вызов подпрограммы. Параметры будут запрошены у пользователя обычным порядком (с показом формы задания параметров, отработки ее скрипта и т. д.). Имя класса передается в параметре ClassName, имя вызываемой подпрограммы - в параметре RoutineName. Если пользователь разрешил выполнение подпрограммы (либо для выполнения не требовалось разрешения пользователя), функция вернет True, иначе False. Значение, возвращаемое подпрограммой, может быть возвращено через необязательный параметр RetValue. Через значение необязательного параметра ScriptPart можно передать скрипт на языке VBScript, который будет "приклеен" сверху к скрипту формы параметров вызываемой подпрограммы.
  • Функция getOleObject возвращает ссылку на Ole-объект с идентификатором класса, переданном в параметре ClassID. Объект создается на основе библиотеки кода, сохраненной в доступном файле с именем, заданным параметром AccessibleFileName. Регистр символов имени доступного файла важен.
  • Функция getResource возвращает значение ресурсной строки по имени ресурса (элемента перечислимого домена Resource strings или перевода (объекта класса TLanguageTranslation).
           
    MsgBox getResource("rssMyErrorMessage")
          
  • Функция getTempFileName возвращает сгенерированное системой имя временного файла с расширением, переданным в параметре Extension.
  • Функция selectVaue позволяет пользователю выбрать значение на основе ссылочного домена, имя которого передается в параметре ClassDomain. Вызывающая сторона может реализовать интерфейс IContextExpressionInfo, через который передается информация о контексте вызова для интерпретации выражений условий отбора, и передать ссылку на него через параметр ExpressionContext. Выбранное значение передается в обе стороны через параметр Value. Если пользователь подтвердил выбор значения, функция возвращает значение True, и устанавливает значение параметра Value, равное идентификатору выбранного пользователем объекта. Если пользователь отказался от выбора, функция возвращает значение False.
  • Процедура raiseManagedException возбуждает управляемую исключительную ситуацию с сообщением для пользователя, заданным параметром ExceptionMessage.
  • Функция getCRC возвращает шестнадцатиричное представление контрольной суммы переданных в параметре Data данных. Параметр может быть
    • Объектом, реализующим интерфейс IBinaryData
    • Объектом, реализующим интерфейс IStream
    • Объектом, реализующим интерфейс ISequentialStream
    • Объектом, реализующим интерфейс IFile объектной модели FileSystemObject
    • Строкой данных. Строка будет преобразована в байты в соответствии с кодировкой UTF-8.
  • Функция downloadData осуществляет обращение к указанному ресурсу по протоколу http (https), и возвращает ответ сервера в виде объекта, реализующего интерфейс IBinaryData. Параметр Host определяет http-сервер, параметр Url - Url, к которому будет происходить обращение. Параметры UserName и Password определяют имя пользователя и пароль, если http-сервер требует авторизовать пользователя. Параметр NegotiateAuth устанавливает режим аутентификации. (Basic или Negotiate). Параметры PostData, PostContentType и PostDataIsBinary определяют содержимое тела POST-запроса (если не определено, функция отправит GET-запрос). Параметр CanCache позволяет использовать локальный кеш http-ответов. Параметр NewSession требует принудительного создания новой сессии при вызове функции. Параметр TimeOut определяет максимальное время ожидания ответа в секундах.
  • Функция createBinaryData создает пустой объект, реализующий интерфейс IBinaryData.
  • Функция BinaryToBitmap  конвертирует переданный графический файл в формат BMP. Объекты во входном и выходном параметрах должны реализовывать интерфейс IBinaryData.
  • Функция editValues создает и показывает форму редактирования группы значений. Параметр ValuesList содержит идентификатор объекта класса TObjectList. Этот список содержит ссылки на редактируемые значения (объекты класса TTypedValue), и командные кнопки формы (объекты класса TTypedValueButton). Параметр Title определяет заголовок формы, параметр UseTabs определяет, будут ли показаны закладки на форме редактирования. Параметр HideOKButton позволяет скрыть кнопку "OK" на показываемой форме. Параметр ScriptPart определяет скрипт показываемой формы.

           
      LValue1 = executeMethod ("TTypedValue", "CreateStrValue", _
        Array("Value1", "Первый параметр", Null, Null, _
        "TLongString", Null, Null, Null, Null, Null, "Значение по  умолчанию первого параметра"))
      LValue2 = executeMethod ("TTypedValue", "CreateStrValue", _
        Array("Value2", "Второй параметр", Null, Null, _
        "TLongString", Null, Null, Null, Null, Null, "Значение по  умолчанию второго параметра"))
    
      LValues = executeMethod("TObjectList", "CreateFromString", _
        LValue1 & ";" & LValue2)
    
      if editValues(LValues, "Введите два строковых значения, друзья", True, False, "") then
        MsgBox getPropValue("TTypedValue", "StrValue", LValue1) & _
          " " & _
          getPropValue("TTypedValue", "StrValue", LValue2)
      end if
    
      executeMethod "TObject", "Destroy", LValues
      executeMethod "TObject", "Destroy", LValue1
      executeMethod "TObject", "Destroy", LValue2
            

           
      LScriptPart =  "Buttons(""NextButton"").Enabled = ParentForm.NavigatorCanNext" & Chr(10) & _
        "Buttons(""PrevButton"").Enabled = ParentForm.NavigatorCanPrevious"
    
      LValue1 = executeMethod ("TTypedValue", "CreateStrValue", _
        Array("Value1", "Первый параметр", Null, Null, "TLongString", Null, Null, Null, Null, Null, _
        "Значение по  умолчанию первого параметра"))
      LValue2 = executeMethod ("TTypedValue", "CreateStrValue", _
        Array("Value2", "Второй параметр", Null, Null, "TLongString", Null, Null, Null, Null, Null, _
        "Значение по  умолчанию второго параметра"))
    
      LNextButton = executeMethod ("TTypedValueButton", "Create", Array("NextButton", "Вперед!", _
        Null, Null, Null, Null, 0, Null, Null, _
        "ParentForm.NavigatorNext"  & Chr(10) & LScriptPart, enumerationItem("scPublic"), 1, Null))
    
      LPrevButton = executeMethod ("TTypedValueButton", "Create", Array("PrevButton", "Назад!", _
        Null, Null, Null, Null, 1, Null, Null, _
        "ParentForm.NavigatorPrevious" & Chr(10) & LScriptPart, enumerationItem("scPublic"), 1, Null))
    
      LValues = executeMethod("TObjectList", "CreateFromString", _
        LValue1 & ";" & LValue2 & ";" & LNextButton & ";" & LPrevButton)
    
      if editValues(LValues, "Введите два строковых значения, друзья", True, True, LScriptPart) then
        MsgBox getPropValue("TTypedValue", "StrValue", LValue1) & _
          " " & _
          getPropValue("TTypedValue", "StrValue", LValue2)
      end if
    
      executeMethod "TObject", "Destroy", LValues
      executeMethod "TObject", "Destroy", LValue1
      executeMethod "TObject", "Destroy", LValue2
      executeMethod "TObject", "Destroy", LNextButton
      executeMethod "TObject", "Destroy", LPrevButton
            

  • Функции MsgBox и ShowMsgBox (это синонимы одной точки входа) полностью аналогичны функции Basic MsgBox по поведению и набору параметров.
  • Функция buildNamedFile формирует значение типа "Именованный файл" на основе объекта, реализующего интерфейс IBinaryData (параметр Data) и информации об имени и параметрах именованного файла.
  • Процедура parseNamedFile разбирает значение типа "Именованный файл". Выходной параметр FileName будет содержать сохраненное имя файла, выходной параметр Data - объект, реализующего интерфейс IBinaryData и содержащий данные именованного файла.
  • Свойство ContextObject позволяет получить ссылку на этот же самый контекстный объект.
  • Свойство UserName позволяет получить логин текущего пользователя.
  • Свойство NegotiateAuth позволяет получить признак доменной аутентификации пользователя.
  • Свойство Language позволяет получать и устанавливать текущий языковой контекст, в котором будут выполняться обращения к БД. Значение свойства либо пустая строка (используется язык БД по умолчанию), либо имя объекта класса TLanguage
  • Свойство Variable позволяет сохранять и получать произвольные значения, которые могут хранится постоянно (в реестре) или только в текущем сеансе, в зависимости от параметра Persistent.
           
    'сохранить на время текущего сеанса значение в переменную с именем SameVariableName
    Variable("SameVariableName", False) = "Value"
    
    'получить значение переменной с именем SameVariableName хранимой в текущем сеансе
    LValue = Variable("SameVariableName", False)
          
  • Процедура showView осуществляет показ в модальном окне представления с именем ViewName. С помощью параметров DetailPropertyName и Key можно наложить на представление дополнительное условие отбора.

9.3.2. Интерфейс IContextDataSet
  IContextDataSet = interface(IDispatch)
    ['{466F3AF7-F899-4BC1-869D-1B17DCB86159}']
    procedure AddQueryItem(Part: TQueryPart; const Name: WideString;
      Value: OleVariant; Special: TQuerySpecial; Context: OleVariant);
    function Eof: WordBool;
    function Field(const Name: WideString): OleVariant;
    function FieldCount: Integer;
    function FieldName(Index: Integer): WideString;
    procedure Next;
  end;

Интерфейс предоставляет возможности формирования и выполнения запросов к базе данных с целью получения свойств объектов определенного класса, предоставляет доступ к объекту набора данных. Работа с объектом, реализующим интерфейс IContextDataSet заключается в формировании структуры набора данных и последующих обращениях к ним.

  • Процедура AddQueryItem добавляет элемент набора данных. Элементы могут добавляться в любом порядке до первого обращения к данным набора. Символические имена всех предопределенных для параметров этого метода констант являются членами интерфейса IConstants.
    • часть запроса определяется параметром Part, который может принимать одно из следующих предопределенных значений:
      Символическое имя Числовое значение Описание
      qpWhat 0 Добавляет поле (столбец), определяемое параметром Name, к результирующему набору данных. Параметр Value игнорируется.
      qpWhere 1 Определяет условие, налагаемое на свойства объектов класса, передаваемое остальными параметрами.
      qpOrder 2 Определяет порядок сортировки записей результирующего набора данных. Параметр Value игнорируется.
      qpGroup 3 Определяет, что записи результирующего набора данных будут сгруппированы по столбцу, переданному в параметре Name. Параметры Value и Special игнорируются.
    • параметр Name должен быть именем свойства класса, на котором основан набор данных, либо зарезервированным словом "ID" (без кавычек).
    • параметр Value (необязательный) определяет условия отбора, накладываемые на свойство, заданное параметром Name. Имеет смысл только если значение параметра Part равно qpWhere. Условие задается посредством строки, интерпретируемой следующим образом:
      • строка разделяется на части посредством системного разделителя
      • каждая часть интерпретируется самостоятельно, и эти части объединяются логическим "ИЛИ"
      • при интерпретации каждой части проверяются следующие условия:
        * проверка значения на непустоту (IS NOT NULL)
        !* проверка значения на пустоту (IS NULL)
        начинается с символов
        '<=', '<', '>=', '>'
        проверка соответствующего отношения между значением свойства, переданного параметром Name и оставшейся частью строки
        включает в себя символы '*' и/или '?' проверка соответствия значения шаблону, в котором знак '?' соответствует одному любому символу, а знак '*' - любому количеству любых символов
        начинается с символа '!' символ '!' означает отрицание условия, переданного оставшейся частью строки
        представляет собой строку в апострофах (одиночных кавычках) содержание строки не анализируется по приведенным выше условиям
        любая другая строка проверка равенства значения свойства, переданного параметром Name значению, переданному строкой
    • параметр Special (необязательный) обеспечивает дополнительное поведение набора данных (если параметр Special используется, необходимо использовать и параметр Value, можно передавать пустую строку):
      Символическое имя Числовое значение Описание
      qsNone 0 Параметр не используется. Значение по умолчанию.
      qsDescending 7 Используется при значении qpOrder параметра Part. В этом случае производится сортировка по убыванию.
      qsCount 8 Используется при значении qpWhat параметра Part. Определяют тип агрегации по свойству, заданному параметром Name.
      qsSum 9
      qsMin 10
      qsMax 11
      qsAverage 12
      qsFunction 22 Используется для включения в запрос вызова функции. Используется при значении qpWhat параметра Part.
    • параметр Context (необязательный) определяет дополнительные параметры элемента запроса.
           
    'включить в набор данных свойство Name
    LDataSet.AddQueryItem 0, "Name"
    'включить в набор данных среднее значение цены
    LDataSet.AddQueryItem 0, "Price", "", 12
    'включить в набор данных идентификатор объекта
    LDataSet.AddQueryItem 0, "ID"
    'включить в набор данных вызов функции. В поле IsCompany будет значение True, если объект является организацией
    LDataSet.AddQueryItem 0, "IsCompany", "TObject.IsInstanceOf", 22, Array(getClass("TCompany"))
    'наложить на набор данных условие
    LDataSet.AddQueryItem 1, "Organization", "фирма Елочка"
          
           
    LDataSet.AddQueryItem 0, "Organization"              '(1)
    LDataSet.AddQueryItem 0, "SalesCount", "", "9"       '(2)
    LDataSet.AddQueryItem 1, "SaleDate", ">10.09.2005"   '(3)
    LDataSet.AddQueryItem 2, "Organization"              '(4)
    LDataSet.AddQueryItem 3, "Organization"              '(5)
          
    Производится отбор из класса, описывающего число продаж некоего продукта различными организациями. При этом в набор данных включаются колонки "Organization" (строка 1) и "SalesCount" (строка 2). При этом будет произведена группировка по свойству "Organization" (строка 5) (что гарантирует вхождение каждой организации в результирующий набор данных не более одного раза). Набор данных будет отсортирован по организации (строка 4). При этом в колонке "SalesCount" будет сумма (строка 2) всех продаж, осуществленных каждой организацией после 10.09.2005 (строка 3).
  • Функция FieldCount возвращает количество полей (столбцов) набора данных.
  • Функция FieldName возвращает имя поля (столбца) с номером, переданным в параметре Index.
  • Функция Field возвращает значение, содержащееся в поле с именем или индексом, заданным параметром Name (строкового типа) текущей записи набора данных. При первом обращении к набору данных текущей является первая запись. Если параметр определяет номер, то поиск поля производится по номеру. Если имя, то по имени.
  • Процедура Next осуществляет переход к следующей записи набора данных.
  • Функция Eof возвращает False, если текущая запись набора данных существует; в случаях, если набор данных пустой, или при помощи метода Next достигнут конец набора данных, возвращает True.
           
    If LDataSet.Eof then
      'набор данных пуст. Ничего не отобрано.
    Else
      While Not LDataSet.Eof
        'работа с очередной отобранной записью
        Cells(LRow, 1).Value = LDataSet.Field("Name")
        Cells(LRow, 2).Value = LDataSet.Field("Description")
        Cells(LRow, 2).Value = LDataSet.Field("Count")
        'переход к следующей записи
        LDataSet.Next
        LRow = LRow + 1
      Wend
    End If
          

9.3.3. Интерфейс IConstants
  IConstants = interface(IDispatch)
    ['{7E7B2D66-5E7C-496A-AE06-EFC485007500}']
    property qpWhat: Integer;
    property qpWhere: Integer;
    property qpOrder: Integer;
    property qpGroup: Integer;
    property qpHaving: Integer;
    property qsNone: Integer;
    property qsObjectID: Integer;
    property qsParentID: Integer;
    property qsHasChildren: Integer;
    property qsFilterCondition: Integer;
    property qsUplink: Integer;
    property qsRootOnly: Integer;
    property qsDescending: Integer;
    property qsCount: Integer;
    property qsSum: Integer;
    property qsMin: Integer;
    property qsMax: Integer;
    property qsAverage: Integer;
    property qsMasterLink: Integer;
    property qsSelectedOnly: Integer;
  end;

Интерфейс предоставляет символические имена констант, необходимых для работы с объектом, реализующим интерфейс IContextDataSet.

СвойствоЗначение
qpWhat0
qpWhere1
qpOrder2
qpGroup3
qpHaving4
qsNone0
qsObjectID1
qsParentID2
qsHasChildren3
qsFilterCondition4
qsUplink5
qsRootOnly6
qsDescending7
qsCount8
qsSum9
qsMin10
qsMax11
qsAverage12
qsMasterLink13
qsSelectedOnly14

9.3.4. Интерфейс IFormContext
  IFormContext = interface(IDispatch)
    ['{1944F1C8-CAEA-4CF9-9A4D-CE3423508FF7}']
    function ChangedControl: OleVariant;
    function ControlCount: Integer;
    function ButtonCount: Integer;
    function ID: WideString;
    procedure Cancel;
    function ControlExists(const Name: WideString): WordBool;
    function ChangedControlName: WideString;
    function ParentForm: OleVariant;
    function RoutineID: WideString;
    procedure PreInitControl(const Name: WideString; Value: OleVariant);
    procedure NavigatorNext;
    procedure NavigatorPrevious;
    function NavigatorCanNext: WordBool;
    function NavigatorCanPrevious: WordBool;
    procedure RefreshView(RefreshAll: WordBool);
    function ExpressionContextValue(const Name: WideString): OleVariant; safecall;
    property Controls[Name: OleVariant]: IControl;
    property Buttons[Name: OleVariant]: IButton;
    property Enabled: WordBool;
  end;

Представляет собой модель формы задания параметров. Члены интерфейса доступны для использования в скриптах форм задания параметров.

  • Функция ChangedControl возвращает объект, реализующий интерфейс IControl, соответствующий элементу управления, изменение которого вызвало исполнение скрипта формы параметров. Если выполнение скрипта вызвано инициализацией формы задания параметров, то значение функции - Empty. Пустоту значения можно проверить с помощью функции VBScript IsEmpty.
  • Функция ControlCount возвращает число элементов управления на форме параметров, как видимых так и невидимых.
  • Функция ButtonCount возвращает число командных кнопок на форме параметров, как видимых так и невидимых.
  • Функция ID возвращает значение идентификатора объекта, для которого вызван метод. Для методов класса возвращает пустое значение.
  • Функция ControlExists возвращает True, если элемент управления с именем Name существует на форме, и, соответственно, существует соответствующий параметр.
  • Функция ChangedControlName возвращает имя элемента управления, изменение которого вызвало исполнение скрипта формы параметров. Если выполнение скрипта вызвано инициализацией формы задания параметров, то значение функции - пустая строка.
  • Процедура Cancel прекращет работу формы задания параметров. Форма закрывается, выполнение действия блокируется.
  • Функция ParentForm возвращает ссылку на контекст родительской формы в цепочке вызовов. В контексте первой формы (вызванной с грида немодальной формы) возвращает пустое значение (Empty). Пустоту значения можно проверить с помощью функции VBScript IsEmpty.
  • Функция RoutineID возвращает идентификатор подпрограммы, для которой вызвана форма.
  • Процедура PreInitControl имитирует предварительную инициализацию элемента управления с именем Name значением, переданным в параметре Value. Сам элемент управления при этом будет скрыт, и не будет показан вплоть до следующего вызова формы пользователем.
  • Процедура NavigatorNext выполняет переход к следующему объекту набора данных, для которого показывается форма параметров.
  • Процедура NavigatorPrevious выполняет переход к предыдущему объекту набора данных, для которого показывается форма параметров.
  • Функция NavigatorCanNext возвращает True, если возможен переход к следующему объекту набора данных, для которого показывается форма параметров.
  • Функция NavigatorCanPrevious возвращает True, если возможен переход к предыдущему объекту набора данных, для которого показывается форма параметров.
  • Процедура RefreshView обновляет набор данных, для которого показывается форма параметров. Если значение параметра RefreshAll равно True, то будет обновлен весь набор, если False, то только выделенные записи.
  • Свойство Controls позволяет обращаться к элементам управления на форме задания параметров, их свойствам и методам. Каждый элемент управления реализует интерфейс IControl. В параметре Name (строкового типа)может быть передано как имя элемента управления, так и его индекс (в этом случае индекс должен быть передан как строка). Имена элементов управления на форме параметров соответствуют именам параметров подпрограммы (метода, отчета, etc).
  • Свойство Buttons позволяет обращаться к командным кнопкам на форме задания параметров, их свойствам и методам. Каждая командная кнопка реализует интерфейс IButton. В параметре Name (строкового типа)может быть передано как имя командной кнопки, так и ее индекс (в этом случае индекс должен быть передан как строка).
  • Свойство Enabled позволяет получать и устанавливать доступность кнопки OK на форме задания параметров. Если на форме есть невалидные (имеющие недопустимые значения) элементы управления, значение свойства всегда равно False и устанавливать его в явном виде в True не рекомендуется. Для учета дополнительного условия рекомендуется использовать следующую конструкцию: Enabled = Enabled and (Controls("SalesCount").Value > 10)
  • Функция ExpressionContextValue возвращает значение переменной контекста с именем Name, которая используется для интeрпретации выражений условий отбора на форме.

9.3.5. Интерфейс IControl
  IControl = interface(IDispatch)
    ['{0662001F-D3D5-4F28-98AC-9B499F70E856}']
    function Name: WideString;
    procedure SetHint(const Value: WideString);
    procedure RefreshLinkedView;
    property Value: OleVariant;
    property ReadOnly: WordBool;
    property IsValid: WordBool;
    property IsEmpty: WordBool;
  end;

Моделирует элемент управления на форме задания параметров. Позволяет управлять поведением элементов управления на форме.

  • Функция Name возвращает имя элемента управления; имена элементов управления всегда совпадают с именамим соответствующих параметров подпрограммы.
  • Процедура SetHint устанавливает текст всплывающей подсказки элемента управления. Всплывыющая подсказка показывается только если значение элемента управления недопустимо (свойство IsValid равно False).
  • Процедура RefreshLinkedView обновит связанное с элементом управления представление.
  • Свойство Value позволяет получать и устанавливать значение, введенное в элемент управления.
  • Свойство ReadOnly позволяет получать и устанавливать доступность элемента управления для записи; при значении True элемент управления не доступен для записи и отображается неактивным.
  • Свойство IsValid позволяет получать и устанавливать "валидность" элемента управления; по умолчанию валидным элемент управления является в том случае, если введенное в него значение соответствует домену соответствующего параметра подпрограммы с учетом наложенного на него условия отбора.
  • Свойство IsEmpty имеет значение True в случае, если в элемент управления не введено никакого значения (элемент управления пустой), в противном случае имеет значение False.

9.3.6. Интерфейс IButton
  IButton = interface(IDispatch)
    ['{1618406F-B9F1-4C5F-BC35-C2A154837CA9}']
    function Name: WideString; safecall;
    procedure Click; safecall;
    property Enabled: WordBool;
  end;

Моделирует командную кнопку на форме задания параметров. Позволяет управлять поведением кнопки на форме.

  • Функция Name возвращает имя кнопки.
  • Процедура Click эмулирует нажатие на кнопку.
  • Свойство Enabled позволяет получать и устанавливать доступность кнопки.

9.3.7. Интерфейс IBinaryData
  IBinaryData = interface(IDispatch)
    ['{8A9F7CB3-230A-4048-B938-852CBF6ADB2D}']
    procedure Load(const Src: OleVariant);
    procedure Append(const Src: OleVariant);
    procedure Save(const Dst: OleVariant);
    function Size: Cardinal;
    function ToString(Encoding: WideString): WideString;
    procedure FromString(Data: OleVariant);
    procedure AppendString(Data: OleVariant);
    function ToBase64: WideString;
    procedure FromBase64(Data: OleVariant);

Представляет набор двоичных данных.

  • Процедура Load загружает двоичные данные из переданного источника. Источник может быть
    • Объектом, реализующим интерфейс IStream
    • Объектом, реализующим интерфейс ISequentialStream
    • Строкой, содержащей имя файла
  • Процедура Append добавляет двоичные данные из переданного источника. Источник может быть
    • Объектом, реализующим интерфейс IStream
    • Объектом, реализующим интерфейс ISequentialStream
    • Строкой, содержащей имя файла
  • Процедура Save сохраняет двоичные данные в переданный приемник. Приемник может быть
    • Объектом, реализующим интерфейс IStream
    • Объектом, реализующим интерфейс ISequentialStream
    • Строкой, содержащей имя файла
  • Функция ToString переводит данные в строку. Байты, содержашиеся в объекте, будут рассматриваться как содержащие строку в кодировке, заданной параметром Encoding. По умолчанию используется кодировка UTF-8
  • Процедура FromString загружает данные из строки, переданной в параметре Data, перекодировав ее в кодировку UTF-8
  • Процедура AppendString  добавляет данные из строки, переданной в параметре Data, перекодировав ее в кодировку UTF-8
  • Функция ToBase64 возвращает строку, полученную путем кодирования в формат Base64, данных содержащихся в объекте
  • Процедура FromBase64 загружает данные из строки, переданной в параметре Data, раскодировав ее из формата Base64

9.3.8. Интерфейс IContextExpressionInfo
  IContextExpressionInfo = interface(IUnknown)
    ['{C7518427-B515-4EB4-B698-88656E6CBF7C}']
    function Count: Integer;
    function ItemName(Index: Integer): WideString;
    function ItemValue(Index: Integer): OleVariant;
    function ItemDomain(Index: Integer): OleVariant;
  end;

Через реализацию этого интерфейса передаются значения контекстных переменных при обращении к функции selectValueинтерфейса IContext.

  • Функция Count возвращает количество используемых контекстных переменных. Нумерация контекстных переменных начинается с нуля.
  • Функция ItemName возвращает имя контекстной переменной c номером, переданным в параметре Index.
  • Функция ItemValue возвращает значение контекстной переменной c номером, переданным в параметре Index.
  • Функция ItemDomain возвращает имя домена контекстной переменной c номером, переданным в параметре Index.

9.3.9. Интерфейс IExceptionHandler
  IExceptionHandler = interface(IDispatch)
    ['{3C3C7202-5ED5-4EB4-9CDD-A929C18CA8BD}']
    procedure HandleException(ContextObject: OleVariant;
      const Message: WideString;
      const ExtentedInfo: WideString);
  end;

Реализовав интерфейс IExceptionHandler разработчик решений может получать уведомления о возникающих при работе исключительных ситуациях. При возникновении исключения объект, реализующий интерфейс, получит текст сообщения об ошибке и расширенную информацию.

Для реализации интерфеса используется библиотека hse.tlb, входящая в состав поставки решения. Перед началом работы с ней, необходимо зарегистрировать ее в операционной системе.

Для установки настроек интерфейса необходимо открыть Системную форму раздела АДМИНИСТРАТОРУ, перейти на вкладку  Настройки и в столбце "Заголовок закладки" установить фильтр "Обработка ошибок".

После этого в качестве значения Идентификатора класса установить "IExceptionHandler" без кавычек.

Для Библиотеки кода указать значение HSE.tlb


9.4. Справочник по метаданным

9.4.1. Вещественный домен Float (Вещественное)

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


9.4.2. Домен больших объектов TBinaryData (Двоичные данные)
Тип сохраненных данных - btBinaryData(Двоичные данные).

Используется для описания больших двоичных объектов, содержимое которых никак не интерпретируется системой.


9.4.3. Домен больших объектов TComment (Текстовый комментарий)
Тип сохраненных данных - btText (Текст).
При работе с файломи используется расширение имени ".txt".

Используется для хранения текстовых комментариев, описаний произвольной длины. Значение интерпретируется как текст.


9.4.4. Домен больших объектов TExcelTemplateData (Данные Excel-шаблона)
Тип сохраненных данных - btBinaryData (Двоичные данные). При работе с файломи используется расширение имени " .xls ".

Используется для хранения в базе рабочих книг Microsoft Excel, например, шаблонов отчетов Excel

Тип сохраненных данных - btBinaryData (Двоичные данные).
При работе с файломи используется расширение имени ".xls".

9.4.5. Домен больших объектов TFileContent (Содержимое файлов)
Тип сохраненных данных - btBinaryData (Двоичные данные).

Используется для хранения содержимого доступного файла.


9.4.6. Домен больших объектов TFilterCondition (Условие отбора)
Тип сохраненных данных - btSourceCode (Исходный код).

Содержит выражение на языке PascalScript, определяющее условие отбора.

Тип сохраненных данных - btSourceCode (Исходный код).

9.4.7. Домен больших объектов TImage (Изображение)
Тип сохраненных данных - btImage (Изображение). При работе с файломи используется расширение имени " .bmp ".

Используется для хранения изображений-иконок визуальных элементов системы.

Тип сохраненных данных - btImage (Изображение).
При работе с файломи используется расширение имени ".bmp".

9.4.8. Домен больших объектов TInlineExpressionText (Текст выражения)
Тип сохраненных данных - btSourceCode (Исходный код).

Содержит выражение на языке PascalScript, определяющее логику работы встраиваемого выражения.


9.4.9. Домен больших объектов TMethodBody (Исходные тексты методов)
Тип сохраненных данных - btSourceCode (Исходный код).

Содержит исходный текст метода на языке PascalScript.

Тип сохраненных данных - btSourceCode (Исходный код).

9.4.10. Домен больших объектов TRoutineScript (Скрипты форм параметров)
Тип сохраненных данных - btText (Текст).

Содержит скрипт формы задания параметров на языке VBScript.

Тип сохраненных данных - btVisualBasicScript (Скрипт Visual Basic).
При работе с файломи используется расширение имени ".vbs".

9.4.11. Домен больших объектов TWordTemplateData (Данные Word-шаблона)
Тип сохраненных данных - btBinaryData (Двоичные данные). При работе с файломи используется расширение имени " .doc ".

Используется для хранения в базе документов Microsoft Word, например, шаблонов отчетов Word

Тип сохраненных данных - btBinaryData (Двоичные данные).
При работе с файломи используется расширение имени ".doc".

9.4.12. Домен больших объектов TXSLTTemplateData (Данные XSLT-шаблона)
Тип сохраненных данных - btXML (XML-документ). При работе с файлами используется расширение имени " .xsl ".

Используется для хранения в базе данных скриптов xslt-преобразований, например, шаблонов отчетов XSLT.

Тип сохраненных данных - btXML (XML-документ).
При работе с файломи используется расширение имени " .xsl ".

9.4.13. Домен времени TTime (Время)

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


9.4.14. Домен дат TDate (Дата)

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


9.4.15. Домен дат со временем TimeStamp (Момент)

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

>

9.4.16. Домен дат со временем TimeStamp required (Момент (обязательный))
Значение обязательно для заполнения.

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


9.4.17. Домен ссылок на объекты TAccessor domain (Роли доступа)
Ссылка на класс TSecurityAccount (Роли безопасности) . Используется для обозначения роли безопасности, используемой при создании объектов для обеспечения защиты данных в соответствии с правами пользователя.

Ссылка на класс TSecurityAccount (Роли безопасности).

9.4.18. Домен ссылок на объекты TActionRoutine required domain (Метод действия)
Значение обязательно для заполнения.
Ссылка на класс TRoutine (Подпрограмма).
При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Домен используется для отбора подпрограмм, по которым можно построить программируемое действие. Домен отбирает только те подпрограммы, которые принадлежат к классу, на котором основано представление, в которое включается (включено) действие, к его предкам и его потомкам в иерархии наследования. Доступ к потомкам необходим, чтобы обеспечить возможность создания объектов конечных неабстрактных бизнес-классов из представления, обеспечивающего доступ к объектам абстрактного класса.

Использование этого домена в прикладных решениях запрещено.


9.4.19. Домен ссылок на объекты TBanGroup domain (Группа запретов)
Значение обязательно для заполнения.
Ссылка на класс TBanGroup (Группы запретов).
При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Домен используется дочерними классами групп запретов.


9.4.20. Домен ссылок на объекты TBannedProperty domain (Свойство для запрета)
Значение обязательно для заполнения.
Ссылка на класс TProperty (Свойства).
При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Домен отбирает свойства класса, по которому строится запрет на свойство, либо его предков.

Использование этого домена в прикладных решениях запрещено.


9.4.21. Домен ссылок на объекты TBannedRoutine domain (Подпрограмма для запрета)
Значение обязательно для заполнения. Ссылка на класс TRoutine (Подпрограмма) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Домен отбирает подпрограммы класса, по которому строится запрет на свойство, либо его предков.

Использование этого домена в прикладных решениях запрещено.

Значение обязательно для заполнения.
Ссылка на класс TRoutine (Подпрограмма).
При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Объекты отбираются по следующему условию:

BannedClass.HasAsParent(Self.Master)
  


9.4.22. Домен ссылок на объекты TButtonParameter domain (Параметр командной кнопки)

9.4.23. Домен ссылок на объекты TClass domain (Класс)
Ссылка на класс TClass (Классы) .

Используется для задания необязательной ссылки на класс.


9.4.24. Домен ссылок на объекты TClass required cascade domain (Класс (с каскадным удалением))
Значение обязательно для заполнения. Ссылка на класс TClass (Классы) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Используется для задания обязательной каскадной ссылки на класс в объектах-запрещениях. Удаление классов должно приводить к удалению связанных с ними запрещений.


9.4.25. Домен ссылок на объекты TClass required domain (Класс (обязательно))
Значение обязательно для заполнения. Ссылка на класс TClass (Классы) .

Используется для задания обязательной ссылки на класс.


9.4.26. Домен ссылок на объекты TCodeLibrary domain (Библиотека кода)
Ссылка на класс TAccessibleFile (Доступный файл) . При удалении объекта-источника ссылки значение ссылки очищается.

Используется для организации связи между методом Ole-объекта и доступным файлом, содержащим реализацию метода.

Использование этого домена в прикладных решениях запрещено.


9.4.27. Домен ссылок на объекты TColorProperty domain (Домен свойства цвета)
Ссылка на класс TProperty (Свойства) . При удалении объекта-источника ссылки значение ссылки очищается.

Домен отбирает свойства класса, на котором основано представление, или его предков, имеющие тип Цвет строки таблицы.

При необходимости цветовой индикации состояний объектов в таблицах данных, необходимо объявить свойство соответствующего типа и указать его в представлении.

Использование этого домена в прикладных решениях запрещено.


9.4.28. Домен ссылок на объекты TColumnProperty domain (Свойство колонки)
Ссылка на класс TProperty (Свойства) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Домен отбирает свойства класса, на котором основано представление, или его предков.

При необходимости цветовой индикации состояний объектов в таблицах данных, необходимо объявить свойство соответствующего типа и указать его в представлении.

Использование этого домена в прикладных решениях запрещено.


9.4.29. Домен ссылок на объекты TDetailProperty domain (Свойство-подчиненное)
Ссылка на класс TProperty (Свойства) . При удалении объекта-источника ссылки значение ссылки очищается.

Домен отбирает свойства класса, на котором основано представление, или его предков для организации связи между представлениями.

Использование этого домена в прикладных решениях запрещено.


9.4.30. Домен ссылок на объекты TDomain domain (Домен)
Ссылка на класс TDomain (Домены) .

Используется для задания необязательной ссылки на домен.


9.4.31. Домен ссылок на объекты TDomain required domain (Домен (обязательно))
Значение обязательно для заполнения. Ссылка на класс TDomain (Домены) .

Используется для задания обязательной ссылки на домен.


9.4.32. Домен ссылок на объекты TForm required domain (Форма (обязательно))
Значение обязательно для заполнения. Ссылка на класс TForm (Формы) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Используется для задания обязательной ссылки на форму.


9.4.33. Домен ссылок на объекты TFormView domain (Представления форм)
Ссылка на класс TFormView (Представления формы) . При удалении объекта-источника ссылки значение ссылки очищается.

Используется для задания ссылки на представление формы.

Использование этого домена в прикладных решениях не рекомендуется.


9.4.34. Домен ссылок на объекты TInitializationMember domain (Член класса для инициализации)
Ссылка на класс TClassMember (Члены класса) .

Домен отбирает члены класса, которые

  • либо являются свойствами того же класса, которому принадлежит родительский метод параметра, либо его предков, домен которых совпадает по классу с доменом параметра
  • либо являются функциями того же класса, которому принадлежит родительский метод параметра, либо его предков, домен результата которых совпадает по классу с доменом параметра

Использование этого домена в прикладных решениях запрещено.


9.4.35. Домен ссылок на объекты TList domain (Список объектов)
Ссылка на класс TObjectList (Списки) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Используется для задания каскадной ссылки на список объектов. Списки могут использоваться в тех случаях, в которых необходимо передавать набор объектов.


9.4.36. Домен ссылок на объекты TMaster domain (Объект (с каскадным удалением))
Значение обязательно для заполнения. Ссылка на класс TObject (Объекты) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Домен отбирает объекты, которые принадлежат к тому классу, который объявлен классом-мастером класса объекта.

Использование этого домена в прикладных решениях запрещено.

Этот домен используется в объявлении свойства TObject.Master, поэтому значение его сделано обязательным: в тех случаях, когда cвойство TObject.Master (Мастер) имеет смысл (для объектов, инкапсулированных в другие объекты), значение свойства обязательно.


9.4.37. Домен ссылок на объекты TMaster field domain (Домен поля "Мастер")
Ссылка на класс TObject (Объекты) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Домен отбирает объекты, которые принадлежат к тому классу, который объявлен классом-мастером класса объекта.

Использование этого домена в прикладных решениях запрещено.

Этот домен используется в объявлении поля TObject.FMaster (Мастер), поэтому значение его сделано необязательным: объектах, не инкапсулированных в другие классы значение поля обязано оставаться пустым.

Ссылка на класс TObject (Объекты).
При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

9.4.38. Домен ссылок на объекты TMasterProperty domain (Свойство-главное)
Ссылка на класс TProperty (Свойства) . При удалении объекта-источника ссылки значение ссылки очищается.

Домен отбирает свойства класса, на котором основано родительское в форме представление, или его предков для организации связи между представлениями.

Использование этого домена в прикладных решениях запрещено.


9.4.39. Домен ссылок на объекты TMergedObject domain (Объект для отождествления)
Значение обязательно для заполнения. Ссылка на класс TObject (Объекты) .

Объект отбирает объекты, включенные в тот же объект, что и текущий (либо они оба не включены ни в какой), и класс которых совпадает либо является родителем класса текущего объекта.

Использование этого домена в прикладных решениях запрещено.


9.4.40. Домен ссылок на объекты TObject domain (Объект)
Ссылка на класс TObject (Объекты) .

Домен определяет необязательную ссылку на объект системы. Используется там, где нельзя сделать предположения о классе передаваемого объекта.


9.4.41. Домен ссылок на объекты TOption required domain (Настройка (обязательно))
Значение обязательно для заполнения. Ссылка на класс TOption (Настройки) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Домен определяет обязательную ссылку на настройку системы и используется значениями настроек.

Использование этого домена в прикладных решениях запрещено.


9.4.42. Домен ссылок на объекты TOptionValue domain (Значение настройки)
Ссылка на класс TOptionValue (Значения настроек) .

Домен определяет ссылку на значение настройки системы.


9.4.43. Домен ссылок на объекты TParent domain (Родитель объекта)
Ссылка на класс TObject (Объекты) .

Домен отбирает объекты, которые могуть быть родителем объекта в иерархии.

Использование этого домена в прикладных решениях запрещено. Там, где это необходимо, используйте специализированные домены.


9.4.44. Домен ссылок на объекты TReadMember domain (Член класса для чтения)
Ссылка на класс TClassMember (Члены класса) .

Домен отбирает члены класса, которые

  • либо являются полями того же класса, которому принадлежит свойство, либо того, ссылкой на который является родительское свойство, либо его предков, домен которых совпадает по классу с доменом свойства
  • либо являются функциями того же класса, которому принадлежит свойство, либо того, ссылкой на который является родительское свойство, либо его предков, домен результата которых совпадает по классу с доменом свойства
  • либо являются встраиваемыми выражениями того же класса, которому принадлежит свойство, либо того, ссылкой на который является родительское свойство, либо его предков, домен результата которых совпадает по классу с доменом свойства

Использование этого домена в прикладных решениях запрещено.


9.4.45. Домен ссылок на объекты TSecurityAccount domain (Роль безопасности)
Ссылка на класс TSecurityAccount (Роли безопасности) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Используется для задания необязательной каскадной ссылки на роль безопасности.


9.4.46. Домен ссылок на объекты TSecurityAccount required domain (Роль безопасности (обязательно))
Значение обязательно для заполнения. Ссылка на класс TSecurityAccount (Роли безопасности) .

Используется для задания обязательной ссылки на роль безопасности.


9.4.47. Домен ссылок на объекты TSourceDataBase required domain (База данных)
Значение обязательно для заполнения. Ссылка на класс TDataBase (Базы данных) .

Домен используется для организации ссылки на логическую базу данных Системы.

Использование этого домена в прикладных решениях запрещено.


9.4.48. Домен ссылок на объекты TUser domain (Пользователь)
Ссылка на класс TUser (Пользователи) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Используется для задания необязательной каскадной ссылки на пользователя Системы.


9.4.49. Домен ссылок на объекты TUser required domain (Пользователь)
Значение обязательно для заполнения. Ссылка на класс TUser (Пользователи) .

Используется для задания обязательной ссылки на пользователя.


9.4.50. Домен ссылок на объекты TView of ClassDomain domain (Представление)
Ссылка на класс TView (Представления) .

Домен отбирает те представления, которые основаны на классе, на который указывает ссылочный домен, либо на его предков.

Использование этого домена в прикладных решениях запрещено.


9.4.51. Домен ссылок на объекты TView of FormView domain (Представление для формы)
Значение обязательно для заполнения. Ссылка на класс TView (Представления) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Домен используется для постороения иерархии представлений форм и действий, основанных на представлении.

Использование этого домена в прикладных решениях запрещено.


9.4.52. Домен ссылок на объекты TVisualGroup required domain (Визуальная группа (обязательно))
Значение обязательно для заполнения. Ссылка на класс TVisualGroup (Визуальные группы) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Используется для задания обязательной ссылки на визуальную группу.


9.4.53. Домен ссылок на объекты TVisualGroup routine domain (Подпрограмма визуальной группы)
Значение обязательно для заполнения. Ссылка на класс TRoutine (Подпрограмма) . При удалении объекта-источника ссылки ссылающиеся на него объекты также удаляются.

Отбирает подпрограммы, являющиеся методами класса, для использования в элементах визуальных групп.

Использование этого домена в прикладных решениях запрещено.


9.4.54. Домен ссылок на объекты TWriteMember domain (Член класса для записи)
Ссылка на класс TClassMember (Члены класса) .

Домен отбирает члены класса, которые

  • либо являются полями того же класса, которому принадлежит свойство, либо того, ссылкой на который является родительское свойство, либо его предков, домен которых совпадает по классу с доменом свойства
  • либо являются процедурами с одним параметром того же класса, которому принадлежит свойство, либо того, ссылкой на который является родительское свойство, либо его предков, домен результата которых совпадает по классу с доменом свойства

Использование этого домена в прикладных решениях запрещено.


9.4.55. Класс TAccessItem (Элементы доступа)

9.4.55.1. Конструктор TAccessItem.Create (Конструктор элемента доступа)

9.4.55.2. Поле TAccessItem.FSecurityAccount (Роль безопасности)

9.4.55.3. Свойство TAccessItem.Description (Наименование)

9.4.55.4. Свойство TAccessItem.Name (Имя)

9.4.55.5. Свойство TAccessItem.SecurityAccount (Роль безопасности)

9.4.55.6. Функция TAccessItem.GetIsAccessible (Проверка доступности)

9.4.56. Класс TAccessibleFile (Доступный файл)
Унаследован от класса TObject (Объекты).

Класс предназначен для хранения (двоичных) именованных (cвойство TObject.Name (Имя)) файлов внутри Системы. Содержимое этих файлов используется Системой в качестве источника статичных данных (картинок, стилевых таблиц, скриптовых библиотек, etc), доступных по протоколу http внутри отчета XSLT и для хранения библиотек кода, содержащих логику работы методов Ole-объекта. Разработчик решения вправе распорядится доступными файлами по своему усмотрению.


9.4.56.1. Конструктор TAccessibleFile.Create (Конструктор доступного файла)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

FileData (Данные файла) TFileContent (Содержимое файлов)

Доступен

Конструирует объект класса TAccessibleFile (Доступный файл) .


9.4.56.2. Поле TAccessibleFile.FFileData (Данные файла)
FFileData: TFileContent (Содержимое файлов).

Используется для хранения значений свойства TAccessibleFile.FileData (Данные файла).


9.4.56.3. Свойство TAccessibleFile.FileData (Данные файла)
FileData : TFileContent (Содержимое файлов) .

Для чтения и записи свойства используется поле TAccessibleFile.FFileData (Данные файла) .

Это свойство определяет содержимое доступного файла.


9.4.57. Класс TAction (Действия)
Унаследован от класса TObject (Объекты) . Объекты класса связаны иерархически. Объекты класса являются составными частями объектов класса TView (Представления) .

Объекты класса моделируют элементы контектсного меню представления. Иерархия элементов контектсного меню отображается на иерахию объектов класса.

Сам по себе объект класса TAction определяет положение и поведение соответствующего пункта контекстного меню, кроме ассоциированного с пуктом действия. Для спецификации этого действия существуют классы-наследники TAction: класс TRoutineAction (Программируемое действие) и класс TViewAction (Действие-представление). Таким образом, объекты собственно класса TAction создаются на месте родительских пунктов контекстного меню, раскрывающихся, содержащих Стрелка раскрытия контекстного меню. Несмотря на то, что класс не является абстратным в строгом смылсле этого слова, ни одного объекта этого класса в системных метаданных нет в силу простоты структуры контекстного меню системных представлений. Разработчик решений не ограничен в создании и использовании объектов этого класса. Никаких общих рекомендаций тут быть не может, единственное, что можно утверждать - что контекстное меню должно быть удобным и в достижении этой цели можно организовывать требуемую иерархическую структуру.

        Иерархия объектов класса TAction
На основе иерархии действий, показанной на рисунке (в таблице отображен фактический класс каждого объекта) построено следующее контекстное меню:
Контекстное меню, построенное на основе иерархии объектов класса TAction

9.4.57.1. Конструктор TAction.Create (Конструктор действия)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Position (Позиция) TPosition (Позиция)

Доступен

GetNextPos (Следующая позиция)

Shortcut (Горячая клавиша) TShortcut (Горячие клавиши)

Доступен

Separated (Отделено) Boolean (Обычное логическое)

Доступен

Default (По умолчанию) Boolean (Обычное логическое)

Доступен

Конструирует объект класса TAction (Действия) .


9.4.57.2. Поле TAction.FDefault (По умолчанию)
FDefault : Boolean (Обычное логическое) (обязательно для заполнения).

Используется для хранения значений свойства TAction.Default (По умолчанию).


9.4.57.3. Поле TAction.FPosition (Позиция)
FPosition : TPosition (Позиция) (обязательно для заполнения) .

Используется для хранения значений свойства TAction.Position (Позиция).


9.4.57.4. Поле TAction.FSeparated (Отделено)
FSeparated : Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TAction.Separated (Отделено).


9.4.57.5. Поле TAction.FShortcut (Горячая клавиша)
FShortcut : TShortcut (Горячие клавиши) .

Используется для хранения значений свойства TAction.Shortcut (Горячая клавиша).


9.4.57.6. Свойство TAction.Default (По умолчанию)
Default : Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TAction.FDefault (По умолчанию) .

Действие с установленным значением этого свойства будет отображаться в контекстном меню жирным шрифтом и вызываться при двойном щелчке мышью по соответствующей таблице данных.

        Действие по умолчанию

9.4.57.7. Свойство TAction.Position (Позиция)
Position : TPosition (Позиция) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TAction.FPosition (Позиция) .

Действия сортируются в пределах уровня для построения контекстного меню в порядке возрастания этого своства.


9.4.57.8. Свойство TAction.Separated (Отделено)
Separated : Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TAction.FSeparated (Отделено) .

После пункта меню, соответствующего действию с установленным свойством, будет отображен разделитель. Если пункт меню - последний, то разделитель не будет отображен.

        Разделитель в контектстном меню

9.4.57.9. Свойство TAction.Shortcut (Горячая клавиша)
Shortcut : TShortcut (Горячие клавиши) .

Для чтения и записи свойства используется поле TAction.FShortcut (Горячая клавиша) .

Горячая клавиша определяет связь между нажатием сочетания клавиш на клавиатуре и действием, ассоциированным с пунктом меню. Тест, описывающий горячую клавишу, располагается справа в контекстном меню для тех действий, для которых горячая клавиша назначена.


9.4.57.10. Функция TAction.GetNextPos (Следующая позиция)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Master (Мастер) TObject domain (Объект)

Доступен

Master (Мастер)

Parent (Родитель) TParent domain (Родитель объекта)

Доступен

Parent (Родитель)

Возвращает значение типа Integer (Целое).

Используется для инициализации значения параметра Position (Позиция) метода TAction.Create (Конструктор действия). Вычисляет следующую позицию добавляемого действия.


9.4.58. Класс TBanGroup (Группы запретов)
Унаследован от класса TObject (Объекты) . Объекты могут включать в себя объекты классов:

Объекты класса определяют группы запретов. Запреты на классы, свойства и подпрограммы объединяются разработчиком в функциональные группы, являющиеся группами запретов. В дальнейшем эти группы ассоциируются с конкретными ролями безопасности.


9.4.58.1. Конструктор TBanGroup.Create (Конструктор группы запретов)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Конструирует объект класса TBanGroup (Группы запретов) .


9.4.58.2. Свойство TBanGroup.IsAccessible (Доступна)
IsAccessible : Boolean (Обычное логическое) (обязательно для заполнения).

Для чтения значения свойства используется функция TBanGroup.GetIsAccessible (Доступна) . Свойство доступно только для чтения.

Свойство определяет, ассоциирована ли группа запретов с текущим пользователем, напрямую или через вхождение пользователя в роль.


9.4.58.3. Функция TBanGroup.GetIsAccessible (Доступна)

Возвращает значение типа Boolean (Обычное логическое) .

Используется для вычисления значений свойства TBanGroup.IsAccessible (Доступна).


9.4.59. Класс TBanGroupAccess (Доступ к группам запретов)
Унаследован от класса TObject (Объекты) . Объекты класса являются составными частями объектов класса TBanGroup (Группы запретов) .

Объекты класса определяют связь между родительской группой запретов и ролью безопасности.

Имя и наименование объекта полностью определяются другими свойствами, и запрещены для изменения.


9.4.59.1. Конструктор TBanGroupAccess.Create (Конструктор доступа к группе запретов)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Скрыт

Description (Наименование) TObjectDescription (Наименования)

Скрыт

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Группа запретов) TBanGroup domain (Группа запретов)

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

SecurityAccount (Роль безопасности) TSecurityAccount required domain (Роль безопасности (обязательно))

Доступен

SecurityAccount (Роль безопасности)

Конструирует объект класса TBanGroupAccess (Доступ к группам запретов) .


9.4.60. Класс TBanGroupItem (Элементы группы запретов)
Унаследован от класса TObject (Объекты) . Объекты класса являются составными частями объектов класса TBanGroup (Группы запретов) .


9.4.60.1. Конструктор TBanGroupItem.Create (Конструктор элемента группы запретов)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Скрыт

Description (Наименование) TObjectDescription (Наименования)

Скрыт

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Конструирует объект класса TBanGroupItem (Элементы группы запретов) .


9.4.61. Класс TBlobDomain (Большие объекты)
Унаследован от класса TDomain (Домены) .


9.4.61.1. Конструктор TBlobDomain.Create (Конструктор домена больших объектов)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Required (Обязательно для заполнения) Boolean (Обычное логическое)

Унаследован

Доступен

BlobSubtype (Подтип) TBlobSubtype (Подтип)

Доступен

Extension (Расширение) TFileExtension (Расширение имени файла)

Доступен

Конструирует объект класса TBlobDomain (Большие объекты) .


9.4.61.2. Поле TBlobDomain.FBlobSubtype (Подтип)
FBlobSubtype: TBlobSubtype (Подтип) (обязательно для заполнения) .

Используется для хранения значений свойства TBlobDomain.BlobSubtype (Подтип)
.


9.4.61.3. Поле TBlobDomain.FExtension (Расширение имени)
FExtension: TFileExtension (Расширение имени файла) .

Используется для хранения значений свойства TBlobDomain.Extension (Расширение)
.


9.4.61.4. Свойство TBlobDomain.BlobSubtype (Подтип)
BlobSubtype: TBlobSubtype (Подтип) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TBlobDomain.FBlobSubtype (Подтип) .


9.4.61.5. Свойство TBlobDomain.Extension (Расширение)
Extension: TFileExtension (Расширение имени файла) .

Для чтения и записи свойства используется поле TBlobDomain.FExtension (Расширение имени) .


9.4.62. Класс TBooleanDomain (Логические)
Унаследован от класса TDomain (Домены) .


9.4.62.1. Конструктор TBooleanDomain.Create (Конструктор логического домена)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Required (Обязательно для заполнения) Boolean (Обычное логическое)

Унаследован

Доступен

TrueValue (Значение "Истина") TObjectName (Имена)

Доступен

FalseValue (Значение "Ложь") TObjectName (Имена)

Доступен

Конструирует объект класса TBooleanDomain (Логические) .


9.4.62.2. Поле TBooleanDomain.FFalseValue (Значение "Ложь")
FFalseValue: TObjectName (Имена) (обязательно для заполнения) .

Используется для хранения значений свойства TBooleanDomain.FalseValue (Значение "Ложь")
.


9.4.62.3. Поле TBooleanDomain.FTrueValue (Значение "Истина")
FTrueValue: TObjectName (Имена) (обязательно для заполнения) .

Используется для хранения значений свойства TBooleanDomain.TrueValue (Значение "Истина")
.


9.4.62.4. Свойство TBooleanDomain.FalseValue (Значение "Ложь")
FalseValue: TObjectName (Имена) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TBooleanDomain.FFalseValue (Значение "Ложь") .


9.4.62.5. Свойство TBooleanDomain.TrueValue (Значение "Истина")
TrueValue: TObjectName (Имена) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TBooleanDomain.FTrueValue (Значение "Истина") .


9.4.63. Класс TClass (Классы)

9.4.63.1. Конструктор TClass.Create (Конструктор класса)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

IsHierarhical (Является иерархическим) Boolean (Обычное логическое)

Доступен

MasterClass (Класс-мастер) TClass domain (Класс)

Доступен

ReplicationStatus (Статус репликации) TReplicationStatus (Статус репликации)

Доступен

SecurityModel (Модель безопасности) TSecurityModel (Модели безопасности)

Доступен

UnNamed (Неименованный) Boolean (Обычное логическое)

Доступен

NameExpression (Выражение имени объекта) TInlineExpressionText (Текст выражения)

Доступен

DescriptionExpression (Выражение наименования объекта) TInlineExpressionText (Текст выражения)

Доступен

CreateConstructor (Создать конструктор) Boolean (Обычное логическое)

Доступен

Конструирует объект класса TClass (Классы) .


9.4.63.2. Поле TClass.FDescriptionExpression (Выражение наименования объекта)
FDescriptionExpression: TInlineExpressionText (Текст выражения) .

Используется для хранения значений свойства TClass.DescriptionExpression (Выражение наименования объекта)
.


9.4.63.3. Поле TClass.FIsHierarhical (Является иерархическим)
FIsHierarhical: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TClass.IsHierarhical (Является иерархическим)
.


9.4.63.4. Поле TClass.FMasterClass (Класс-мастер)

9.4.63.5. Поле TClass.FNameExpression (Выражение имени объекта)
FNameExpression: TInlineExpressionText (Текст выражения) .

Используется для хранения значений свойства TClass.NameExpression (Выражение имени объекта)
.


9.4.63.6. Поле TClass.FReplicationStatus (Статус репликации)

9.4.63.7. Поле TClass.FSecurityModel (Модель безопасности)
FSecurityModel: TSecurityModel (Модели безопасности) (обязательно для заполнения) .

Используется для хранения значений свойства TClass.SecurityModel (Модель безопасности)
.


9.4.63.8. Поле TClass.FUnNamed (Неименованный)
FUnNamed: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TClass.UnNamed (Неименованный)
.


9.4.63.9. Процедура TClass.GenerateConstructor (Сгенерировать текст конструктора)


9.4.63.10. Свойство TClass.DescriptionExpression (Выражение наименования объекта)
DescriptionExpression: TInlineExpressionText (Текст выражения) .

Для чтения и записи свойства используется поле TClass.FDescriptionExpression (Выражение наименования объекта) .


9.4.63.11. Свойство TClass.IsHierarhical (Является иерархическим)
IsHierarhical: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения значения свойства используется поле TClass.FIsHierarhical (Является иерархическим) .


9.4.63.12. Свойство TClass.MasterClass (Класс-мастер)
MasterClass: TClass domain (Класс) .

Для чтения значения свойства используется поле TClass.FMasterClass (Класс-мастер) .


9.4.63.13. Свойство TClass.NameExpression (Выражение имени объекта)
NameExpression: TInlineExpressionText (Текст выражения) .

Для чтения и записи свойства используется поле TClass.FNameExpression (Выражение имени объекта) .


9.4.63.14. Свойство TClass.ReplicationStatus (Статус репликации)
ReplicationStatus: TReplicationStatus (Статус репликации) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TClass.FReplicationStatus (Статус репликации) .


9.4.63.15. Свойство TClass.SecurityModel (Модель безопасности)
SecurityModel: TSecurityModel (Модели безопасности) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TClass.FSecurityModel (Модель безопасности) .


9.4.63.16. Свойство TClass.UnNamed (Неименованный)
UnNamed: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TClass.FUnNamed (Неименованный) .


9.4.63.17. Функция TClass.ListProperties (Список видимых свойств)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Scope (Область видимости) TScope (Область видимости)

Доступен

Возвращает значение типа TList domain (Список объектов) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Scope (Область видимости) TScope (Область видимости)

Доступен


9.4.63.18. Функция TClass.ListRoutines (Список видимых подпрограмм)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Scope (Область видимости) TScope (Область видимости)

Доступен

Возвращает значение типа TList domain (Список объектов) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Scope (Область видимости) TScope (Область видимости)

Доступен


9.4.63.19. Шаблон отчета XSLT TClass.ClassesDiagram (Диаграмма классов)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ShowFields (Показывать поля) Boolean (Обычное логическое)

Доступен

ShowMethods (Показывать методы) Boolean (Обычное логическое)

Доступен

ShowProperties (Показывать свойства) Boolean (Обычное логическое)

Доступен

ShowParameters (Показывать параметры) Boolean (Обычное логическое)

Доступен

ShowMetadata (Показывать метаданные) Boolean (Обычное логическое)

Доступен

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ShowFields (Показывать поля) Boolean (Обычное логическое)

Доступен

ShowMethods (Показывать методы) Boolean (Обычное логическое)

Доступен

ShowProperties (Показывать свойства) Boolean (Обычное логическое)

Доступен

ShowParameters (Показывать параметры) Boolean (Обычное логическое)

Доступен

ShowMetadata (Показывать метаданные) Boolean (Обычное логическое)

Доступен


9.4.64. Класс TClassBan (Запрет на класс)
Унаследован от класса TBanGroupItem (Элементы группы запретов) . Объекты класса являются составными частями объектов класса TBanGroup (Группы запретов) .


9.4.64.1. Конструктор TClassBan.Create (Конструктор запрета на класс)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Скрыт

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Скрыт

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

BannedClass (Запрещаемый класс) TClass required cascade domain (Класс (с каскадным удалением))

Доступен

Конструирует объект класса TClassBan (Запрет на класс) .


9.4.64.2. Поле TClassBan.FBannedClass (Запрещенный класс)
FBannedClass: TClass required cascade domain (Класс (с каскадным удалением)) (обязательно для заполнения) .

Используется для хранения значений свойства TClassBan.BannedClass (Запрещаемый класс)
.


9.4.64.3. Свойство TClassBan.BannedClass (Запрещаемый класс)
BannedClass: TClass required cascade domain (Класс (с каскадным удалением)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TClassBan.FBannedClass (Запрещенный класс) .


9.4.65. Класс TClassDomain (Ссылки на объекты)
Унаследован от класса TDomain (Домены) .


9.4.65.1. Конструктор TClassDomain.Create (Конструктор домена-ссылки)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Required (Обязательно для заполнения) Boolean (Обычное логическое)

Унаследован

Доступен

ClassOfDomain (Класс домена) TClass required domain (Класс (обязательно))

Доступен

View (Представление для выбора) TView of ClassDomain domain (Представление)

Доступен

FilterCondition (Условие отбора) TFilterCondition (Условие отбора)

Доступен

ShowObjectInfoType (Тип представления объектов) TShowObjectInfoType (Тип представления объектов)

Доступен

DeleteRule (Правило удаления) TDeleteRule (Правило удаления)

Доступен

Конструирует объект класса TClassDomain (Ссылки на объекты) .


9.4.65.2. Поле TClassDomain.FClass (Класс)
FClass: TClass required domain (Класс (обязательно)) (обязательно для заполнения) .

Используется для хранения значений свойства TClassDomain.ClassOfDomain (Класс домена)
.


9.4.65.3. Поле TClassDomain.FDeleteRule (Правило удаления)
FDeleteRule: TDeleteRule (Правило удаления) (обязательно для заполнения) .

Используется для хранения значений свойства TClassDomain.DeleteRule (Правило удаления)
.


9.4.65.4. Поле TClassDomain.FFilterCondition (Условие отбора)
FFilterCondition: TFilterCondition (Условие отбора) .

Используется для хранения значений свойства TClassDomain.FilterCondition (Условие отбора)
.


9.4.65.5. Поле TClassDomain.FShowObjectInfoType (Тип представления объектов)
FShowObjectInfoType: TShowObjectInfoType (Тип представления объектов) (обязательно для заполнения) .

Используется для хранения значений свойства TClassDomain.ShowObjectInfoType (Тип представления объектов)
.


9.4.65.6. Поле TClassDomain.FView (Представление)
FView: TView of ClassDomain domain (Представление) .

Используется для хранения значений свойства TClassDomain.View (Представление)
.


9.4.65.7. Свойство TClassDomain.ClassOfDomain (Класс домена)
ClassOfDomain: TClass domain (Класс) .

Для чтения и записи свойства используется поле TClassDomain.FClass (Класс) .


9.4.65.8. Свойство TClassDomain.ClassReplicationStatus (Статус репликации класса)

9.4.65.9. Свойство TClassDomain.DeleteRule (Правило удаления)
DeleteRule: TDeleteRule (Правило удаления) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TClassDomain.FDeleteRule (Правило удаления) .


9.4.65.10. Свойство TClassDomain.FilterCondition (Условие отбора)
FilterCondition: TFilterCondition (Условие отбора) .

Для чтения и записи свойства используется поле TClassDomain.FFilterCondition (Условие отбора) .


9.4.65.11. Свойство TClassDomain.ShowObjectInfoType (Тип представления объектов)
ShowObjectInfoType: TShowObjectInfoType (Тип представления объектов) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TClassDomain.FShowObjectInfoType (Тип представления объектов) .


9.4.65.12. Свойство TClassDomain.View (Представление)
View: TView of ClassDomain domain (Представление) .

Для чтения и записи свойства используется поле TClassDomain.FView (Представление) .


9.4.66. Класс TClassMember (Члены класса)
Унаследован от класса TObject (Объекты) . Объекты класса являются составными частями объектов класса TClass (Классы) .


9.4.67. Класс TCommandButton (Командные кнопки)

9.4.67.1. Конструктор TCommandButton.Create (Конструктор командной кнопки)

9.4.67.2. Поле TCommandButton.FGroup (Заголовок группы)

9.4.67.3. Поле TCommandButton.FParameter (Связанный параметр)

9.4.67.4. Поле TCommandButton.FPosition (Позиция)

9.4.67.5. Поле TCommandButton.FScript (Скрипт)

9.4.67.6. Поле TCommandButton.FTab (Заголовок закладки)

9.4.67.7. Свойство TCommandButton.Group (Заголовок группы)

9.4.67.8. Свойство TCommandButton.Parameter (Связанный параметр)

9.4.67.9. Свойство TCommandButton.Position (Позиция)

9.4.67.10. Свойство TCommandButton.Script (Скрипт)

9.4.67.11. Свойство TCommandButton.Tab (Заголовок закладки)

9.4.67.12. Функция TCommandButton.GetNextPos (Следующая позиция)

9.4.68. Класс TDataBase (Базы данных)
Унаследован от класса TObject (Объекты) .


9.4.68.1. Конструктор TDataBase.Create (Конструктор базы данных)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

GUID (GUID) TGUID (Уникальные идентификаторы)

Доступен

Protected (Защищена) Boolean (Обычное логическое)

Доступен

Конструирует объект класса TDataBase (Базы данных) .


9.4.68.2. Поле TDataBase.FGUID (Идентификатор)
FGUID: TGUID (Уникальные идентификаторы) (обязательно для заполнения) .

Используется для хранения значений свойств:
TDataBase.GUID (Идентификатор)
TObject.SourceDataBaseGUID (GUID базы даных-источника)
.


9.4.68.3. Поле TDataBase.FIsCurrent (Является текущей)
FIsCurrent: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойств:
TDataBase.IsCurrent (Является текущей)
TObject.SourceDataBaseIsCurrent (База данных-источник является текущей)
.


9.4.68.4. Поле TDataBase.FProtected (Защищена)
FProtected: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TDataBase.Protected (Защищена от изменений)
.


9.4.68.5. Свойство TDataBase.GUID (Идентификатор)
GUID: TGUID (Уникальные идентификаторы) (обязательно для заполнения) .

Для чтения значения свойства используется поле TDataBase.FGUID (Идентификатор) .


9.4.68.6. Свойство TDataBase.IsCurrent (Является текущей)
IsCurrent: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения значения свойства используется поле TDataBase.FIsCurrent (Является текущей) .


9.4.68.7. Свойство TDataBase.Protected (Защищена от изменений)
Protected: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TDataBase.FProtected (Защищена) .


9.4.69. Класс TDateDomain (Даты)
Унаследован от класса TDomain (Домены) .


9.4.69.1. Конструктор TDateDomain.Create (Конструктор домена даты)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Required (Обязательно для заполнения) Boolean (Обычное логическое)

Унаследован

Доступен

Конструирует объект класса TDateDomain (Даты) .


9.4.70. Класс TDateTimeDomain (Даты со временем)
Унаследован от класса TDomain (Домены) .


9.4.70.1. Конструктор TDateTimeDomain.Create (Конструктор домена даты со временем)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Required (Обязательно для заполнения) Boolean (Обычное логическое)

Унаследован

Доступен

Конструирует объект класса TDateTimeDomain (Даты со временем) .


9.4.71. Класс TDomain (Домены)
Унаследован от класса TObject (Объекты) .


9.4.71.1. Встраиваемое выражение TDomain.GetDependencyCount (Количество зависимостей)
GetDependencyCount: Integer (Целое) .

Текст выражения:

count(TField with Domain = Self) + 
count(TProperty with Domain = Self) +
count(TRoutine with Domain = Self) +
count(TParameter with Domain = Self) +
count(TOption with Domain = Self) 

Используется для вычисления значений свойства TDomain.DependencyCount (Количество зависимостей)
.


9.4.71.2. Конструктор TDomain.Create (Конструктор домена)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Required (Обязательно для заполнения) Boolean (Обычное логическое)

Доступен

Конструирует объект класса TDomain (Домены) .


9.4.71.3. Поле TDomain.FRequired (Обязательно для заполнения)

9.4.71.4. Свойство TDomain.DependencyCount (Количество зависимостей)
DependencyCount: Integer (Целое) . Вычисление свойства отложено.

Для чтения значения свойства используется встраиваемое выражение TDomain.GetDependencyCount (Количество зависимостей) .


9.4.71.5. Свойство TDomain.Required (Обязательно для заполнения)
Required: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TDomain.FRequired (Обязательно для заполнения) .


9.4.72. Класс TEnumerationDomain (Перечисления)
Унаследован от класса TDomain (Домены) . Объекты могут включать в себя объекты классов:


9.4.72.1. Конструктор TEnumerationDomain.Create (Конструктор перечисления)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Required (Обязательно для заполнения) Boolean (Обычное логическое)

Унаследован

Доступен

ShowNames (Показывать имена элементов) Boolean (Обычное логическое)

Доступен

Конструирует объект класса TEnumerationDomain (Перечисления) .


9.4.72.2. Поле TEnumerationDomain.FShowNames (Показывать имена)
FShowNames: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TEnumerationDomain.ShowNames (Показывать имена)
.


9.4.72.3. Свойство TEnumerationDomain.ShowNames (Показывать имена)
ShowNames: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TEnumerationDomain.FShowNames (Показывать имена) .


9.4.73. Класс TEnumerationItem (Элементы перечислений)
Унаследован от класса TObject (Объекты) . Объекты класса являются составными частями объектов класса TEnumerationDomain (Перечисления) .


9.4.73.1. Конструктор TEnumerationItem.Create (Конструктор элемента перечисления)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Position (Позиция) TPosition (Позиция)

Доступен

GetNextPos (Следующая позиция)

Конструирует объект класса TEnumerationItem (Элементы перечислений) .


9.4.73.2. Поле TEnumerationItem.FPosition (Позиция)
FPosition: TPosition (Позиция) (обязательно для заполнения) .

Используется для хранения значений свойства TEnumerationItem.Position (Позиция)
.


9.4.73.3. Свойство TEnumerationItem.Position (Позиция)
Position: TPosition (Позиция) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TEnumerationItem.FPosition (Позиция) .


9.4.73.4. Функция TEnumerationItem.GetNextPos (Следующая позиция)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Master (Мастер) TObject domain (Объект)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Master (Мастер) TObject domain (Объект)

Доступен

Используется для инициализации значения параметра Position (Позиция) подпрограммы TEnumerationItem.Create (Конструктор элемента перечисления)
.


9.4.74. Класс TExcelTemplate (Шаблоны отчетов Excel)
Унаследован от класса TRoutine (Подпрограмма) . Объекты класса являются составными частями объектов класса TClass (Классы) .


9.4.74.1. Конструктор TExcelTemplate.Create (Конструктор шаблона Excel)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

IsClassMethod (Является методом класса) Boolean (Обычное логическое)

Унаследован

Доступен

Domain (Домен результата) TDomain domain (Домен)

Унаследован

Доступен

Scope (Область видимости) TScope (Область видимости)

Унаследован

Доступен

Confirmation (Текст подтверждения) TCaption (Заголовки)

Унаследован

Доступен

UseTabs (Использовать закладки) Boolean (Обычное логическое)

Унаследован

Доступен

Script (Скрипт формы параметров) TRoutineScript (Скрипты форм параметров)

Унаследован

Доступен

Image (Изображение-иконка) TImage (Изображение)

Унаследован

Доступен

TemplateData (Данные шаблона) TExcelTemplateData (Данные Excel-шаблона)

Доступен

PlaceDataOnSheet (Лист для переноса данных) TExcelSheetKind (Тип листа Excel)

Доступен

MacroName (Имя макроса) TExternalIndentifier (Внешний идентификатор)

Доступен

Конструирует объект класса TExcelTemplate (Шаблоны отчетов Excel) .


9.4.74.2. Поле TExcelTemplate.FMacroName (Имя макроса)
FMacroName: TExternalIndentifier (Внешний идентификатор) .

Используется для хранения значений свойства TExcelTemplate.MacroName (Имя макроса)
.


9.4.74.3. Поле TExcelTemplate.FPlaceDataOnSheet (Тип листа для переноса данных)
FPlaceDataOnSheet: TExcelSheetKind (Тип листа Excel) (обязательно для заполнения) .

Используется для хранения значений свойства TExcelTemplate.PlaceDataOnSheet (Лист для переноса данных)
.


9.4.74.4. Поле TExcelTemplate.FTemplateData (Данные шаблона)
FTemplateData: TExcelTemplateData (Данные Excel-шаблона) .

Используется для хранения значений свойства TExcelTemplate.TemplateData (Данные шаблона)
.


9.4.74.5. Свойство TExcelTemplate.MacroName (Имя макроса)
MacroName: TExternalIndentifier (Внешний идентификатор) .

Для чтения и записи свойства используется поле TExcelTemplate.FMacroName (Имя макроса) .


9.4.74.6. Свойство TExcelTemplate.PlaceDataOnSheet (Лист для переноса данных)
PlaceDataOnSheet: TExcelSheetKind (Тип листа Excel) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TExcelTemplate.FPlaceDataOnSheet (Тип листа для переноса данных) .


9.4.74.7. Свойство TExcelTemplate.TemplateData (Данные шаблона)
TemplateData: TExcelTemplateData (Данные Excel-шаблона) .

Для чтения и записи свойства используется поле TExcelTemplate.FTemplateData (Данные шаблона) .


9.4.75. Класс TField (Поля)
Унаследован от класса TClassMember (Члены класса) . Объекты класса являются составными частями объектов класса TClass (Классы) .


9.4.75.1. Конструктор TField.Create (Конструктор поля)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Domain (Домен) TDomain required domain (Домен (обязательно))

Доступен

CreateProperty (Создать свойство) Boolean (Обычное логическое)

Доступен

CreateConstructorParameter (Создать параметр конструктора) Boolean (Обычное логическое)

Доступен

Конструирует объект класса TField (Поля) .


9.4.75.2. Поле TField.FDomain (Домен)
FDomain: TDomain required domain (Домен (обязательно)) (обязательно для заполнения) .

Используется для хранения значений свойства TField.Domain (Домен)
.


9.4.75.3. Свойство TField.Domain (Домен)
Domain: TDomain required domain (Домен (обязательно)) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TField.FDomain (Домен) .


9.4.75.4. Свойство TField.DomainClass (Класс домена)
DomainClass: TClass required domain (Класс (обязательно)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FClass (Класс) .

Дочернее свойство свойства Domain (Домен) .


9.4.75.5. Свойство TField.DomainRequired (Обязательно для заполнения)
DomainRequired: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TDomain.FRequired (Обязательно для заполнения) .

Дочернее свойство свойства Domain (Домен) .


9.4.76. Класс TFileNameDomain (Имена файлов)
Унаследован от класса TStringDomain (Строковые) .


9.4.76.1. Конструктор TFileNameDomain.Create (Конструктор имени файла)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Required (Обязательно для заполнения) Boolean (Обычное логическое)

Унаследован

Доступен

Length (Максимальная длина) TLength (Длина)

Унаследован

Доступен

FileMustExist (Файл должен существовать) Boolean (Обычное логическое)

Доступен

DefaultExtension (Расширение по умолчанию) TFileExtension (Расширение имени файла)

Доступен

OverwritePrompt (Запрос перезаписи) Boolean (Обычное логическое)

Доступен

Конструирует объект класса TFileNameDomain (Имена файлов) .


9.4.76.2. Поле TFileNameDomain.FDefaultExtension (Расширение по умолчанию)
FDefaultExtension: TFileExtension (Расширение имени файла) .

Используется для хранения значений свойства TFileNameDomain.DefaultExtension (Расширение по умолчанию)
.


9.4.76.3. Поле TFileNameDomain.FFileMustExist (Файл должен существовать)
FFileMustExist: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TFileNameDomain.FileMustExist (Файл должен существовать)
.


9.4.76.4. Поле TFileNameDomain.FOverwritePrompt (Запрос перезаписи)
FOverwritePrompt: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TFileNameDomain.OverwritePrompt (Запрос перезаписи)
.


9.4.76.5. Процедура TFileNameDomain.Change (Изменение объекта)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Action (Действие) TChangeAction (Действие при изменении)

Унаследован

Скрыт

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Action (Действие) TChangeAction (Действие при изменении)

Унаследован

Скрыт


9.4.76.6. Свойство TFileNameDomain.DefaultExtension (Расширение по умолчанию)
DefaultExtension: TFileExtension (Расширение имени файла) .

Для чтения и записи свойства используется поле TFileNameDomain.FDefaultExtension (Расширение по умолчанию) .


9.4.76.7. Свойство TFileNameDomain.FileMustExist (Файл должен существовать)
FileMustExist: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TFileNameDomain.FFileMustExist (Файл должен существовать) .


9.4.76.8. Свойство TFileNameDomain.OverwritePrompt (Запрос перезаписи)
OverwritePrompt: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TFileNameDomain.FOverwritePrompt (Запрос перезаписи) .


9.4.77. Класс TFloatDomain (Вещественные числа)
Унаследован от класса TDomain (Домены) .


9.4.77.1. Конструктор TFloatDomain.Create (Конструктор вещественного домена)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Required (Обязательно для заполнения) Boolean (Обычное логическое)

Унаследован

Доступен

Length (Длина) TPrescision (Точность)

Доступен

DecimalPlaces (Количество десятичных знаков) TPrescision (Точность)

Доступен

MinValue (Минимальное значение) Float (Вещественное)

Доступен

MaxValue (Максимальное значение) Float (Вещественное)

Доступен

Конструирует объект класса TFloatDomain (Вещественные числа) .


9.4.77.2. Поле TFloatDomain.FDecimalPlaces (Количество знаков после запятой)
FDecimalPlaces: TPrescision (Точность) .

Используется для хранения значений свойства TFloatDomain.DecimalPlaces (Количество десятичных знаков)
.


9.4.77.3. Поле TFloatDomain.FLength (Максимальная длина)
FLength: TPrescision (Точность) .

Используется для хранения значений свойства TFloatDomain.Length (Длина)
.


9.4.77.4. Поле TFloatDomain.FMaxValue (Максимальное значение)
FMaxValue: Float (Вещественное) .

Используется для хранения значений свойства TFloatDomain.MaxValue (Максимальное значение)
.


9.4.77.5. Поле TFloatDomain.FMinValue (Минимальное значение)
FMinValue: Float (Вещественное) .

Используется для хранения значений свойства TFloatDomain.MinValue (Минимальное значение)
.


9.4.77.6. Свойство TFloatDomain.DecimalPlaces (Количество десятичных знаков)
DecimalPlaces: TPrescision (Точность) .

Для чтения и записи свойства используется поле TFloatDomain.FDecimalPlaces (Количество знаков после запятой) .


9.4.77.7. Свойство TFloatDomain.Length (Длина)
Length: TPrescision (Точность) .

Для чтения и записи свойства используется поле TFloatDomain.FLength (Максимальная длина) .


9.4.77.8. Свойство TFloatDomain.MaxValue (Максимальное значение)
MaxValue: Float (Вещественное) .

Для чтения и записи свойства используется поле TFloatDomain.FMaxValue (Максимальное значение) .


9.4.77.9. Свойство TFloatDomain.MinValue (Минимальное значение)
MinValue: Float (Вещественное) .

Для чтения и записи свойства используется поле TFloatDomain.FMinValue (Минимальное значение) .


9.4.78. Класс TFolderNameDomain (Имена папок файловой системы)
Унаследован от класса TStringDomain (Строковые) .


9.4.78.1. Конструктор TFolderNameDomain.Create (Конструктор имени папки)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Required (Обязательно для заполнения) Boolean (Обычное логическое)

Унаследован

Доступен

Length (Максимальная длина) TLength (Длина)

Унаследован

Доступен

FolderMustExist (Папка должна существовать) Boolean (Обычное логическое)

Доступен

Конструирует объект класса TFolderNameDomain (Имена папок файловой системы) .


9.4.78.2. Поле TFolderNameDomain.FFolderMustExist (Папка должеа существовать)
FFolderMustExist: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TFolderNameDomain.FolderMustExist (Папка должна существовать)
.


9.4.78.3. Процедура TFolderNameDomain.Change (Изменение объекта)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Action (Действие) TChangeAction (Действие при изменении)

Унаследован

Скрыт

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Action (Действие) TChangeAction (Действие при изменении)

Унаследован

Скрыт


9.4.78.4. Свойство TFolderNameDomain.FolderMustExist (Папка должна существовать)
FolderMustExist: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TFolderNameDomain.FFolderMustExist (Папка должеа существовать) .


9.4.79. Класс TForm (Формы)
Унаследован от класса TObject (Объекты) . Объекты могут включать в себя объекты классов:


9.4.79.1. Конструктор TForm.Create (Конструктор формы)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

AutoOpen (Открывать автоматически) Boolean (Обычное логическое)

Доступен

Position (Позиция) TPosition (Позиция)

Доступен

GetNextPos (Следующая позиция)

Scope (Область видимости) TScope (Область видимости)

Доступен

Image (Изображение-иконка) TImage (Изображение)

Доступен

IsAlive ("Живая") Boolean (Обычное логическое)

Доступен

Конструирует объект класса TForm (Формы) .


9.4.79.2. Поле TForm.FAutoOpen (Открывать автоматически)
FAutoOpen: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TForm.AutoOpen (Открывать автоматически)
.


9.4.79.3. Поле TForm.FImage (Изображеие-иконка)
FImage: TImage (Изображение) .

Используется для хранения значений свойств:
TForm.Image (Изображение-иконка)
TVisualGroupForm.Image (Изображение)
.


9.4.79.4. Поле TForm.FIsAlive (Живая)
FIsAlive: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TForm.IsAlive ("Живая")
.


9.4.79.5. Поле TForm.FPosition (Позиция)
FPosition: TPosition (Позиция) (обязательно для заполнения) .

Используется для хранения значений свойства TForm.Position (Позиция)
.


9.4.79.6. Поле TForm.FScope (Область видимости)
FScope: TScope (Область видимости) (обязательно для заполнения) .

Используется для хранения значений свойства TForm.Scope (Область видимости)
.


9.4.79.7. Свойство TForm.AutoOpen (Открывать автоматически)
AutoOpen: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TForm.FAutoOpen (Открывать автоматически) .


9.4.79.8. Свойство TForm.Image (Изображение-иконка)
Image: TImage (Изображение) .

Для чтения и записи свойства используется поле TForm.FImage (Изображеие-иконка) .


9.4.79.9. Свойство TForm.IsAccessible (Доступна)
IsAccessible: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения значения свойства используется функция TForm.GetIsAccessible (Доступна) .


9.4.79.10. Свойство TForm.IsAlive ("Живая")
IsAlive: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TForm.FIsAlive (Живая) .


9.4.79.11. Свойство TForm.Position (Позиция)
Position: TPosition (Позиция) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TForm.FPosition (Позиция) .


9.4.79.12. Свойство TForm.Scope (Область видимости)
Scope: TScope (Область видимости) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TForm.FScope (Область видимости) .


9.4.79.13. Функция TForm.GetIsAccessible (Доступна)

Возвращает значение типа Boolean (Обычное логическое) .

Используется для вычисления значений свойств:
TForm.IsAccessible (Доступна)
TInstantMessage.IsAccessible (Форма доступна)
.


9.4.79.14. Функция TForm.GetNextPos (Следующая позиция)
Является методом класса.

Возвращает значение типа Integer (Целое) .

Используется для инициализации значения параметра Position (Позиция) подпрограммы TForm.Create (Конструктор формы)
.


9.4.80. Класс TFormAccess (Доступ к формам)
Унаследован от класса TObject (Объекты) . Объекты класса являются составными частями объектов класса TForm (Формы) .


9.4.80.1. Конструктор TFormAccess.Create (Конструктор доступа к форме)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Скрыт

Description (Наименование) TObjectDescription (Наименования)

Скрыт

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Форма) TForm required domain (Форма (обязательно))

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

SecurityAccount (Роль безопасности) TSecurityAccount required domain (Роль безопасности (обязательно))

Доступен

SecurityAccount (Роль безопасности)

Конструирует объект класса TFormAccess (Доступ к формам) .


9.4.81. Класс TFormView (Представления формы)
Унаследован от класса TObject (Объекты) . Объекты класса связаны иерархически. Объекты класса являются составными частями объектов класса TForm (Формы) .


9.4.81.1. Конструктор TFormView.Create (Конструктор представления формы)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Скрыт

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

View (Представление) TView of FormView domain (Представление для формы)

Доступен

ChildrenMinimized (Дочерние представления минимизированы) Boolean (Обычное логическое)

Доступен

ChildrenOnTabs (Дочерние представления на закладках) Boolean (Обычное логическое)

Доступен

MasterProperty (Свойство-главное) TMasterProperty domain (Свойство-главное)

Доступен

DetailProperty (Свойство-подчиненное) TDetailProperty domain (Свойство-подчиненное)

Доступен

Position (Позиция) TPosition (Позиция)

Доступен

GetNextPos (Следующая позиция)

SpacePercentage (Площадь, %) Percent (Процент)

Доступен

Конструирует объект класса TFormView (Представления формы) .


9.4.81.2. Поле TFormView.FChildrenMinimized (Дочерние представления минимизированы)
FChildrenMinimized: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TFormView.ChildrenMinimized (Дочерние представления минимизированы)
.


9.4.81.3. Поле TFormView.FChildrenOnTabs (Дочерние представления на закладках)
FChildrenOnTabs: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TFormView.ChildrenOnTabs (Дочерние представления на закладках)
.


9.4.81.4. Поле TFormView.FDetailProperty (Свойство-подчиненное)
FDetailProperty: TDetailProperty domain (Свойство-подчиненное) .

Используется для хранения значений свойства TFormView.DetailProperty (Свойство-подчиненное)
.


9.4.81.5. Поле TFormView.FMasterProperty (Свойство-главное)
FMasterProperty: TMasterProperty domain (Свойство-главное) .

Используется для хранения значений свойства TFormView.MasterProperty (Свойство-главное)
.


9.4.81.6. Поле TFormView.FPosition (Позиция)
FPosition: TPosition (Позиция) (обязательно для заполнения) .

Используется для хранения значений свойства TFormView.Position (Позиция)
.


9.4.81.7. Поле TFormView.FSingleQuery (Единственный запрос)

9.4.81.8. Поле TFormView.FSpacePercentage (Площадь)
FSpacePercentage: Percent (Процент) .

Используется для хранения значений свойства TFormView.SpacePercentage (Площадь, %)
.


9.4.81.9. Поле TFormView.FView (Представление)
FView: TView of FormView domain (Представление для формы) (обязательно для заполнения) .

Используется для хранения значений свойства TFormView.View (Представление)
.


9.4.81.10. Свойство TFormView.ChildrenMinimized (Дочерние представления минимизированы)
ChildrenMinimized: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TFormView.FChildrenMinimized (Дочерние представления минимизированы) .


9.4.81.11. Свойство TFormView.ChildrenOnTabs (Дочерние представления на закладках)
ChildrenOnTabs: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TFormView.FChildrenOnTabs (Дочерние представления на закладках) .


9.4.81.12. Свойство TFormView.Collapsed (Узлы свернуты)
Collapsed: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TView.FCollapsed (Свернуто) .

Дочернее свойство свойства View (Представление) .


9.4.81.13. Свойство TFormView.ColorProperty (Свойство-цвет)
ColorProperty: TColorProperty domain (Домен свойства цвета) .

Для чтения и записи свойства используется поле TView.FColorProperty (Свойство цвета) .

Дочернее свойство свойства View (Представление) .


9.4.81.14. Свойство TFormView.DetailProperty (Свойство-подчиненное)
DetailProperty: TDetailProperty domain (Свойство-подчиненное) .

Для чтения и записи свойства используется поле TFormView.FDetailProperty (Свойство-подчиненное) .


9.4.81.15. Свойство TFormView.MasterProperty (Свойство-главное)
MasterProperty: TMasterProperty domain (Свойство-главное) .

Для чтения и записи свойства используется поле TFormView.FMasterProperty (Свойство-главное) .


9.4.81.16. Свойство TFormView.Position (Позиция)
Position: TPosition (Позиция) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TFormView.FPosition (Позиция) .


9.4.81.17. Свойство TFormView.ShownClass (Показываемый класс)
ShownClass: TClass required domain (Класс (обязательно)) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TView.FShownClass (Класс для показа) .

Дочернее свойство свойства View (Представление) .


9.4.81.18. Свойство TFormView.SingleQuery (Единственный запрос)

9.4.81.19. Свойство TFormView.SpacePercentage (Площадь, %)
SpacePercentage: Percent (Процент) .

Для чтения и записи свойства используется поле TFormView.FSpacePercentage (Площадь) .


9.4.81.20. Свойство TFormView.View (Представление)
View: TView of FormView domain (Представление для формы) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TFormView.FView (Представление) .


9.4.81.21. Функция TFormView.GetNextPos (Следующая позиция)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Parent (Родитель) TObject domain (Объект)

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Доступен

Master (Мастер)

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Parent (Родитель) TObject domain (Объект)

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Доступен

Master (Мастер)

Используется для инициализации значения параметра Position (Позиция) подпрограммы TFormView.Create (Конструктор представления формы)
.


9.4.82. Класс TInlineExpression (Встраиваемое выражение)
Унаследован от класса TClassMember (Члены класса) . Объекты класса являются составными частями объектов класса TClass (Классы) .


9.4.82.1. Конструктор TInlineExpression.Create (Конструктор встраиваемого выражения)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Expression (Выражение) TInlineExpressionText (Текст выражения)

Доступен

Domain (Домен) TDomain required domain (Домен (обязательно))

Доступен

Конструирует объект класса TInlineExpression (Встраиваемое выражение) .


9.4.82.2. Поле TInlineExpression.FDomain (Домен)
FDomain: TDomain required domain (Домен (обязательно)) (обязательно для заполнения) .

Используется для хранения значений свойства TInlineExpression.Domain (Домен)
.


9.4.82.3. Поле TInlineExpression.FExpression (Выражение)
FExpression: TInlineExpressionText (Текст выражения) .

Используется для хранения значений свойства TInlineExpression.Expression (Выражение)
.


9.4.82.4. Свойство TInlineExpression.Domain (Домен)
Domain: TDomain required domain (Домен (обязательно)) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TInlineExpression.FDomain (Домен) .


9.4.82.5. Свойство TInlineExpression.DomainClass (Класс домена)
DomainClass: TClass required domain (Класс (обязательно)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FClass (Класс) .

Дочернее свойство свойства Domain (Домен) .


9.4.82.6. Свойство TInlineExpression.DomainRequired (Обязательно для заполнения)
DomainRequired: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TDomain.FRequired (Обязательно для заполнения) .

Дочернее свойство свойства Domain (Домен) .


9.4.82.7. Свойство TInlineExpression.Expression (Выражение)
Expression: TInlineExpressionText (Текст выражения) .

Для чтения и записи свойства используется поле TInlineExpression.FExpression (Выражение) .


9.4.83. Класс TInstantMessage (Сообщения)
Унаследован от класса TObject (Объекты) .


9.4.83.1. Конструктор TInstantMessage.Create (Конструктор сообщения)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

User (Пользователь) TUser required domain (Пользователь)

Доступен

FormView (Представление формы) TFormView domain (Представления форм)

Доступен

Object (Объект) TObject domain (Объект)

Доступен

Конструирует объект класса TInstantMessage (Сообщения) .


9.4.83.2. Поле TInstantMessage.FFormView (Представление формы)
FFormView: TFormView domain (Представления форм) .

Используется для хранения значений свойства TInstantMessage.FormView (Представление формы)
.


9.4.83.3. Поле TInstantMessage.FObject (Объект)
FObject: TObject domain (Объект) .

Используется для хранения значений свойства TInstantMessage.Object (Объект)
.


9.4.83.4. Поле TInstantMessage.FUser (Пользователь)
FUser: TUser required domain (Пользователь) (обязательно для заполнения) .

Используется для хранения значений свойства TInstantMessage.User (Пользователь)
.


9.4.83.5. Поле TInstantMessage.FViewed (Просмотрено)
FViewed: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TInstantMessage.Viewed (Просмотрено)
.


9.4.83.6. Свойство TInstantMessage.Form (Форма)
Form: TForm required domain (Форма (обязательно)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FMaster (Мастер) .

Дочернее свойство свойства FormView (Представление формы) .


9.4.83.7. Свойство TInstantMessage.FormView (Представление формы)
FormView: TFormView domain (Представления форм) .

Для чтения и записи свойства используется поле TInstantMessage.FFormView (Представление формы) .


9.4.83.8. Свойство TInstantMessage.IsAccessible (Форма доступна)
IsAccessible: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения значения свойства используется функция TForm.GetIsAccessible (Доступна) .

Дочернее свойство свойства Form (Форма) .


9.4.83.9. Свойство TInstantMessage.IsCurrent (Текущему пользователю)
IsCurrent: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения значения свойства используется функция TUser.GetIsCurrent (Является текущим) .

Дочернее свойство свойства User (Пользователь) .


9.4.83.10. Свойство TInstantMessage.Object (Объект)
Object: TObject domain (Объект) .

Для чтения и записи свойства используется поле TInstantMessage.FObject (Объект) .


9.4.83.11. Свойство TInstantMessage.User (Пользователь)
User: TUser required domain (Пользователь) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TInstantMessage.FUser (Пользователь) .


9.4.83.12. Свойство TInstantMessage.Viewed (Просмотрено)
Viewed: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TInstantMessage.FViewed (Просмотрено) .


9.4.84. Класс TIntegerDomain (Целые числа)
Унаследован от класса TDomain (Домены) .


9.4.84.1. Конструктор TIntegerDomain.Create (Конструктор целочисленного домена)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Required (Обязательно для заполнения) Boolean (Обычное логическое)

Унаследован

Доступен

MinValue (Минимальное значение) Integer (Целое)

Доступен

MaxValue (Максимальное значение) Integer (Целое)

Доступен

Конструирует объект класса TIntegerDomain (Целые числа) .


9.4.84.2. Поле TIntegerDomain.FMaxValue (Максимальное значение)
FMaxValue: Integer (Целое) .

Используется для хранения значений свойства TIntegerDomain.MaxValue (Максимальное значение)
.


9.4.84.3. Поле TIntegerDomain.FMinValue (Минимальное значение)
FMinValue: Integer (Целое) .

Используется для хранения значений свойства TIntegerDomain.MinValue (Минимальное значение)
.


9.4.84.4. Свойство TIntegerDomain.MaxValue (Максимальное значение)
MaxValue: Integer (Целое) .

Для чтения и записи свойства используется поле TIntegerDomain.FMaxValue (Максимальное значение) .


9.4.84.5. Свойство TIntegerDomain.MinValue (Минимальное значение)
MinValue: Integer (Целое) .

Для чтения и записи свойства используется поле TIntegerDomain.FMinValue (Минимальное значение) .


9.4.85. Класс TMethod (Методы)
Унаследован от класса TRoutine (Подпрограмма) . Объекты класса являются составными частями объектов класса TClass (Классы) .


9.4.85.1. Конструктор TMethod.Create (Конструктор метода)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

IsClassMethod (Является методом класса) Boolean (Обычное логическое)

Унаследован

Доступен

Domain (Домен результата) TDomain domain (Домен)

Унаследован

Доступен

Scope (Область видимости) TScope (Область видимости)

Унаследован

Доступен

Confirmation (Текст подтверждения) TCaption (Заголовки)

Унаследован

Доступен

UseTabs (Использовать закладки) Boolean (Обычное логическое)

Унаследован

Доступен

Script (Скрипт формы параметров) TRoutineScript (Скрипты форм параметров)

Унаследован

Доступен

Image (Изображение-иконка) TImage (Изображение)

Унаследован

Доступен

Body (Тело) TMethodBody (Исходные тексты методов)

Доступен

Конструирует объект класса TMethod (Методы) .


9.4.85.2. Поле TMethod.FBody (Тело)
FBody: TMethodBody (Исходные тексты методов) .

Используется для хранения значений свойства TMethod.Body (Тело)
.


9.4.85.3. Свойство TMethod.Body (Тело)
Body: TMethodBody (Исходные тексты методов) .

Для чтения и записи свойства используется поле TMethod.FBody (Тело) .


9.4.85.4. Свойство TMethod.CallTemplate (Шаблон вызова)
CallTemplate: TLongString (Длинная строка) . Вычисление свойства отложено.

Для чтения значения свойства используется функция TMethod.CallTemplate (Шаблон вызова) .


9.4.85.5. Функция TMethod.CallTemplate (Шаблон вызова)

Возвращает значение типа TLongString (Длинная строка) .

Используется для вычисления значений свойства TMethod.CallTemplate (Шаблон вызова)
.


9.4.86. Класс TObject (Объекты)


9.4.86.1. Конструктор TObject.Create (Конструктор объекта)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Скрыт

Конструирует объект класса TObject (Объекты) .


9.4.86.2. Поле TObject.FClass (Класс)

9.4.86.3. Поле TObject.FCreated (Создано)
FCreated: TimeStamp required (Момент (обязательный)) (обязательно для заполнения) .

Используется для хранения значений свойства TObject.Created (Создано)
.


9.4.86.4. Поле TObject.FCreator (Создано пользователем)
FCreator: TUser required domain (Пользователь) (обязательно для заполнения) .

Используется для хранения значений свойства TObject.Creator (Создано пользователем)
.


9.4.86.5. Поле TObject.FDescription (Наименование)
FDescription: TObjectDescription (Наименования) (обязательно для заполнения) .

Используется для хранения значений свойств:
TObject.Description (Наименование)
TFormAccess.Description (Наименование)
TVisualGroupAccess.Description (Наименование)
TBanGroupAccess.Description (Наименование)
.


9.4.86.6. Поле TObject.FMaster (Мастер)

9.4.86.7. Поле TObject.FModified (Изменено)
FModified: TimeStamp required (Момент (обязательный)) (обязательно для заполнения) .

Используется для хранения значений свойства TObject.Modified (Изменено)
.


9.4.86.8. Поле TObject.FModifier (Изменено пользователем)
FModifier: TUser required domain (Пользователь) (обязательно для заполнения) .

Используется для хранения значений свойства TObject.Modifier (Изменено пользователем)
.


9.4.86.9. Поле TObject.FName (Имя)
FName: TObjectName (Имена) (обязательно для заполнения) .

Используется для хранения значений свойств:
TObject.Name (Имя)
TFormAccess.Name (Имя)
TVisualGroupAccess.Name (Имя)
TBanGroupAccess.Name (Имя)
.


9.4.86.10. Поле TObject.FOldID (Идентификатор при создании)
FOldID: TOldID (Идентификаторы при создании) (обязательно для заполнения) .

Используется для хранения значений свойства TObject.OldID (Идентификатор при создании)
.


9.4.86.11. Поле TObject.FParent (Родитель)
FParent: TParent domain (Родитель объекта) .

Используется для хранения значений свойства TObject.Parent (Родитель)
.


9.4.86.12. Поле TObject.FReader (Роль для чтения)
FReader: TAccessor domain (Роли доступа) .

Используется для хранения значений свойства TObject.Reader (Роль для чтения)
.


9.4.86.13. Поле TObject.FSourceDataBase (База данных)
FSourceDataBase: TSourceDataBase required domain (База данных) (обязательно для заполнения) .

Используется для хранения значений свойства TObject.SourceDataBase (База данных-источник)
.


9.4.86.14. Поле TObject.FWriter (Роль для записи)
FWriter: TAccessor domain (Роли доступа) .

Используется для хранения значений свойства TObject.Writer (Роль для записи)
.


9.4.86.15. Процедура TObject.Change (Изменение объекта)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Action (Действие) TChangeAction (Действие при изменении)

Скрыт

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Action (Действие) TChangeAction (Действие при изменении)

Скрыт


9.4.86.16. Процедура TObject.Destroy (Деструктор объекта)


9.4.86.17. Процедура TObject.MergeTo (Отождествить с)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
PrimaryObject (Первичный объект) TMergedObject domain (Объект для отождествления)

Доступен

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
PrimaryObject (Первичный объект) TMergedObject domain (Объект для отождествления)

Доступен


9.4.86.18. Процедура TObject.SendMessage (Отправить сообщение)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
MessageText (Текст сообщения) TObjectDescription (Наименования)

Доступен

Broadcast (Всем пользователям) Boolean (Обычное логическое)

Доступен

Addressee (Адресат) TSecurityAccount domain (Роль безопасности)

Доступен

AttachSelected (Присоединить выбранные объекты) Boolean (Обычное логическое)

Доступен

Selected (Список выбранных объектов) TList domain (Список объектов)

Скрыт

CurrentlySelected (Список выбранных)

CurrentFormView (Текущее представление формы) TFormView domain (Представления форм)

Скрыт

CurrentFormView (Текущее представление формы)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
MessageText (Текст сообщения) TObjectDescription (Наименования)

Доступен

Broadcast (Всем пользователям) Boolean (Обычное логическое)

Доступен

Addressee (Адресат) TSecurityAccount domain (Роль безопасности)

Доступен

AttachSelected (Присоединить выбранные объекты) Boolean (Обычное логическое)

Доступен

Selected (Список выбранных объектов) TList domain (Список объектов)

Скрыт

CurrentlySelected (Список выбранных)

CurrentFormView (Текущее представление формы) TFormView domain (Представления форм)

Скрыт

CurrentFormView (Текущее представление формы)


9.4.86.19. Процедура TObject.Touch (Модификация объекта)

9.4.86.20. Псевдоподпрограмма TObject.Column (Колонка)


9.4.86.21. Псевдоподпрограмма TObject.Copy (Копировать)


9.4.86.22. Псевдоподпрограмма TObject.CurrentFormView (Текущее представление формы)
Является методом класса.

Возвращает значение типа TFormView domain (Представления форм) .

Используется для инициализации значения параметра CurrentFormView (Текущее представление формы) подпрограммы TObject.SendMessage (Отправить сообщение)
.


9.4.86.23. Псевдоподпрограмма TObject.CurrentlySelected (Список выбранных)
Является методом класса.

Возвращает значение типа TList domain (Список объектов) .

Используется для инициализации значения параметра Selected (Список выбранных объектов) подпрограммы TObject.SendMessage (Отправить сообщение)
.


9.4.86.24. Псевдоподпрограмма TObject.CurrentlyVisible (Список видимых)
Является методом класса.

Возвращает значение типа TList domain (Список объектов) .


9.4.86.25. Псевдоподпрограмма TObject.Edit columns (Редактировать колонки)


9.4.86.26. Псевдоподпрограмма TObject.Edit properties (Редактировать свойства)


9.4.86.27. Псевдоподпрограмма TObject.Export (Экспортировать)


9.4.86.28. Псевдоподпрограмма TObject.Merge (Объединить)


9.4.86.29. Псевдоподпрограмма TObject.Messages (Сообщения)
Является методом класса.


9.4.86.30. Псевдоподпрограмма TObject.Options (Настройки)
Является методом класса.


9.4.86.31. Псевдоподпрограмма TObject.Paste (Вставить)


9.4.86.32. Псевдоподпрограмма TObject.Refresh (Обновить)


9.4.86.33. Псевдоподпрограмма TObject.Selection (Выбранные)


9.4.86.34. Псевдоподпрограмма TObject.Tree (Дерево)


9.4.86.35. Свойство TObject.Class (Класс)
Class: TClass required domain (Класс (обязательно)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FClass (Класс) .


9.4.86.36. Свойство TObject.Created (Создано)
Created: TimeStamp required (Момент (обязательный)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FCreated (Создано) .


9.4.86.37. Свойство TObject.Creator (Создано пользователем)
Creator: TUser required domain (Пользователь) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FCreator (Создано пользователем) .


9.4.86.38. Свойство TObject.Description (Наименование)
Description: TObjectDescription (Наименования) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TObject.FDescription (Наименование) .


9.4.86.39. Свойство TObject.Master (Мастер)
Master: TMaster domain (Объект (с каскадным удалением)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FMaster (Мастер) .


9.4.86.40. Свойство TObject.Modified (Изменено)
Modified: TimeStamp required (Момент (обязательный)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FModified (Изменено) .


9.4.86.41. Свойство TObject.Modifier (Изменено пользователем)
Modifier: TUser required domain (Пользователь) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FModifier (Изменено пользователем) .


9.4.86.42. Свойство TObject.Name (Имя)
Name: TObjectName (Имена) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TObject.FName (Имя) .


9.4.86.43. Свойство TObject.OldID (Идентификатор при создании)
OldID: TOldID (Идентификаторы при создании) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FOldID (Идентификатор при создании) .


9.4.86.44. Свойство TObject.Parent (Родитель)
Parent: TParent domain (Родитель объекта) .

Для чтения и записи свойства используется поле TObject.FParent (Родитель) .


9.4.86.45. Свойство TObject.Reader (Роль для чтения)
Reader: TAccessor domain (Роли доступа) .

Для чтения и записи свойства используется поле TObject.FReader (Роль для чтения) .


9.4.86.46. Свойство TObject.ReplicationStatus (Статус репликации)
ReplicationStatus: TReplicationStatus (Статус репликации) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TClass.FReplicationStatus (Статус репликации) .

Дочернее свойство свойства Class (Класс) .


9.4.86.47. Свойство TObject.SourceDataBase (База данных-источник)
SourceDataBase: TSourceDataBase required domain (База данных) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FSourceDataBase (База данных) .


9.4.86.48. Свойство TObject.SourceDataBaseGUID (GUID базы даных-источника)
SourceDataBaseGUID: TGUID (Уникальные идентификаторы) (обязательно для заполнения) .

Для чтения значения свойства используется поле TDataBase.FGUID (Идентификатор) .

Дочернее свойство свойства SourceDataBase (База данных-источник) .


9.4.86.49. Свойство TObject.SourceDataBaseIsCurrent (База данных-источник является текущей)
SourceDataBaseIsCurrent: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения значения свойства используется поле TDataBase.FIsCurrent (Является текущей) .

Дочернее свойство свойства SourceDataBase (База данных-источник) .


9.4.86.50. Свойство TObject.Writer (Роль для записи)
Writer: TAccessor domain (Роли доступа) .

Для чтения и записи свойства используется поле TObject.FWriter (Роль для записи) .


9.4.86.51. Функция TObject.ASCII (ASCII-код)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Char (Символ)

Скрыт

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Char (Символ)

Скрыт


9.4.86.52. Функция TObject.Assigned (Проверка пустоты значения)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TObject domain (Объект)

Доступен

Возвращает значение типа Boolean (Обычное логическое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TObject domain (Объект)

Доступен


9.4.86.53. Функция TObject.Char (Символ)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Integer (Целое)

Доступен

Возвращает значение типа Char (Символ) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Integer (Целое)

Доступен


9.4.86.54. Функция TObject.Copy (Копировать)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
String (Строка) TLongString (Длинная строка)

Доступен

StartPos (Позиция) Integer (Целое)

Доступен

Length (Длина) Integer (Целое)

Доступен

Возвращает значение типа TLongString (Длинная строка) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
String (Строка) TLongString (Длинная строка)

Доступен

StartPos (Позиция) Integer (Целое)

Доступен

Length (Длина) Integer (Целое)

Доступен


9.4.86.55. Функция TObject.DatePart (Часть даты)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TDate (Дата)

Доступен

Part (Часть) TDateTimePart (Часть даты или времени)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TDate (Дата)

Доступен

Part (Часть) TDateTimePart (Часть даты или времени)

Доступен


9.4.86.56. Функция TObject.DateTimePart (Часть даты со временем)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TimeStamp (Момент)

Доступен

Part (Часть) TDateTimePart (Часть даты или времени)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TimeStamp (Момент)

Доступен

Part (Часть) TDateTimePart (Часть даты или времени)

Доступен


9.4.86.57. Функция TObject.DateTimeToStr (Дату и время в строку)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TimeStamp required (Момент (обязательный))

Доступен

Возвращает значение типа TLongString (Длинная строка) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TimeStamp required (Момент (обязательный))

Доступен


9.4.86.58. Функция TObject.DateToStr (Дату в строку)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TDate (Дата)

Доступен

Возвращает значение типа TLongString (Длинная строка) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TDate (Дата)

Доступен


9.4.86.59. Функция TObject.DependsOn (Зависит от)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
LeadingObject (Ведущий объект) TObject domain (Объект)

Доступен

Возвращает значение типа Boolean (Обычное логическое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
LeadingObject (Ведущий объект) TObject domain (Объект)

Доступен


9.4.86.60. Функция TObject.Find (Поиск объекта)

9.4.86.61. Функция TObject.FloatToStr (Вещественное в строку)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Float (Вещественное)

Скрыт

Возвращает значение типа TLongString (Длинная строка) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Float (Вещественное)

Скрыт


9.4.86.62. Функция TObject.GetLevel (Уровень в иерархии)

Возвращает значение типа TLength (Длина) .


9.4.86.63. Функция TObject.GetRoot (Получить корень иерархии)

Возвращает значение типа TObject domain (Объект) .


9.4.86.64. Функция TObject.HasAsChild (Объект является ребенком данного)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Child (Дочерний объект) TObject domain (Объект)

Доступен

Возвращает значение типа Boolean (Обычное логическое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Child (Дочерний объект) TObject domain (Объект)

Доступен


9.4.86.65. Функция TObject.HasAsParent (Объект является родителем данного)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Parent (Родитель) TObject domain (Объект)

Доступен

Возвращает значение типа Boolean (Обычное логическое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Parent (Родитель) TObject domain (Объект)

Доступен


9.4.86.66. Функция TObject.IfThenDate (Выбор из двух дат)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) TDate (Дата)

Доступен

AFalse (Значение при невыполнении условия) TDate (Дата)

Доступен

Возвращает значение типа TDate (Дата) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) TDate (Дата)

Доступен

AFalse (Значение при невыполнении условия) TDate (Дата)

Доступен


9.4.86.67. Функция TObject.IfThenDateTime (Выбор из двух дат со временем)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) TimeStamp (Момент)

Доступен

AFalse (Значение при невыполнении условия) TimeStamp (Момент)

Доступен

Возвращает значение типа TimeStamp (Момент) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) TimeStamp (Момент)

Доступен

AFalse (Значение при невыполнении условия) TimeStamp (Момент)

Доступен


9.4.86.68. Функция TObject.IfThenFloat (Выбор из двух вещественных)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) Float (Вещественное)

Доступен

AFalse (Значение при невыполнении условия) Float (Вещественное)

Доступен

Возвращает значение типа Float (Вещественное) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) Float (Вещественное)

Доступен

AFalse (Значение при невыполнении условия) Float (Вещественное)

Доступен


9.4.86.69. Функция TObject.IfThenInt (Выбор из двух целых)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) Integer (Целое)

Доступен

AFalse (Значение при невыполнении условия) Integer (Целое)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) Integer (Целое)

Доступен

AFalse (Значение при невыполнении условия) Integer (Целое)

Доступен


9.4.86.70. Функция TObject.IfThenObject (Выбор из двух объектов)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) TObject domain (Объект)

Доступен

AFalse (Значение при невыполнении условия) TObject domain (Объект)

Доступен

Возвращает значение типа TObject domain (Объект) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) TObject domain (Объект)

Доступен

AFalse (Значение при невыполнении условия) TObject domain (Объект)

Доступен


9.4.86.71. Функция TObject.IfThenStr (Выбор из двух строк)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) TLongString (Длинная строка)

Доступен

AFalse (Значение при невыполнении условия) TLongString (Длинная строка)

Доступен

Возвращает значение типа TLongString (Длинная строка) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) TLongString (Длинная строка)

Доступен

AFalse (Значение при невыполнении условия) TLongString (Длинная строка)

Доступен


9.4.86.72. Функция TObject.IfThenTime (Выбор из двух времен)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) TTime (Время)

Доступен

AFalse (Значение при невыполнении условия) TTime (Время)

Доступен

Возвращает значение типа TTime (Время) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Boolean (Обычное логическое)

Доступен

ATrue (Значение при выполнении условия) TTime (Время)

Доступен

AFalse (Значение при невыполнении условия) TTime (Время)

Доступен


9.4.86.73. Функция TObject.IntToStr (Целое в строку)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Integer (Целое)

Доступен

Возвращает значение типа TLongString (Длинная строка) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Integer (Целое)

Доступен


9.4.86.74. Функция TObject.IsInstanceOf (Является экземпляром класса)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Class (Класс) TClass domain (Класс)

Доступен

Возвращает значение типа Boolean (Обычное логическое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Class (Класс) TClass domain (Класс)

Доступен


9.4.86.75. Функция TObject.Round (Округление)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Float (Вещественное)

Скрыт

Decimals (Клоичество десятичных знаков) Integer (Целое)

Скрыт

Возвращает значение типа Float (Вещественное) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Float (Вещественное)

Скрыт

Decimals (Клоичество десятичных знаков) Integer (Целое)

Скрыт


9.4.86.76. Функция TObject.StrLength (Длина строки)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
String (Строка) TLongString (Длинная строка)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
String (Строка) TLongString (Длинная строка)

Доступен


9.4.86.77. Функция TObject.StrToDate (Строку в дату)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TLongString (Длинная строка)

Доступен

Возвращает значение типа TDate (Дата) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TLongString (Длинная строка)

Доступен


9.4.86.78. Функция TObject.StrToDateTime (Строку в дату и время)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TLongString (Длинная строка)

Доступен

Возвращает значение типа TimeStamp required (Момент (обязательный)) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TLongString (Длинная строка)

Доступен


9.4.86.79. Функция TObject.StrToFloat (Строку в вещественное)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TLongString (Длинная строка)

Доступен

Возвращает значение типа Float (Вещественное) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TLongString (Длинная строка)

Доступен


9.4.86.80. Функция TObject.StrToInt (Строку в целое)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TLongString (Длинная строка)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TLongString (Длинная строка)

Доступен


9.4.86.81. Функция TObject.StrToTime (Строку во время)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TLongString (Длинная строка)

Доступен

Возвращает значение типа TTime (Время) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TLongString (Длинная строка)

Доступен


9.4.86.82. Функция TObject.TimePart (Часть времени)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TTime (Время)

Доступен

Part (Часть) TDateTimePart (Часть даты или времени)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TTime (Время)

Доступен

Part (Часть) TDateTimePart (Часть даты или времени)

Доступен


9.4.86.83. Функция TObject.TimeToStr (Время в строку)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TTime (Время)

Скрыт

Возвращает значение типа TLongString (Длинная строка) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) TTime (Время)

Скрыт


9.4.86.84. Функция TObject.Trunc (Отсечение дробной части)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Float (Вещественное)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Value (Значение) Float (Вещественное)

Доступен


9.4.86.85. Функция TObject.UniqueValue (Уникальный идентификатор)
Является методом класса.

Возвращает значение типа TObjectName (Имена) .


9.4.86.86. Шаблон отчета Excel TObject.Excel (Пустой шаблон Excel)
Является методом класса.


9.4.86.87. Шаблон отчета XSLT TObject.ObjectInformation (Информация об объекте)

9.4.87. Класс TObjectList (Списки)
Унаследован от класса TObject (Объекты) . Объекты могут включать в себя объекты классов:


9.4.87.1. Конструктор TObjectList.Create (Конструктор списка)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Конструирует объект класса TObjectList (Списки) .


9.4.87.2. Процедура TObjectList.Add (Добавить объект в список)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemObject (Элемент) TObject domain (Объект)

Доступен

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemObject (Элемент) TObject domain (Объект)

Доступен


9.4.87.3. Процедура TObjectList.Clear (Очистить список)


9.4.87.4. Процедура TObjectList.Delete (Удалить объект)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemObject (Элемент) TObject domain (Объект)

Доступен

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemObject (Элемент) TObject domain (Объект)

Доступен


9.4.87.5. Процедура TObjectList.Force (Добавить, игнорируя ограничения)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemObject (Элемент) TObject domain (Объект)

Доступен

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemObject (Элемент) TObject domain (Объект)

Доступен


9.4.87.6. Процедура TObjectList.SetItem (Установить объект в списке)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemIndex (Индекс) TPosition (Позиция)

Доступен

ItemObject (Элемент) TObject domain (Объект)

Доступен

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemIndex (Индекс) TPosition (Позиция)

Доступен

ItemObject (Элемент) TObject domain (Объект)

Доступен


9.4.87.7. Функция TObjectList.ByName (Поиск по имени)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Доступен


9.4.87.8. Функция TObjectList.GetItem (Получить объект из списка)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemIndex (Индекс) TPosition (Позиция)

Доступен

Возвращает значение типа TObject domain (Объект) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemIndex (Индекс) TPosition (Позиция)

Доступен


9.4.87.9. Функция TObjectList.IndexOf (Индек объекта в списке)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemObject (Элемент) TObject domain (Объект)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
ItemObject (Элемент) TObject domain (Объект)

Доступен


9.4.87.10. Функция TObjectList.Length (Длина списка)

Возвращает значение типа Integer (Целое) .


9.4.88. Класс TObjectListItem (Элементы списков)
Унаследован от класса TObject (Объекты) . Объекты класса являются составными частями объектов класса TObjectList (Списки) .


9.4.88.1. Конструктор TObjectListItem.Create (Конструктор элемента списка)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

ItemObject (Элемент) TObject domain (Объект)

Доступен

Конструирует объект класса TObjectListItem (Элементы списков) .


9.4.88.2. Поле TObjectListItem.FObject (Объект)

9.4.88.3. Поле TObjectListItem.FPosition (Позиция)
FPosition: TPosition (Позиция) (обязательно для заполнения) .


9.4.89. Класс TOleObjectMethod (Метод Ole-объекта)
Унаследован от класса TRoutine (Подпрограмма) . Объекты класса являются составными частями объектов класса TClass (Классы) .


9.4.89.1. Конструктор TOleObjectMethod.Create (Конструктор метода Ole-объекта)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

IsClassMethod (Является методом класса) Boolean (Обычное логическое)

Унаследован

Доступен

Domain (Домен результата) TDomain domain (Домен)

Унаследован

Доступен

Scope (Область видимости) TScope (Область видимости)

Унаследован

Доступен

Confirmation (Текст подтверждения) TCaption (Заголовки)

Унаследован

Доступен

UseTabs (Использовать закладки) Boolean (Обычное логическое)

Унаследован

Доступен

Script (Скрипт формы параметров) TRoutineScript (Скрипты форм параметров)

Унаследован

Доступен

Image (Изображение-иконка) TImage (Изображение)

Унаследован

Доступен

CodeLibrary (Библиотека кода) TCodeLibrary domain (Библиотека кода)

Доступен

ClassID (Идентификатор класса) TExternalIndentifier (Внешний идентификатор)

Доступен

Method (Метод) TExternalIndentifier (Внешний идентификатор)

Доступен

Конструирует объект класса TOleObjectMethod (Метод Ole-объекта) .


9.4.89.2. Поле TOleObjectMethod.FClassID (Идентификатор класса)
FClassID: TExternalIndentifier (Внешний идентификатор) .

Используется для хранения значений свойства TOleObjectMethod.ClassID (Идентификатор класса)
.


9.4.89.3. Поле TOleObjectMethod.FCodeLibrary (Библиотека кода)
FCodeLibrary: TCodeLibrary domain (Библиотека кода) .

Используется для хранения значений свойства TOleObjectMethod.CodeLibrary (Библиотека кода)
.


9.4.89.4. Поле TOleObjectMethod.FMethod (Имя метода)
FMethod: TExternalIndentifier (Внешний идентификатор) .

Используется для хранения значений свойства TOleObjectMethod.Method (Метод)
.


9.4.89.5. Свойство TOleObjectMethod.ClassID (Идентификатор класса)
ClassID: TExternalIndentifier (Внешний идентификатор) .

Для чтения и записи свойства используется поле TOleObjectMethod.FClassID (Идентификатор класса) .


9.4.89.6. Свойство TOleObjectMethod.CodeLibrary (Библиотека кода)
CodeLibrary: TCodeLibrary domain (Библиотека кода) .

Для чтения и записи свойства используется поле TOleObjectMethod.FCodeLibrary (Библиотека кода) .


9.4.89.7. Свойство TOleObjectMethod.Method (Метод)
Method: TExternalIndentifier (Внешний идентификатор) .

Для чтения и записи свойства используется поле TOleObjectMethod.FMethod (Имя метода) .


9.4.90. Класс TOption (Настройки)
Унаследован от класса TObject (Объекты) . Объекты могут включать в себя объекты классов:


9.4.90.1. Конструктор TOption.Create (Конструктор настройки)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Domain (Домен) TDomain required domain (Домен (обязательно))

Доступен

Global (Глобальная) Boolean (Обычное логическое)

Доступен

Group (Заголовок группы) TCaption (Заголовки)

Доступен

Tab (Заголовок закладки) TCaption (Заголовки)

Доступен

Position (Позиция) Integer (Целое)

Доступен

GetNextPos (Следующая позиция)

Конструирует объект класса TOption (Настройки) .


9.4.90.2. Поле TOption.FDomain (Домен)
FDomain: TDomain required domain (Домен (обязательно)) (обязательно для заполнения) .

Используется для хранения значений свойств:
TOption.Domain (Домен)
TOptionValue.Domain (Домен)
.


9.4.90.3. Поле TOption.FGlobal (Глобальная)
FGlobal: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойств:
TOption.Global (Глобальная)
TOptionValue.Global (Глобальная)
.


9.4.90.4. Поле TOption.FGroup (Заголовок группы)
FGroup: TCaption (Заголовки) .

Используется для хранения значений свойства TOption.Group (Заголовок группы)
.


9.4.90.5. Поле TOption.FPosition (Позиция)
FPosition: TPosition (Позиция) (обязательно для заполнения) .

Используется для хранения значений свойства TOption.Position (Позиция)
.


9.4.90.6. Поле TOption.FTab (Заголовок закладки)
FTab: TCaption (Заголовки) .

Используется для хранения значений свойства TOption.Tab (Заголовок закладки)
.


9.4.90.7. Процедура TOption.SetValue (Установка значения)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
StrValue (Строковое значение) TLongString (Длинная строка)

Доступен

IntValue (Целое значение) Integer (Целое)

Доступен

FloatValue (Вещественное значение) Float (Вещественное)

Доступен

DateValue (Значение даты) TDate (Дата)

Доступен

TimeValue (Значение времени) TTime (Время)

Доступен

DateTimeValue (Значение даты со временем) TimeStamp (Момент)

Доступен

ObjectValue (Значение-объект) TObject domain (Объект)

Доступен

BoolValue (Логическое значение) Non-required boolean (Необязательное логическое)

Доступен

BlobValue (Значение-большой объект) TBinaryData (Двоичные данные)

Доступен

Default (По умолчанию) Boolean (Обычное логическое)

Доступен

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
StrValue (Строковое значение) TLongString (Длинная строка)

Доступен

IntValue (Целое значение) Integer (Целое)

Доступен

FloatValue (Вещественное значение) Float (Вещественное)

Доступен

DateValue (Значение даты) TDate (Дата)

Доступен

TimeValue (Значение времени) TTime (Время)

Доступен

DateTimeValue (Значение даты со временем) TimeStamp (Момент)

Доступен

ObjectValue (Значение-объект) TObject domain (Объект)

Доступен

BoolValue (Логическое значение) Non-required boolean (Необязательное логическое)

Доступен

BlobValue (Значение-большой объект) TBinaryData (Двоичные данные)

Доступен

Default (По умолчанию) Boolean (Обычное логическое)

Доступен


9.4.90.8. Свойство TOption.Domain (Домен)
Domain: TDomain required domain (Домен (обязательно)) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TOption.FDomain (Домен) .


9.4.90.9. Свойство TOption.DomainClass (Класс домена)
DomainClass: TClass required domain (Класс (обязательно)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FClass (Класс) .

Дочернее свойство свойства Domain (Домен) .


9.4.90.10. Свойство TOption.DomainRequired (Обязательно для заполнения)
DomainRequired: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TDomain.FRequired (Обязательно для заполнения) .

Дочернее свойство свойства Domain (Домен) .


9.4.90.11. Свойство TOption.Global (Глобальная)
Global: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TOption.FGlobal (Глобальная) .


9.4.90.12. Свойство TOption.Group (Заголовок группы)
Group: TCaption (Заголовки) .

Для чтения и записи свойства используется поле TOption.FGroup (Заголовок группы) .


9.4.90.13. Свойство TOption.Position (Позиция)
Position: TPosition (Позиция) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TOption.FPosition (Позиция) .


9.4.90.14. Свойство TOption.Tab (Заголовок закладки)
Tab: TCaption (Заголовки) .

Для чтения и записи свойства используется поле TOption.FTab (Заголовок закладки) .


9.4.90.15. Свойство TOption.User (Пользователь)
User: TUser domain (Пользователь) .

Для чтения и записи свойства используется поле TOptionValue.FUser (Пользователь) .

Дочернее свойство свойства Value (Значение) .


9.4.90.16. Свойство TOption.Value (Значение)
Value: TOptionValue domain (Значение настройки) . Вычисление свойства отложено.

Для чтения значения свойства используется функция TOption.GetValue (Значение) .


9.4.90.17. Свойство TOption.VisibleValue (Видимое значение)
VisibleValue: TLongString (Длинная строка) .

Для чтения значения свойства используется функция TOptionValue.GetVisibleValue (Видимое значение) .

Дочернее свойство свойства Value (Значение) .


9.4.90.18. Функция TOption.AreValid (Настройки действительны)
Является методом класса.

Возвращает значение типа Boolean (Обычное логическое) .


9.4.90.19. Функция TOption.GetBlobValue (Значение-большой объект)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен

Возвращает значение типа TBinaryData (Двоичные данные) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен


9.4.90.20. Функция TOption.GetBoolValue (Логическое значение)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен

Возвращает значение типа Boolean (Обычное логическое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен


9.4.90.21. Функция TOption.GetDateTimeValue (Значение даты со временем)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен

Возвращает значение типа TimeStamp (Момент) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен


9.4.90.22. Функция TOption.GetDateValue (Значение даты)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен

Возвращает значение типа TDate (Дата) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен


9.4.90.23. Функция TOption.GetFloatValue (Вещественное значение)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен

Возвращает значение типа Float (Вещественное) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен


9.4.90.24. Функция TOption.GetIntValue (Целое значение)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен


9.4.90.25. Функция TOption.GetNextPos (Следующая позиция)
Является методом класса.

Возвращает значение типа Integer (Целое) .

Используется для инициализации значения параметра Position (Позиция) подпрограммы TOption.Create (Конструктор настройки)
.


9.4.90.26. Функция TOption.GetObjectValue (Значение-объект)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен

Возвращает значение типа TObject domain (Объект) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен


9.4.90.27. Функция TOption.GetStrValue (Строковое значение)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен

Возвращает значение типа TLongString (Длинная строка) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен


9.4.90.28. Функция TOption.GetTimeValue (Значение времени)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен

Возвращает значение типа TTime (Время) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
OptionName (Имя настройки) TObjectName (Имена)

Доступен


9.4.90.29. Функция TOption.GetValue (Значение)

Возвращает значение типа TOptionValue domain (Значение настройки) .

Используется для вычисления значений свойства TOption.Value (Значение)
.


9.4.91. Класс TOptionValue (Значения настроек)
Унаследован от класса TObject (Объекты) . Объекты класса являются составными частями объектов класса TOption (Настройки) .


9.4.91.1. Конструктор TOptionValue.Create (Конструктор значения настройки)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Скрыт

Description (Наименование) TObjectDescription (Наименования)

Скрыт

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

BoolValue (Логическое значение) Non-required boolean (Необязательное логическое)

Доступен

BlobValue (Значение-большой объект) TBinaryData (Двоичные данные)

Доступен

User (Пользователь) TUser domain (Пользователь)

Доступен

StrValue (Строковое значение) TLongString (Длинная строка)

Доступен

IntValue (Целое значение) Integer (Целое)

Доступен

FloatValue (Вещественное значение) Float (Вещественное)

Доступен

DateValue (Значение даты) TDate (Дата)

Доступен

TimeValue (Значение времени) TTime (Время)

Доступен

DateTimeValue (Значение даты со временем) TimeStamp (Момент)

Доступен

ObjectValue (Значение-объект) TObject domain (Объект)

Доступен

Конструирует объект класса TOptionValue (Значения настроек) .


9.4.91.2. Поле TOptionValue.FBlobValue (Значение-большой объект)
FBlobValue: TBinaryData (Двоичные данные) .

Используется для хранения значений свойства TOptionValue.BlobValue (Значение-большой объект)
.


9.4.91.3. Поле TOptionValue.FBoolValue (Логическое значение)
FBoolValue: Non-required boolean (Необязательное логическое) .

Используется для хранения значений свойства TOptionValue.BoolValue (Логическое значение)
.


9.4.91.4. Поле TOptionValue.FDateTimeValue (Значение даты со временем)
FDateTimeValue: TimeStamp (Момент) .

Используется для хранения значений свойства TOptionValue.DateTimeValue (Значение даты со временем)
.


9.4.91.5. Поле TOptionValue.FDateValue (Значение даты)
FDateValue: TDate (Дата) .

Используется для хранения значений свойства TOptionValue.DateValue (Значение даты)
.


9.4.91.6. Поле TOptionValue.FFloatValue (Вещественное значение)
FFloatValue: Float (Вещественное) .

Используется для хранения значений свойства TOptionValue.FloatValue (Вещественное значение)
.


9.4.91.7. Поле TOptionValue.FIntValue (Целое значение)
FIntValue: Integer (Целое) .

Используется для хранения значений свойства TOptionValue.IntValue (Целое значение)
.


9.4.91.8. Поле TOptionValue.FObjectValue (Значение-объект)
FObjectValue: TObject domain (Объект) .

Используется для хранения значений свойства TOptionValue.ObjectValue (Значение-объект)
.


9.4.91.9. Поле TOptionValue.FStrValue (Строковое значение)
FStrValue: TLongString (Длинная строка) .

Используется для хранения значений свойства TOptionValue.StrValue (Строковое значение)
.


9.4.91.10. Поле TOptionValue.FTimeValue (Значение времени)
FTimeValue: TTime (Время) .

Используется для хранения значений свойства TOptionValue.TimeValue (Значение времени)
.


9.4.91.11. Поле TOptionValue.FUser (Пользователь)
FUser: TUser domain (Пользователь) .

Используется для хранения значений свойств:
TOptionValue.User (Пользователь)
TOption.User (Пользователь)
.


9.4.91.12. Свойство TOptionValue.BlobValue (Значение-большой объект)
BlobValue: TBinaryData (Двоичные данные) .

Для чтения и записи свойства используется поле TOptionValue.FBlobValue (Значение-большой объект) .


9.4.91.13. Свойство TOptionValue.BoolValue (Логическое значение)
BoolValue: Non-required boolean (Необязательное логическое) .

Для чтения и записи свойства используется поле TOptionValue.FBoolValue (Логическое значение) .


9.4.91.14. Свойство TOptionValue.DateTimeValue (Значение даты со временем)
DateTimeValue: TimeStamp (Момент) .

Для чтения и записи свойства используется поле TOptionValue.FDateTimeValue (Значение даты со временем) .


9.4.91.15. Свойство TOptionValue.DateValue (Значение даты)
DateValue: TDate (Дата) .

Для чтения и записи свойства используется поле TOptionValue.FDateValue (Значение даты) .


9.4.91.16. Свойство TOptionValue.Domain (Домен)
Domain: TDomain required domain (Домен (обязательно)) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TOption.FDomain (Домен) .

Дочернее свойство свойства Option (Настройка) .


9.4.91.17. Свойство TOptionValue.FloatValue (Вещественное значение)
FloatValue: Float (Вещественное) .

Для чтения и записи свойства используется поле TOptionValue.FFloatValue (Вещественное значение) .


9.4.91.18. Свойство TOptionValue.Global (Глобальная)
Global: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TOption.FGlobal (Глобальная) .

Дочернее свойство свойства Option (Настройка) .


9.4.91.19. Свойство TOptionValue.IntValue (Целое значение)
IntValue: Integer (Целое) .

Для чтения и записи свойства используется поле TOptionValue.FIntValue (Целое значение) .


9.4.91.20. Свойство TOptionValue.IsCurrent (Является текущим)
IsCurrent: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения значения свойства используется функция TUser.GetIsCurrent (Является текущим) .

Дочернее свойство свойства User (Пользователь) .


9.4.91.21. Свойство TOptionValue.ObjectValue (Значение-объект)
ObjectValue: TObject domain (Объект) .

Для чтения и записи свойства используется поле TOptionValue.FObjectValue (Значение-объект) .


9.4.91.22. Свойство TOptionValue.Option (Настройка)
Option: TOption required domain (Настройка (обязательно)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FMaster (Мастер) .


9.4.91.23. Свойство TOptionValue.StrValue (Строковое значение)
StrValue: TLongString (Длинная строка) .

Для чтения и записи свойства используется поле TOptionValue.FStrValue (Строковое значение) .


9.4.91.24. Свойство TOptionValue.TimeValue (Значение времени)
TimeValue: TTime (Время) .

Для чтения и записи свойства используется поле TOptionValue.FTimeValue (Значение времени) .


9.4.91.25. Свойство TOptionValue.User (Пользователь)
User: TUser domain (Пользователь) .

Для чтения и записи свойства используется поле TOptionValue.FUser (Пользователь) .


9.4.91.26. Свойство TOptionValue.VisibleValue (Видимое значение)
VisibleValue: TLongString (Длинная строка) .

Для чтения значения свойства используется функция TOptionValue.GetVisibleValue (Видимое значение) .


9.4.91.27. Функция TOptionValue.GetVisibleValue (Видимое значение)

Возвращает значение типа TLongString (Длинная строка) .

Используется для вычисления значений свойств:
TOptionValue.VisibleValue (Видимое значение)
TOption.VisibleValue (Видимое значение)
.


9.4.92. Класс TParameter (Параметры)
Унаследован от класса TObject (Объекты) . Объекты класса являются составными частями объектов класса TRoutine (Подпрограмма) .


9.4.92.1. Конструктор TParameter.Create (Конструктор параметра)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Domain (Домен) TDomain required domain (Домен (обязательно))

Доступен

Position (Позиция) TPosition (Позиция)

Доступен

GetNextPos (Следующая позиция)

Group (Заголовок группы) TCaption (Заголовки)

Доступен

Tab (Заголовок закладки) TCaption (Заголовки)

Доступен

Scope (Область видимости) TScope (Область видимости)

Доступен

InitializationMember (Инициализируется членом класса) TInitializationMember domain (Член класса для инициализации)

Доступен

Конструирует объект класса TParameter (Параметры) .


9.4.92.2. Поле TParameter.FDomain (Домен)
FDomain: TDomain required domain (Домен (обязательно)) (обязательно для заполнения) .

Используется для хранения значений свойства TParameter.Domain (Домен)
.


9.4.92.3. Поле TParameter.FGroup (Заголовок группы)
FGroup: TCaption (Заголовки) .

Используется для хранения значений свойства TParameter.Group (Заголовок группы)
.


9.4.92.4. Поле TParameter.FInitializationMember (Инициализируется членом)

9.4.92.5. Поле TParameter.FOutOfTabs (За пределами закладок)

9.4.92.6. Поле TParameter.FPosition (Позиция)
FPosition: TPosition (Позиция) (обязательно для заполнения) .

Используется для хранения значений свойства TParameter.Position (Позиция)
.


9.4.92.7. Поле TParameter.FScope (Область видимости)
FScope: TScope (Область видимости) (обязательно для заполнения) .

Используется для хранения значений свойства TParameter.Scope (Область видимости)
.


9.4.92.8. Поле TParameter.FTab (Заголовок закладки)
FTab: TCaption (Заголовки) .

Используется для хранения значений свойства TParameter.Tab (Заголовок закладки)
.


9.4.92.9. Свойство TParameter.Domain (Домен)
Domain: TDomain required domain (Домен (обязательно)) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TParameter.FDomain (Домен) .


9.4.92.10. Свойство TParameter.DomainClass (Класс домена)
DomainClass: TClass required domain (Класс (обязательно)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FClass (Класс) .

Дочернее свойство свойства Domain (Домен) .


9.4.92.11. Свойство TParameter.DomainRequired (Обязательно для заполнения)
DomainRequired: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TDomain.FRequired (Обязательно для заполнения) .

Дочернее свойство свойства Domain (Домен) .


9.4.92.12. Свойство TParameter.Group (Заголовок группы)
Group: TCaption (Заголовки) .

Для чтения и записи свойства используется поле TParameter.FGroup (Заголовок группы) .


9.4.92.13. Свойство TParameter.InitializationMember (Инициализируется членом класса)
InitializationMember: TInitializationMember domain (Член класса для инициализации) .

Для чтения и записи свойства используется поле TParameter.FInitializationMember (Инициализируется членом) .


9.4.92.14. Свойство TParameter.OutOfTabs (За пределами закладок)

9.4.92.15. Свойство TParameter.Position (Позиция)
Position: TPosition (Позиция) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TParameter.FPosition (Позиция) .


9.4.92.16. Свойство TParameter.RoutineClass (Класс подпрограммы)
RoutineClass: TClass domain (Класс) .

Для чтения значения свойства используется поле TObject.FMaster (Мастер) .

Дочернее свойство свойства Master (Мастер) .


9.4.92.17. Свойство TParameter.Scope (Область видимости)
Scope: TScope (Область видимости) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TParameter.FScope (Область видимости) .


9.4.92.18. Свойство TParameter.Tab (Заголовок закладки)
Tab: TCaption (Заголовки) .

Для чтения и записи свойства используется поле TParameter.FTab (Заголовок закладки) .


9.4.92.19. Функция TParameter.GetNextPos (Следующая позиция)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Master (Мастер) TObject domain (Объект)

Доступен

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Master (Мастер) TObject domain (Объект)

Доступен

Используется для инициализации значения параметра Position (Позиция) подпрограммы TParameter.Create (Конструктор параметра)
.


9.4.93. Класс TProperty (Свойства)
Унаследован от класса TClassMember (Члены класса) . Объекты класса связаны иерархически. Объекты класса являются составными частями объектов класса TClass (Классы) .


9.4.93.1. Конструктор TProperty.Create (Конструктор свойства)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Domain (Домен) TDomain required domain (Домен (обязательно))

Доступен

ReadMember (Член класса для чтения) TReadMember domain (Член класса для чтения)

Доступен

WriteMember (Член класса для записи) TWriteMember domain (Член класса для записи)

Доступен

Scope (Область видимости) TScope (Область видимости)

Доступен

IsExportable (Для экспорта) Boolean (Обычное логическое)

Доступен

Category (Категория) TCaption (Заголовки)

Доступен

Position (Позиция) TPosition (Позиция)

Доступен

GetNextPos (Следующая позиция)

IsSuspended (Отложенное) Boolean (Обычное логическое)

Доступен

Конструирует объект класса TProperty (Свойства) .


9.4.93.2. Поле TProperty.FCategory (Категория)
FCategory: TCaption (Заголовки) .

Используется для хранения значений свойства TProperty.Category (Категория)
.


9.4.93.3. Поле TProperty.FDomain (Домен)
FDomain: TDomain required domain (Домен (обязательно)) (обязательно для заполнения) .

Используется для хранения значений свойства TProperty.Domain (Домен)
.


9.4.93.4. Поле TProperty.FIsExportable (Эскпортируется)
FIsExportable: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TProperty.IsExportable (Для экспорта)
.


9.4.93.5. Поле TProperty.FIsSuspended (Отложенное)
FIsSuspended: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TProperty.IsSuspended (Отложенное)
.


9.4.93.6. Поле TProperty.FPosition (Позиция)
FPosition: TPosition (Позиция) (обязательно для заполнения) .

Используется для хранения значений свойства TProperty.Position (Позиция)
.


9.4.93.7. Поле TProperty.FReadMember (Член класса для чтения)
FReadMember: TReadMember domain (Член класса для чтения) .

Используется для хранения значений свойства TProperty.ReadMember (Член класса для чтения)
.


9.4.93.8. Поле TProperty.FScope (Область видимости)
FScope: TScope (Область видимости) (обязательно для заполнения) .

Используется для хранения значений свойства TProperty.Scope (Область видимости)
.


9.4.93.9. Поле TProperty.FWriteMember (Член класса для записи)
FWriteMember: TWriteMember domain (Член класса для записи) .

Используется для хранения значений свойства TProperty.WriteMember (Член класса для записи)
.


9.4.93.10. Процедура TProperty.Change (Изменение объекта)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Action (Действие) TChangeAction (Действие при изменении)

Унаследован

Скрыт

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Action (Действие) TChangeAction (Действие при изменении)

Унаследован

Скрыт


9.4.93.11. Процедура TProperty.CreateChildren (Создать дочерние свойства)


9.4.93.12. Свойство TProperty.Category (Категория)
Category: TCaption (Заголовки) .

Для чтения и записи свойства используется поле TProperty.FCategory (Категория) .


9.4.93.13. Свойство TProperty.Domain (Домен)
Domain: TDomain required domain (Домен (обязательно)) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TProperty.FDomain (Домен) .


9.4.93.14. Свойство TProperty.DomainClass (Класс домена)
DomainClass: TClass required domain (Класс (обязательно)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TObject.FClass (Класс) .

Дочернее свойство свойства Domain (Домен) .


9.4.93.15. Свойство TProperty.DomainRequired (Обязательно для заполнения)
DomainRequired: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TDomain.FRequired (Обязательно для заполнения) .

Дочернее свойство свойства Domain (Домен) .


9.4.93.16. Свойство TProperty.IsExportable (Для экспорта)
IsExportable: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TProperty.FIsExportable (Эскпортируется) .


9.4.93.17. Свойство TProperty.IsSuspended (Отложенное)
IsSuspended: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TProperty.FIsSuspended (Отложенное) .


9.4.93.18. Свойство TProperty.Position (Позиция)
Position: TPosition (Позиция) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TProperty.FPosition (Позиция) .


9.4.93.19. Свойство TProperty.ReadMember (Член класса для чтения)
ReadMember: TReadMember domain (Член класса для чтения) .

Для чтения и записи свойства используется поле TProperty.FReadMember (Член класса для чтения) .


9.4.93.20. Свойство TProperty.Scope (Область видимости)
Scope: TScope (Область видимости) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TProperty.FScope (Область видимости) .


9.4.93.21. Свойство TProperty.WriteMember (Член класса для записи)
WriteMember: TWriteMember domain (Член класса для записи) .

Для чтения и записи свойства используется поле TProperty.FWriteMember (Член класса для записи) .


9.4.93.22. Функция TProperty.GetNextPos (Следующая позиция)
Является методом класса.

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Master (Мастер) TObject domain (Объект)

Доступен

Parent (Родитель) TParent domain (Родитель объекта)

Доступен

Parent (Родитель)

Возвращает значение типа Integer (Целое) .

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Master (Мастер) TObject domain (Объект)

Доступен

Parent (Родитель) TParent domain (Родитель объекта)

Доступен

Parent (Родитель)

Используется для инициализации значения параметра Position (Позиция) подпрограммы TProperty.Create (Конструктор свойства)
.


9.4.94. Класс TPropertyBan (Запрет на свойство)
Унаследован от класса TBanGroupItem (Элементы группы запретов) . Объекты класса являются составными частями объектов класса TBanGroup (Группы запретов) .


9.4.94.1. Конструктор TPropertyBan.Create (Конструктор запрета на свойство)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Скрыт

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Скрыт

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

BannedClass (Запрещаемый класс) TClass required cascade domain (Класс (с каскадным удалением))

Доступен

BannedProperty (Запрещаемое свойство) TBannedProperty domain (Свойство для запрета)

Доступен

AllowRead (Чтение разрешено) Boolean (Обычное логическое)

Доступен

Конструирует объект класса TPropertyBan (Запрет на свойство) .


9.4.94.2. Поле TPropertyBan.FAllowRead (Чтение разрешено)
FAllowRead: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TPropertyBan.AllowRead (Чтение разрешено)
.


9.4.94.3. Поле TPropertyBan.FBannedClass (Запрещенный класс)
FBannedClass: TClass required cascade domain (Класс (с каскадным удалением)) (обязательно для заполнения) .

Используется для хранения значений свойства TPropertyBan.BannedClass (Запрещаемый класс)
.


9.4.94.4. Поле TPropertyBan.FBannedProperty (Запрещенное свойство)
FBannedProperty: TBannedProperty domain (Свойство для запрета) (обязательно для заполнения) .

Используется для хранения значений свойства TPropertyBan.BannedProperty (Запрещаемое свойство)
.


9.4.94.5. Свойство TPropertyBan.AllowRead (Чтение разрешено)
AllowRead: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TPropertyBan.FAllowRead (Чтение разрешено) .


9.4.94.6. Свойство TPropertyBan.BannedClass (Запрещаемый класс)
BannedClass: TClass required cascade domain (Класс (с каскадным удалением)) (обязательно для заполнения) .

Для чтения значения свойства используется поле TPropertyBan.FBannedClass (Запрещенный класс) .


9.4.94.7. Свойство TPropertyBan.BannedProperty (Запрещаемое свойство)
BannedProperty: TBannedProperty domain (Свойство для запрета) (обязательно для заполнения) .

Для чтения значения свойства используется поле TPropertyBan.FBannedProperty (Запрещенное свойство) .


9.4.95. Класс TRole (Роли)
Унаследован от класса TSecurityAccount (Роли безопасности) . Объекты могут включать в себя объекты классов:


9.4.95.1. Конструктор TRole.Create (Конструктор роли)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

Конструирует объект класса TRole (Роли) .


9.4.95.2. Свойство TRole.IsCurrent (Является текущей)
IsCurrent: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения значения свойства используется функция TRole.GetIsCurrent (Является текущей) .


9.4.95.3. Функция TRole.GetIsCurrent (Является текущей)

Возвращает значение типа Boolean (Обычное логическое) .

Используется для вычисления значений свойства TRole.IsCurrent (Является текущей)
.


9.4.96. Класс TRoleMember (Пользователи в ролях)
Унаследован от класса TObject (Объекты) . Объекты класса являются составными частями объектов класса TRole (Роли) .


9.4.96.1. Конструктор TRoleMember.Create (Конструктор члена роли)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Скрыт

Description (Наименование) TObjectDescription (Наименования)

Скрыт

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Роль) TMaster domain (Объект (с каскадным удалением))

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

User (Пользователь) TUser required domain (Пользователь)

Доступен

User (Пользователь)

IsPrimary (Основная роль) Boolean (Обычное логическое)

Доступен

Конструирует объект класса TRoleMember (Пользователи в ролях) .


9.4.96.2. Поле TRoleMember.FIsPrimary (Основная роль)
FIsPrimary: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TRoleMember.IsPrimary (Основная роль)
.


9.4.96.3. Поле TRoleMember.FUser (Пользователь)
FUser: TUser required domain (Пользователь) (обязательно для заполнения) .

Используется для хранения значений свойства TRoleMember.User (Пользователь)
.


9.4.96.4. Процедура TRoleMember.SetIsPrimary (Установка значения свойства "Является основной")

9.4.96.5. Свойство TRoleMember.IsPrimary (Основная роль)
IsPrimary: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TRoleMember.FIsPrimary (Основная роль) .


9.4.96.6. Свойство TRoleMember.User (Пользователь)
User: TUser required domain (Пользователь) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TRoleMember.FUser (Пользователь) .


9.4.96.7. Свойство TRoleMember.UserClass (Класс члена роли)

9.4.97. Класс TRoutine (Подпрограмма)
Унаследован от класса TClassMember (Члены класса) . Объекты класса являются составными частями объектов класса TClass (Классы) . Объекты могут включать в себя объекты классов:


9.4.97.1. Конструктор TRoutine.Create (Конструктор подпрограммы)

Параметры:
ПараметрТипПримечаниеВидимостьСвязанное свойство
Name (Имя) TObjectName (Имена)

Унаследован

Доступен

Name (Имя)

Description (Наименование) TObjectDescription (Наименования)

Унаследован

Доступен

Description (Наименование)

Class (Класс) TClass domain (Класс)

Унаследован

Доступен

Class (Класс)

Parent (Родитель) TParent domain (Родитель объекта)

Унаследован

Доступен

Parent (Родитель)

Master (Мастер) TMaster domain (Объект (с каскадным удалением))

Унаследован

Доступен

Master (Мастер)

Accessor (Роль доступа) TAccessor domain (Роли доступа)

Унаследован

Скрыт

IsClassMethod (Является методом класса) Boolean (Обычное логическое)

Доступен

Domain (Домен результата) TDomain domain (Домен)

Доступен

Scope (Область видимости) TScope (Область видимости)

Доступен

Confirmation (Текст подтверждения) TCaption (Заголовки)

Доступен

UseTabs (Использовать закладки) Boolean (Обычное логическое)

Доступен

Script (Скрипт формы параметров) TRoutineScript (Скрипты форм параметров)

Доступен

Image (Изображение-иконка) TImage (Изображение)

Доступен

Конструирует объект класса TRoutine (Подпрограмма) .


9.4.97.2. Поле TRoutine.FConfirmation (Текст подтверждения)
FConfirmation: TCaption (Заголовки) .

Используется для хранения значений свойства TRoutine.Confirmation (Текст подтверждения)
.


9.4.97.3. Поле TRoutine.FDomain (Домен результата)
FDomain: TDomain domain (Домен) .

Используется для хранения значений свойства TRoutine.Domain (Домен результата)
.


9.4.97.4. Поле TRoutine.FImage (Изображеие-иконка)
FImage: TImage (Изображение) .

Используется для хранения значений свойства TRoutine.Image (Изображение-иконка)
.


9.4.97.5. Поле TRoutine.FIsClassMethod (Является методом класса)
FIsClassMethod: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TRoutine.IsClassMethod (Является методом класса)
.


9.4.97.6. Поле TRoutine.FScope (Область видимости)
FScope: TScope (Область видимости) (обязательно для заполнения) .

Используется для хранения значений свойства TRoutine.Scope (Область видимости)
.


9.4.97.7. Поле TRoutine.FScript (Скрипт формы)
FScript: TRoutineScript (Скрипты форм параметров) .

Используется для хранения значений свойства TRoutine.Script (Скрипт формы параметров)
.


9.4.97.8. Поле TRoutine.FUseTabs (Использовать закладки)
FUseTabs: Boolean (Обычное логическое) (обязательно для заполнения) .

Используется для хранения значений свойства TRoutine.UseTabs (Использовать закладки)
.


9.4.97.9. Свойство TRoutine.Confirmation (Текст подтверждения)
Confirmation: TCaption (Заголовки) .

Для чтения и записи свойства используется поле TRoutine.FConfirmation (Текст подтверждения) .


9.4.97.10. Свойство TRoutine.Domain (Домен результата)
Domain: TDomain domain (Домен) .

Для чтения и записи свойства используется поле TRoutine.FDomain (Домен результата) .


9.4.97.11. Свойство TRoutine.Image (Изображение-иконка)
Image: TImage (Изображение) .

Для чтения и записи свойства используется поле TRoutine.FImage (Изображеие-иконка) .


9.4.97.12. Свойство TRoutine.IsClassMethod (Является методом класса)
IsClassMethod: Boolean (Обычное логическое) (обязательно для заполнения) .

Для чтения и записи свойства используется поле TRoutine.FIsClassMethod (Являет