1
0
mirror of https://github.com/bia-technologies/yaxunit.git synced 2025-01-08 13:06:32 +02:00

Форматирование

This commit is contained in:
alkoleft 2023-08-11 22:27:46 +03:00
parent 6e1031928c
commit cf0cb91f83
6 changed files with 174 additions and 145 deletions

View File

@ -0,0 +1,25 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// Copyright 2021-2023 BIA-Technologies Limited Liability Company
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
//
//©///////////////////////////////////////////////////////////////////////////©//
#Область СлужебныйПрограммныйИнтерфейс
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
#КонецОбласти

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="3183c284-253d-4826-9b75-d540f433c4c1">
<name>ЮТПреобразования</name>
<synonym>
<key>ru</key>
<value>Преобразования</value>
</synonym>
<server>true</server>
</mdclass:CommonModule>

View File

@ -577,19 +577,17 @@
// * ФикцияОбязательныхПолей - Булево - По умолчанию - Ложь
// * ОбменДаннымиЗагрузка - Булево - По умолчанию - Истина
// Возвращаемое значение:
// см. ЮТТестовыеДанные_ТаблицыЗначений.ТаблицаЗначенийИзМассиваСтруктур
// см. ЮТТестовыеДанные_ТаблицыЗначений.ТипизированнаяТаблицаЗначений
Функция ТаблицаЗначенийИзТабличногоДокумента(ТабличныйДокумент, ОписанияТипов, КэшЗначений = Неопределено,
ЗаменяемыеЗначения = Неопределено, ПараметрыСозданияОбъектов = Неопределено) Экспорт
Параметры = ЮТТестовыеДанные_ТаблицыЗначений.ПараметрыЗаполненияТаблицыЗначений(ПараметрыСозданияОбъектов);
ИсточникДанных = СтруктурыТабличногоДокумента(ТабличныйДокумент);
ТаблицаЗначений = ЮТТестовыеДанные_ТаблицыЗначений.ТипизированнаяТаблицаЗначений(
ИсточникДанных,
ОписанияТипов,
КэшЗначений,
ЗаменяемыеЗначения,
Параметры
);
ТаблицаЗначений = ЮТТестовыеДанные_ТаблицыЗначений.ТипизированнаяТаблицаЗначений(ИсточникДанных,
ОписанияТипов,
КэшЗначений,
ЗаменяемыеЗначения,
Параметры);
Возврат ТаблицаЗначений;
@ -605,19 +603,17 @@
// * ФикцияОбязательныхПолей - Булево - По умолчанию - Ложь
// * ОбменДаннымиЗагрузка - Булево - По умолчанию - Истина
// Возвращаемое значение:
// см. ЮТТестовыеДанные_ТаблицыЗначений.ТаблицаЗначенийИзМассиваСтруктур
// см. ЮТТестовыеДанные_ТаблицыЗначений.ТипизированнаяТаблицаЗначений
Функция ТаблицаЗначенийИзТаблицыMarkDown(Строки, ОписанияТипов, КэшЗначений = Неопределено,
ЗаменяемыеЗначения = Неопределено, ПараметрыСозданияОбъектов = Неопределено) Экспорт
Параметры = ЮТТестовыеДанные_ТаблицыЗначений.ПараметрыЗаполненияТаблицыЗначений(ПараметрыСозданияОбъектов);
ИсточникДанных = ТаблицаMarkDown(Строки);
ТаблицаЗначений = ЮТТестовыеДанные_ТаблицыЗначений.ТипизированнаяТаблицаЗначений(
ИсточникДанных,
ОписанияТипов,
КэшЗначений,
ЗаменяемыеЗначения,
Параметры
);
ТаблицаЗначений = ЮТТестовыеДанные_ТаблицыЗначений.ТипизированнаяТаблицаЗначений(ИсточникДанных,
ОписанияТипов,
КэшЗначений,
ЗаменяемыеЗначения,
Параметры);
Возврат ТаблицаЗначений;

View File

