мета-данные страницы
Различия
Здесь показаны различия между двумя версиями данной страницы.
Предыдущая версия справа и слева Предыдущая версия Следующая версия | Предыдущая версия | ||
документация_в_программе [31.12.2019 09:12] Анисютин |
документация_в_программе [17.07.2022 13:17] (текущий) |
||
---|---|---|---|
Строка 1: | Строка 1: | ||
- | ====== Документация в программе ====== | + | ====== Помощь в программе ====== |
- | **Задача**\\ | + | ===== Содержание ===== |
- | Обеспечить доступ к справочным документам, размещенным на сайтах компании непосредственно из программного модуля. | + | * [[#Общая информация|Общая информация]] |
+ | * [[#1. Общая помощь по всей системе|1. Общая помощь по всей системе]] | ||
+ | * [[#2. Помощь в журналах|2. Помощь в журналах]] | ||
+ | * [[#3. Помощь в карточках|3. Помощь в карточках]] | ||
+ | * [[#Настройка помощи|Настройка помощи]] | ||
+ | * [[#1. Задать персональные ссылки для определенной карточки/журнала|1. Задать персональные ссылки для определенной карточки/журнала]] | ||
+ | * [[#2. Закрепить ссылки за определенными мета-объектами|2. Закрепить ссылки за определенными мета-объектами]] | ||
+ | * [[#Дополнительная информация|Дополнительная информация]] | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ====== Общая информация ====== | ||
+ | |||
+ | Помощь в программе разделена на три части: \\ | ||
+ | 1. Общая помощь по всей системе\\ | ||
+ | 2. Помощь в журналах\\ | ||
+ | 3. Помощь в карточках\\ | ||
+ | |||
+ | |||
+ | ===== 1. Общая помощь по всей системе ===== | ||
+ | |||
+ | |||
+ | Доступ к общей помощи по всей системе находится в главном меню "//Справка -> Документация//" | ||
+ | |||
+ | {{:pasted:20220717-120443.png}} | ||
- | **На первом этапе** справочная информация привязывается к приложению в целом единым блоком.\\ | ||
В зависимости от прав пользователя открывается одна из двух страниц, которые созданы на на сайте www.agbis.ru/laundry/school/: | В зависимости от прав пользователя открывается одна из двух страниц, которые созданы на на сайте www.agbis.ru/laundry/school/: | ||
- | для администраторов открывается "Административная документация", для всех остальных пользователей - "Пользовательская документация".\\ | + | для администраторов открывается "//**Административная документация**//", для всех остальных пользователей - "//**Пользовательская документация**//".\\ |
- | Для вызова используется пункт **Документация** главного меню на главной форме приложения.\\ | + | |
- | {{:pasted:20191223-131145.png}}\\ | + | {{:pasted:20191223-131145.png}} |
+ | |||
+ | |||
+ | ===== 2. Помощь в журналах ===== | ||
+ | |||
+ | |||
+ | Кнопка помощь во всех журналах, наследниках от "TUniDblListForm" или "TUniListFrame" и находится в главном меню журнала, отображается если на нее назначена какая-нибудь ссылка. | ||
+ | |||
+ | Например журнал "//**Фирмы**//" | ||
+ | |||
+ | {{:pasted:20220717-123002.png}} | ||
+ | |||
+ | Журнал "Регистрация сотрудников" | ||
- | **На втором этапе** планируется сделать контекстно-зависимую помощь.\\ | + | {{:pasted:20220717-123036.png}} |
- | Для вызова используется пункт кнопка **Помощь**.\\ | + | |
- | Кнопка **Помощь** появляется автоматически при подключении справочных материалов к форме.\\ | + | |
- | Для примера можно посмотреть справочники "Фирмы" и "Склады\отделы".\\ | + | |
- | {{:pasted:20191223-131227.png}}\\ | + | |
+ | С журналом может быть связано несколько ссылок на документацию, в этом случае слева появится список ссылок на помощь\\ | ||
- | С формой можно связать несколько документов, в этом случае слева появится список справочных документов.\\ | ||
{{:pasted:20191223-130731.png}} | {{:pasted:20191223-130731.png}} | ||
- | При загрузке данных открывается нижняя панель статуса, не которой отображается сообщение "Идет загрузка данных ...".\\ | ||
- | Эта панель закрывается после завершения загрузки документа.\\ | ||
- | {{:wiki:him_lrxymzlbky.png}}\\ | ||
- | Если при загрузке данных возникает ошибка, то открывается окно с сообщением об ошибке. | + | ===== 3. Помощь в карточках ===== |
- | {{:wiki:pasted:20191231-090530.png}}\\ | + | |
- | Ошибка так же отображается на панели статуса и записывается в лог программы.\\ | ||
- | {{:wiki:pasted:20191231-090836.png}}\\ | ||
+ | Кнопка "//**Помощь**//" находится во всех формах, наследниках от "//**UniForm**//" (если на нее назначена какая-нибудь ссылка) | ||
+ | |||
+ | {{:pasted:20220717-124607.png}} | ||
<ifauth @programmers> | <ifauth @programmers> | ||
- | Список ссылок на документы хранится в объекте T_Help | ||
+ | ====== Настройка помощи ====== | ||
- | ===== Составление списка документов справки непосредственно в описании формы ===== | + | Класс описывающий работу помощи - "//**T_Help**//" |
- | Пример функции, которая вызывает справку состоящую из трех документов:\\ | + | **Настроить отображение помощь можно двумя способами:** \\ |
- | первый - это явно заданный HTML-текст, второй и третий являются ссылками на страницы WEB-сайта с документацией. \\ | + | 1. Задать персональные ссылки для определенной карточки/журнала\\ |
- | При формировании элемента списка в rlHelp.Add указываются параметры:\\ | + | 2. Закрепить ссылки за определенными мета-объектами\\ |
- | "Заголовок", который будет отображаться в списке документов;\\ | + | |
- | "URL" - ссылка на страницы WEB-сайта; \\ | + | ===== 1. Задать персональные ссылки для определенной карточки/журнала ===== |
- | "HTML" - текст HTML-документа; \\ | + | |
- | "Показывать по умолчанию" - страница, которая будет открыта по умолчанию. Если не указана, то будет открываться первая по списку;\\ | + | В списке модулей должны быть указаны |
- | "Уровень доступа" - предусмотрено три уровня: \\ | + | uses ... rHelp, fHelp ... |
+ | |||
+ | Для использования T_Help должна быть задана директива компилятора **CHROM**.\\ | ||
+ | |||
+ | Пример функции, которая вызывает помощь состоящую из трех ссылок:\\ | ||
+ | первая - это явно заданный HTML-текст, второй и третий являются ссылками на страницы WEB-сайта с документацией. \\ | ||
+ | При формировании элемента списка в **rlHelp.Add("Заголовок","URL","HTML","Показывать по умолчанию","Уровень доступа")** указываются параметры:\\ | ||
+ | **"Заголовок"**, который будет отображаться в списке документов;\\ | ||
+ | **"URL"** - ссылка на страницы WEB-сайта; \\ | ||
+ | **"HTML"** - текст HTML-документа; \\ | ||
+ | **"Показывать по умолчанию"** - страница, которая будет открыта по умолчанию. Если не указана, то будет открываться первая по списку;\\ | ||
+ | **"Уровень доступа"** - предусмотрено три уровня: \\ | ||
i_LevelDeveloper - разработчик, \\ | i_LevelDeveloper - разработчик, \\ | ||
i_LevelAdmin - Администратор,\\ | i_LevelAdmin - Администратор,\\ | ||
i_LevelUser - "Пользователь".\\ | i_LevelUser - "Пользователь".\\ | ||
+ | |||
+ | Для вычисления текущего уровня пользователя можно использовать | ||
+ | <sxh Delphi> | ||
+ | var | ||
+ | ilLevel:Integer; | ||
+ | begin | ||
+ | if DMForm.IsAgbis then | ||
+ | ilLevel:=i_LevelDeveloper | ||
+ | else | ||
+ | if DMForm.IsAdmin then | ||
+ | ilLevel:=i_LevelAdmin | ||
+ | else | ||
+ | ilLevel:=i_LevelUser; | ||
+ | </sxh> | ||
+ | |||
+ | На формах наследниках TUniForm, TUniListForm уже есть кнопка **"Помощь"** с которой связан action ActHelp в TActionList.\\ | ||
+ | В этом случае достаточно добавить в обработчик ActHelp вызов справки и выставить свойства ActHelp.Visible и ActHelp.Enable в обработчик активации формы.\\ | ||
+ | Можно просто добавить новую кнопку с вызовом справки | ||
При создании объекта указывается текущий уровень доступа пользователя \\ | При создании объекта указывается текущий уровень доступа пользователя \\ | ||
Строка 58: | Строка 115: | ||
procedure TFormDB_Fields.ActHelpExecute(Sender: TObject); | procedure TFormDB_Fields.ActHelpExecute(Sender: TObject); | ||
var | var | ||
- | rlFormHelp: TFormHelp; | ||
rlHelp:T_Help; | rlHelp:T_Help; | ||
clTxt: string; | clTxt: string; | ||
Строка 75: | Строка 131: | ||
</sxh> | </sxh> | ||
- | ===== Составление списка документов справки через код метакласса формы ===== | + | ==== 2. Закрепить ссылки за определенными мета-объектами ==== |
- | Сопоставление форм и WEB-страниц выполняется функцией T_Help.InitByAgbisRu\\ | + | Сопоставление форм и WEB-страниц выполняется функцией T_Help.InitByAgbisRu. В "//**case ifMetaTag of**//" нужно добавить "**//tag//**" необходимого мета-объекта и добавить ссылку\\ |
<sxh Delphi> | <sxh Delphi> | ||
class function T_Help.InitByAgbisRu(rfHelp:T_Help; lfIsAgbis, lfIsAdmin:Boolean; | class function T_Help.InitByAgbisRu(rfHelp:T_Help; lfIsAgbis, lfIsAdmin:Boolean; | ||
Строка 111: | Строка 167: | ||
</ifauth> | </ifauth> | ||
- | <ifauth @user> | + | |
- | [[internal:Принципы документирования]]\\ | + | ====== Дополнительная информация ====== |
- | </ifauth> | + | |
+ | |||
+ | [[FormHelp|Помощь]] | ||
+ | |||
+ | |||
+ | [[:документация_агбис|Назад]]\\ | ||