Вопрос

Как узнать почту пользователя по его id или id его контакта??

Я могу получить id пользователя с помощью Terrasoft.SysValue.CURRENT_USER_ACCOUNT.value или id его контакта Terrasoft.SysValue.CURRENT_USER_CONTACT.value.

А как получить его почту, зная эти данные?

Нравится

2 комментария

 Ну например код ниже , если вам надо получить данные почты , по которой можно осуществить отправку письма, если же нужно получить все почты , то фильтруйте ContactCommunication и забирайте всю коллекцию, если же только контакта то получаем Contact



что бы лучше понять , как строить подобные запросы почитайте и выполните примеры отсюда зhttps://academy.terrasoft.ua/docs/developer/front_end_razrabotka/operat…

  var user = Terrasoft.SysValue.CURRENT_USER.value;
                    //схема, по которой будет забирать данные,Настройки синхронизации с почтовым ящиком 
                    var esq = this.Ext.create("Terrasoft.EntitySchemaQuery", { rootSchemaName: "MailboxSyncSettings" });
                    esq.addColumn("SenderEmailAddress");//добавляем колонку email отправителя
					esq.filters.add("filter01",
						this.Terrasoft.createColumnFilterWithParameter(this.Terrasoft.ComparisonType.EQUAL, "SysAdminUnit", user));//фильтруем по текущему пользователю
					esq.getEntityCollection(function (result) {
						if (!result.success) {
							//this.showInformationDialog("Ошибка запроса данных");
                            this.showInformationDialog(this.get("Resources.Strings.DataRequestError"));
							return;
						}
						if (result.collection.collection.length > 0) {//если найденных записей больше 0
							var item = result.collection.collection[0];
                            var email = item.get("SenderEmailAddress")//то берем первый элемент
                            this.console.log(email);
						}
					}, this);

 

Dima Avdoshin,

 

Дмитрий, добрый день!

Использую такой код

var contact = this.Terrasoft.SysValue.CURRENT_USER_CONTACT.value; 
var esq = this.Ext.create("Terrasoft.EntitySchemaQuery", { rootSchemaName: "ContactCommunication" });
esq.addColumn("Contact");
esq.filters.add("filter01",
this.Terrasoft.createColumnFilterWithParameter(this.Terrasoft.ComparisonType.EQUAL, "Contact", contact));
esq.getEntityCollection(function (result) {
	if (!result.success) {
		this.console.log("ERROR");
		return;
	}else
		if (result.collection.collection.length > 0) {
			var item = result.collection.collection[0];
			var email = item.get("Email");
			this.console.log(email);
		}
}, this);

Но получаю ошибку 

В чем может быть проблема?

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