Добрый день. Вопрос в том, что нужно на back-end аутентифицироваться с паролем, который находится в системной настройке с типом зашифрованная строка. Т.е. какой-то правильный decrypt 

Нравится

6 комментариев
Лучший ответ

Здравствуйте! Воспользуйтесь данной конструкцией - https://prnt.sc/vdvss9

Как видно на скрине возвращаемое значение - 123456

хотя в системной настройке оно зашифровано - https://prnt.sc/vdvtrg

как и в БД - https://prnt.sc/vdvuni

Здравствуйте! Воспользуйтесь данной конструкцией - https://prnt.sc/vdvss9

Как видно на скрине возвращаемое значение - 123456

хотя в системной настройке оно зашифровано - https://prnt.sc/vdvtrg

как и в БД - https://prnt.sc/vdvuni

А как можно получить такую зашифрованую строку в бизнес-процессе без применения "Задания-сценарий"?

Александр Тыра,

добрый день! В БП система не даст Вам сохранить данное значение в параметр -

https://prnt.sc/vg0fwn

Если Вам необходимо использовать авторизацию в стороннем web-сервисе и то создайте, заранее, в разделе Web сервис, выбрать метод аутентификации Basic и добавить в него пароль - https://prnt.sc/vg0ji6

и в бп использовать уже элемент "Вызвать веб-сервис" - https://prnt.sc/vg0k4o, в данном контексте можно так использовать пароль в зашифрованном виде, иначе только через задание сценарий. Подробнее о работе с элементом "Вызвать веб-сервис" описано в данной статье

Нигрескул Алексей,

у меня JWT авторизация, так что получение токена я реализовал отдельным элементом процесса, и к нему как раз системная настройка с паролем. Реализовал через задание-сценарий, но думал есть более красивый способ. Видимо реализую еще один элемент процесса "Получение зашифрованной настройки" с выбором настройки и на выходе разшифрованный текст, будет наверно удобнее

Александр Тыра,

добрый день! Т.е. данный токен нужно передавать в Json-объекте, верно? В таком случае создаете веб сервис без авторизации, создаете метод POST делаете тело передаваемого объекта и в нем уже можно указать нашу зашифрованную переменную - 

https://prnt.sc/vgm9dg 

https://prnt.sc/vgm9t6

Наверное Вы это искали?

 

Нигрескул Алексей,

 Да, я так и реализовал. Первый запрос получает токен отправляя логин и пароль (реализовал элемент процесса для удобства), и вот в него и передаю пароль из системной настройки зашифрованной

var client = new RestClient(urlForToken);
client.Timeout = -1;
var request = new RestRequest(urlMethod, Method.POST);
request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
request.AddHeader("Accept",
  "text/html, application/xhtml+xml, application/xml;q=0.9, image/webp, */*;q=0.8");
request.AddParameter("username", login);
request.AddParameter("password", password);
IRestResponse response = client.Execute(request);
if (response.StatusCode == HttpStatusCode.OK)
{
	Token = response.Content;
}
StatusCode = (int)response.StatusCode;

А потом в вебсервис в поле для авторизации ложу полученный токен

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

Коллеги всем доброго времени суток! Подскажите, как правильно добавлять системную настройку кодом и есть ли такая возможность? При добавлении через БП она создаётся но значение не сохраняется. Благодарю.

Нравится

3 комментария
Лучший ответ

Нигрескул Алексей,

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

Добрый вечер.

Системная настройка хранится в таблице SysSettings, а её значения в SysSettingsValue.

Алла Савельева,

здравствуйте, я это знаю, тут дело в другом, переменная создается, но значение не присваивается, по крайней мере через ui в системной настройке в поле значение по умолчанию пусто, и когда заполняеш вручную, то значение не сохраняется.

Нигрескул Алексей,

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

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

Добрый день!

Есть такая задача:

есть сис настрйока в ней в поле значение по умолчанию дата и время.

Я бы хотел через бп вносить туда дату и время, как это можно? или иначе как сделать можно?

В элементе изменить данные сис настройки не нашел поле значение по-умолчанию

Нравится

5 комментариев
Лучший ответ

Калушка Д. пишет:

