Каким образом задать процедуру обработки клика по значению?

Через контекстное меню Edit/Cell/Click
Вы откроете окно редактирования программы обработки клика.
Редактируя в этом окне, Вы задаете строку, которую будет обрабатывать объект IE.
Поэтому, если в окне редактирования ввести текст:
"http://www.maple4.ru"
будьте уверены - при клике по значению в готовом отчете откроется именно этот сайт.
Но нам (и Вам) бы хотелось, что бы по клику что-то срабатывало (запускалась на выполнение).
Как этого добиться? Есть специальный синтаксис:
Если строка в окне редактирования начинается с "VFP///
программа понимает, что это не обычная ссылка, а именно - выражение FoxPro, и , соответственно, обрабатывает его, как выражение FoxPro.
Пример ссылки (в отчете tester.m4rb, ячейка редактирования адреса):
"VFP:///do form maple4_rb_demo_form with `alltr(str(test_.user_id))`
return -999
"

Текст данной ссылки динамически формируется во время генерации отчета, и он (текст ссылки) НЕПОСРЕДСТВЕННО зависит от значения test_.user_id
т.е. при значении test_.user_id=1 ссылка примет вид
"VFP:///do form maple4_rb_demo_form with 1
return -999
"


при test_.user_id=2
"VFP:///do form maple4_rb_demo_form with 2
return -999
"

и т.д.

Уже потом, во время просмотра ГОТОВОГО отчета, нажав на значение, соответствующее выражение (индивидуальное для каждой строки, оно же привязано к test_.user_id) программа попытается выполнить.
В данном случае откроется внешнее окно (maple4_rb_demo_form) редактирования адреса для конкретного User_id.
На что еще бы хотелось обратить Ваше внимание:
return -999 - заставляет программу выполнить код обновления (рефреша), если же он конечно существует.




create by Maple4 Site Creator 6/2008  Контакты   Поиск   Карта сайта 
Rambler's Top100 Рейтинг@Mail.ru