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

Класс aIRegister определяет программный интерфейс Информационных регистров. Подробнее...

Граф наследования:aIRegister:
aObject aARegister

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

virtual int SetDocument (aDocument *doc)
 Отфильтровывает записи регистра, принадлежащие документу. Подготовливает регистр для добавления записи функцией New. Подробнее...
 
virtual aDocumentGetDocument ()
 Возвращает документ, на основании которого была сделана текущая запись регистра. Подробнее...
 
virtual int SetTable (const QString &tblname)
 Задает табличную часть документа для использования при добавдении новых записей регистра методом New. Подробнее...
 
virtual int New ()
 Добавляет новую строку к таблице информационного регистра. Подробнее...
 
virtual int Select (const QString &from, const QString &to)
 Выбирает записи в информационном регистре за заданный период. Подробнее...
 
virtual int Select (QDateTime from, QDateTime to)
 Выбирает записи в информационном регистре за заданный период. Подробнее...
 
virtual int SelectByDoc ()
 Выбирает первую запись регистра по документу, установленному перед этим функцией SetDocument( aDocument * doc ). Подробнее...
 
virtual QVariant Value (const QString &name, const QString &tableName="")
 Возвращает значения поля с именем = name основной таблицы объекта. Подробнее...
 
virtual int SetFilter (const QString &fieldName, const QVariant &value)
 Устанавливает фильтр на записи регистра. Подробнее...
 
virtual bool Next ()
 Переход к следующей записи регистра.
 
virtual bool Prev ()
 Переход к предыдущей записи регистра.
 
virtual bool First ()
 Переход к первой записи регистра.
 
virtual bool Last ()
 Переход к последней записи регистра.
 
- Открытые слоты inherited from aObject
virtual QString Uid ()
 Возвращает уникальный идентификатор объекта из базы данных. Подробнее...
 
virtual bool IsSelected ()
 Checks if object selected. Подробнее...
 
virtual bool IsMarkDeleted (const QString &tname="")
 Checks "Deleted" marker. Подробнее...
 
virtual bool IsMarked ()
 Checks "Marked" marker. Подробнее...
 
virtual int SetMarkDeleted (bool Deleted, const QString &tablename="")
 Устанавливает признак логического удаления объекта (записи SQL таблицы) Подробнее...
 
virtual int SetMarked (bool Marked)
 Выставляет отметку на объекте. Подробнее...
 
virtual int New ()
 Add new object record in database. Подробнее...
 
virtual int Copy ()
 Создает новый объект, являющийся клоном текущего объекта. Подробнее...
 
virtual int Delete ()
 Удаляет текущий объект из базы данных. Подробнее...
 
virtual int Update ()
 Обновляет запись в базе данных текущеми значениями. Подробнее...
 
virtual int Conduct ()
 Проводит документ. Подробнее...
 
virtual int UnConduct ()
 Отменяет проведение документа. Подробнее...
 
virtual bool IsConducted ()
 Проверяет проведен ли документ. Подробнее...
 
virtual QString Kind (const QString &name=QString::null)
 Вид объекта, так как он описан в метаданных.
 
virtual QVariant Value (const QString &name, const QString &tableName="")
 Return field value of the primary object database table. Подробнее...
 
virtual int SetValue (const QString &name, const QVariant &value, const QString &tableName="")
 Set field value of the primary object database table. Подробнее...
 
virtual QVariant sysValue (const QString &name, const QString &tableName="")
 Gets system field value. Подробнее...
 
virtual int setSysValue (const QString &name, QVariant value, const QString &tableName="")
 Sets system field value. Подробнее...
 
virtual int SetFilter (const QString &valname, const QVariant &value)
 Задает фильтр записей/объектов
 
virtual int ClearFilter ()
 Чистит фильтр записей/объектов. Подробнее...
 
virtual int TableSetFilter (const QString &tname, const QString &valname, const QVariant &value)
 Устанавливает вильтр записей табличной части объекта. Подробнее...
 
virtual int TableClearFilter (const QString &tname)
 Чистит фильтр записей указанной табличной части объекта. Подробнее...
 
virtual bool IsFiltred ()
 Показывает наличие активного фильтра
 
virtual int TableUpdate (const QString &tablename)
 Обновляет базу данных данными табличной части объекта. Подробнее...
 
virtual QString displayString ()
 Возвращает строку, предназначенную для отображения пользователю объекта сложного типа. Подробнее...
 
virtual int LastErrorCode ()
 Возвращает код последней ошибки. Подробнее...
 
virtual QString LastErrorMessage ()
 Возвращает сообщение, поясняющее последнюю ошибку. Подробнее...
 

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

 aIRegister (aCfgItem registerItem, aDatabase *adb=0)
 Создает новый экземпляр объекта информационного регистра по описанию в бизнес схеме. Подробнее...
 
 aIRegister (const QString &name, aDatabase *adb=0, const QString &type="InfoRegister.")
 Создает новый экземпляр объекта информационного регистра по имени. Подробнее...
 