Может есть возможность показать как указать id системой настройки в значениях системной настройки?

Id системной настройки можно получить через элемент 'Чтение данных' - в качестве фильтра можно использовать значение поля 'Код' системной настройки:

Добрый день.

Значения системных настроек хранятся в таблице 'SysSettingsValue'.

Можно изменить значение системной настройки либо в элементе задание-сценарий, например, через пользовательский sql-запрос, либо в элементе изменить данные:

 

Вам нужно внести изменения в поле 'DateTimeValue'.

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

Добрый день!

Возникает проблема, как указать системную настройку в значениях системной настройки. Есть Системная настройка (там есть записи, они походе не подходяь как ID), Системная настройка (объект) (пусто, не видно ничего) и Системная настройка в группе

Может есть возможность показать как указать id системой настройки в значениях системной настройки?

Решил. Прочитал через SQL запрос ID значения системной настройки

Калушка Д. пишет:

Может есть возможность показать как указать id системой настройки в значениях системной настройки?

Id системной настройки можно получить через элемент 'Чтение данных' - в качестве фильтра можно использовать значение поля 'Код' системной настройки:

Алла Савельева,

Спасибо

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

Коллеги, добрый день. 

 

Столкнулся с проблемой удаления записей. 

Ситуация выглядит так, что не важно из какого раздела пытаюсь удалить запись, "выдаёт" ошибку: 

"Удаление данных произошло с ошибкой. Обратитесь к системному администратору" 

Подскажите, пожалуйста, в какую сторону смотреть?

P.s. права Supervisor'а 

Нравится

2 комментария
Лучший ответ

Проверьте что вэбсокеты настроены

И да, ещё момент - если обновить страницу, то запись может быть удалена. Тут, уж, на усмотрение bpm :/

Проверьте что вэбсокеты настроены

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

Cделан запрос в базу данных из клиентского модуля для получения системной настройки: 

this.Terrasoft.SysSettings.querySysSettingsItem("PsMaximumProgramsCount", function(value) {
	countSettings = value;
}, this);

Получены данные из БД отфильтровав их и сравнив с полученным значением из системной настройки ранее, и если значение выпадающего списка periodicity  равно "Ежедневно" и количество записей в базе больше чем системной настройке - срабатывает валидация на поле и всплывающее уведомление при попытке сохранения:

message - сообщение для поля валидации;

periodicity  - выпадающий список (словарь) в котором есть значение "Ежедневно";

countSettings  - ранее полученное значение системной настройки;

concertProgramsCount - количество записей в таблице;

var periodicity = "";
if (this.get("PsPeriodicity")) {
	periodicity = this.get("PsPeriodicity").displayValue;
}
var esq = Ext.create("Terrasoft.EntitySchemaQuery", {
	rootSchemaName: "PsConcertPrograms"
});
esq.addColumn("PsPeriodicity.Name", "PsPeriodicityName");
var esq1Filter = esq.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL,
	"PsPeriodicity.Name", "Ежедневно");
esq.filters.add("esq1Filter", esq1Filter);
esq.getEntityCollection(function(result) {
	var message = "";
	if (result.success) {
		var concertProgramsCount = result.collection.collection.length;
		if (periodicity === "Ежедневно" && concertProgramsCount <= countSettings ) {
			message = this.get("Resources.Strings.PsFewFreeConcertHalls").replace("NNN", countSettings);
		}
	}
	return message;
}, this);

Вывод валидации для поля и при сохранении страницы:

concertHallsValidator: function(message) {
	var invalidMessage = message;
	return {
		fullInvalidMessage: invalidMessage,
		invalidMessage: invalidMessage
	};
}

Проблема в том что по отдельности все работает, но когда вместе - вступает в дело асинхронность и все идет не по очереди, а если использую через callback тогда застреваю на замыкании.

Спасибо всем кто окажет помощь в решении проблемы.

Нравится

7 комментариев
Лучший ответ

Prime Source,

нет. стоп. я думал вы прогоняете esq в onEntityInitialized, а потом используете this.$PeriodValidationMessage для проверки. тогда такие варианты:

