Class isp api::HistoryAction

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

Шаблон класса isp_api::HistoryAction

Класс для отображения истории изменений

#include <dbhistory.h> 

Описание:

template <class BaseList> class isp_api::HistoryAction

При создании изменении записей при помощи методов mgr_db::CustomTable вы можете потребовать вести историю изменений отдельных полей таблицы (mgr_db::TableDesc::FieldDesc::save_history) Данный класс создан с целью упростить отображение истории изменений В простейшем случае, вам достаточно добавить свойство типа HistoryAction в ваш класс, унаследованный от TableIdListAction, и добавить кнопку в панель инструментов списка MyList.

class MyList : public TableIdListAction<MyTable> { 
public: 
   MyList() : TableIdListAction<MyTable>(...), history(this) {} 
   ... 
private: 
   HistoryAction<MyList> history; 
}; 

<?xml version="1.0"?> 
<doc> 
  <metadata name="mylist" type="list" ...> 
    <toolbar> 
     ... 
     <toolbtn name="history" type="editlist" func="mylist.history" img="t-rotate"/> 
     ... 
   </toolbar> 
   ... 
  </metadata> 
</doc> 

Родители:


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

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

virtual mgr_db::QueryPtr GetHistory ( Session &ses )

получить историю изменений


virtual bool FieldAccessible ( Session &ses , const string &name )

проверить доступ пользователя к значению поля таблицы

Методы

virtual mgr_db::QueryPtr GetHistory ( Session &ses )

Данная функция/метод является inline функцией

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

получить историю изменений

Метод должен проверить доступ пользователя к соответствующему элементу и вернуть список изменений. Реализация этого метода вынесена в шаблон HistoryAction

virtual bool FieldAccessible ( Session &ses , const string &name )

Данная функция/метод является inline функцией

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

проверить доступ пользователя к значению поля таблицы

Позволяет скрывать часть истории в зависимости от уровня доступа пользователя

Returned: true - если поле доступно (по умолчанию доступны все поля)