Ananas Library  0.9.5
Открытые слоты | Открытые члены | Полный список членов класса
Класс AExtMeta

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

#include <aext_meta.h>

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

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

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)
 Возвращает идентификатор объекта метаданных по его полному имени. Подробнее...
 
int GetId (aObject *obj)
 Возвращает идентификатор объекта . Подробнее...
 
QStringList GetUserFields (QString name, QString table=QString::null)
 Возвращает список пользовательских полей об екта Подробнее...
 
QStringList GetUserFields (aObject *obj, QString table=QString::null)
 Возвращает список пользовательских полей об екта Подробнее...
 
QString GetAttrType (QString name, QString attr, QString table=QString::null)
 Возвращает тип пользовательского поля объекта Подробнее...
 
QString GetAttrType (aObject *obj, QString attr, QString table=QString::null)
 Возвращает тип пользовательского поля объекта Подробнее...
 

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

 AExtMeta ()
 
 ~AExtMeta ()
 
- Открытые члены inherited from AExtension
 AExtension (const char *name=0)
 
virtual int init (aDatabase *dbo)
 

Additional Inherited Members

- Сигналы inherited from AExtension
void event (const QString &data)
 
- Открытые атрибуты inherited from AExtension
aDatabasedb
 

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

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

    Пример использования функций 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 ( )

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

Методы

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

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

    Имя класса может быть, например, "catalogue", "document".
    \param className - Имя класса
    \return количество бизнес объектов

    Пример использования
* meta = new Meta();
*

Перекрестные ссылки aDatabase::cfg, aCfg::count() и aCfg::find().

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

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

    TODO: Требуется проверить возможность передачи возвращаемого значения в Скрипт. Возможно списки и не поддерживаются.
    \param className - Имя базового типа, может принимать значения "Catalogue", "Document", "Journal".

Если значение не задано - возвращаются все подтипы всех базовых типов.

Возвращает
Список названий подтипов. Имя подтипа состоит из уникального идентификатора в бизнес схеме в виде "O XXX" и отделенного символом табуляции пользовательского названия типа. Например "O 115\tСправочник.Справочник Контрагентов"

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

* meta = new Meta();
*

Перекрестные ссылки aDatabase::cfg, aLog::print() и aCfg::types().

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

QString AExtMeta::GetAttrType ( QString  name,
QString  attr,
QString  table = QString::null 
)
slot

Возвращает тип пользовательского поля объекта

    \param name - Полное имя объекта, см описание GetId()
    \param attr - название атрибута
    \param table - необязательный, таблица объекта (для документов)
    \return тип атрибута, например "O 115"

    Пример использования
* meta = new Meta();
* type = meta.GetAttrType("Catalogue.Товары", "Наименование");
*

Перекрестные ссылки aCfg::attr(), aDatabase::cfg, aCfg::find(), GetId(), aCfg::id() и aCfg::objTable().

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

QString AExtMeta::GetAttrType ( aObject aobj,
QString  attr,
QString  table = QString::null 
)
slot

Возвращает тип пользовательского поля объекта

    \param obj - объект, тип атрибута которого надо получить
    \param attr - название атрибута
    \param table - необязательный, таблица объекта (для документов)
    \return тип атрибута, например "O 115"

    Пример использования
* cat = new Catalogue("Номенклатура");
* meta = new Meta();
* type = meta.GetAttrType(cat, "Наименование");
*

Перекрестные ссылки aCfg::attr(), aDatabase::cfg и GetAttrType().

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

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

    Имя базового класса может быть, например "catalogue", "document", "aregister", "iregister","journal", "report".
    \param id - идентификатор класса в метаданных
    \return имя базового класса в бизнес схеме

    Пример использования
* meta = new Meta();
* sys.Message(0,"id=129, Base class name = "+meta.GetBaseClassName(129));
*
См. также
GetClassName(...)

Перекрестные ссылки aDatabase::cfg и aCfg::objClass().

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

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

    Имя базового класса может быть, например "catalogue", "document", "aregister", "iregister","journal", "report".
    \param id - уникальный идентификатор бизнес обхъекта в базе данных
    \return имя базового класса в бизнес схеме

    Пример использования
* meta = new Meta();
* sys.Message(0,"uid=6, base class name ="+meta.GetBaseClassNameByObjectUid(6));
*
См. также
GetClassNameByObjectUid(...)

Перекрестные ссылки aDatabase::cfg, aCfg::objClass() и aDatabase::uidType().

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

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

    Имя класса может быть например "Справочник товаров", "Справочник счетов".
    \param id - идентификатор класса в метаданных
    \return имя класса в бизнес схеме

    Пример использования
* meta = new Meta();
* sys.Message(0,"id=129, Class name = "+meta.GetClassName(129));
*
См. также
GetBaseClassName(...)

Перекрестные ссылки aCfg::attr(), aDatabase::cfg и aCfg::find().

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

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

    Имя класса может быть например "Справочник товаров", "Справочник счетов".
    \param id - уникальный идентификатор бизнес объекта в базе данных
    \return имя класса в бизнес схеме

    Пример использования
* meta = new Meta();
* sys.Message(0,"uid=6, class name ="+meta.GetClassNameByObjectUid(6));
*
См. также
GetBaseClassNameByObjectUid(...)

Перекрестные ссылки aCfg::attr(), aDatabase::cfg, aCfg::find() и aDatabase::uidType().

int AExtMeta::GetId ( QString &  name)
slot

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

    Предназначен для использования в бизнес схеме "Бухучет" при оперировании разрезами проводок.

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

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

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

* meta = new Meta();
* SparvochnikTovarovID = meta.GetId("Catalogue.Товары");
*

Перекрестные ссылки aDatabase::cfg и aCfg::getId().

Используется в GetAttrType() и GetUserFields().

int AExtMeta::GetId ( aObject obj)
slot

Возвращает идентификатор объекта .

    \param obj - объект, идентификатор которого надо получить
    \return Уникальный идентификатор объекта метаданных

    Пример использования
* cat = new Catalogue("Номенклатура");
* meta = new Meta();
* SparvochnikTovarovID = meta.GetId(cat);
*

Перекрестные ссылки aDatabase::cfg и aCfg::id().

QStringList AExtMeta::GetUserFields ( QString  name,
QString  table = QString::null 
)
slot

Возвращает список пользовательских полей об екта

    \param name - Полное имя объекта, см описание GetId()
    \return Список польховательских полей или пустой список.

    Пример использования
* meta = new Meta();
* list = meta.GetUserFields("Catalogue.Товары");
*

Перекрестные ссылки aCfg::attr(), aDatabase::cfg, aCfg::count(), aCfg::find(), GetId(), aCfg::id() и aCfg::objTable().

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

QStringList AExtMeta::GetUserFields ( aObject aobj,
QString  table = QString::null 
)
slot

Возвращает список пользовательских полей об екта

    \param obj - объект, идентификатор которого надо получить
    \return Список польховательских полей или пустой список.

    Пример использования
* cat = new Catalogue("Номенклатура");
* meta = new Meta();
* list = meta.GetUserFields(cat);
*

Перекрестные ссылки aCfg::attr(), aDatabase::cfg и GetUserFields().

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

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

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

 \param className - Имя базового типа, может принимать значения "Catalogue", "Document", "Journal".

Если значение не задано - возвращаются все подтипы всех базовых типов.

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

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


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