1) на изменение поля PsPeriodicity запускаете concertHallsValidator. Изменяете this.addColumnValidator("CreatedOn", this.MessageValidator);

2) Используете asyncValidate (вроде так называется метод)

И уберите return. Ну не используется он в асинхронных функциях)

немного не понимаю смысла return из async функции, поэтому вариант такой:

в attributes добавляете 

"PeriodValidationMessage": {
	dataValueType: 1,
	value: ""
}

esq:

var periodicity = "";
if (this.get("PsPeriodicity")) {
	periodicity = this.get("PsPeriodicity").displayValue;
}
var esq = Ext.create("Terrasoft.EntitySchemaQuery", { rootSchemaName: "PsConcertPrograms" });
esq.addColumn("PsPeriodicity.Name", "PsPeriodicityName");
esq.filters.addItem(esq.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL, "PsPeriodicity.Name", "Ежедневно"));
esq.getEntityCollection(function(result) {
	if (result.success) {
		var concertProgramsCount = result.collection.collection.length;
		//считывание сист. настройки
		Terrasoft.SysSettings.querySysSettingsItem("PsMaximumProgramsCount", function(countSettings) {
			//сравнение
			if (periodicity === "Ежедневно" &amp;&amp; concertProgramsCount &lt;= countSettings ) {
				this.$PeriodValidationMessage = this.get("Resources.Strings.PsFewFreeConcertHalls").replace("NNN", countSettings);
			}
 
		}, this);
	}
}, this);

валидация

concertHallsValidator: function(message) {
	var invalidMessage = this.$PeriodValidationMessage;
	return {
		fullInvalidMessage: invalidMessage,
		invalidMessage: invalidMessage
	};
}

 

Добрый день,

Каждый борется с асинхронностью своими средствами :)

Как вариант, можно вложить одно в другое: выполнять запросы по очереди, по мере получения ответа из БД. Например перенести вашу логику с esq запросом в колбэк системной настройки.

Тёскин Дмитрий Валерьевич,

 

Пробовал, тогда return возвращает поздно ответ

concertHallsValidator:  function(){
	var periodicity = "";
	if (this.get("PsPeriodicity")) {
		periodicity = this.get("PsPeriodicity").displayValue;
	}
	this.Terrasoft.SysSettings.querySysSettingsItem("PsMaximumProgramsCount", function(countSettings) {
		var esq = Ext.create("Terrasoft.EntitySchemaQuery", {
			rootSchemaName: "PsConcertPrograms"
		});
		esq.addColumn("PsPeriodicity.Name", "PsPeriodicityName");
		var esq1Filter = esq.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL,
			"PsPeriodicity.Name", "Ежедневно");
		esq.filters.add("esq1Filter", esq1Filter);
		esq.getEntityCollection(function(result) {
			var invalidMessage = "";
			if (result.success) {
				var concertProgramsCount = result.collection.collection.length;
				if (periodicity === "Ежедневно" &amp;&amp; concertProgramsCount &gt; countSettings ) {
					invalidMessage = this.get("Resources.Strings.PsFewFreeConcertHalls").replace("NNN", countSettings);
				}
			}
			return invalidMessage;
		}, this);
	}, this);
},
setValidationConfig: function() {
	this.callParent(arguments);
	this.addColumnValidator("PsPeriodicity", this.concertHallsValidator);
}

 

Варфоломеев Данила,

Асинхронность не дает

