Есть поле, в нем URL страницы, хочется его из колонки справочника по клику с открывать...хотя бы правому....

Есть поле, в нем URL страницы, хочется его из колонки справочника по клику с открывать...хотя бы правому из меню к примеру.....

Нравится

6 комментариев

есть такая функция function DoLookupColumnClick в scr_WindowUtils - она отвечает за действия при клике по полям грида
параметр Shift - это код клавиш управления:
Shift = 1
Alt = 2
Alt+Shift = 3
Ctrl = 4
Ctrl+Shift = 5
может есть еще какие-то не проверял

соответственно
на нужном гриде измените тип колонки с ссылками на dgcltLookup:

после этого измените функцию function DoLookupColumnClick в scr_WindowUtils
на удобную для вас комбинацию клавиш перед if (!Assigned(LookupDataset)) добавьте:

if (Shift = 3) {
		var Web = 'http://' + DataField.ValAsStr;
		System.OpenFile(Web, 1);
	}

Александр, в 3.4 это уже реализовано. Только интересующий Вас функционал создается динамически.
Если Вам необходимо повторить подобное, для любого пользовательского поля нужно будет на невизуальных создать элементы меню, привязать к ним иконку 7B77F07B из il_CommunicationActionSmartTag, и задать обработчик.
В дальнейшей реализации Вам помогут ссылки: http://www.community.terrasoft.ru/forum/topic/7862 и http://www.community.terrasoft.ru/forum/topic/8383.

Павел, как я понял речь о гриде

Да, верно. Дмитрий, Вы правы :smile:

Ваш вариант лучше проще и быстрее. Мой придется через меню "Дейсвие" реализовывать, еще и проверкой отягощать - содержит ли поле ссылку, или изменения в базовые сервисы вносить, чтоб все это динамически строить.

Для поля в карточке - можно и мой вариант использовать.

я так приблизительно и думал, в смысле в эту сторону, что надо какое то событие грида отлавливать...

спасибо большое, попробую завтра, сегодня уже не до того

Спасибо, все получилось.

P.S. Только все таки не
if (Shift = 3) {
а
if (Shift == 3) {

:-)

Показать все комментарии