|
Ananas Library 0.9.5
|
Определяет программный интерфейс экранных форм Ананаса, предназначенный для использования Ананас.Скриптом модуля экранной формы Документа и других бизнес объектов Ананаса. Подробнее...
#include <aform.h>
Открытые слоты | |
| void | done (int rc) |
| Deprecated. | |
| void | Show (bool modal=FALSE) |
| ScriptAPI. Показывает форму на экране. | |
| bool | Close () |
| ScriptAPI. Закрывает и уничтожает форму. | |
| void | show () |
| Deprecated. See Show() | |
| void | close () |
| Deprecated. | |
| void | maximize (bool m) |
| ScriptAPI. Распахивает окно на все рабочее прастранство | |
| QVariant | Value (const QString &name) |
| ScriptAPI. Возвращает значение поля экранной формы. | |
| QVariant | DBValue (const QString &name) |
| ScriptAPI. Возвращает значение атрибута <name> бизнес объекта Ананаса. | |
| int | SetValue (const QString &name, QVariant value) |
| ScriptAPI. Устанавливает значения виджетов экранной формы. | |
| int | SetObjValue (const QString &name, aObject *value) |
| ScriptAPI. Устанавливает значения виджетов формы сложных типов (aDocument, aCatalogue) | |
| void | SetColumnReadOnly (const QString &tname, int numCol, bool ro) |
| ScriptAPI. Устанавливает для столбца таблицы флаг только чтение. | |
| int | ColIndex (const QString &tname, const QString &colname) |
| ScriptAPI. Возвращает индекс столбца таблицы tname по его имени в метаданных. | |
| int | TabCount (const QString &tname) |
| ScriptAPI. Возвращает количество строк в табличном виджете wDBTable. | |
| QVariant | TabValue (const QString &tname, int row, int col) |
| ScriptAPI. Возвращает значение ячейки табличного виджета wDBTable. | |
| QVariant | TabDBValue (const QString &tname, int row, int col) |
| ScriptAPI. Возвращает значение ячейки табличного виджета wDBTable для сложного типа данных. | |
| void | TabNewLine (const QString &tname) |
| ScriptAPI. Добавляет новую строку в табличный виджет wDBTable. | |
| void | TabUpdate (const QString &tname) |
| void | SetTabValue (const QString &tname, const QString &colname, int row, QVariant value) |
| ScriptAPI. Задает значение ячейки табличного виджета wDBTable. | |
| void | setfocus (QString fname) |
| Deprecated. | |
| void | SetFocus () |
| ERR_Code | UpdateDB () |
| ScriptAPI. Обновляет данные в базе. | |
| ERR_Code | update () |
| Depticated. | |
| int | turn_on () |
| Deprecated. | |
| int | turn_off () |
| Deprecated. | |
| int | SignIn () |
| ScriptAPI. Проводит (регистрирует) документ. | |
| int | SignOut () |
| ScriptAPI. Отменяет проведение (регистрацию) документа. | |
| int | Update () |
| ScriptAPI. Обновляет экранную форму. . | |
| void | SetReadOnly (bool status) |
| ScriptAPI. Устанавливает флаг "только чтение". | |
| bool | IsReadOnly () |
| ScriptAPI. Возвращает значение флага "только чтение". | |
| int | GetMode () |
| ScriptAPI. Получение режима открытия формы. | |
| QString | Propis (QString val, bool need_kopeyki=true, bool male=true, const QString &end1="рублей", const QString &end2="рубль", const QString &end3="рубля") |
| Конвертирует число в его текстовое представление c указанием единиц измерения. | |
| QString | MoneyToText (QString amount, QString currency) |
| Конвертирует числовое представление денег в пропись с учетом указанной валюты. | |
| QString | ConvertNumber2MoneyFormat (double number) |
| Возвращает значение атрибута формы. | |
| QString | ConvertDateFromIso (const QString &ISODate) |
| ScriptAPI. Конвертирует дату в локальный формат. Используется для вывода на печать. | |
| QString | EndOfDay (const QString &ISODate) |
| ScriptAPI. Возвращает дату-время на конец дня. | |
| void | SelectByCurrent (aObject *doc) |
| ScriptAPI. Используя идентификатор редактируемого виджетами формы документа, настраивает объект aDocument на доступ к документу с таким же идентификатором. | |
| void | SetCurrent (aObject *doc) |
| Устаревшая. Смотри SelectByCurrent() . | |
| aObject * | Current () |
| ScriptAPI. Возвращает ссылку на бизнес объект, редактируемый данной экранной формой. | |
| QWidget * | Widget (QString name) |
| ScriptAPI. Возвращает указатель на виджет по его имени. | |
| bool | FormHasFunction (const QString functionName) |
Сигналы | |
| void | selected (Q_ULLONG uid) |
| void | closeForm (Q_ULLONG) |
| void | changedData () |
| void | update (ANANAS_UID) |
Открытые члены | |
| aForm (QWidget *parent, aEngine *eng) | |
| aForm (QWidget *parent, aEngine *eng, Q_ULONG form_mid=0, aWidget *caller=NULL) | |
| aForm (QWidget *parent, aEngine *eng, QString oftype, QObject *aobj=NULL) | |
| void | init () |
| QWidget * | aParent (QWidget *widget) |
| int | New () |
| int | Select (Q_ULLONG id) |
| int | SelectGroup (Q_ULLONG id) |
| Q_ULLONG | selectedCatId () |
| Q_ULLONG | selectedId () |
| QVariant | tabValue (const QString &tname, int row, int col, bool dbval=false) |
| void | setMode (int m) |
| ScriptAPI. Устанавливает режим формы. | |
Открытые атрибуты | |
| aEngine * | engine |
| aDatabase * | db |
| aCfg * | md |
| aCfgItem | mdObj |
| QWidget * | parentWidget |
| bool | closeAfterSelect |
| QWidget * | form |
Защищенные члены | |
| virtual void | initWidget (QWidget *widget, aDatabase *adb) |
| virtual void | initContainer (aWidget *widget, aDatabase *adb) |
| aWidget * | parentContainer (QWidget *widget) |
Определяет программный интерфейс экранных форм Ананаса, предназначенный для использования Ананас.Скриптом модуля экранной формы Документа и других бизнес объектов Ананаса.
Любая экранная форма, спроектированная в Ананас.Дизайнере имеет методы этого класса. Объект данного класса создается при создании формы. Программный код, написанный на Ананас.Скрипте и хранящийся в модуле экранной формы (вкладка "Модуль" в Дизайнере) может обращаться к методам этого объекта напрямую, без указания имени объекта.
Кроме того, класс обеспечивает вызов некоторых функций на Ананас.Скрипте, определенных в модуле экранной формы, при наступлении определенных событий, например открытии или закрытии формы, изменения значения виджетов формы и т.п Полный список этих событий и функций можно посмотеть на сайте Ананаса в разделе руководства по Ананас.Дизайнеру.
| aForm::aForm | ( | QWidget * | parent, |
| aEngine * | eng | ||
| ) |
| parent | |
| eng | |
| form_mid | |
| caller |
Перекрестные ссылки aEngine::db, aCfg::find(), init() и aEngine::md.
| aForm::aForm | ( | QWidget * | parent, |
| aEngine * | eng, | ||
| QString | oftype, | ||
| QObject * | aobj = NULL |
||
| ) |
| parent | |
| eng | |
| oftype | |
| aobj |
Перекрестные ссылки aDatabase::cfg, aEngine::db и init().
| QWidget * aForm::aParent | ( | QWidget * | widget | ) |
Возвращает объект-контейнер для заданного виджета.
| widget | - виджет, для которого необходимо найти объект-контейнер. |
|
slot |
ScriptAPI. Закрывает и уничтожает форму.
Вызывает функцию on_formstop() скрипта модуля экранной формы, если функция определена в модуле.
Перекрестные ссылки aLog::print(), aWindowsList::remove() и aEngine::wl.
|
slot |
ScriptAPI. Возвращает индекс столбца таблицы tname по его имени в метаданных.
| tname | - Имя таблицы. |
| colname | - Имя столбца. |
Перекрестные ссылки wDBTable::getDefFields(), aLog::print() и Widget().
|
slot |
ScriptAPI. Конвертирует дату в локальный формат. Используется для вывода на печать.
Все функции работы с датой оперируют датой в ISO формате. (yyyy-MM-ddThh:mm:ss) Данная функция предназначена для конвертации такой даты в читаемый вид.
| ISODate | - дата в ISO формате (yyyy-MM-ddThh:mm:ss) |
Перекрестные ссылки aService::Date2Print().
|
slot |
Возвращает значение атрибута формы.
| name | - Имя атрибута. aDataField* aForm::getAttribute(const QString &name) { QString oname, aname; aWidget *w = mainWidget; QVariant v; aDataField *f = 0; |
oname = name.section(".",0,0); aname = name.section(".",1); if ( oname.isEmpty() ) aname = oname; else { } v = w->value( aname ); f = new aDataField( this, aname ); return f; }
Устанавливает значение атрибута формы.
Not implemented
| name | - Имя атрибута. int aForm::setAttribute(const QString &name, aDataField *value) { return 1; } |
ScriptAPI. Конвертирует число в денежный формат (#0.00 :) ). Используется для вывода на печать.
Для конвертирования числа в текстовое представление используйте Propis()
| number | - число для конвертирования |
Перекрестные ссылки aService::convertNumber2MoneyFormat().
|
slot |
ScriptAPI. Возвращает ссылку на бизнес объект, редактируемый данной экранной формой.
По свему назначению метод аналогичен SelectByCurrent()
|
slot |
ScriptAPI. Возвращает значение атрибута <name> бизнес объекта Ананаса.
Предназначен для использования в контексте экранной формы редактирования бизнес объекта. Или, говоря по другому, в модуле экранной формы. Тип возвращаемого значения такой же, как задан в метаданных у соответствующего атрибута бизнес объекта. Для поля типа Каталог или Документ функция вернет число (id). Функция необходима, если нужно заполнять поля сложных типов. Для остальных случаев можно использовать aForm::Value(), обеспечивающее доступ к значению виджета экранной формы, в контексте которой исполняется Скрипт.
| name | - Имя атрибута бизнес объекта, как задано в метаданных. |
Пример кода для размещения в модуле экранной формы. Экранная форма содержит одну кнопку с именем Button1. При нажатии на кнопку в окно сообщений будет выведено значение атрибута "Покупатель" редактируемого бизнес объекта.
Перекрестные ссылки aLog::print() и Widget().
|
slot |
ScriptAPI. Возвращает дату-время на конец дня.
| ISODate | - строка, содержащая дату в формате ISO (YYYY-MM-DD). |
|
slot |
ScriptAPI. Получение режима открытия формы.
| void aForm::init | ( | ) |
Инициализирует форму, меняет родителя у центрального виджера формы, если это необходимо. Обрабатывает также модуль скрипта, благодаря этому впоследствии можно вызывать функции, определенные в этом модуле.
Перекрестные ссылки aCfg::attr(), aWidget::createToolBar(), aWindowsList::find(), initContainer(), aWindowsList::insert(), aCfg::objClass(), aCfg::parent(), aLog::print(), aEngine::project, aWindowsList::remove(), SetReadOnly(), aCfg::sText() и aEngine::wl.
Используется в aForm().
Инициализирует все виджеты, унаследованные от aWidget
Перекрестные ссылки aWidget::createToolBar(), aWidget::init(), initContainer(), initWidget() и parentContainer().
Используется в init() и initContainer().
|
protectedvirtual |
Инициализирует объекты, которые не унаследованы от aWidget, но требуют инициализации, например wDBTable.
Используется в initContainer().
|
slot |
ScriptAPI. Возвращает значение флага "только чтение".
|
slot |
Конвертирует числовое представление денег в пропись с учетом указанной валюты.
Перекрестные ссылки aService::number2money().
| int aForm::New | ( | ) |
Перекрестные ссылки aWindowsList::get(), aWindowsList::insert(), aWidget::New(), aWindowsList::remove(), aWidget::uid() и aEngine::wl.
Используется в aEngine::openForm().
|
protected |
|
slot |
Конвертирует число в его текстовое представление c указанием единиц измерения.
Параметры позволяют настроить вид результата. По умолчанию валюта - рубли, копейки выводятся.
примеры использования:
пример неправильного использования:
| val | - число для конвертирования |
| need_kopeyki | - записывать в результат копейки (по умолчанию - да) |
| male | - конвертируемая единица - мужского рода (по умолчанию - да) |
| end1 | - окончание для нуля конвертируемых единиц (по умолчанию - ‘рублей’) |
| end2 | - окончание для одной конвертируемой единицы (по умолчанию - ‘рубль’) |
| end3 | - окончание для двуx конвертируемых единиц (по умолчанию - ‘рубля’) |
Перекрестные ссылки aService::number2money().
| int aForm::Select | ( | Q_ULLONG | id | ) |
| id |
Перекрестные ссылки aWindowsList::get(), aWindowsList::insert(), aWindowsList::remove(), aWidget::Select() и aEngine::wl.
Используется в aEngine::openForm().
|
slot |
ScriptAPI. Используя идентификатор редактируемого виджетами формы документа, настраивает объект aDocument на доступ к документу с таким же идентификатором.
Перекрестные ссылки aLog::print(), aObject::select() и aWidget::uid().
Используется в SetCurrent().
|
slot |
ScriptAPI. Устанавливает для столбца таблицы флаг только чтение.
Когда установлен этот флаг, пользователь не может редактировать значения в этом столбце.
| tname | - Имя таблицы. |
| numCol | - Номер столбца. |
| ro | - Значение флага ‘только чтение’. |
Перекрестные ссылки aLog::print() и Widget().
|
slot |
Устаревшая. Смотри SelectByCurrent() .
Перекрестные ссылки SelectByCurrent().
| void aForm::setMode | ( | int | m | ) |
ScriptAPI. Устанавливает режим формы.
| m | - Допустим один из трех режимов открытия формы: 0 - новая, 1 - редактирование, 2- просмотр. |
Используется в aEngine::openForm().
|
slot |
ScriptAPI. Устанавливает значения виджетов формы сложных типов (aDocument, aCatalogue)
Обычно для установки значения используют SetValue(...)
| tname | - Имя виджета. |
Перекрестные ссылки aWidget::setObjValue().
|
slot |
ScriptAPI. Устанавливает флаг "только чтение".
Когда установлен этот флаг, запрещается редактирование полей формы, и сохранение изменений в базу.
| status | - Новое значение флага только чтение. |
Перекрестные ссылки aLog::print() и aWidget::SetReadOnly().
Используется в init() и aEngine::openForm().
|
slot |
ScriptAPI. Задает значение ячейки табличного виджета wDBTable.
Перекрестные ссылки aLog::print(), aWidget::uid() и Widget().
|
slot |
ScriptAPI. Устанавливает значения виджетов экранной формы.
| name | - Имя виджета. |
| value | - Значение виджета. Для сложных типов (Документ,Каталог) должен использоваться идентификатор. Если идентификатор недоступен, используйте функция SetObjValue(), которая принимает в качестве параметра ссылку на объект. |
Перекрестные ссылки aWidget::setValue().
|
slot |
ScriptAPI. Показывает форму на экране.
Перемещает ее в левый верхний угол рабочего пространства. Вызывает функцию on_formstart() скрипта модуля экранной формы, если функция определена в модуле. Параметр modal определяет является ли форма модальной.
Перекрестные ссылки Close() и aEngine::project.
Используется в aEngine::openForm() и show().
|
slot |
ScriptAPI. Проводит (регистрирует) документ.
Вызывает функцю on_conduct() кода Ананас.скрипта модуля экранной формы. В скрипте вы можете проверить условия проведения документа, и, если они не выполняются, вернуть в функции false. Если функция возвращает false, то отметка о проведении не ставится.
Перекрестные ссылки aObject::IsConducted(), aLog::print() и aEngine::project.
Используется в turn_on().
|
slot |
ScriptAPI. Отменяет проведение (регистрацию) документа.
На самом деле ничего не делает. Отмена проведения производится при открытии документа.
Используется в turn_off().
|
slot |
ScriptAPI. Возвращает количество строк в табличном виджете wDBTable.
Если табличный виджет не является объектом класса wDBTable, метод запишет в лог сообщение об ошибке и вернет 0.
| tname | - Имя таблицы. |
Перекрестные ссылки aLog::print() и Widget().
|
slot |
ScriptAPI. Возвращает значение ячейки табличного виджета wDBTable для сложного типа данных.
Перекрестные ссылки tabValue().
|
slot |
ScriptAPI. Добавляет новую строку в табличный виджет wDBTable.
Перекрестные ссылки aLog::print() и Widget().
|
slot |
| tname |
Перекрестные ссылки aLog::print() и Widget().
|
slot |
ScriptAPI. Возвращает значение ячейки табличного виджета wDBTable.
Перекрестные ссылки tabValue().
| QVariant aForm::tabValue | ( | const QString & | tname, |
| int | row, | ||
| int | col, | ||
| bool | dbval = false |
||
| ) |
| tname | |
| row | |
| col | |
| dbval |
Перекрестные ссылки wDBTable::getDefIdList(), wDBTable::getFieldType(), aLog::print() и Widget().
Используется в TabDBValue() и TabValue().
|
slot |
ScriptAPI. Обновляет экранную форму. .
Перекрестные ссылки aWidget::Update().
|
slot |
ScriptAPI. Возвращает значение поля экранной формы.
Перекрестные ссылки aWidget::value().
|
slot |
ScriptAPI. Возвращает указатель на виджет по его имени.
Ничего не делает.
char* aForm::formMetaObjectId(QString filename){ if (filename==""){ } return aot_doc; return ""; }
Очень полезная функция для работы с QT виджетами, находящимися в экранной форме. Используя этот метод, можно получить доступ к методам любого виджета, лежащего в форме. ВАЖНО! Из Ананас скрипта вы сможете обратиться только к публичным слотам и свойствам виджета. Публичные методы виджета из Ананас скрипта недоступны. Документацию по свойствам и методам QT виджетов смотрите на сайте http://trolltech.com
Используется в ColIndex(), DBValue(), SetColumnReadOnly(), SetTabValue(), TabCount(), TabNewLine(), TabUpdate() и tabValue().