methods: {
	concertHallsValidator:  function(callback){
		var periodicity = "";
		if (this.get("PsPeriodicity")) {
			periodicity = this.get("PsPeriodicity").displayValue;
		}
		var esq = Ext.create("Terrasoft.EntitySchemaQuery", { rootSchemaName: "PsConcertPrograms" });
		esq.addColumn("PsPeriodicity.Name", "PsPeriodicityName");
		esq.filters.addItem(esq.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL, "PsPeriodicity.Name", "Ежедневно"));
		esq.getEntityCollection(function(result) {
			if (result.success) {
				var concertProgramsCount = result.collection.collection.length;
				//считывание сист. настройки
				Terrasoft.SysSettings.querySysSettingsItem("PsMaximumProgramsCount", function(countSettings) {
					//сравнение
					if (periodicity === "Ежедневно" &amp;&amp; concertProgramsCount &lt;= countSettings ) {
						this.$PeriodValidationMessage = this.get("Resources.Strings.PsFewFreeConcertHalls").replace("NNN", countSettings);
					}
					return callback.call(this);
				}, this);
			}
		}, this);
	},
	MessageValidator: function() {
		var invalidMessage = this.$PeriodValidationMessage;
		return {
			fullInvalidMessage: invalidMessage,
			invalidMessage: invalidMessage
		};
	},
	setValidationConfig: function() {
		// Вызывает инициализацию валидаторов родительской модели представления.
		this.callParent(arguments);
		this.addColumnValidator("CreatedOn", this.concertHallsValidator(this.MessageValidator));
	}
},
			}

 

Prime Source,

нет. стоп. я думал вы прогоняете esq в onEntityInitialized, а потом используете this.$PeriodValidationMessage для проверки. тогда такие варианты:

1) на изменение поля PsPeriodicity запускаете concertHallsValidator. Изменяете this.addColumnValidator("CreatedOn", this.MessageValidator);

2) Используете asyncValidate (вроде так называется метод)

И уберите return. Ну не используется он в асинхронных функциях)

Варфоломеев Данила,

 

Спасибо большее, помогло отлично asyncValidate. Раньше не знал что этот метод. Вод такой код заработал отлично:

asyncValidate: function(callback, scope) {
	this.callParent([function(response) {
		if (!this.validateResponse(response)) {
			return;
		}
		Terrasoft.chain(
			function(next) {
				this.validateConcertHalls(function(response) {
					if (this.validateResponse(response)) {
						next();
					}
				}, this);
			},
			function(next) {
				callback.call(scope, response);
				next();
			}, this);
	}, this]);
},
validateConcertHalls: function(callback, scope) {
	Terrasoft.SysSettings.querySysSettingsItem("PsMaximumProgramsCount", function(countSettings) {
		var periodicity = "";
		var result = {success: true};
		if (this.get("PsPeriodicity")) {
			periodicity = this.get("PsPeriodicity").displayValue;
		}
		var esq = Ext.create("Terrasoft.EntitySchemaQuery", { rootSchemaName: "PsConcertPrograms" });
		esq.addColumn("PsPeriodicity.Name", "PsPeriodicityName");
		esq.filters.addItem(esq.createColumnFilterWithParameter(Terrasoft.ComparisonType.EQUAL, 
			"PsPeriodicity.Name", "Ежедневно"));
		esq.getEntityCollection(function(response) {
			if (response.success &amp;&amp; periodicity === "Ежедневно" &amp;&amp; (!this.isAddMode() &amp;&amp; 
				response.collection.getCount() &gt; countSettings) || (this.isAddMode() &amp;&amp; 
				response.collection.getCount() &gt;= countSettings)) {
					result.message = this.get("Resources.Strings.PsFewFreeConcertHalls").replace("NNN", countSettings);
					result.success = false;
			}
			callback.call(scope || this, result);
		}, this);
	}, this);
}

 

Prime Source,

Если ваша функция должна возвращать какие-то значение, то из коллбэка это сделать не получится. В этом случае у вас уже должны быть где-то готовые значения для того, что бы функция валидации могла синхронно выполниться и вернуть значения. Например значение системной настройки можно получить при инициализации страницы и сохранить в атрибуте страницы, т.к. системная настройка скорее всего не будет часто меняться. Значение из esq запроса можно так же получить раньше и сохранить в атрибут, а потом уже при валидации оперировать существующими значениями. Ну или сделать так, как посоветовал Варфоломеев Данила.

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

Здравствуйте!

Не могу получить конкретную системную настройку из клиентского кода (ошибка на скриншоте) на пользователях-аутсорсерах (не входят в роль "Все сотрудники компании", если это важно). При этом эта же настройка нормально загружается для остальных пользователей, этот же пользователь нормально получает другие настройки. Пересоздавать настройку пробовал, не помогает. В чем может быть дело/как починить?

Изображение удалено.

Нравится

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

Здравствуйте!

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

 

