Как узнать почту пользователя по его id или id его контакта??
4 апреля 2022 13:44
Я могу получить id пользователя с помощью Terrasoft.SysValue.CURRENT_USER_ACCOUNT.value или id его контакта Terrasoft.SysValue.CURRENT_USER_CONTACT.value.
А как получить его почту, зная эти данные?
Нравится
2 комментария
4 апреля 2022 14:39
Ну например код ниже , если вам надо получить данные почты , по которой можно осуществить отправку письма, если же нужно получить все почты , то фильтруйте 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);
26 апреля 2022 11:32
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);Но получаю ошибку

В чем может быть проблема?
Показать все комментарии
Войдите или зарегистрируйтесь, что бы комментировать