diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 49dadc0c7..1620c414d 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -211,31 +211,23 @@ // Контекст - см. НовыйКонтекстКонструктораДвижений Процедура ЗаписатьДвиженияДокумента(Контекст) Экспорт - Документ = Контекст.Документ; - - ЭтоСсылка = ЮТТипыДанныхСлужебный.ЭтоСсылочныйТип(ТипЗнч(Документ)); - - Если ЭтоСсылка Тогда - НаборЗаписей = ЮТОбщий.Менеджер(Контекст.Метаданные).СоздатьНаборЗаписей(); - НаборЗаписей.Отбор.Регистратор.Установить(Документ); + Если ЮТТипыДанныхСлужебный.ЭтоСсылочныйТип(ТипЗнч(Контекст.Документ)) Тогда + СсылкаНаДокумент = Контекст.Документ; + ИначеЕсли ЗначениеЗаполнено(Контекст.Документ.Ссылка) Тогда + СсылкаНаДокумент = Контекст.Документ.Ссылка; Иначе - НаборЗаписей = Документ.Движения[Контекст.Метаданные.Имя]; + ВызватьИсключение "Документ не записан"; КонецЕсли; - Для Каждого Строка Из Контекст.Данные Цикл - - Запись = НаборЗаписей.Добавить(); - ЗаполнитьЗначенияСвойств(Запись, Строка); - Если НЕ ЗначениеЗаполнено(Запись.Период) Тогда - Запись.Период = Документ.Дата; - КонецЕсли; - - КонецЦикла; - - Если ЭтоСсылка Тогда - НаборЗаписей.Записать(); + Если НЕ ЗначениеЗаполнено(СсылкаНаДокумент) Тогда + ВызватьИсключение "Не установлена ссылка на документ, владелец движений"; КонецЕсли; + ПараметрыЗаписи = ЮТОбщий.ПараметрыЗаписи(); + ПараметрыЗаписи.ДополнительныеСвойства = Контекст.ДополнительныеСвойства; + + ЮТТестовыеДанныеСлужебный.ЗаписатьДвиженияРегистратора(СсылкаНаДокумент, Контекст.Данные, Контекст.Метаданные, ПараметрыЗаписи); + КонецПроцедуры #КонецОбласти diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" index 3628e0674..b3f6453b3 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271/Module.bsl" @@ -174,6 +174,16 @@ КонецФункции +Процедура ЗаписатьДвиженияРегистратора(Регистратор, Данные, Менеджер, ПараметрыЗаписи) Экспорт + +#Если Сервер Тогда + ЮТТестовыеДанныеСлужебныйСервер.ЗаписатьДвиженияРегистратора(Регистратор, Данные, Менеджер, ПараметрыЗаписи); +#Иначе + ЮТТестовыеДанныеСлужебныйВызовСервера.ЗаписатьДвиженияРегистратора(Регистратор, Данные, Менеджер, ПараметрыЗаписи); +#КонецЕсли + +КонецПроцедуры + // Создает новый объект и заполняет его данными // // Параметры: diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" index 784a02a2c..d7b86dfc6 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\222\321\213\320\267\320\276\320\262\320\241\320\265\321\200\320\262\320\265\321\200\320\260/Module.bsl" @@ -24,6 +24,12 @@ КонецФункции +Процедура ЗаписатьДвиженияРегистратора(Знач Регистратор, Знач Данные, Знач Менеджер, Знач ПараметрыЗаписи) Экспорт + + ЮТТестовыеДанныеСлужебныйСервер.ЗаписатьДвиженияРегистратора(Регистратор, Данные, Менеджер, ПараметрыЗаписи); + +КонецПроцедуры + Функция НовыйОбъект(Знач Менеджер, Знач Данные, Знач ДополнительныеСвойства, Знач УникальныйИдентификаторСсылки) Экспорт Возврат ЮТТестовыеДанныеСлужебныйСервер.НовыйОбъект(Менеджер, Данные, ДополнительныеСвойства, УникальныйИдентификаторСсылки); diff --git "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" index 2011de772..cc1056730 100644 --- "a/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" +++ "b/exts/yaxunit/src/CommonModules/\320\256\320\242\320\242\320\265\321\201\321\202\320\276\320\262\321\213\320\265\320\224\320\260\320\275\320\275\321\213\320\265\320\241\320\273\321\203\320\266\320\265\320\261\320\275\321\213\320\271\320\241\320\265\321\200\320\262\320\265\321\200/Module.bsl" @@ -68,6 +68,28 @@ КонецФункции +Процедура ЗаписатьДвиженияРегистратора(Регистратор, Данные, МетаданныеРегистра, ПараметрыЗаписи) Экспорт + + Менеджер = ЮТОбщий.Менеджер(МетаданныеРегистра); + НаборЗаписей = Менеджер.СоздатьНаборЗаписей(); + + ДатаРегистратора = ЮТЗапросы.ЗначениеРеквизита(Регистратор, "Дата"); + НаборЗаписей.Отбор.Регистратор.Установить(Регистратор); + + Для Каждого Строка Из Данные Цикл + + Запись = НаборЗаписей.Добавить(); + ЗаполнитьЗначенияСвойств(Запись, Строка); + Если НЕ ЗначениеЗаполнено(Запись.Период) Тогда + Запись.Период = ДатаРегистратора; + КонецЕсли; + + КонецЦикла; + + НаборЗаписей.Записать(); + +КонецПроцедуры + Функция НовыйОбъект(Знач Менеджер, Данные, ДополнительныеСвойства, УникальныйИдентификаторСсылки) Экспорт ОписаниеОбъектаМетаданных = ЮТМетаданные.ОписаниеОбъектаМетаданных(Менеджер); diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/Forms/\320\232\320\273\320\270\320\265\320\275\321\202\321\201\320\272\320\270\320\271\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200/Form.form" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/Forms/\320\232\320\273\320\270\320\265\320\275\321\202\321\201\320\272\320\270\320\271\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200/Form.form" new file mode 100644 index 000000000..2a2b0006b --- /dev/null +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/Forms/\320\232\320\273\320\270\320\265\320\275\321\202\321\201\320\272\320\270\320\271\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200/Form.form" @@ -0,0 +1,42 @@ + + + None + + ФормаКоманднаяПанель + -1 + true + true + + true + + Left + true + + true + true + Vertical + true + false + true + true + true + + Объект + 1 + + DataProcessorObject.ЮТКонструкторДвижений + + + true + + + true + +
true
+
+ + + + + +
diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/Forms/\320\232\320\273\320\270\320\265\320\275\321\202\321\201\320\272\320\270\320\271\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200/Module.bsl" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/Forms/\320\232\320\273\320\270\320\265\320\275\321\202\321\201\320\272\320\270\320\271\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200/Module.bsl" new file mode 100644 index 000000000..3e26d0d56 --- /dev/null +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/Forms/\320\232\320\273\320\270\320\265\320\275\321\202\321\201\320\272\320\270\320\271\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200/Module.bsl" @@ -0,0 +1,215 @@ +//©///////////////////////////////////////////////////////////////////////////©// +// +// Copyright 2021-2024 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. +// +//©///////////////////////////////////////////////////////////////////////////©// + +// BSLLS:NonStandardRegion-off +#Область ОписаниеПеременных + +// см. ЮТКонструкторТестовыхДанныхСлужебный.НовыйКонтекстКонструктора +&НаКлиенте +Перем Контекст; + +#КонецОбласти + +//@skip-check module-structure-top-region +#Область ПрограммныйИнтерфейс + +#Область УстановкаЗначение + +// Добавляет новую запись в набор движений. +// При необходимости можно выполнить установку реквизитов новой записи. +// +// Параметры: +// ЗначенияРеквизитов - Структура - Устанавливаемые значения реквизитов новой записи. +// +// Возвращаемое значение: +// ОбработкаОбъект.ЮТКонструкторДвижений - Конструктор +&НаКлиенте +Функция ДобавитьСтроку(ЗначенияРеквизитов = Неопределено) Экспорт + + Контекст.Данные.Добавить(Новый Структура); + Возврат ЭтотОбъект; + +КонецФункции + +// Устанавливает значение реквизита текущей записи набора. +// +// Параметры: +// ИмяРеквизита - Строка - Имя реквизита объекта или табличной части +// Значение - Произвольный - Значение реквизита объекта или табличной части +// +// Возвращаемое значение: +// ОбработкаОбъект.ЮТКонструкторДвижений - Конструктор +&НаКлиенте +Функция Установить(ИмяРеквизита, Значение) Экспорт + + ЮТКонструкторТестовыхДанныхСлужебный.Установить(Контекст, ИмяРеквизита, Значение); + Возврат ЭтотОбъект; + +КонецФункции + +// Устанавливает значения реквизитов текущей записи набора. +// +// Параметры: +// ЗначенияРеквизитов - Структура - Устанавливаемые значения реквизитов +// +// Возвращаемое значение: +// ОбработкаОбъект.ЮТКонструкторДвижений - Установить реквизиты +&НаКлиенте +Функция УстановитьРеквизиты(ЗначенияРеквизитов) Экспорт + + ЮТКонструкторТестовыхДанныхСлужебный.УстановитьРеквизиты(Контекст, ЗначенияРеквизитов); + Возврат ЭтотОбъект; + +КонецФункции + +// Устанавливает фиктивное значение реквизита текущей записи набора. +// +// На основании менеджера и имени реквизита вычисляется его тип, а по типу генерируется фиктивное значение. +// +// * Для примитивных значение генерируется случайное значение +// * Для ссылочных типов создается новый объект +// * Для перечислений (в том числе системных) выбирается случайно значение перечисления +// +// Параметры: +// ИмяРеквизита - Строка - Имя реквизита объекта или табличной части +// РеквизитыЗаполнения - Структура - Значения реквизитов заполнения создаваемого объекта базы +// - Неопределено +// ОграничениеТипа - Тип, ОписаниеТипов - Испольуется для ограничения типа составного реквизита, будет сгерерировано значение указанного типа +// - Неопределено - Будет сгенерировано значение, на основании типа реквизита, +// если реквизит составной, то будет использован случайный тип +// +// Возвращаемое значение: +// ОбработкаОбъект.ЮТКонструкторДвижений - Конструктор +&НаКлиенте +Функция Фикция(ИмяРеквизита, РеквизитыЗаполнения = Неопределено, ОграничениеТипа = Неопределено) Экспорт + + ЮТКонструкторТестовыхДанныхСлужебный.Фикция(Контекст, ИмяРеквизита, РеквизитыЗаполнения, ОграничениеТипа); + Возврат ЭтотОбъект; + +КонецФункции + +// Устанавливает фиктивные значения реквизитов текущей записи набора. +// +// На основании менеджера и имени реквизита вычисляется его тип, а по типу генерируется фиктивное значение. +// +// * Для примитивных значение генерируется случайное значение +// * Для ссылочных типов создается новый объект +// * Для перечислений (в том числе системных) выбирается случайно значение перечисления +// +// Параметры: +// ИменаРеквизитов - Строка - Имена реквизитов объекта или табличной части разделенные запятыми +// - Массив из Строка - Имена реквизитов объекта или табличной части +// +// Возвращаемое значение: +// ОбработкаОбъект.ЮТКонструкторДвижений - Конструктор +&НаКлиенте +Функция ФикцияРеквизитов(ИменаРеквизитов) Экспорт + + ЮТКонструкторТестовыхДанныхСлужебный.ФикцияРеквизитов(Контекст, ИменаРеквизитов); + Возврат ЭтотОбъект; + +КонецФункции + +// Заполняет обязательные поля записи набора фиктивными значениями +// +// На основании метаданных определяются обязательные поля (Проверка заполнения = Выдавать ошибку), +// для них генерируются и устанавливаются фиктивные значение. +// +// * Для примитивных значение генерируется случайное значение +// * Для ссылочных типов создается новый объект +// * Для перечислений (в том числе системных) выбирается случайно значение перечисления +// +// Возвращаемое значение: +// ОбработкаОбъект.ЮТКонструкторДвижений - Конструктор +&НаКлиенте +Функция ФикцияОбязательныхПолей() Экспорт + + ЮТКонструкторТестовыхДанныхСлужебный.ФикцияОбязательныхПолей(Контекст); + Возврат ЭтотОбъект; + +КонецФункции + +// Устанавливает дополнительное свойство набора записей. +// +// Параметры: +// ИмяСвойства - Строка - Имя дополнительного свойства +// Значение - Произвольный - Значение дополнительного свойства +// +// Возвращаемое значение: +// ОбработкаОбъект.ЮТКонструкторТестовыхДанных - Конструктор +&НаКлиенте +Функция УстановитьДополнительноеСвойство(ИмяСвойства, Значение = Неопределено) Экспорт + + ЮТКонструкторТестовыхДанныхСлужебный.УстановитьДополнительноеСвойство(Контекст, ИмяСвойства, Значение); + Возврат ЭтотОбъект; + +КонецФункции + +#КонецОбласти + +#Область ПолучениеДанных + +// Возвращает данные текущей записи набора. +// +// Возвращаемое значение: +// - Структура - Данные записи +&НаКлиенте +Функция ДанныеСтроки() Экспорт + + Возврат ЮТКонструкторТестовыхДанныхСлужебный.ДанныеСтрокиКоллекции(Контекст); + +КонецФункции + +// Возвращает данные набора записей. +// +// Возвращаемое значение: +// Массив из Структура - Данные набора записей. +&НаКлиенте +Функция Данные() Экспорт + + Возврат ЮТКонструкторТестовыхДанныхСлужебный.ДанныеОбъекта(Контекст); + +КонецФункции + +#КонецОбласти + +// Записывает движения документа. +// +// Параметры: +// ОбменДаннымиЗагрузка - Булево - Записать с признаком `ОбменДанными.Загрузка = Истина` +&НаКлиенте +Процедура Записать(ОбменДаннымиЗагрузка = Ложь) Экспорт + + ЮТКонструкторТестовыхДанныхСлужебный.ЗаписатьДвиженияДокумента(Контекст); + +КонецПроцедуры + +#КонецОбласти + +//@skip-check module-structure-top-region +#Область СлужебныйПрограммныйИнтерфейс + +&НаКлиенте +Процедура Инициализировать(Документ, ИмяРегистра) Экспорт + + Контекст = ЮТКонструкторТестовыхДанныхСлужебный.НовыйКонтекстКонструктораДвижений(Документ, ИмяРегистра); + +КонецПроцедуры + +#КонецОбласти +// BSLLS:NonStandardRegion-on diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/ObjectModule.bsl" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/ObjectModule.bsl" index 56d902ed5..0322ba56c 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/ObjectModule.bsl" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/ObjectModule.bsl" @@ -29,11 +29,11 @@ #Область УстановкаЗначение -// Добавляет новую строку в набор движений. -// При необходимости можно выполнить установку реквизитов новой строки +// Добавляет новую запись в набор движений. +// При необходимости можно выполнить установку реквизитов новой записи. // // Параметры: -// ЗначенияРеквизитов - Структура - Устанавливаемые значения реквизитов новой строки +// ЗначенияРеквизитов - Структура - Устанавливаемые значения реквизитов новой записи. // // Возвращаемое значение: // ОбработкаОбъект.ЮТКонструкторДвижений - Конструктор @@ -44,9 +44,7 @@ КонецФункции -// Устанавливает значение реквизита создаваемого объекта. -// -// Если метод вызывается после вызова см. ТабличнаяЧасть, то устанавливается значение реквизита строки табличной части +// Устанавливает значение реквизита текущей записи набора. // // Параметры: // ИмяРеквизита - Строка - Имя реквизита объекта или табличной части @@ -61,9 +59,7 @@ КонецФункции -// Устанавливает значения реквизитов создаваемого объекта. -// -// Если метод вызывается после вызова см. ТабличнаяЧасть, то устанавливаются значения реквизитов строки табличной части +// Устанавливает значения реквизитов текущей записи набора. // // Параметры: // ЗначенияРеквизитов - Структура - Устанавливаемые значения реквизитов @@ -77,9 +73,7 @@ КонецФункции -// Устанавливает фиктивное значение реквизита создаваемого объекта. -// -// Если метод вызывается после вызова см. ТабличнаяЧасть, то устанавливается значение реквизита строки табличной части. +// Устанавливает фиктивное значение реквизита текущей записи набора. // // На основании менеджера и имени реквизита вычисляется его тип, а по типу генерируется фиктивное значение. // @@ -104,9 +98,7 @@ КонецФункции -// Устанавливает фиктивные значения реквизитов создаваемого объекта. -// -// Если метод вызывается после вызова см. ТабличнаяЧасть, то устанавливается значения реквизитов строки табличной части. +// Устанавливает фиктивные значения реквизитов текущей записи набора. // // На основании менеджера и имени реквизита вычисляется его тип, а по типу генерируется фиктивное значение. // @@ -127,9 +119,7 @@ КонецФункции -// Заполняет обязательные поля объекта фиктивными значениями -// -// Если метод вызывается после вызова см. ТабличнаяЧасть, то устанавливаются значения реквизитов строки табличной части. +// Заполняет обязательные поля записи набора фиктивными значениями // // На основании метаданных определяются обязательные поля (Проверка заполнения = Выдавать ошибку), // для них генерируются и устанавливаются фиктивные значение. @@ -147,25 +137,39 @@ КонецФункции +// Устанавливает дополнительное свойство набора записей. +// +// Параметры: +// ИмяСвойства - Строка - Имя дополнительного свойства +// Значение - Произвольный - Значение дополнительного свойства +// +// Возвращаемое значение: +// ОбработкаОбъект.ЮТКонструкторТестовыхДанных - Конструктор +Функция УстановитьДополнительноеСвойство(ИмяСвойства, Значение = Неопределено) Экспорт + + ЮТКонструкторТестовыхДанныхСлужебный.УстановитьДополнительноеСвойство(Контекст, ИмяСвойства, Значение); + Возврат ЭтотОбъект; + +КонецФункции + #КонецОбласти #Область ПолучениеДанных -// Возвращает данные текущей строки табличной части объекта. +// Возвращает данные текущей записи набора. // // Возвращаемое значение: -// - Структура - Данные строки -// - Неопределено - Если заполняется объект +// - Структура - Данные записи Функция ДанныеСтроки() Экспорт Возврат ЮТКонструкторТестовыхДанныхСлужебный.ДанныеСтрокиКоллекции(Контекст); КонецФункции -// Возвращает данные создаваемого объекта. +// Возвращает данные набора записей. // // Возвращаемое значение: -// Структура - Данные объекта +// Массив из Структура - Данные набора записей. Функция Данные() Экспорт Возврат ЮТКонструкторТестовыхДанныхСлужебный.ДанныеОбъекта(Контекст); @@ -174,23 +178,15 @@ #КонецОбласти -// Создает новый объект и возвращает его или ссылку. -// -// Важно, после создания данные не очищаются, поэтому многократный вызов метода создаст множество одинаковых объектов. -// Если вы хотите создать полностью новый объект, необходимо по-новой инициировать конструктор. +// Записывает движения документа. // // Параметры: -// ВернутьОбъект - Булево - Вернуть объект вместо ссылки -// ОбменДаннымиЗагрузка - Булево - Записать объект с признаком `ОбменДанными.Загрузка = Истина` -// -// Возвращаемое значение: -// Произвольный - Созданный объект или ссылка на него -Функция Записать(ОбменДаннымиЗагрузка = Ложь) Экспорт +// ОбменДаннымиЗагрузка - Булево - Записать с признаком `ОбменДанными.Загрузка = Истина` +Процедура Записать(ОбменДаннымиЗагрузка = Ложь) Экспорт ЮТКонструкторТестовыхДанныхСлужебный.ЗаписатьДвиженияДокумента(Контекст); - Возврат ЭтотОбъект; -КонецФункции +КонецПроцедуры #КонецОбласти diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271.mdo" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271.mdo" index 57cebc20a..92f71b683 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271.mdo" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271.mdo" @@ -10,4 +10,14 @@ Конструктор движений true + DataProcessor.ЮТКонструкторДвижений.Form.КлиентскийКонструктор + + КлиентскийКонструктор + + ru + Клиентский конструктор + + PersonalComputer + MobileDevice + diff --git "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Forms/\320\232\320\273\320\270\320\265\320\275\321\202\321\201\320\272\320\270\320\271\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200/Form.form" "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Forms/\320\232\320\273\320\270\320\265\320\275\321\202\321\201\320\272\320\270\320\271\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200/Form.form" index db37bb044..09f02e2ac 100644 --- "a/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Forms/\320\232\320\273\320\270\320\265\320\275\321\202\321\201\320\272\320\270\320\271\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200/Form.form" +++ "b/exts/yaxunit/src/DataProcessors/\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\242\320\265\321\201\321\202\320\276\320\262\321\213\321\205\320\224\320\260\320\275\320\275\321\213\321\205/Forms/\320\232\320\273\320\270\320\265\320\275\321\202\321\201\320\272\320\270\320\271\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200/Form.form" @@ -1,5 +1,6 @@ + None ФормаКоманднаяПанель -1 diff --git "a/fixtures/demo-configuration/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Form.form" "b/fixtures/demo-configuration/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Form.form" index 1b22af4eb..758b6b01a 100644 --- "a/fixtures/demo-configuration/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Form.form" +++ "b/fixtures/demo-configuration/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/Forms/\320\244\320\276\321\200\320\274\320\260\320\241\320\277\320\270\321\201\320\272\320\260/Form.form" @@ -10,7 +10,7 @@ <key>ru</key> - <value>User settings group</value> + <value>Настройки пользователя</value> false @@ -530,7 +530,6 @@ true Vertical true - false true true true diff --git "a/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236/Module.bsl" "b/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236/Module.bsl" index 22e2ca4ba..bafff949e 100644 --- "a/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236/Module.bsl" +++ "b/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236/Module.bsl" @@ -21,18 +21,42 @@ Процедура ИсполняемыеСценарии() Экспорт ЮТТесты.ВТранзакции() + .ДобавитьТест("Инициализировать") .ДобавитьТест("ДобавитьСтроку") .ДобавитьТест("Установить") .ДобавитьТест("УстановитьРеквизиты") .ДобавитьТест("Фикция") .ДобавитьТест("ФикцияРеквизитов") .ДобавитьТест("ФикцияОбязательныхПолей") - .ДобавитьТест("Инициализировать") .ДобавитьТест("Записать") ; КонецПроцедуры +Процедура Инициализировать() Экспорт + + // Создаем документ + Документ = ЮТест.Данные().СоздатьДокумент("Документы.ПриходТовара"); + + // Инициализируем конструктор движений + Конструктор = ЮТест.Данные().КонструкторДвижений(Документ, "ТоварныеЗапасы"); + + // Проверяем, что конструктор инициализирован + ЮТест.ОжидаетЧто(Конструктор, "Конструктор должен быть инициализирован") + .НеРавно(Неопределено); + + // Проверяем, что данные конструктора пусты + Данные = Конструктор.Данные(); + ЮТест.ОжидаетЧто(Данные, "Данные конструктора должны быть пустым массивом") + .ИмеетТип("Массив") + .Равно(Новый Массив); + + ЮТест.ОжидаетЧто(ЮТест.Данные()) + .Метод("КонструкторДвижений", ЮТКоллекции.ЗначениеВМассиве(Документ, "НесуществующийРегистр")) + .ВыбрасываетИсключение("Документ " + Документ + " не делает движений по регистру ""НесуществующийРегистр"""); + +КонецПроцедуры + Процедура ДобавитьСтроку() Экспорт Документ = ЮТест.Данные().СоздатьДокумент("Документы.РасходТовара"); @@ -179,32 +203,42 @@ КонецПроцедуры -Процедура Инициализировать() Экспорт +Процедура Записать() Экспорт - // Создаем документ - Документ = ЮТест.Данные().СоздатьДокумент("Документы.ПриходТовара"); + // Создаем документ "УстановкаЦен" + Документ = ЮТест.Данные().СоздатьДокумент("Документы.УстановкаЦен"); - Конструктор = Обработки.ЮТКонструкторДвижений.Создать(); - // Инициализируем конструктор движений - Конструктор = ЮТест.Данные().КонструкторДвижений(Документ, "ТоварныеЗапасы"); + // Инициализируем конструктор движений для регистра сведений "ЦеныТоваров" + Конструктор = ЮТест.Данные().КонструкторДвижений(Документ, "ЦеныТоваров"); - // Проверяем, что конструктор инициализирован - ЮТест.ОжидаетЧто(Конструктор, "Конструктор должен быть инициализирован") - .НеРавно(Неопределено); + // Добавляем строку и заполняем необходимые реквизиты + Конструктор.ДобавитьСтроку().УстановитьРеквизиты(Новый Структура( + "Товар, ВидЦен, Цена", + ЮТест.Данные().СоздатьЭлемент("Справочники.Товары"), + ЮТест.Данные().СоздатьЭлемент("Справочники.ВидыЦен"), + 1000 + )); - // Проверяем, что данные конструктора пусты - Данные = Конструктор.Данные(); - ЮТест.ОжидаетЧто(Данные, "Данные конструктора должны быть пустым массивом") - .ИмеетТип("Массив") - .Равно(Новый Массив); + // Записываем движения + Конструктор.Записать(); - ЮТест.ОжидаетЧто(ЮТест.Данные()) - .Метод("КонструкторДвижений", ЮТКоллекции.ЗначениеВМассиве(Документ, "НесуществующийРегистр")) - .ВыбрасываетИсключение("Документ " + Документ + " не делает движений по регистру ""НесуществующийРегистр"""); + // Проверяем, что движения были записаны в регистр сведений + ЮТест.ОжидаетЧтоТаблицаБазы("РегистрСведений.ЦеныТоваров") + .СодержитЗаписи(ЮТест.Предикат() + .Реквизит("Регистратор").Равно(Документ)); -КонецПроцедуры - -Процедура Записать() Экспорт + // Получаем записи регистра движений документа + ЗаписиРегистра = ЮТЗапросы.ДвиженияДокумента(Документ, "ЦеныТоваров"); + + // Проверяем, что движения были записаны в регистр сведений + ЮТест.ОжидаетЧто(ЗаписиРегистра) + .Заполнено() + .ИмеетДлину(1) + .Свойство("[0].Регистратор").Равно(Документ) + .Свойство("[0].Товар").Заполнено() + .Свойство("[0].ВидЦен").Заполнено() + .Свойство("[0].Цена").Равно(1000) + ; // Создаем документ Документ = ЮТест.Данные().СоздатьДокумент("Документы.РасходТовара"); diff --git "a/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236.mdo" "b/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236.mdo" index 9e7e8bd5d..1459b4c1b 100644 --- "a/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236.mdo" +++ "b/tests/src/CommonModules/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236/\320\236\320\261\321\200_\320\256\320\242\320\232\320\276\320\275\321\201\321\202\321\200\321\203\320\272\321\202\320\276\321\200\320\224\320\262\320\270\320\266\320\265\320\275\320\270\320\271_\320\234\320\236.mdo" @@ -1,5 +1,7 @@ Обр_ЮТКонструкторДвижений_МО + true true + true diff --git "a/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262.mdo" "b/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262.mdo" index 140570f24..357389d31 100644 --- "a/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262.mdo" +++ "b/tests/src/InformationRegisters/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262/\320\246\320\265\320\275\321\213\320\242\320\276\320\262\320\260\321\200\320\276\320\262.mdo" @@ -12,10 +12,7 @@ ЦеныТоваров Adopted - Checked - Checked Extended Extended - Day