Вильшанский Дмитрий, 

this.Terrasoft.SysSettings.querySysSettingsItem('SlaCalculationEnabled', function (slaEnabled) {console.log(slaEnabled)})

При этом если запросить какую-нибудь несуществующую настройку, то ошибка не выводится, приходит просто undefined

Добрый день.

Ошибка не совсем правильно передает суть проблемы. Дело в правах – т.е. у пользователя нет прав на данную настройку.

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

SQL-скриптом во время его установки инициализируются некие системные переменные, их значения, для этого происходит UPDATE вызов для таблицы SysSettingsValue
При этом не смотря на то, что данные в БД претерпевают изменения, в запущенной на этот момент версии приложения, текущие и вновь подключающиеся пользователи продолжают работать со старыми значениями, которые очевидно помещены в Redis и фактически являются закешированными на стороне сервера, проблема конечно решается сбросом Redis.
Но мне кажется существует некий способ - сбросить или обновить закешированные значения системной переменной обособленно "вручную" принудительно, есть ли такая возможность ?

PS: Возможно существуют специализированные методы JS/C# ?

Нравится

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

Добрый день, Илья.

Можем предложить вам следующее решение:

UserConnection.ResetSettingsCache() – сбрасывает все кэшируемые системные настройки.
UserConnection.ResetSettingsCache(string settingsCode) - сбрасывает все кэш определенной системной настройки.

Это C# или JS имплементация методов ?

Илья, уточняю - С#

Для JS аналога нет ?
Просто вроде как изменение системной переменной которое происходит из UI, тоже корректно обновляет кешь, предполагаю что для JS в API есть аналогичные методы.

Здравствуйте.

Илья, для JS кода аналога сброса системного кэша нет. Но есть JS класс SysSettings, с помощью которого можно изменять системные настройки. При этом автоматически будет сбрасываться кэш.

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

Коллеги, приветствую.

Подскажите, пожалуйста, как можно перенести набор системных настроек через svn?

Во вкладке Данные переносимого пакета я создал новую схему для всех созданных системных настроек с фильтром "Код начинается на ...", схема показала 3 нужные записи.

Попробовал создать схему привязки Значений системной настройки (с фильтром Системная настройка.Код начинается на ... - т.е. зеркально предыдущему фильтру), при показе данных отображает 3 корректных значения, но при сохранении выдаётся ошибка для всех трёх значений: "Не привязаны данные для связанного объекта "SysSettings" по колонке "SysSettings"" и дальше Id системных настроек.

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

Подскажите, пожалуйста, корректный способ переноса настроек.

Нравится

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

Что интересно. Сейчас (в процессе тестирования) попробовал изменить в настройке фильтров ограничение с И на ИЛИ для единственного фильтра и все записи корректно привязались, вторая схема также увидела привязанные данные.

Правда до этого я указал один раз в фильтре конкретное значение записи в режиме фильтра "равно".

Теперь изменения фильтров на И или ИЛИ не отменяют успешность привязки данных к пакету.

Похоже на ошибку в работе привязки данных...

"Фёдоров Александр. Афлекс" написал:Подскажите, пожалуйста, как можно перенести набор системных настроек через svn?

Наиболее гарантированный, а так же с наиболее ожидаемым поведением - это SQL-скрипт.

"Севостьянов Илья Сергеевич" написал:
Наиболее гарантированный, а так же с наиболее ожидаемым поведением - это SQL-скрипт.

Это всё-таки хардкор без поддержки логики приложения...

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

Пока получилось, что надо как минимум одно условие прописать в качестве прямого "равно", тогда данные привязываются, а дальше можно ставить любые условия. Буду ещё дальше смотреть как оно работает.

"Фёдоров Александр. Афлекс" написал:Если есть штатные рабочие инструменты, хочется сначала пользоваться ими, пока не будет доказано, что они неработоспособны.

Они не предназначаются для переноса:
1) Системных настроек и их значений
2) Настройки колонок и их значений
3) Организационной структуры
4) Пользовательских прав.

Об этом, не однократно заявляли специалисты тех.поддрежки.

