Класс AExtMeta

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

#include <aext_meta.h>

Граф наследования:AExtMeta:

Полный список членов класса

Открытые слоты

QString GetBaseClassName (const long &ClassId)
 Возвращает имя базового класса бизнес объекта по идентификатору класса, присвоенному классу в метаданных.
QString GetClassName (const long &ClassId)
 Возвращает имя класса бизнес объекта по идентификатору класса, присвоенному классу в метаданных.
QString GetBaseClassNameByObjectUid (const long &ObjectUid)
 Возвращает имя базового класса бизнес объекта по уникальному идентификатору бизнес объекта в базе данных.
QString GetClassNameByObjectUid (const long &ObjectUid)
 Возвращает имя класса бизнес объекта по уникальному идентификатору бизнес объекта в базе данных.
int CountByClassName (const QString &className)
 Возвращает количество бизнес объектов указанного класса в бизнес схеме.
QStringList DataTypes (const QString &className=NULL)
 Возвращает список подтипов одного или всех базовых типов бизнес схемы.
QString StringOfDataTypes (const QString &className=NULL, const QString &separator=":")
 Возвращает строку со списоком подтипов базовых типов.
int GetId (QString &name)
 Возвращает идентификатор объекта метаданных по его полному имени.

Открытые члены

 AExtMeta ()
 ~AExtMeta ()


Подробное описание

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

Пример использования функций GetBaseClassName, GetClassName, GetBaseClassNameByObjectUid, GetClassNameByObjectUid

        meta = new Meta();
        sys.Message(0,"class id = 129, base class name ="+meta.GetBaseClassName(129));
        sys.Message(0,"class id =129, class name ="+meta.GetClassName(129));
        sys.Message(0,"uid=6, base class name ="+meta.GetBaseClassNameByObjectUid(6));
        sys.Message(0,"uid=6, class name ="+meta.GetClassNameByObjectUid(6));

Конструктор(ы)

AExtMeta::AExtMeta (  ) 

Создает объект.

AExtMeta::~AExtMeta (  ) 

Уничтожает объект.


Методы

QString AExtMeta::GetBaseClassName ( const long &  id  )  [slot]

Возвращает имя базового класса бизнес объекта по идентификатору класса, присвоенному классу в метаданных.

Имя базового класса может быть, например "catalogue", "document", "aregister", "iregister","journal", "report".

Аргументы:
id - идентификатор класса в метаданных
Возвращает:
имя базового класса в бизнес схеме
Пример использования
        meta = new Meta();
        sys.Message(0,"id=129, Base class name = "+meta.GetBaseClassName(129));

См. также:
GetClassName(...)

QString AExtMeta::GetClassName ( const long &  id  )  [slot]

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

Имя класса может быть например "Справочник товаров", "Справочник счетов".

Аргументы:
id - идентификатор класса в метаданных
Возвращает:
имя класса в бизнес схеме
Пример использования
        meta = new Meta();
        sys.Message(0,"id=129, Class name = "+meta.GetClassName(129));

См. также:
GetBaseClassName(...)

QString AExtMeta::GetBaseClassNameByObjectUid ( const long &  id  )  [slot]

Возвращает имя базового класса бизнес объекта по уникальному идентификатору бизнес объекта в базе данных.

Имя базового класса может быть, например "catalogue", "document", "aregister", "iregister","journal", "report".

Аргументы:
id - уникальный идентификатор бизнес обхъекта в базе данных
Возвращает:
имя базового класса в бизнес схеме
Пример использования
        meta = new Meta();
        sys.Message(0,"uid=6, base class name ="+meta.GetBaseClassNameByObjectUid(6));
См. также:
GetClassNameByObjectUid(...)

QString AExtMeta::GetClassNameByObjectUid ( const long &  id  )  [slot]

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

Имя класса может быть например "Справочник товаров", "Справочник счетов".

Аргументы:
id - уникальный идентификатор бизнес объекта в базе данных
Возвращает:
имя класса в бизнес схеме
Пример использования
        meta = new Meta();
        sys.Message(0,"uid=6, class name ="+meta.GetClassNameByObjectUid(6));
См. также:
GetBaseClassNameByObjectUid(...)

int AExtMeta::CountByClassName ( const QString &  className  )  [slot]

Возвращает количество бизнес объектов указанного класса в бизнес схеме.

Имя класса может быть, например, "catalogue", "document".

Аргументы:
className - Имя класса
Возвращает:
количество бизнес объектов
Пример использования
        meta = new Meta();

QStringList AExtMeta::DataTypes ( const QString &  filter = NULL  )  [slot]

Возвращает список подтипов одного или всех базовых типов бизнес схемы.

TODO: Требуется проверить возможность передачи возвращаемого значения в Скрипт. Возможно списки и не поддерживаются.

Аргументы:
className - Имя базового типа, может принимать значения "Catalogue", "Document", "Journal". Если значение не задано - возвращаются все подтипы всех базовых типов.
Возвращает:
Список названий подтипов. Имя подтипа состоит из уникального идентификатора в бизнес схеме в виде "O XXX" и отделенного символом табуляции пользовательского названия типа. Например "O 115\tСправочник.Справочник Контрагентов"
Пример использования
        meta = new Meta();

Перекрестные ссылки aLog::print().

Используется в StringOfDataTypes().

QString AExtMeta::StringOfDataTypes ( const QString &  className = NULL,
const QString &  separator = ":" 
) [slot]

Возвращает строку со списоком подтипов базовых типов.

Вспомогательная функция. Предназначена для использования из QSA, который не умеет получать список строк в качестве возвращаемого значения. Смотри DataTypes().

Аргументы:
className - Имя базового типа, может принимать значения "Catalogue", "Document", "Journal". Если значение не задано - возвращаются все подтипы всех базовых типов.
separator - Символ или строка, используемая в качестве разделителя элементов строки. По умолчанию - двоеточие ":".
Возвращает:
Строку с названиями подтипов, разделенными значением, переданным в параметре separator Имя подтипа состоит из уникального идентификатора в бизнес схеме в виде "O XXX" и отделенного символом табуляции пользовательского названия типа.
Пример использования
        meta = new Meta();
  names = meta.StringOfDataTypes("Catalogue"); // Возвращает строку с названиями имеющихся в бизнес схеме справочников
        // например "Неизвестный:O 101 Справочник.Справочник счетов:O 115 Справочник.Справочник Контрагентов:O 201 Справочник.Справочник операций:O 304 Справочник.Номенклатура товаров"

Перекрестные ссылки DataTypes().

int AExtMeta::GetId ( QString &  name  )  [slot]

Возвращает идентификатор объекта метаданных по его полному имени.

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

Аргументы:
name - Полное имя объекта, например, "catalogue.Товары", "document.ПКО". Первая часть полного имени - это базовый тип. Допустимы значения базовых типов: Catalogue, Document, DocJournal, Report, InfoRegister, AccumulationRegister
Возвращает:
Уникальный идентификатор объекта метаданных
Пример использования
        meta = new Meta();
  SparvochnikTovarovID = meta.GetId("Catalogue.Товары"); 


Объявления и описания членов классов находятся в файлах:

Документация по Ananas Library. Последние изменения: Mon Jul 14 11:53:55 2008. Создано системой  doxygen 1.5.5