Вопрос

Поле

Добрый день, коллеги!

Как в системе реализовать поле с гиперссылкой?

Необходимо чтобы поле заполнялось ссылкой при импорте базы и по ссылке можно было бы перейти в другое приложение.

Заранее спасибо.

Нравится

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

Дарина, здравствуйте!

Поле-ссылку пока что можно реализовать только с помощью разработки. Примерный алгоритм:

- доработать diff этого поля следующим кодом

diff 
{
	"operation": "insert",
	"name": "AdditionalExpenses",
	"values": {
 
		// -->
		"showValueAsLink": true,
		"controlConfig": {
			"enabled": true,
			"href": {
				"bindTo": "getAdditionalExpensesLink"
			},
			"linkclick": {
				"bindTo": "onExternalLinkClick"
			}
		},
		// <--
 
		"layout": {
			"colSpan": 12,
			"rowSpan": 1,
			"column": 0,
			"row": 3,
			"layoutName": "Tab07720f4eTabLabelGridLayout691629ea"
		},
		"labelConfig": {},
		"enabled": true,
		"bindTo": "AdditionalExpenses"
	},
	"parentName": "Tab07720f4eTabLabelGridLayout691629ea",
	"propertyName": "items",
	"index": 5
},

- в методы добавить

methods: {
 
	getAdditionalExpensesLink: function() {
		return this.getLink(this.get("AdditionalExpenses"));
	},
	onExternalLinkClick: function() {
		return;
	},
	getLink: function(value) {
		if (Terrasoft.isUrl(value)) {
			return {
				url: value,
				caption: value
			};
		}
	}
},

После чего поле будет со ссылкой, если указать её в правильном ссылочном формате, или скопировать с браузера. Клик откроет ссылку в текущей вкладке.

Добрый день, подскажите, пожалуйста, как можно сделать, чтобы ссылка открывалась не в текущей вкладке, а в новой?

Пащенко Александр Сергеевич,

чтоб ссылка открывалась в новом окне, нужно немного по-другому описать метод onExternalLinkClick из инструкции выше:

onExternalLinkClick: function() {

                        var value = this.get("AdditionalExpenses");

                        if (!Ext.isEmpty(value)) {

                            window.open(value, "_blank");

                        }

                        return false;

                    },

Юлия, дорыбрый день.

Такую логику я реализовал, но у меня проблема в том, что у меня открывается и новая вкладка, и ссылка в текущей вкладке, уходя из BPM.

Текст в поле является гиперссылкой. 

Пащенко Александр Сергеевич,

не могу подсказать, почему 2 раза открывается одна и та же вкладка. Реализовала логику точно по такому коду, как писала в рамках этого поста - вкладка открывается только в новой вкладке. Возможно, у Вас реализована дополнительная логика. Рекомендую провести отладку.

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