virtual ~aIRegister ()
 
virtual ERR_Code initObject ()
 Инициализирует объект информационного регистра. Подробнее...
 
virtual bool deleteDocument (aDocument *doc)
 Удаляет все записи с идентификатором данного документа из всех информационных регистров. Подробнее...
 
virtual bool deleteTable (Q_ULLONG iddt)
 Удаляет все записи из всех информационных регистрах о таблице с данным идентификатором Подробнее...
 
- Открытые члены inherited from aObject
 aObject (QObject *parent=0, const char *name=0)
 Конструктор для создания абстрактного объекта. Подробнее...
 
 aObject (const QString &oname, aDatabase *adb, QObject *parent=0, const char *name=0)
 Создает объект как модель данных, описанную в метаданных. Подробнее...
 
 aObject (aCfgItem context, aDatabase *adb, QObject *parent=0, const char *name=0)
 Создает объект как модель данных, описанную в метаданных. Подробнее...
 
virtual ~aObject ()
 Виртуальный деструктор
 
virtual bool checkStructure ()
 Not implemented. Подробнее...
 
ERR_Code init ()
 Вспомогоательный метод. Проверяет необходимость вызова метода initObject() и вызывает его. Подробнее...
 
ERR_Code decodeDocNum (QString nm, QString &pref, int &num)
 Осуществляет выделение символьного префикса из строки. Подробнее...
 
virtual ERR_Code select (Q_ULLONG id)
 Позиционирует указатель в БД на запись, соотвествующую объекту с указанным идентификатором. Подробнее...
 
Q_ULLONG getUid ()
 Возвращает уникальный идентификатор объекта из базы данных. Подробнее...
 
bool selected (const QString &tablename="")
 Показывает задан ли текущий объект или запись в его табличной части. Подробнее...
 
ERR_Code select (const QString &query, const QString &tableName="")
 Осуществляет SQL запрос. Подробнее...
 
aDataTabletable (const QString &name="")
 Возвращает одну из таблиц бизнес-объекта по ее имени. Подробнее...
 
virtual Q_ULLONG docId ()
 Возвращает id документа в базе данных. Подробнее...
 
virtual bool Next (const QString &tableName="")
 Перемещает указатель на следующую запись SQL таблицы. Подробнее...
 
virtual bool Prev (const QString &tableName="")
 Перемещает указатель на предыдующую запись SQL таблицы. Подробнее...
 
virtual bool First (const QString &tableName="")
 Перемещает указатель на первую запись SQL таблицы. Подробнее...
 
virtual bool Last (const QString &tableName="")
 Перемещает указатель на последнюю запись SQL таблицы. Подробнее...
 

Защищенные данные

bool docseted
 
bool tableseted
 
QString tname
 
aDocumentnowDoc
 
- Защищенные данные inherited from aObject
bool concrete
 

Additional Inherited Members

- Открытые атрибуты inherited from aObject
aCfgmd
 
aCfgItem obj
 
aDatabasedb
 
- Защищенные члены inherited from aObject
virtual aCfgItem displayStringContext ()
 Возвращает контекст (узел дерева) метаданных для вычисления строкового представления сложного типа.
 
virtual ERR_Code setObject (aCfgItem newobject)
 Задает метатип объекта. Подробнее...
 
bool isInited ()
 
void setInited (bool flag)
 
ERR_Code tableInsert (const QString &dbname, aCfgItem obj, const QString &name="")
 Insert table name and its link into internal buffer. Подробнее...
 
ERR_Code tableInsert (const QString &dbname, const QString &name="")
 Insert table name and its link into internal buffer. Подробнее...
 
ERR_Code tableRemove (const QString &name="")
 Remove table from buffer. Подробнее...
 
virtual QVariant tValue (const QString &tablename, const QString &name)
 Return field value of the secondary object database table.
 
virtual ERR_Code setTValue (const QString &tablename, const QString &name, const QVariant &value)
 Set field value of the secondary object database table.
 
virtual QString trSysName (const QString &sname)
 Not implemented. Подробнее...
 
void setSelected (bool sel, const QString &tablename="")
 Явно задает состояние выбранности объекта или записи его табличной части.
 
virtual ERR_Code setTFilter (const QString &tname, const QString &valname, const QVariant &value)
 Устанавливает вильтр записей табличной части объекта.
 
virtual ERR_Code clearTFilter (const QString &tname)
 Чистит фильтр записей указанной табличной части объекта.
 
void setLastError (int, QString)
 Задает значения свойствам lastErrorCode и lastErrorMessage класса Подробнее...
 

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

Класс aIRegister определяет программный интерфейс Информационных регистров.

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

См. также
aARegister

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

aIRegister::aIRegister ( aCfgItem  context,
aDatabase adb = 0 
)

Создает новый экземпляр объекта информационного регистра по описанию в бизнес схеме.

Аргументы
context- Ссылка на объект бизнес схемы, описывающий регистр.
adb- Можно не передавать. Значение по умолчанию = 0. Текущая база данных Ананаса.

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

