mirror of
https://github.com/bia-technologies/yaxunit.git
synced 2024-12-03 08:45:31 +02:00
Исправил ошибку определения предиката для массива
This commit is contained in:
parent
768e6f6183
commit
660f807d0c
@ -64,11 +64,11 @@
|
||||
|
||||
ТипПараметра = ТипЗнч(Предикаты);
|
||||
|
||||
Если ТипПараметра = Тип("ОбщийМодуль") И Предикаты = ЮТПредикаты Тогда
|
||||
Если ЭтоПредикатОбщийМодуль(ТипПараметра, Предикаты) Тогда
|
||||
Результат = ЮТПредикаты.Получить();
|
||||
ИначеЕсли ТипПараметра = Тип("Массив") И (Предикаты.Количество() = 0 ИЛИ ЮТОбщий.ТипСтруктуры(Предикаты[0]) = "Предикат") Тогда
|
||||
ИначеЕсли ЭтоПредикатМассив(ТипПараметра, Предикаты) Тогда
|
||||
Результат = Предикаты;
|
||||
ИначеЕсли ТипПараметра = Тип("Структура") И ЮТОбщий.ТипСтруктуры(Предикаты) = "Предикат" Тогда
|
||||
ИначеЕсли ЭтоПредикатСтруктура(ТипПараметра, Предикаты) Тогда
|
||||
Результат = ЮТОбщий.ЗначениеВМассиве(Предикаты);
|
||||
Иначе
|
||||
ВызватьИсключение "Некорректный параметр метода `ЮТПредикатыКлиентСервер.НаборПредикатов`";
|
||||
@ -78,12 +78,20 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Это предикат
|
||||
//
|
||||
// Параметры:
|
||||
// Предикаты - Произвольный - значение, для которого будет определено является ли оно предикатом или нет
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Булево
|
||||
Функция ЭтоПредикат(Предикаты) Экспорт
|
||||
|
||||
ТипПараметра = ТипЗнч(Предикаты);
|
||||
Возврат (ТипПараметра = Тип("ОбщийМодуль") И Предикаты = ЮТПредикаты)
|
||||
ИЛИ (ТипПараметра = Тип("Массив") И Предикаты.Количество() И ЮТОбщий.ТипСтруктуры(Предикаты[0]) = "Предикат")
|
||||
ИЛИ (ТипПараметра = Тип("Структура") И ЮТОбщий.ТипСтруктуры(Предикаты) = "Предикат");
|
||||
|
||||
Возврат ЭтоПредикатОбщийМодуль(ТипПараметра, Предикаты)
|
||||
Или ЭтоПредикатМассив(ТипПараметра, Предикаты)
|
||||
Или ЭтоПредикатСтруктура(ТипПараметра, Предикаты);
|
||||
|
||||
КонецФункции
|
||||
|
||||
@ -167,6 +175,29 @@
|
||||
|
||||
КонецФункции
|
||||
|
||||
// Параметры сообщений об ошибке.
|
||||
//
|
||||
// Параметры:
|
||||
// ОписаниеПроверки - Строка - Описание конкретной проверки
|
||||
// ТекстПроверяемоеЗначение - Строка - Человекочитаемое описание проверяемого значения
|
||||
// ПредставлениеПроверяемогоЗначения - Неопределено - Представление проверяемого значения
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - Параметры сообщений об ошибке:
|
||||
// * ОписаниеПроверки - Неопределено, Строка - Описание конкретной проверки
|
||||
// * ТекстПроверяемоеЗначение - Неопределено, Строка - Человекочитаемое описание проверяемого значения
|
||||
// * ПредставлениеПроверяемогоЗначения - Неопределено, Строка -
|
||||
Функция ПараметрыСообщенийОбОшибке(ОписаниеПроверки = Неопределено,
|
||||
ТекстПроверяемоеЗначение = "проверяемое значение",
|
||||
ПредставлениеПроверяемогоЗначения = Неопределено) Экспорт
|
||||
|
||||
Возврат Новый Структура("ОписаниеПроверки, ТекстПроверяемоеЗначение, ПредставлениеПроверяемогоЗначения",
|
||||
ОписаниеПроверки,
|
||||
ТекстПроверяемоеЗначение,
|
||||
ПредставлениеПроверяемогоЗначения);
|
||||
|
||||
КонецФункции
|
||||
|
||||
#КонецОбласти
|
||||
|
||||
#Область СлужебныеПроцедурыИФункции
|
||||
@ -257,26 +288,25 @@
|
||||
|
||||
КонецПроцедуры
|
||||
|
||||
// Параметры сообщений об ошибке.
|
||||
//
|
||||
// Параметры:
|
||||
// ОписаниеПроверки - Строка - Описание конкретной проверки
|
||||
// ТекстПроверяемоеЗначение - Строка - Человекочитаемое описание проверяемого значения
|
||||
// ПредставлениеПроверяемогоЗначения - Неопределено - Представление проверяемого значения
|
||||
//
|
||||
// Возвращаемое значение:
|
||||
// Структура - Параметры сообщений об ошибке:
|
||||
// * ОписаниеПроверки - Неопределено, Строка - Описание конкретной проверки
|
||||
// * ТекстПроверяемоеЗначение - Неопределено, Строка - Человекочитаемое описание проверяемого значения
|
||||
// * ПредставлениеПроверяемогоЗначения - Неопределено, Строка -
|
||||
Функция ПараметрыСообщенийОбОшибке(ОписаниеПроверки = Неопределено,
|
||||
ТекстПроверяемоеЗначение = "проверяемое значение",
|
||||
ПредставлениеПроверяемогоЗначения = Неопределено) Экспорт
|
||||
Функция ЭтоПредикатОбщийМодуль(ТипПредикатов, Предикаты)
|
||||
|
||||
Возврат Новый Структура("ОписаниеПроверки, ТекстПроверяемоеЗначение, ПредставлениеПроверяемогоЗначения",
|
||||
ОписаниеПроверки,
|
||||
ТекстПроверяемоеЗначение,
|
||||
ПредставлениеПроверяемогоЗначения);
|
||||
Возврат ТипПредикатов = Тип("ОбщийМодуль")
|
||||
И Предикаты = ЮТПредикаты;
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ЭтоПредикатМассив(ТипПредикатов, Предикаты)
|
||||
|
||||
Возврат ТипПредикатов = Тип("Массив")
|
||||
И Предикаты.Количество()
|
||||
И ЭтоПредикатСтруктура(ТипЗнч(Предикаты[0]), Предикаты[0]);
|
||||
|
||||
КонецФункции
|
||||
|
||||
Функция ЭтоПредикатСтруктура(ТипПредикатов, Предикаты)
|
||||
|
||||
Возврат ТипПредикатов = Тип("Структура")
|
||||
И ЮТОбщий.ТипСтруктуры(Предикаты) = "Предикат";
|
||||
|
||||
КонецФункции
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user