доп исправления
This commit is contained in:
parent
bb635b5074
commit
f85ff1df02
@ -1,93 +1,18 @@
|
||||
&НаСервере
|
||||
Перем Кеш;
|
||||
|
||||
&НаСервере
|
||||
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
|
||||
//УИ_ОбщегоНазначения.ФормаИнструментаПриСозданииНаСервере(ЭтотОбъект, Отказ, СтандартнаяОбработка);
|
||||
КонецПроцедуры
|
||||
|
||||
&НаСервере
|
||||
Функция СтрокуВДату(СтрокаДата)
|
||||
Попытка
|
||||
СтрокаДата = Прав(СтрокаДата, 10);
|
||||
МассивДата = Новый Массив;
|
||||
МассивДата = РазложитьСтрокуВМассивПодстрок(СтрокаДата, ".");
|
||||
МассивДата = СтрРазделить(СтрокаДата, ".");
|
||||
Возврат Дата(Строка(МассивДата[2]) + Строка(МассивДата[1]) + Строка(МассивДата[0]));
|
||||
Исключение
|
||||
Возврат Дата(1899, 12, 30);
|
||||
КонецПопытки;
|
||||
КонецФункции
|
||||
|
||||
// Разбивает строку на несколько строк по разделителю. Разделитель может иметь любую длину.
|
||||
//
|
||||
// Параметры:
|
||||
// Строка - Строка - текст с разделителями;
|
||||
// Разделитель - Строка - разделитель строк текста, минимум 1 символ;
|
||||
// ПропускатьПустыеСтроки - Булево - признак необходимости включения в результат пустых строк.
|
||||
// Если параметр не задан, то функция работает в режиме совместимости со своей предыдущей версией:
|
||||
// - для разделителя-пробела пустые строки не включаются в результат, для остальных разделителей пустые строки
|
||||
// включаются в результат.
|
||||
// Е если параметр Строка не содержит значащих символов или не содержит ни одного символа (пустая строка), то в
|
||||
// случае разделителя-пробела результатом функции будет массив, содержащий одно значение "" (пустая строка), а
|
||||
// при других разделителях результатом функции будет пустой массив.
|
||||
// СокращатьНепечатаемыеСимволы - Булево - сокращать непечатаемые символы по краям каждой из найденных подстрок.
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Массив - массив строк.
|
||||
//
|
||||
// Примеры:
|
||||
// РазложитьСтрокуВМассивПодстрок(",один,,два,", ",") - возвратит массив из 5 элементов, три из которых - пустые
|
||||
// строки;
|
||||
// РазложитьСтрокуВМассивПодстрок(",один,,два,", ",", Истина) - возвратит массив из двух элементов;
|
||||
// РазложитьСтрокуВМассивПодстрок(" один два ", " ") - возвратит массив из двух элементов;
|
||||
// РазложитьСтрокуВМассивПодстрок("") - возвратит пустой массив;
|
||||
// РазложитьСтрокуВМассивПодстрок("",,Ложь) - возвратит массив с одним элементом "" (пустой строкой);
|
||||
// РазложитьСтрокуВМассивПодстрок("", " ") - возвратит массив с одним элементом "" (пустой строкой);
|
||||
//
|
||||
&НаСервере
|
||||
Функция РазложитьСтрокуВМассивПодстрок(Знач Строка, Знач Разделитель = ",", Знач ПропускатьПустыеСтроки = Неопределено,
|
||||
СокращатьНепечатаемыеСимволы = Ложь) Экспорт
|
||||
|
||||
Результат = Новый Массив;
|
||||
|
||||
// Для обеспечения обратной совместимости.
|
||||
Если ПропускатьПустыеСтроки = Неопределено Тогда
|
||||
ПропускатьПустыеСтроки = ?(Разделитель = " ", Истина, Ложь);
|
||||
Если ПустаяСтрока(Строка) Тогда
|
||||
Если Разделитель = " " Тогда
|
||||
Результат.Добавить("");
|
||||
КонецЕсли;
|
||||
Возврат Результат;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
//
|
||||
|
||||
Позиция = Найти(Строка, Разделитель);
|
||||
Пока Позиция > 0 Цикл
|
||||
Подстрока = Лев(Строка, Позиция - 1);
|
||||
Если Не ПропускатьПустыеСтроки Или Не ПустаяСтрока(Подстрока) Тогда
|
||||
Если СокращатьНепечатаемыеСимволы Тогда
|
||||
Результат.Добавить(СокрЛП(Подстрока));
|
||||
Иначе
|
||||
Результат.Добавить(Подстрока);
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
Строка = Сред(Строка, Позиция + СтрДлина(Разделитель));
|
||||
Позиция = Найти(Строка, Разделитель);
|
||||
КонецЦикла;
|
||||
|
||||
Если Не ПропускатьПустыеСтроки Или Не ПустаяСтрока(Строка) Тогда
|
||||
Если СокращатьНепечатаемыеСимволы Тогда
|
||||
Результат.Добавить(СокрЛП(Строка));
|
||||
Иначе
|
||||
Результат.Добавить(Строка);
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
Возврат Результат;
|
||||
|
||||
КонецФункции
|
||||
|
||||
&НаСервере
|
||||
Процедура ПолучитьСписокЛицензийНаСервере()
|
||||
Объект.СписокЛицензий.Очистить();
|
||||
@ -109,15 +34,20 @@
|
||||
стр = "";
|
||||
Пока стр <> Неопределено Цикл
|
||||
стр = Текст.ПрочитатьСтроку();
|
||||
Сообщить(стр);
|
||||
ПозицияИмениФайла = СтрНайти(стр, "(file name:");
|
||||
|
||||
ПозицияИмениФайла = СтрНайти(стр, "(file name:");
|
||||
Если ПозицияИмениФайла > 0 Тогда
|
||||
ПинЛицензия = Лев(стр, ПозицияИмениФайла - 1);
|
||||
Иначе
|
||||
ПинЛицензия = стр;
|
||||
ПозицияИмениФайла = СтрНайти(стр, "(имя файла:");
|
||||
Если ПозицияИмениФайла > 0 Тогда
|
||||
ПинЛицензия = Лев(стр, ПозицияИмениФайла - 1);
|
||||
Иначе
|
||||
ПинЛицензия = стр;
|
||||
КонецЕсли;
|
||||
КонецЕсли;
|
||||
|
||||
мПинЛицензия = РазложитьСтрокуВМассивПодстрок(ПинЛицензия, "-");
|
||||
мПинЛицензия = СтрРазделить(ПинЛицензия, "-");
|
||||
Если мПинЛицензия.Количество() < 2 Тогда
|
||||
Продолжить;
|
||||
КонецЕсли;
|
||||
@ -128,13 +58,10 @@
|
||||
нСтр.НомерЛицензии = мПинЛицензия[1];
|
||||
нСтр.ИмяФайлаЛицензии = ИмяФайлаЛицензии;
|
||||
нСтр.РучнойВвод = Ложь;
|
||||
|
||||
//Сообщить(стр);
|
||||
КонецЦикла;
|
||||
Текст.Закрыть();
|
||||
УдалитьФайлы(ФайлОтвет);
|
||||
УдалитьФайлы(ИмяВременногоФайлаCMD);
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
&НаКлиенте
|
||||
@ -186,7 +113,6 @@
|
||||
Возврат Новый ФиксированноеСоответствие(Р);
|
||||
КонецФункции
|
||||
|
||||
|
||||
&НаСервере
|
||||
Функция ЗапросИнформацииОЛицезнии(ИмяЛицензии)
|
||||
СтруктураОтвета = Новый Структура("Описание, Фамилия, Имя, Отчество, EMail, Компания, Страна, Индекс, Город, Регион, Район, Улица, Дом, Строение, Квартира, ДатаАктивации, РегистрационныйНомер, КодПродукта, ТекстоваяИнформация, КоличествоЛицензий");
|
||||
@ -234,7 +160,7 @@
|
||||
Позиция_РабМест = СтрНайти(СтруктураОтвета.Описание, " рабочих мест");
|
||||
Если Позиция_РабМест > 0 Тогда
|
||||
тСтр = Лев(СтруктураОтвета.Описание, Позиция_РабМест);
|
||||
мСтр = РазложитьСтрокуВМассивПодстрок(тСтр, " ");
|
||||
мСтр = СтрРазделить(тСтр, " ");
|
||||
СтруктураОтвета.КоличествоЛицензий = Число(мСтр[мСтр.Количество() - 1]);
|
||||
КонецЕсли;
|
||||
|
||||
@ -263,7 +189,7 @@
|
||||
Текст.Открыть(ФайлОтвет, SPS_КодировкаФайлаОтвета());
|
||||
стр = Текст.Прочитать();
|
||||
СтруктураОтвета = Новый Структура("Активна, ТекстоваяИнформация");
|
||||
Если СтрНайти(стр, "License check passed for the following license:") Тогда
|
||||
Если СтрНайти(стр, "License check passed for the following license:") > 0 ИЛИ СтрНайти(стр, "выполнена успешно") > 0 Тогда
|
||||
СтруктураОтвета.Активна = Истина;
|
||||
Иначе
|
||||
СтруктураОтвета.Активна = Ложь;
|
||||
|
Loading…
Reference in New Issue
Block a user