aIRegister::aIRegister ( const QString &  name,
aDatabase adb = 0,
const QString &  type = "InfoRegister." 
)

Создает новый экземпляр объекта информационного регистра по имени.

Новый объект создается по описанию объекта с таким именем, хранимом в бизнес схеме.

Аргументы
name- Имя Регистра в бизнес схеме
adb- Можно не передавать. Значение по умолчанию = 0. Ссылка на текущую базу данных Ананаса
type- Можно не передавать. Значение по умолчанию = "InfoRegister". Тип (класс) реристра в бизнес схеме

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

aIRegister::~aIRegister ( )
virtual

Деструктор.

Методы

bool aIRegister::deleteDocument ( aDocument doc)
virtual

Удаляет все записи с идентификатором данного документа из всех информационных регистров.

Аргументы
doc- Документ, записи о котором будут удалены.
Возвращает
true - успех, false - ошибка

Переопределяется в aARegister.

Перекрестные ссылки aCfg::attr(), aDatabase::cfg, aCfg::count(), aDatabase::db(), aCfg::find(), aObject::getUid(), aObject::setLastError() и aDatabase::tableDbName().

Используется в aDocument::SignOut().

bool aIRegister::deleteTable ( Q_ULLONG  iddt)
virtual

Удаляет все записи из всех информационных регистрах о таблице с данным идентификатором

Аргументы
iddt- id таблицы.
Возвращает
true - успех, false - ошибка

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

Используется в aDocument::TableDelete().

aDocument * aIRegister::GetDocument ( )
virtualslot

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

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

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

Перекрестные ссылки aCfg::find(), aDocument::select(), aDataTable::sysValue(), aObject::table() и aDatabase::uidType().

ERR_Code aIRegister::initObject ( )
virtual

Инициализирует объект информационного регистра.

Возвращает
Код ошибки

Переопределяет метод предка aObject.

Переопределяется в aARegister.

Перекрестные ссылки aObject::initObject(), aDatabase::tableDbName() и aObject::tableInsert().

Используется в aIRegister() и aARegister::initObject().

int aIRegister::New ( )
virtualslot

Добавляет новую строку к таблице информационного регистра.

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

Возвращает
Код ошибки
См. также
SetDocument( aDocument * doc )
SetTable( const QString & tblname )

Перекрестные ссылки aDocument::getTable(), aObject::getUid(), aObject::New(), aObject::select(), aObject::table() и aObject::Update().

int aIRegister::Select ( const QString &  from,
const QString &  to 
)
virtualslot

Выбирает записи в информационном регистре за заданный период.

Вспомогательный метод для скриптов.

Аргументы
from- дата начала периода в строке в фрмате ISO 8601 (ГГГГ-ММ-ДД)
to- дата окончания периода в строке в формате ISO 8601 (ГГГГ-ММ-ДД)
Возвращает
Код ошибки
См. также
Select( QDateTime from, QDateTime to )

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

int aIRegister::Select ( QDateTime  from,
QDateTime  to 
)
virtualslot

Выбирает записи в информационном регистре за заданный период.

Аргументы
from- Дата начала периода
to- Дата окончания периода
Возвращает
Код ошибки

Перекрестные ссылки aObject::IsFiltred(), aDocJournal::selectionFilter(), aObject::setSelected() и aObject::table().

int aIRegister::SelectByDoc ( )
virtualslot

Выбирает первую запись регистра по документу, установленному перед этим функцией SetDocument( aDocument * doc ).

Возвращает
Код ошибки
См. также
SetDocument( aDocument * doc )

Перекрестные ссылки aObject::getUid() и aObject::table().

int aIRegister::SetDocument ( aDocument doc)
virtualslot

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

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

Аргументы
-Ссылка на существующий документ
Возвращает
Код ошибки
См. также
New()

Перекрестные ссылки aObject::getUid() и SetFilter().

int aIRegister::SetFilter ( const QString &  name,
const QVariant &  value 
)
virtualslot

Устанавливает фильтр на записи регистра.

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

Аргументы
name- Имя столбца в метаданных, на который устанавливается фильтр
value- Значение для фильтрации
Возвращает
Код ошибки

Перекрестные ссылки aCfg::find() и aObject::SetFilter().

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

int aIRegister::SetTable ( const QString &  tblname)
virtualslot

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

Вновь добавляемые записи регистра будут содержать ссылку на текущую запись указанной табличной части документа. Используется только когда нужно добавить строки из таблицы документа. До вызова этой функции должна быть вызвана функция установки документа SetDocument( aDocument * doc ).

Аргументы
tblname- Имя таблицы документа.
Возвращает
Код ошибки
См. также
SetDocument( aDocument * doc )
QVariant aIRegister::Value ( const QString &  name,
const QString &  tableName = "" 
)
virtualslot

Возвращает значения поля с именем = name основной таблицы объекта.

Аргументы
name- имя поля
Возвращает
значение поля. Поля типа Q_ULLONG и DateTime переводятся в строки.

Перекрестные ссылки aObject::Value().


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