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