Если Вы хотите "надежно" переносить Ваши системные настройки - Вам необходимо написать SQL-сценарий, при этом желательно с логикой проверки предварительного существования, а так же проверкой - возможно, связанных данных.
ИМХО самый подходящий вариант (для TSQL) это MERGE скрипт, я о нем писал.

PS: Через данные, нормально переносятся группы системных настроект, включение настроек в группы, но самими значениями настроек - иногда бывают проблемы.

"Севостьянов Илья Сергеевич" написал:

Они не предназначаются для переноса:

1) Системных настроек и их значений

...

Об этом неоднократно заявляли специалисты тех.поддержки.

...

Это утверждение входит в противоречие с рекомендацией (которые звучали в том числе и на форуме Террасофт): при разработке новых объектов для задания значений по умолчанию использовать системные переменные.

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

При этом SQL-скрипт - это слишком низкоуровневый инструмент, для которого требуется разработчик с неплохим знанием SQL.

Здравствуйте!

1. Создать привязку на системную настройку
2. Создать привязку на само значение System settings value
Скриншот примера во вложении.

да нормально они переносятся - привяжите нужные данные для таблиц
SysSettings (обязательно)
SysSettingsFolder (группы настроек)
SysSettingsFolderLcz (локализация групп настроек)
SysSettingsGrantor (вхождение пользователей, если настройка "персональная")
SysSettingsInFolder (вхождение настройки в группу настроек)
SysSettingsLcz (локализация настроек)
SysSettingsReferenceSchema (не знаю, что это, вроде не нужно)
SysSettingsValue (обязательно)

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

и еще момент, если настройка уже была, то, чтобы значение поменялось, надо ставить признак "Обязательно для обновления" на соответствующую колонку

"Мотков Илья" написал:
1. Создать привязку на системную настройку

2. Создать привязку на само значение System settings value


Илья, да, я так и сделал. В первоначальном моём сообщении я писал про то, что не сработала привязка данных из-за группового фильтра. После указания прямого фильтра всё заработало.

Дмитрий, спасибо за столь развёрнуты ответ. За "Обязательно для обновления" - отдельное спасибо.

"Фёдоров Александр. Афлекс" написал:За "Обязательно для обновления" - отдельное спасибо.

Поддерживаю... мы как-то отказались от переноса настроек данными именно по этой причине, эта "особенность" нам была не известна.

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

В новом видеоуроке по настройке системы узнайте о том, почему важно персонализировать наполнение справочников и значения системных настроек bpm'online перед началом работы с приложением, а также о том, как это сделать.

Видео доступно по ссылке: Управление системными настройками и справочниками

Больше видеоуроков вы найдете на сайте академии Terrasoft.

Нравится

Поделиться

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

Добрый день!

Кто-то сталкивался в bpm 7.5 с ошибкой авторизации, сразу после получения и загрузки лицензионного файла и попытке входа пользователем?

Настройка благополучно существует, называется Издатель, содержит значение: Customer.

Exception Message: Элемент Системная настройка с кодом "Maintainer" не найдена не найден
Exception Type: Terrasoft.Common.ItemNotFoundException
Exception Source: Terrasoft.Core

Exception Stack Trace:
at Terrasoft.Core.UserConnection.get_Maintainer()
at Terrasoft.WebApp.Nui.ViewModuleHelper.CreateUserSysValuesScript(UserConnection userConnection, HttpRequest request)
at Terrasoft.WebApp.Nui.ViewModule.SetupUserSysValues()
at Terrasoft.WebApp.Nui.ViewModule.Page_Load(Object sender, EventArgs e)
at System.Web.UI.Control.LoadRecursive()
at System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint)

Application Version: 7.5.0.1122

Нравится

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

Redis сессии сбрасывал?
Redis client: flushall
Или это on demand?

"Александр Кудряшов" написал:Redis сессии сбрасывал?

Добрый день, Александр! Почистили. Не помогло. Есть еще варианты?

Данный вопрос был решен в рамках удаленного подключения по обращению 0248304.(Пересоздали пользователя).

"Пономаренко Артем Николаевич" написал:Пересоздали пользователя

Да, видимо что-то произошло "не по плану" когда создавались исходные контакты/пользователи.

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