Добавить в API глобальные переменные

tormozit Закрыто

Нужно сохранять в скрипте COM объект между вызовами скрипта.

Комментарии

bolsun
#1, 26 июля 2023 10:32

Для этого можно использовать СохранитьЗначениеСеанса() ВосстановитьЗначениеСеанса().

Пример:

Перем RegExp;

ТурбоКонф = Новый ТурбоКонф;
ЭтоКэш = Истина;

RegExp = ТурбоКонф.ВосстановитьЗначениеСеанса("RegExp");

Если RegExp = Неопределено Тогда	
	ЭтоКэш = Ложь;
	RegExp = Новый COMОбъект("VBScript.RegExp");		
	ТурбоКонф.СохранитьЗначениеСеанса("RegExp", RegExp);
КонецЕсли;

//Проверяем что COMОбъект работает

//Получить из строки значение productId в формате числа
ПроверяемаяСтрока = "?productId=3453466&vendorId=02";

RegExp.MultiLine = Истина;
RegExp.Global = Истина;
RegExp.IgnoreCase = Истина;

// \d+ - последовательность чисел, не меньше 1 символа
// скобки - захватить значение в отдельную группу
RegExp.Pattern = "productId=(\d+)";

Matches=RegExp.Execute(ПроверяемаяСтрока);

Если Matches.Count > 0 Тогда
	SubMatch = Matches.Item(0);
	//Получаем значение первой захваченной группы
	productId= SubMatch.SubMatches.Item(0);
	ТурбоКонф.ПоказатьВсплывающееУведомление("Из кэша: " + Строка(ЭтоКэш), "productId: " + productId);
КонецЕсли;


bolsun
#2, 26 июля 2023 15:31

bolsun изменил статус на Закрыто


Для вставки изображения или файла, перетащите его в поле редактора или вставьте файл из буфера