@ -19,44 +19,48 @@
#Область СлужебныйПрограммныйИнтерфейс
// Возвращает таблицу значений, заполненную из массива структур
// Параметры:
// Данные - Массив из Структура - Значения для преобразования в таблицу
// ОписанияТипов - Соответствие из Строка - Соответствие имен колонок таблицы к типам значений
// КэшЗначений - Соответствие из Произвольный - Соответствие для хранения создаваемых значений
// ЗаменяемыеЗначения - Соответствие из Строка - Значения, использующиеся для замены
// Параметры - см. ЮТТестовыеДанные_ТаблицыЗначений.ПараметрыЗаполненияТаблицыЗначений
// Возвращаемое значение:
// ТаблицаЗначений
Функция ТипизированнаяТаблицаЗначений(Данные, ОписанияТипов, КэшЗначений = Неопределено,
ЗаменяемыеЗначения = Неопределено, Параметры = Неопределено) Экспорт
//
// Параметры:
// Данные - Массив из Структура - Значения для преобразования в таблицу
// ОписанияТипов - Соответствие из Строка - Соответствие имен колонок таблицы к типам значений
// КэшЗначений - Соответствие из Произвольный - Соответствие для хранения создаваемых значений
// ЗаменяемыеЗначения - Соответствие из Строка - Значения, использующиеся для замены
// Параметры - см. ЮТТестовыеДанные_ТаблицыЗначений.ПараметрыЗаполненияТаблицыЗначений
// Возвращаемое значение:
// ТаблицаЗначений
Функция ТипизированнаяТаблицаЗначений(Данные,
ОписанияТипов,
КэшЗначений = Неопределено,
ЗаменяемыеЗначения = Неопределено,
Параметры = Неопределено) Экспорт
Если Не ЗначениеЗаполнено(Данные) Тогда
Возврат Новый ТаблицаЗначений;
КонецЕсли;
ИменаКолонок = ЮТОбщий.ВыгрузитьЗначения(Данные[0], "Ключ");
НедостающиеКолонки = НедостающиеКолонкиДанных(ИменаКолонок, ОписанияТипов);
Если ЗначениеЗаполнено(НедостающиеКолонки) Тогда
ТекстИсключения = "Отсутствуют данные для ожидаемых колонок: " + СтрСоединить(НедостающиеКолонки, ",");
Вызватьисключение ТекстИсключения;
ВызватьИсключение ТекстИсключения;
КонецЕсли;
Если ЗаменяемыеЗначения = Неопределено Тогда
ЗаменяемыеЗначения = Новый Соответствие;
КонецЕсли;
Если Параметры = Неопределено Тогда
Параметры = ПараметрыЗаполненияТаблицыЗначений();
Параметры = ПараметрыЗаполненияТаблицыЗначений();
КонецЕсли;
ПараметрыСозданияОбъектовМетаданных = Параметры.СозданиеОбъектовМетаданных;
СведенияОбъектовМетаданных = СведенияОбъектовМетаданныхИзОписанийТипов(ИменаКолонок, ОписанияТипов);
СведенияОРеквизитахОбъектов = СведенияРеквизитовОбъектовМетаданных(ИменаКолонок, СведенияОбъектовМетаданных);
ТаблицаЗначений = ИнициализированнаяТаблицаЗначений(ИменаКолонок, ОписанияТипов);
ИнициализироватьКэшЗначенийОбъектовМетаданных(КэшЗначений, ИменаКолонок, СведенияОбъектовМетаданных);
ИнициализироватьКэшЗначенийОбъектовМетаданных(КэшЗначений, ИменаКолонок, СведенияОбъектовМетаданных);
Для Каждого Источник Из Данные Цикл
@ -71,8 +75,8 @@
Если Не ЗначениеЗаполнено(ЗначениеИсточника) Тогда
Продолжить;
КонецЕсли;
КонецЕсли;
СведенияОбъекта = СведенияОбъектовМетаданных.Получить(ИмяКолонки);
ЗаменяемоеЗначение = ЗаменяемыеЗначения.Получить(ЗначениеИсточника);
@ -89,71 +93,64 @@
Если ЗначениеТаблицы = Неопределено Тогда
ЗначенияРеквизитовОбъекта = ПолучитьЗначенияРеквизитовПоУмолчанию(
ОписаниеОбъектаМетаданных,
ЗначениеИсточника
);
ЗначенияРеквизитовОбъекта = ПолучитьЗначенияРеквизитовПоУмолчанию(ОписаниеОбъектаМетаданных, ЗначениеИсточника);
СведенияРеквизитовОбъекта = СведенияОРеквизитахОбъектов.Получить(ИмяКолонки);
Если СведенияРеквизитовОбъекта <> Неопределено Тогда
Если СведенияРеквизитовОбъекта <> Неопределено Тогда
ДополнитьЗначенияРеквизитовОбъекта(
ЗначенияРеквизитовОбъекта,
СведенияРеквизитовОбъекта,
Источник,
КэшЗначений,
ЗаменяемыеЗначения,
ПараметрыСозданияОбъектовМетаданных
);
ДополнитьЗначенияРеквизитовОбъекта(ЗначенияРеквизитовОбъекта,
СведенияРеквизитовОбъекта,
Источник,
КэшЗначений,
ЗаменяемыеЗначения,
ПараметрыСозданияОбъектовМетаданных);
КонецЕсли;
ЗначениеТаблицы = ЗначениеОбъектаМетаданных(
ОписаниеОбъектаМетаданных,
Менеджер,
ЗначенияРеквизитовОбъекта,
ПараметрыСозданияОбъектовМетаданных
);
ЗначениеТаблицы = ЗначениеОбъектаМетаданных(ОписаниеОбъектаМетаданных,
Менеджер,
ЗначенияРеквизитовОбъекта,
ПараметрыСозданияОбъектовМетаданных);
КэшЗначений[Менеджер].Вставить(ЗначениеИсточника, ЗначениеТаблицы);
КонецЕсли;
КонецЕсли;
Иначе
ЗначениеТаблицы = ПривестиЗначение(ОписаниеТипа, ЗначениеИсточника);
КонецЕсли;
КонецЕсли;
НоваяСтрока[ИмяКолонки] = ЗначениеТаблицы;
КонецЦикла;
КонецЦикла;
КонецЦикла;
КонецЦикла;
Возврат ТаблицаЗначений;
КонецФункции
// Возвращает фиксированную структуру параметров для заполнения таблицы значений
// Параметры:
// СозданиеОбъектовМетаданных - Структура:
// * ФикцияОбязательныхПолей - Булево
// * ОбменДаннымиЗагрузка - Булево
// Возвращаемое значение:
// ФиксированнаяСтруктура:
// * СозданиеОбъектовМетаданных - ФиксированнаяСтруктура:
// * ФикцияОбязательныхПолей - Булево,
// * ОбменДаннымиЗагрузка - Булево
// Параметры:
// СозданиеОбъектовМетаданных - Структура:
// * ФикцияОбязательныхПолей - Булево
// * ОбменДаннымиЗагрузка - Булево
// Возвращаемое значение:
// ФиксированнаяСтруктура:
// * СозданиеОбъектовМетаданных - ФиксированнаяСтруктура:
// * ФикцияОбязательныхПолей - Булево
// * ОбменДаннымиЗагрузка - Булево
Функция ПараметрыЗаполненияТаблицыЗначений(СозданиеОбъектовМетаданных = Неопределено) Экспорт
ФикцияОбязательныхПолей = Ложь;
ОбменДаннымиЗагрузка = Истина;
Если ТипЗнч(СозданиеОбъектовМетаданных) = Тип("Структура") Тогда
ЮТОбщий.ЗначениеСтруктуры(СозданиеОбъектовМетаданных, "ФикцияОбязательныхПолей", ФикцияОбязательныхПолей);
ЮТОбщий.ЗначениеСтруктуры(СозданиеОбъектовМетаданных, "ОбменДаннымиЗагрузка", ОбменДаннымиЗагрузка);
КонецЕсли;
ФикцияОбязательныхПолей = ЮТОбщий.ЗначениеСтруктуры(СозданиеОбъектовМетаданных, "ФикцияОбязательныхПолей", ФикцияОбязательныхПолей);
ОбменДаннымиЗагрузка = ЮТОбщий.ЗначениеСтруктуры(СозданиеОбъектовМетаданных, "ОбменДаннымиЗагрузка", ОбменДаннымиЗагрузка);
КонецЕсли;
СозданиеОбъектовМетаданных = Новый Структура;
СозданиеОбъектовМетаданных.Вставить("ФикцияОбязательныхПолей", ФикцияОбязательныхПолей);
@ -176,14 +173,14 @@
ОжидаемыеКолонки = ЮТОбщий.ВыгрузитьЗначения(ОписанияТипов, "Ключ");
Для Каждого ИмяКолонки Из ОжидаемыеКолонки Цикл
Если ИменаКолонок.Найти(ИмяКолонки) = Неопределено Тогда
НедостающиеКолонки.Добавить(ИмяКолонки);
КонецЕсли;
КонецЦикла;
НедостающиеКолонки.Добавить(ИмяКолонки);
КонецЕсли;
КонецЦикла;
Возврат НедостающиеКолонки;
КонецФункции
Функция СведенияОбъектовМетаданныхИзОписанийТипов(ИменаКолонок, ОписанияТипов)
МенеджерыЗначений = Новый Соответствие;
@ -196,16 +193,16 @@
Если ОписаниеОбъектаМетаданных = Неопределено Тогда
Продолжить;
КонецЕсли;
Менеджер = МенеджерОбъектаИзОписанияОбъектаМетаданных(ОписаниеОбъектаМетаданных);
Сведения = Новый Структура;
Сведения.Вставить("Менеджер", Менеджер);
Сведения.Вставить("ОписаниеОбъектаМетаданных", ОписаниеОбъектаМетаданных);
МенеджерыЗначений.Вставить(ИмяКолонки, Сведения);
МенеджерыЗначений.Вставить(ИмяКолонки, Сведения);
КонецЦикла;
КонецЦикла;
Возврат МенеджерыЗначений;
@ -225,17 +222,17 @@
Если ОбъектМетаданных = Неопределено Тогда
Возврат ОписаниеОбъектаМетаданных;
КонецЕсли;
КонецЕсли;
Если Метаданные.Перечисления.Содержит(ОбъектМетаданных) Тогда
ОписаниеОбъектаМетаданных = Новый Структура;
ОписаниеОбъектаМетаданных.Вставить("Имя", ОбъектМетаданных.Имя);
Иначе
Иначе
ОписаниеОбъектаМетаданных = ЮтМетаданные.ОписаниеОбъектМетаданных(ОбъектМетаданных.ПолноеИмя());
КонецЕсли;
Возврат ОписаниеОбъектаМетаданных;
КонецФункции
Функция ТипИзОписанияТипа(ОписаниеТипа)
@ -243,18 +240,15 @@
Если ОписаниеТипа = Неопределено Тогда
Возврат Неопределено;
КонецЕсли;
Если ТипЗнч(ОписаниеТипа) <> Тип("ОписаниеТипов") Или Не ЗначениеЗаполнено(ОписаниеТипа.Типы()) Тогда
Вызватьисключение ЮТОбщий.НеподдерживаемыйПараметрМетода(
"ЮТТестовыеДанные_ТаблицыЗначений.ТипИзОписанияТипа",
ОписаниеТипа
);
ВызватьИсключение ЮТОбщий.НеподдерживаемыйПараметрМетода("ЮТТестовыеДанные_ТаблицыЗначений.ТипИзОписанияТипа", ОписаниеТипа);
КонецЕсли;
Возврат ОписаниеТипа.Типы()[0];
КонецФункции
Функция МенеджерОбъектаИзОписанияОбъектаМетаданных(ОписаниеОбъектаМетаданных)
Если Метаданные.Перечисления.Найти(ОписаниеОбъектаМетаданных.Имя) <> Неопределено Тогда
@ -273,7 +267,7 @@
Возврат Менеджер;
КонецФункции
Функция СведенияРеквизитовОбъектовМетаданных(ИменаКолонок, СведенияОбъектовМетаданных)
ПодстрокиДляЗамены = ЮТТестовыеДанныеСлужебный.ПодстрокиДляЗаменыВИменахСвойств();
@ -288,43 +282,43 @@
Если СведенияОбъектаМетаданных = Неопределено Тогда
Продолжить;
КонецЕсли;
ОписаниеОбъектаМетаданных = СведенияОбъектаМетаданных.ОписаниеОбъектаМетаданных;
МассивСведений = Новый Массив;
МассивСведений = Новый Массив;
Для Каждого ИмяКолонки Из ИменаКолонок Цикл
Если СтрНайти(ИмяКолонки, ИмяКолонкиОбъекта) = 0 Или СтрНайти(ИмяКолонки, ПодстрокаЗаменыТочки) = 0 Тогда
Продолжить;
КонецЕсли;
Массив = СтрРазделить(ИмяКолонки, ПодстрокаЗаменыТочки, Ложь);
Массив = СтрРазделить(ИмяКолонки, ПодстрокаЗаменыТочки, Ложь);
Если Массив.Количество() <> 2 Тогда
Продолжить;
Иначе
РеквизитОбъекта = Неопределено;
ОписаниеОбъектаМетаданных.Реквизиты.Свойство(Массив[1], РеквизитОбъекта);
ОписаниеОбъектаМетаданных.Реквизиты.Свойство(Массив[1], РеквизитОбъекта);
Если РеквизитОбъекта <> Неопределено Тогда
Сведения = Новый Структура;
Сведения.Вставить("Идентификатор", ИмяКолонки);
Сведения.Вставить("ИмяРеквизита", РеквизитОбъекта.Имя);
Сведения.Вставить("ОписаниеТипа", РеквизитОбъекта.Тип);
МассивСведений.Добавить(Сведения);
КонецЕсли;
КонецЕсли;
МассивСведений.Добавить(Сведения);
КонецЕсли;
КонецЕсли;
КонецЦикла;
Если ЗначениеЗаполнено(МассивСведений) Тогда
СведенияРеквизитовОбъекта.Вставить(ИмяКолонкиОбъекта, МассивСведений);
СведенияРеквизитовОбъекта.Вставить(ИмяКолонкиОбъекта, МассивСведений);
КонецЕсли;
КонецЦикла;
Возврат СведенияРеквизитовОбъекта;
КонецФункции
Функция ИнициализированнаяТаблицаЗначений(ИменаКолонок, ОписанияТипов)
@ -338,11 +332,11 @@
Если ОписаниеТипаКолонки = Неопределено Тогда
Продолжить;
КонецЕсли;
ТаблицаЗначений.Колонки.Добавить(ИмяКолонки, ОписаниеТипаКолонки);
КонецЦикла;
Возврат ТаблицаЗначений;
КонецФункции
@ -352,20 +346,20 @@
Если Не ЗначениеЗаполнено(КэшЗначений) Тогда
КэшЗначений = Новый Соответствие;
КонецЕсли;
Для Каждого ИмяКолонки Из ИменаКолонок Цикл
СведенияОбъекта = СведенияОбъектовМетаданных.Получить(ИмяКолонки);
Если СведенияОбъекта = Неопределено Тогда
Продолжить;
КонецЕсли;
Менеджер = СведенияОбъекта.Менеджер;
Если КэшЗначений.Получить(Менеджер) = Неопределено Тогда
КэшЗначений.Вставить(Менеджер, Новый Соответствие);
КонецЕсли;
КонецЦикла;
КонецЦикла;
КонецПроцедуры
@ -378,8 +372,8 @@
ИначеЕсли ОписаниеОбъектаМетаданных.ОписаниеТипа.Имя = "Справочник" Тогда
ИмяРеквизита = "Наименование";
Если ОписаниеОбъектаМетаданных.Реквизиты.Свойство(ИмяРеквизита) = Неопределено Тогда
ИмяРеквизита = "Код";
КонецЕсли;
ИмяРеквизита = "Код";
КонецЕсли;
ЗначенияРеквизитовПоУмолчанию.Вставить(ИмяРеквизита, Значение);
КонецЕсли;
@ -387,9 +381,13 @@
КонецФункции
Функция ДополнитьЗначенияРеквизитовОбъекта(Результат, СведенияРеквизитов, Источник, КешЗначений, ЗаменяемыеЗначения,
ПараметрыСозданияОбъектовМетаданных)
Функция ДополнитьЗначенияРеквизитовОбъекта(Результат,
СведенияРеквизитов,
Источник,
КешЗначений,
ЗаменяемыеЗначения,
ПараметрыСозданияОбъектовМетаданных)
Для Каждого Сведения Из СведенияРеквизитов Цикл
ЗначениеИсточника = Источник[Сведения.Идентификатор];
@ -397,50 +395,50 @@
Если ЗначениеЗаполнено(ЗначениеИсточника) Тогда
ЗаменяемоеЗначение = ЗаменяемыеЗначения.Получить(ЗначениеИсточника);
ОписаниеОбъектаМетаданных = ОписаниеОбъектМетаданныхПоОписаниюТипа(Сведения.ОписаниеТипа);
ОписаниеОбъектаМетаданных = ОписаниеОбъектМетаданныхПоОписаниюТипа(Сведения.ОписаниеТипа);
Если ЗаменяемоеЗначение <> Неопределено Тогда
ЗначениеРеквизита = ЗаменяемоеЗначение;
ЗначениеРеквизита = ЗаменяемоеЗначение;
ИначеЕсли ОписаниеОбъектаМетаданных = Неопределено Тогда
ЗначениеРеквизита = Сведения.ОписаниеТипа.ПривестиЗначение(ЗначениеИсточника);
Иначе
ЗначениеРеквизита = Сведения.ОписаниеТипа.ПривестиЗначение(ЗначениеИсточника);
Менеджер = МенеджерОбъектаИзОписанияОбъектаМетаданных(ОписаниеОбъектаМетаданных);
Иначе
Менеджер = МенеджерОбъектаИзОписанияОбъектаМетаданных(ОписаниеОбъектаМетаданных);
ЗначенияМенеджера = КешЗначений[Менеджер];
Если ЗначенияМенеджера = Неопределено Тогда
ЗначенияМенеджера = Новый Соответствие;
КешЗначений.Вставить(Менеджер, ЗначенияМенеджера);
КонецЕсли;
КонецЕсли;
ЗначениеРеквизита = ЗначенияМенеджера.Получить(ЗначениеИсточника);
Если ЗначениеРеквизита = Неопределено Тогда
ЗначенияРеквизитовОбъекта = ПолучитьЗначенияРеквизитовПоУмолчанию(
ОписаниеОбъектаМетаданных,
ОписаниеОбъектаМетаданных,
ЗначениеИсточника
);
ЗначениеРеквизита = ЗначениеОбъектаМетаданных(
ОписаниеОбъектаМетаданных,
Менеджер,
ОписаниеОбъектаМетаданных,
Менеджер,
ЗначенияРеквизитовОбъекта,
ПараметрыСозданияОбъектовМетаданных
);
КешЗначений[Менеджер].Вставить(ЗначениеИсточника, ЗначениеРеквизита);
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецЕсли;
Иначе
ЗначениеРеквизита = Неопределено;
ЗначениеРеквизита = Неопределено;
КонецЕсли;
@ -454,27 +452,27 @@
Функция ЗначениеОбъектаМетаданных(ОписаниеОбъектаМетаданных, Менеджер, ЗначенияРеквизитов, Параметры)
Если Метаданные.Перечисления.Найти(ОписаниеОбъектаМетаданных.Имя) <> Неопределено Тогда
Если Метаданные.Перечисления.Найти(ОписаниеОбъектаМетаданных.Имя) <> Неопределено Тогда
Значение = Менеджер[ЗначенияРеквизитов.Значение];
Иначе
Иначе
КонструкторОбъекта = ЮТест.Данные().КонструкторОбъекта(Менеджер);
КонструкторОбъекта = ЮТест.Данные().КонструкторОбъекта(Менеджер);
Для Каждого ДанныеЗначения Из ЗначенияРеквизитов Цикл
КонструкторОбъекта.Установить(ДанныеЗначения.Ключ, ДанныеЗначения.Значение);
КонецЦикла;
КонструкторОбъекта.Установить(ДанныеЗначения.Ключ, ДанныеЗначения.Значение);
КонецЦикла;
Если Параметры.ФикцияОбязательныхПолей Тогда
КонструкторОбъекта.ФикцияОбязательныхПолей();
КонструкторОбъекта.ФикцияОбязательныхПолей();
КонецЕсли;
Значение = КонструкторОбъекта.Записать(, Параметры.ОбменДаннымиЗагрузка);
КонецЕсли;
Возврат Значение;
КонецФункции
Функция ПривестиЗначение(ОписаниеТипа, Значение)
@ -482,8 +480,8 @@
Если ОписаниеТипа.СодержитТип(Тип("Дата")) Тогда
Результат = ПривестиЗначениеКДате(ОписаниеТипа, Значение);
ИначеЕсли ОписаниеТипа.СодержитТип(Тип("Число")) Тогда
Результат = ПривестиЗначениеКЧислу(ОписаниеТипа, Значение);
Иначе
Результат = ПривестиЗначениеКЧислу(ОписаниеТипа, Значение);
Иначе
Результат = ОписаниеТипа.ПривестиЗначение(Значение);
КонецЕсли;
@ -509,7 +507,7 @@
Если ЗначениеЗаполнено(СтрокаДаты) Тогда
Прервать;
КонецЕсли;
МассивЧастейДат = СтрРазделить(Значение, Разделитель);
Если МассивЧастейДат.Количество() = 3 Тогда
Если СтрДлина(МассивЧастейДат[2]) = 4 Тогда
@ -517,12 +515,12 @@
ИначеЕсли СтрДлина(МассивЧастейДат[0]) = 4 Тогда
СтрокаДаты = МассивЧастейДат[0] + МассивЧастейДат[1] + МассивЧастейДат[2];
Иначе
СтрокаДаты = "20" + МассивЧастейДат[2] + МассивЧастейДат[1] + МассивЧастейДат[0];
СтрокаДаты = "20" + МассивЧастейДат[2] + МассивЧастейДат[1] + МассивЧастейДат[0];
КонецЕсли;
КонецЕсли;
КонецЦикла;
Результат = ОписаниеТипа.ПривестиЗначение(СтрокаДаты);
Возврат Результат;
@ -535,7 +533,7 @@
Если ЗначениеЗаполнено(Результат) Тогда
Возврат Результат;
КонецЕсли;
Значение = СтрЗаменить(Значение, " ", "");
Результат = ОписаниеТипа.ПривестиЗначение(Значение);

View File

@ -123,7 +123,7 @@
ЗаменяемыеПодстроки = Новый Соответствие;
ЗаменяемыеПодстроки.Вставить(".", "_tchk_");
Возврат ЗаменяемыеПодстроки;
КонецФункции

View File

@ -87,6 +87,7 @@
<commonModules>CommonModule.ЮТПодражательСлужебный</commonModules>
<commonModules>CommonModule.ЮТПредикаты</commonModules>
<commonModules>CommonModule.ЮТПредикатыКлиентСервер</commonModules>
<commonModules>CommonModule.ЮТПреобразования</commonModules>
<commonModules>CommonModule.ЮТРасширения</commonModules>
<commonModules>CommonModule.ЮТРегистрацияОшибок</commonModules>
<commonModules>CommonModule.ЮТСобытия</commonModules>