Class isp api::ReportAction

Материал из ISPWiki
Перейти к: навигация, поиск

Класс isp_api::ReportAction

Данный класс является абстрактным

Класс для работы с отчетами

#include <action.h> 

Описание:

class isp_api::ReportAction

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

class ActionJournalStat: public ReportAction { 
public: 
    ActionJournalStat(): ReportAction("journal.stat", MinLevel(lvAdmin)) {} 
private: 
    virtual void ReportExecute(Session &ses) const {...} 
}; 
 
MODULE_INIT(journal, "") { 
    new ActionJournalStat; 
} 

Родители:


Открытые члены (кратко)

ReportAction ( const string &name , AccessMask accessMask , const Action * parent = nullptr )

Конструктор класса

Защищённые члены (кратко)

virtual string type () const

Возвращает строку с типом действия (в данном случае - "form")


virtual bool IsModify ( const Session &ses )

Изменит ли эта функция какие-нибудь данные


virtual void ReportFormTune ( Session &ses )

Формирование метаданных


virtual void ReportExecute ( Session &ses )

Построение отчета

Приватные члены (кратко)

virtual void Get ( Session &ses , const string &elid )

Вызывается перед показом формы


virtual void Set ( Session &ses , const string &elid )

Вызывается после закрытия формы кнопкой ОК

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

ReportAction ( const string &name , AccessMask accessMask , const Action * parent = nullptr )

Конструктор класса

Аргументы:
[in] - name Имя функции, к которой привязано данное действие
[in] - accessMask Уровень доступа пользователя
See also: mgr_access::AccessMask
Аргументы:
[in] - parent Указатель на родительское действие

Методы

virtual void Get ( Session &ses , const string &elid )

Данный метод является приватным

Вызывается перед показом формы

Вызывается перед отправкой данных формы на сторону клиента (и, соответственно, перед показом формы на экране) в данном методе можно реализовать заполнение полей формы некоторыми данными

Аргументы:
[inout] - ses Текущая сессия
See also: isp_api::Session
Аргументы:
[in] - elid Идентификатор элемента, для которого вызывается форма

virtual void Set ( Session &ses , const string &elid )

Данный метод является приватным

Вызывается после закрытия формы кнопкой ОК

Вызывается после нажатия на ОК, в данный метод поступают значения всех полей; в данном методе можно реализовать сохранение данных.

Аргументы:
[inout] - ses Текущая сессия
See also: isp_api::Session
Аргументы:
[in] - elid Идентификатор элемента, для которого вызывается форма. Если пустая строка, то - новый элемент.

virtual string type () const

Данный метод является защищённым

Возвращает строку с типом действия (в данном случае - "form")

virtual bool IsModify ( const Session &ses )

Данный метод является защищённым

Изменит ли эта функция какие-нибудь данные

По умолчанию считается, что изменит. Если функция возвращает false при ее вызове игнорируется REFERER запроса

virtual void ReportFormTune ( Session &ses )

Данный метод является защищённым

Формирование метаданных

Используйте данный метод для динамического формирования метаданных и заполнения значений списков (slist)

virtual void ReportExecute ( Session &ses )

Данный метод является защищённым

Построение отчета