1
0
mirror of https://github.com/bia-technologies/yaxunit.git synced 2024-12-03 08:45:31 +02:00

Merge branch 'bia-technologies:develop' into feature/ext-test-suite

This commit is contained in:
Konstantin Potoyalo 2023-07-29 21:08:05 +07:00 committed by GitHub
commit b7af862cb3
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
72 changed files with 2914 additions and 296 deletions

View File

@ -10,9 +10,11 @@ tags: [Начало, ДанныеИБ]
* `ЗначенияРеквизитов` - Возвращает значения реквизитов ссылки
* `ЗначениеРеквизита` - Возвращает значение реквизита ссылки
* `Запись` - Возвращает первую запись таблицы соответствующую условиям
* `Записи` - Возвращает записи таблицы соответствующую условиям
* `ТаблицаСодержитЗаписи` - Вернет признак содержит ли таблица записи удовлетворяющие переданным условиям
* `РезультатЗапроса` - Возвращает результат выполнения простого запроса, используя описание запроса.
* `Запись` - Возвращает первую запись таблицы, соответствующую условиям
* `Записи` - Возвращает записи таблицы, соответствующую условиям
* `ЗначенияРеквизитовЗаписи` - Возвращает значения реквизитов первой записи таблицы, соответствующей условиям
* `ЗначениеРеквизитаЗаписи` - Возвращает значение реквизита первой записи таблицы, соответствующей условиям
* `ТаблицаСодержитЗаписи` - Вернет признак, содержит ли таблица записи, удовлетворяющие переданным условиям
* `РезультатЗапроса` - Возвращает результат выполнения простого запроса, используя описание запроса
* `РезультатПустой` - Определяет, есть ли в результате записи, используя описание запроса
* `ОписаниеЗапроса` - Формирует описание простого запроса

View File

@ -46,10 +46,9 @@
// ИмяРеквизита - Строка - Имя получаемого реквизита, можно указать путь к вложенному реквизиту через точку
//
// Возвращаемое значение:
// Структура Из Произвольный - Значения реквизитов ссылки
// Произвольный - Значение реквизита ссылки
Функция ЗначениеРеквизита(Ссылка, ИмяРеквизита) Экспорт
//@skip-check constructor-function-return-section
Возврат ЮТЗапросыВызовСервера.ЗначенияРеквизитов(Ссылка, ИмяРеквизита, Истина);
КонецФункции
@ -89,6 +88,45 @@
КонецФункции
// Возвращает значения реквизитов первой записи таблицы, соответствующей условиям
//
// Параметры:
// ИмяТаблицы - Строка
// Предикат - Массив из см. ЮТФабрика.ВыражениеПредиката - Набор условий, см. ЮТПредикаты.Получить
// - см. ЮТФабрика.ВыражениеПредиката
// - ОбщийМодуль - Модуль настройки предикатов, см. ЮТест.Предикат
// ИменаРеквизитов - Строка - Имена получаемых реквизитов
//
// Возвращаемое значение:
// Произвольный - Значение реквизита записи
//
Функция ЗначенияРеквизитовЗаписи(ИмяТаблицы, Предикат, ИменаРеквизитов) Экспорт
ОписаниеЗапроса = ЮТЗапросыКлиентСервер.ОписаниеЗапроса(ИмяТаблицы, Предикат, ИменаРеквизитов);
Возврат ЮТЗапросыВызовСервера.ЗначенияРеквизитовЗаписи(ОписаниеЗапроса, Ложь);
КонецФункции
// Возвращает значение реквизита первой записи таблицы, соответствующей условиям
//
// Параметры:
// ИмяТаблицы - Строка
// Предикат - Массив из см. ЮТФабрика.ВыражениеПредиката - Набор условий, см. ЮТПредикаты.Получить
// - см. ЮТФабрика.ВыражениеПредиката
// - ОбщийМодуль - Модуль настройки предикатов, см. ЮТест.Предикат
// ИмяРеквизита - Строка - Имя получаемого реквизита
//
// Возвращаемое значение:
// Структура Из Произвольный - Значения реквизитов записи
//
Функция ЗначениеРеквизитаЗаписи(ИмяТаблицы, Предикат, ИмяРеквизита) Экспорт
ОписаниеЗапроса = ЮТЗапросыКлиентСервер.ОписаниеЗапроса(ИмяТаблицы, Предикат, ИмяРеквизита);
//@skip-check constructor-function-return-section
Возврат ЮТЗапросыВызовСервера.ЗначенияРеквизитовЗаписи(ОписаниеЗапроса, Истина);
КонецФункции
// Вернет признак содержит ли таблица записи удовлетворяющие переданным условиям
//
// Параметры:

View File

@ -51,8 +51,8 @@
// ОдинРеквизит - Булево
//
// Возвращаемое значение:
// Структура Из Произвольный - Значения реквизитов ссылки, про значений получения множества реквизитов
// Произвольный - Значения реквизитов ссылки, если при получении значения одного реквизита
// - Структура Из Произвольный - Значения реквизитов ссылки при получении значений множества реквизитов
// - Произвольный - Значение реквизита ссылки при получении значения одного реквизита
Функция ЗначенияРеквизитов(Ссылка, ИменаРеквизитов, ОдинРеквизит) Экспорт
ИмяТаблицы = Ссылка.Метаданные().ПолноеИмя();
@ -98,6 +98,39 @@
КонецФункции
// Возвращает значения реквизитов записи
//
// Параметры:
// ОписаниеЗапроса - см. ЮТЗапросы.ОписаниеЗапроса
// ОдинРеквизит - Булево
//
// Возвращаемое значение:
// - Структура Из Произвольный - Значения множества реквизитов записи
// - Произвольный - Значение одного реквизита записи
//
Функция ЗначенияРеквизитовЗаписи(ОписаниеЗапроса, ОдинРеквизит) Экспорт
Запись = Записи(ОписаниеЗапроса, Истина);
Если ТипЗнч(Запись) <> Тип("Структура") Тогда
Если ОдинРеквизит Тогда
Возврат Неопределено;
Иначе
Реквизиты = СтрСоединить(ПсеводнимыВыбираемыхПолей(ОписаниеЗапроса), ",");
Возврат Новый Структура(Реквизиты);
КонецЕсли;
КонецЕсли;
Если ОдинРеквизит Тогда
Для каждого КлючЗнач Из Запись Цикл
Возврат КлючЗнач.Значение;
КонецЦикла;
Иначе
Возврат Запись;
КонецЕсли;
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
@ -212,4 +245,23 @@
КонецФункции
Функция ПсеводнимыВыбираемыхПолей(ОписаниеЗапроса)
Псевдонимы = Новый Массив;
Запрос = Запрос(ОписаниеЗапроса);
СхемаЗапроса = Новый СхемаЗапроса();
СхемаЗапроса.УстановитьТекстЗапроса(Запрос.Текст);
Для каждого ЗапросСЗ Из СхемаЗапроса.ПакетЗапросов Цикл
Для каждого КолонкаСЗ Из ЗапросСЗ.Колонки Цикл
Псевдонимы.Добавить(КолонкаСЗ.Псевдоним);
КонецЦикла;
КонецЦикла;
Возврат Псевдонимы;
КонецФункции
#КонецОбласти

View File

@ -0,0 +1,55 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// 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.
//
//©///////////////////////////////////////////////////////////////////////////©//
// @strict-types
#Область ПрограммныйИнтерфейс
// Локализация.
//
// Возвращаемое значение:
// Строка - Возвращает текущую установленную локализацию
Функция Локализация() Экспорт
Возврат ЮТПодражательСлужебный.Контекст().Локализация;
КонецФункции
// Устанавливает локализацию подражателя
// В дальнейшем используется для получения списка словарей с указанной локализацией
// Параметры:
// КодЯзыка - Строка - Код языка
Процедура УстановитьЛокализацию(КодЯзыка) Экспорт
ЮТПодражательСлужебный.Контекст().Локализация = КодЯзыка;
КонецПроцедуры
#Область Реализации
Функция Люди() Экспорт
Возврат ЮТПодражатель_Люди;
КонецФункции
Функция Компании() Экспорт
Возврат ЮТПодражатель_Компании;
КонецФункции
Функция Банки() Экспорт
Возврат ЮТПодражатель_Банки;
КонецФункции
#КонецОбласти
#КонецОбласти

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="b65b686f-0077-4d10-8f99-7a16ea68b42b">
<name>ЮТПодражатель</name>
<synonym>
<key>ru</key>
<value>Подражатель</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>
<clientOrdinaryApplication>true</clientOrdinaryApplication>
</mdclass:CommonModule>

View File

@ -0,0 +1,89 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// 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.
//
//©///////////////////////////////////////////////////////////////////////////©//
#Область ПрограммныйИнтерфейс
// Возвращает случайный номер банковского счета, по умолчанию
// Подробности алгоритма можно прочитать по ссылке
// http://keysystems.ru/files/fo/arm_budjet/show_docum/BKS/onlinehelphtm/ro_kr_algor_klyuch_rs.htm
// Параметры:
// БИК - Строка - БИК банка
// КодВалюты - Строка - Код валюты
// ЮрЛицо - Булево - Генерация счета юрлица, иначе физ лица
//
// Возвращаемое значение:
// Строка - Номер счета
Функция НомерСчета(БИК, КодВалюты = "810", ЮрЛицо = Истина) Экспорт
Если СтрДлина(КодВалюты) <> 3 Тогда
ВызватьИсключение "Длина кода валюты должна быть равна 3";
КонецЕсли;
БалансовыйСчет = ?(ЮрЛицо, "40702", "40802");
НомерСчетаВБанке = ЮТТестовыеДанные.СлучайнаяСтрока(11, , "0123456789");
ЧислоДляРасчетаКонтрольнойСуммы = Прав(БИК, 3) + БалансовыйСчет + КодВалюты + "0" + НомерСчетаВБанке;
Весы = ВесовыеКоэффициентаДляРасчетаКонтрольнойСуммыСчета();
КонтрольнаяСумма = 0;
Для Индекс = 0 По 22 Цикл
КонтрольнаяСумма =
КонтрольнаяСумма
+ Число(Сред(ЧислоДляРасчетаКонтрольнойСуммы, Индекс + 1, 1)) * Число(Весы.Получить(Индекс))
;
КонецЦикла;
КонтрольноеЧисло = ((КонтрольнаяСумма % 10) * 3) % 10;
Возврат СтрШаблон(
"%1%2%3%4",
БалансовыйСчет,
КодВалюты,
КонтрольноеЧисло,
НомерСчетаВБанке
);
КонецФункции
// Формирует случайный валидный БИК банка
//
// Возвращаемое значение:
// Строка - БИК
Функция БИК() Экспорт
Возврат СтрШаблон(
"%1%2%3%4",
"04", // код страны
ЮТТестовыеДанные.СлучайнаяСтрока(2, , "0123456789"), // ОКАТО код территории
ЮТТестовыеДанные.СлучайнаяСтрока(2, , "0123456789"), // код подразделение расчетной сети ЦБ
Формат(ЮТТестовыеДанные.СлучайноеЧисло(50, 999), "ЧЦ=3; ЧВН=;") // номер кредитной организации
);
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Функция ИмяРеализации()
Возврат "Банки";
КонецФункции
Функция ВесовыеКоэффициентаДляРасчетаКонтрольнойСуммыСчета()
Возврат СтрРазделить("7,1,3,7,1,3,7,1,3,7,1,3,7,1,3,7,1,3,7,1,3,7,1", ",");
КонецФункции
#КонецОбласти

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="4b1986d5-23da-4865-9a45-e72d224801b9">
<name>ЮТПодражатель_Банки</name>
<synonym>
<key>ru</key>
<value>Подражатель реализация люди клиент сервер</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>
<clientOrdinaryApplication>true</clientOrdinaryApplication>
</mdclass:CommonModule>

View File

@ -0,0 +1,150 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// 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.
//
//©///////////////////////////////////////////////////////////////////////////©//
#Область ПрограммныйИнтерфейс
// Возвращает случайное имя компании
//
// Возвращаемое значение:
// Строка
Функция Наименование() Экспорт
СловарьИмен = СловарьИменаКомпаний();
СловарьПрефиксов = СловарьПрефиксыИменКомпаний();
Возврат СтрШаблон(
"%1 %2",
ЮТПодражательСлужебный.СлучайноеЗначениеИзСловаря(СловарьПрефиксов),
ЮТПодражательСлужебный.СлучайноеЗначениеИзСловаря(СловарьИмен)
);
КонецФункции
// Формирует случайный валидный ИНН РФ.
//
// Параметры:
// КодРегиона - Строка - Код региона это первые две цифры кода ИНН. Список действующих кодов регионов
// можно подсмотреть: https://www.nalog.gov.ru/html/docs/kods_regions.doc . Если код региона задан
// как "00" то будет сформирован случайный код региона. По умолчанию "00" (случайный код региона)
// ЭтоИННФизическогоЛица - Булево - Если Истина, то это ИНН физического лица, иначе ИНН юридического
// лица. По умолчанию Ложь (ИНН юридического лица)
//
// Возвращаемое значение:
// Строка - Случайный ИНН, например 3444140904
Функция ИНН(КодРегиона = "00", ЭтоИННФизическогоЛица = Ложь) Экспорт
СлучайныйИНН = "";
Если ЭтоИННФизическогоЛица Тогда
ИННМассив = Новый Массив(12);
ВесовыеКоэффициенты1 = СтрРазделить("7, 2, 4, 10, 3, 5, 9, 4, 6, 8", ",");
ВесовыеКоэффициенты2 = СтрРазделить("3, 7, 2, 4, 10, 3, 5, 9, 4, 6, 8", ",");
Иначе
ИННМассив = Новый Массив(10);
ВесовыеКоэффициенты1 = СтрРазделить("2, 4, 10, 3, 5, 9, 4, 6, 8", ",");
ВесовыеКоэффициенты2 = Новый Массив;
КонецЕсли;
Если КодРегиона = "00" Или СтрДлина(КодРегиона) <> 2 Тогда
ИННМассив.Установить(0, ЮТТестовыеДанные.СлучайноеЧисло(0, 9, 0));
ИННМассив.Установить(1, ЮТТестовыеДанные.СлучайноеЧисло(0, 9, 0));
Иначе
ИННМассив.Установить(0, Число(Сред(КодРегиона, 1, 1)));
ИННМассив.Установить(1, Число(Сред(КодРегиона, 2, 1)));
КонецЕсли;
Для Индекс = 2 По ИННМассив.ВГраница() Цикл
ИННМассив.Установить(Индекс, ЮТТестовыеДанные.СлучайноеЧисло(0, 9, 0));
КонецЦикла;
Сумма1 = 0;
Для Индекс = 0 По ВесовыеКоэффициенты1.ВГраница() Цикл
Элемент = ИННМассив.Получить(Индекс) * Число(ВесовыеКоэффициенты1.Получить(Индекс));
Сумма1 = Сумма1 + Элемент;
КонецЦикла;
ИННМассив.Установить(ВесовыеКоэффициенты1.Количество(), Сумма1 % 11 % 10);
Если ВесовыеКоэффициенты2.Количество() <> 0 Тогда
Сумма2 = 0;
Для Индекс = 0 По ВесовыеКоэффициенты2.ВГраница() Цикл
Элемент = ИННМассив.Получить(Индекс) * Число(ВесовыеКоэффициенты2.Получить(Индекс));
Сумма2 = Сумма2 + Элемент;
КонецЦикла;
ИННМассив.Установить(ВесовыеКоэффициенты2.Количество(), Сумма1 % 11 % 10);
КонецЕсли;
СлучайныйИНН = СтрСоединить(ИННМассив);
Возврат СлучайныйИНН;
КонецФункции
// Формирует случайный валидный КПП РФ
//
// Параметры:
// КодНалоговогоОргана - Строка - Код налогового органа, первые четыре цифры КПП.
// Причина - Число - Причина постановки. Поддерживаются следующие варианты
// # 2 - код причины "43" постановка на учет филиала российской организации
// # любая другая цифра - код причины "01" постановка на учет российской организации
// по месту ее нахождения
//
// Возвращаемое значение:
// Строка - Случайный КПП, например 344401001
Функция КПП(КодНалоговогоОргана = "0000", Причина = 1) Экспорт
СлучайныйКПП = "";
Если ТипЗнч(Причина) = Тип("Число") И Причина = 2 Тогда
Код2 = "43";
Иначе
Код2 = "01";
КонецЕсли;
Если ТипЗнч(КодНалоговогоОргана) = Тип("Строка") И СтрДлина(КодНалоговогоОргана) = 4 Тогда
Код1 = КодНалоговогоОргана;
Иначе
МассивКод1 = Новый Массив(4);
Для Индекс = 0 По МассивКод1.ВГраница() Цикл
МассивКод1.Установить(Индекс, ЮТТестовыеДанные.СлучайноеЧисло(0, 9, 0));
КонецЦикла;
Код1 = СтрСоединить(МассивКод1);
КонецЕсли;
Код3 = "00" + Строка(ЮТТестовыеДанные.СлучайноеЧисло(0, 9, 0));
СлучайныйКПП = СтрШаблон("%1%2%3", Код1, Код2, Код3);
Возврат СлучайныйКПП;
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Функция ИмяРеализации()
Возврат "Компании";
КонецФункции
Функция СловарьИменаКомпаний()
Возврат ЮТПодражательСлужебный.Словарь(ИмяРеализации(), "Наименования");
КонецФункции
Функция СловарьПрефиксыИменКомпаний()
Возврат ЮТПодражательСлужебный.Словарь(ИмяРеализации(), "ПрефиксыНаименований");
КонецФункции
#КонецОбласти

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="02573bc2-6df0-4e30-b6d9-267399c050de">
<name>ЮТПодражатель_Компании</name>
<synonym>
<key>ru</key>
<value>Подражатель реализация люди клиент сервер</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>
<clientOrdinaryApplication>true</clientOrdinaryApplication>
</mdclass:CommonModule>

View File

@ -0,0 +1,197 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// 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.
//
//©///////////////////////////////////////////////////////////////////////////©//
#Область ПрограммныйИнтерфейс
// Возвращает случайное имя
//
// Параметры:
// Пол - Строка - см. ЮТПодражатель_Люди.ПолЧеловека
//
// Возвращаемое значение:
// Строка
Функция Имя(Пол = Неопределено) Экспорт
ПолЧеловека = ОпределитьПолЧеловекаИзПараметра(Пол);
Если ПолЧеловека = ПолЧеловека().Мужской Тогда
Словарь = СловарьМужскиеИмена();
ИначеЕсли ПолЧеловека = ПолЧеловека().Женский Тогда
Словарь = СловарьЖенскиеИмена();
КонецЕсли;
Возврат ЮТПодражательСлужебный.СлучайноеЗначениеИзСловаря(Словарь);
КонецФункции
// Возвращает случайную фамилию
//
// Параметры:
// Пол - Строка - см. ЮТПодражатель_Люди.ПолЧеловека
//
// Возвращаемое значение:
// Строка
Функция Фамилия(Пол = Неопределено) Экспорт
ПолЧеловека = ОпределитьПолЧеловекаИзПараметра(Пол);
Если ПолЧеловека = ПолЧеловека().Мужской Тогда
Словарь = СловарьМужскиеФамилии();
ИначеЕсли ПолЧеловека = ПолЧеловека().Женский Тогда
Словарь = СловарьЖенскиеФамилии();
КонецЕсли;
Возврат ЮТПодражательСлужебный.СлучайноеЗначениеИзСловаря(Словарь);
КонецФункции
// Возвращает случайное отчество
//
// Параметры:
// Пол - Строка - см. ЮТПодражатель_Люди.ПолЧеловека
//
// Возвращаемое значение:
// Строка
Функция Отчество(Пол = Неопределено) Экспорт
ПолЧеловека = ОпределитьПолЧеловекаИзПараметра(Пол);
Если ПолЧеловека = ПолЧеловека().Мужской Тогда
Словарь = СловарьМужскиеОтчества();
ИначеЕсли ПолЧеловека = ПолЧеловека().Женский Тогда
Словарь = СловарьЖенскиеОтчества();
КонецЕсли;
Возврат ЮТПодражательСлужебный.СлучайноеЗначениеИзСловаря(Словарь);
КонецФункции
// Возвращает случайное отчество
//
// Параметры:
// Пол - Строка - см. ЮТПодражатель_Люди.ПолЧеловека
//
// Возвращаемое значение:
// Строка
Функция ФИО(Пол = Неопределено) Экспорт
ПолЧеловека = ОпределитьПолЧеловекаИзПараметра(Пол);
Возврат СтрШаблон(
"%1 %2 %3",
Фамилия(ПолЧеловека),
Имя(ПолЧеловека),
Отчество(ПолЧеловека)
);
КонецФункции
// Формирует случаный ИНН физического лица
//
// Возвращаемое значение:
// Строка
Функция ИНН() Экспорт
Возврат ЮТТестовыеДанные.Подражатель().Компании().ИНН(, Истина);
КонецФункции
// Формирует случаный СНИЛС.
// https://ru.wikipedia.org/wiki/Контрольное_число
// Возвращаемое значение:
// Строка
Функция СНИЛС() Экспорт
ЧастиСнилс = Новый Массив();
ЧастиСнилс.Добавить(Формат(ЮТТестовыеДанные.СлучайноеЧисло(100, 999), "ЧЦ=3; ЧВН=;"));
ЧастиСнилс.Добавить(Формат(ЮТТестовыеДанные.СлучайноеЧисло(0, 999), "ЧЦ=3; ЧВН=;"));
ЧастиСнилс.Добавить(Формат(ЮТТестовыеДанные.СлучайноеЧисло(0, 999), "ЧЦ=3; ЧВН=;"));
ИтогоСтрокой = СтрСоединить(ЧастиСнилс, "");
ДлинаОсновнойЧасти = СтрДлина(ИтогоСтрокой);
Сумма = 0;
Для Итератор = 0 По 8 Цикл
Сумма = Сумма + (Число(Сред(ИтогоСтрокой, ДлинаОсновнойЧасти - Итератор, 1)) * (Итератор + 1));
КонецЦикла;
ОстатокОтДеления = Сумма % 101;
КонтрольноеЧисло = ?(ОстатокОтДеления = 100, 0, ОстатокОтДеления);
Возврат СтрШаблон(
"%1-%2-%3 %4",
ЧастиСнилс[0],
ЧастиСнилс[1],
ЧастиСнилс[2],
Формат(КонтрольноеЧисло, "ЧЦ=2; ЧВН=;")
);
КонецФункции
#Область ФабрикаПеречислений
Функция ПолЧеловека() Экспорт
Результат = Новый Структура();
Результат.Вставить("Мужской", "Мужской");
Результат.Вставить("Женский", "Женский");
Возврат Новый ФиксированнаяСтруктура(Результат);
КонецФункции
#КонецОбласти
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Функция ИмяРеализации()
Возврат "Люди";
КонецФункции
Функция СловарьЖенскиеИмена()
Возврат ЮТПодражательСлужебный.Словарь(ИмяРеализации(), "ЖенскиеИмена");
КонецФункции
Функция СловарьЖенскиеФамилии()
Возврат ЮТПодражательСлужебный.Словарь(ИмяРеализации(), "ЖенскиеФамилии");
КонецФункции
Функция СловарьЖенскиеОтчества()
Возврат ЮТПодражательСлужебный.Словарь(ИмяРеализации(), "ЖенскиеОтчества");
КонецФункции
Функция СловарьМужскиеИмена()
Возврат ЮТПодражательСлужебный.Словарь(ИмяРеализации(), "МужскиеИмена");
КонецФункции
Функция СловарьМужскиеФамилии()
Возврат ЮТПодражательСлужебный.Словарь(ИмяРеализации(), "МужскиеФамилии");
КонецФункции
Функция СловарьМужскиеОтчества()
Возврат ЮТПодражательСлужебный.Словарь(ИмяРеализации(), "МужскиеОтчества");
КонецФункции
Функция ОпределитьПолЧеловекаИзПараметра(Пол)
Если Пол <> Неопределено Тогда
Если Не ПолЧеловека().Свойство(Пол) Тогда
ВызватьИсключение СтрШаблон("Отсутствует реализация словаря для пола: %1", Пол);
КонецЕсли;
Возврат Пол;
КонецЕсли;
Варианты = ЮТОбщий.ВыгрузитьЗначения(ПолЧеловека(), "Значение");
Возврат ЮТТестовыеДанные.СлучайноеЗначениеИзСписка(Варианты);
КонецФункции
#КонецОбласти

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="e9002bdd-602e-4348-9d0f-4c910f9e40f4">
<name>ЮТПодражатель_Люди</name>
<synonym>
<key>ru</key>
<value>Подражатель реализация люди клиент сервер</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>
<clientOrdinaryApplication>true</clientOrdinaryApplication>
</mdclass:CommonModule>

View File

@ -0,0 +1,42 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// 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.
//
//©///////////////////////////////////////////////////////////////////////////©//
#Область СлужебныйПрограммныйИнтерфейс
// Данные словаря.
//
// Параметры:
// Кодификатор - Строка - Имя словаря в метаданных
//
// Возвращаемое значение:
// ФиксированныйМассив из Строка
Функция ДанныеСловаря(Кодификатор) Экспорт
Если Метаданные.ОбщиеМакеты.Найти(Кодификатор) = Неопределено Тогда
ВызватьИсключение СтрШаблон("Словарь с именем (%1) не найден", Кодификатор);
КонецЕсли;
Макет = ПолучитьОбщийМакет(Кодификатор);
Возврат СтрРазделить(Макет.ПолучитьТекст(), Символы.ПС, Ложь);
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
#КонецОбласти

View File

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="1e6f3296-03af-4bd2-b52a-d89f576e7166">
<name>ЮТПодражательВызовСервера</name>
<synonym>
<key>ru</key>
<value>Подражатель вызов сервера</value>
</synonym>
<server>true</server>
<serverCall>true</serverCall>
</mdclass:CommonModule>

View File

@ -0,0 +1,51 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// 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.
//
//©///////////////////////////////////////////////////////////////////////////©//
// @strict-types
#Область СлужебныйПрограммныйИнтерфейс
// Получает список из словаря с учетом установленной локализации
//
// Параметры:
// ИмяРеализации - Строка - Имя реализации
// ИмяСловаря - Строка - Имя словаря
// КодЛокализации - Строка - Код локализации
//
// Возвращаемое значение:
// ФиксированныйМассив из Строка
Функция Словарь(ИмяРеализации, ИмяСловаря, КодЛокализации) Экспорт
Кодификатор = КодификаторСловаря(ИмяРеализации, ИмяСловаря, КодЛокализации);
Возврат Новый ФиксированныйМассив(ЮТПодражательВызовСервера.ДанныеСловаря(Кодификатор));
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Функция КодификаторСловаря(ИмяРеализации, ИмяСловаря, КодЛокализации)
Возврат СтрШаблон(
"ЮТ_СловарьПодражателя_%1_%2_%3",
ИмяРеализации,
ИмяСловаря,
КодЛокализации
);
КонецФункции
#КонецОбласти

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="6974dbbd-182e-43c6-94e3-e19696766e0f">
<name>ЮТПодражательПовтИсп</name>
<synonym>
<key>ru</key>
<value>Подражатель повт исп</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>
<externalConnection>true</externalConnection>
<clientOrdinaryApplication>true</clientOrdinaryApplication>
<returnValuesReuse>DuringSession</returnValuesReuse>
</mdclass:CommonModule>

View File

@ -0,0 +1,91 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// 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.
//
//©///////////////////////////////////////////////////////////////////////////©//
#Область СлужебныйПрограммныйИнтерфейс
// Получает список из словаря с учетом установленной локализации
//
// Параметры:
// ИмяРеализации - Строка - Имя реализации
// ИмяСловаря - Строка - Имя словаря
// КодЛокализации - Строка - Код локализации, по умолчанию берется из контекста
//
// Возвращаемое значение:
// ФиксированныйМассив из Строка
Функция Словарь(ИмяРеализации, ИмяСловаря, КодЛокализации = Неопределено) Экспорт
_КодЛокализации = ?(КодЛокализации = Неопределено, ЮТПодражатель.Локализация(), КодЛокализации);
Возврат ЮТПодражательПовтИсп.Словарь(ИмяРеализации, ИмяСловаря, _КодЛокализации);
КонецФункции
// Случайное значение из словаря.
//
// Параметры:
// Словарь - Массив из Строка - Словарь
//
// Возвращаемое значение:
// - Строка
Функция СлучайноеЗначениеИзСловаря(Словарь) Экспорт
Возврат Словарь.Получить(ЮТТестовыеДанные.СлучайноеЧисло(0, Словарь.ВГраница()));
КонецФункции
// Контекст.
//
// Возвращаемое значение:
// см. НовыйКонтекст
Функция Контекст() Экспорт
//@skip-check constructor-function-return-section
Возврат ЮТКонтекст.ЗначениеКонтекста(КлючКонтекста());
КонецФункции
// Инициализирует подражатель
//
// Возвращаемое значение:
// ОбщийМодуль - Этот модуль для замыкания
Функция Инициализировать() Экспорт
Если Контекст() = Неопределено Тогда
ЮТКонтекст.УстановитьЗначениеКонтекста(КлючКонтекста(), НовыйКонтекст());
КонецЕсли;
Возврат ЮТПодражатель;
КонецФункции
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
Функция КлючКонтекста()
Возврат "Подражатель";
КонецФункции
// Новый контекст.
//
// Возвращаемое значение:
// Структура - Новый контекст:
// * Локализация - Строка - Установленная локализация
Функция НовыйКонтекст()
Описание = Новый Структура;
#Если Клиент Тогда
Описание.Вставить("Локализация", ТекущийЯзык());
#Иначе
Описание.Вставить("Локализация", ТекущийЯзык().КодЯзыка);
#КонецЕсли
Возврат Описание;
КонецФункции
#КонецОбласти

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="0bbb9e3a-a83f-4444-aaed-98b2a1ac8bda">
<name>ЮТПодражательСлужебный</name>
<synonym>
<key>ru</key>
<value>Подражатель служебный</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>
<clientOrdinaryApplication>true</clientOrdinaryApplication>
</mdclass:CommonModule>

View File

@ -168,12 +168,17 @@
// Параметры:
// Длина - Число - Длина генерируемой строки, без учета префикса
// Префикс - Строка - Префикс строки
// ДопустимыеСимволы - Строка - Допустимые символы из которая будет формироваться случайно строка
//
// Возвращаемое значение:
// Строка - Случайная строка
Функция СлучайнаяСтрока(Знач Длина = 10, Префикс = "") Экспорт
Функция СлучайнаяСтрока(Знач Длина = 10, Префикс = "", ДопустимыеСимволы = Неопределено) Экспорт
Строка = "1234567890абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
Если ДопустимыеСимволы = Неопределено Тогда
Строка = "1234567890абвгдеёжзийклмнопрстуфхцчшщъыьэюяАБВГДЕЁЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
Иначе
Строка = ДопустимыеСимволы;
КонецЕсли;
Результат = "";
КоличествоСимволов = СтрДлина(Строка);
@ -470,6 +475,14 @@
КонецПроцедуры
// Возвращает объект подражателя для формирования осмысленных тестовых данных
//
// Возвращаемое значение:
// ОбщийМодуль - Подражатель
Функция Подражатель() Экспорт
Возврат ЮТПодражательСлужебный.Инициализировать();
КонецФункции
#Если Сервер Тогда
// Возвращает мок для `HTTPСервисЗапрос`.
//
@ -505,4 +518,4 @@
КонецПроцедуры
#КонецОбласти
#КонецОбласти

View File

@ -0,0 +1,33 @@
Рога и Копыта
Ромашка
Организатория
Содружество
Синергия
УспехПартнер
Стратегия+
Эволюция
ОргаLife
МастерОрг
ЛидерОрг
УспехОрг
Профессиональное Организованное Решение
Стратегическая Организация
Идеальная Организация
МастерПлан
Гений в Деталях
Успешная Система
Органайзер
Профессиональная Структура
Успешное будущее
Мастера организации
Профессиональные архитекторы
Организационный гений
АльпаБанк
ВТП
Пенькофф
Сперпанк
Азито
Ямтекс
Почта Рус Лимитед
Телепам
Система успеха

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonTemplate xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="b62864af-5f2a-485b-bdfc-8af08bf11420">
<name>ЮТ_СловарьПодражателя_Компании_Наименования_ru</name>
<synonym>
<key>ru</key>
<value>Подражатель компании наименования ru</value>
</synonym>
<templateType>TextDocument</templateType>
</mdclass:CommonTemplate>

View File

@ -0,0 +1,12 @@
AO
ГУП
ЗАО
ИП
МУП
НКО
ОП
ООО
ОАО
ПАО
ТСЖ
ФГУП

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonTemplate xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="ae9b2266-fff5-446d-9939-27554b28361e">
<name>ЮТ_СловарьПодражателя_Компании_ПрефиксыНаименований_ru</name>
<synonym>
<key>ru</key>
<value>Подражатель компании префиксы ru</value>
</synonym>
<templateType>TextDocument</templateType>
</mdclass:CommonTemplate>

View File

@ -0,0 +1,80 @@
Агата
Агафья
Акулина
Алевтина
Александра
Алина
Алла
Анастасия
Ангелина
Анжела
Анжелика
Анна
Антонина
Валентина
Валерия
Варвара
Василиса
Вера
Вероника
Виктория
Галина
Глафира
Дарья
Евгения
Евдокия
Евпраксия
Евфросиния
Екатерина
Елена
Елизавета
Жанна
Зинаида
Зоя
Иванна
Ираида
Ирина
Ия
Кира
Клавдия
Ксения
Лариса
Лидия
Лора
Лукия
Любовь
Людмила
Майя
Маргарита
Марина
Мария
Марфа
Милица
Надежда
Наина
Наталья
Нина
Нинель
Нонна
Оксана
Октябрина
Олимпиада
Ольга
Пелагея
Полина
Прасковья
Раиса
Регина
Светлана
Синклитикия
София
Таисия
Тамара
Татьяна
Ульяна
Фаина
Феврония
Фёкла
Элеонора
Эмилия
Юлия

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonTemplate xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="7e545927-4eb6-4aa9-98d8-5f61fd1487d5">
<name>ЮТ_СловарьПодражателя_Люди_ЖенскиеИмена_ru</name>
<synonym>
<key>ru</key>
<value>Подражатель люди женские имена ru</value>
</synonym>
<templateType>TextDocument</templateType>
</mdclass:CommonTemplate>

View File

@ -0,0 +1,79 @@
Александровна
Андреевна
Архиповна
Алексеевна
Антоновна
Аскольдовна
Альбертовна
Аркадьевна
Афанасьевна
Анатольевна
Артемовна
Богдановна
Болеславовна
Борисовна
Вадимовна
Васильевна
Владимировна
Валентиновна
Вениаминовна
Владиславовна
Валериевна
Викторовна
Вячеславовна
Геннадиевна
Георгиевна
Геннадьевна
Григорьевна
Даниловна
Дмитриевна
Евгеньевна
Егоровна
Ефимовна
Ждановна
Захаровна
Ивановна
Игоревна
Ильинична
Кирилловна
Кузьминична
Константиновна
Леонидовна
Леоновна
Львовна
Макаровна
Матвеевна
Михайловна
Максимовна
Мироновна
Натановна
Никифоровна
Ниловна
Наумовна
Николаевна
Олеговна
Оскаровна
Павловна
Петровна
Робертовна
Рубеновна
Руслановна
Романовна
Рудольфовна
Святославовна
Сергеевна
Степановна
Семеновна
Станиславовна
Тарасовна
Тимофеевна
Тимуровна
Федоровна
Феликсовна
Филипповна
Харитоновна
Эдуардовна
Эльдаровна
Юльевна
Юрьевна
Яковлевна

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonTemplate xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="33ef2225-46c0-453d-ae22-a29bbb30d672">
<name>ЮТ_СловарьПодражателя_Люди_ЖенскиеОтчества_ru</name>
<synonym>
<key>ru</key>
<value>Подражатель люди женские отчества ru</value>
</synonym>
<templateType>TextDocument</templateType>
</mdclass:CommonTemplate>

View File

@ -0,0 +1,250 @@
Смирнова
Иванова
Кузнецова
Попова
Соколова
Лебедева
Козлова
Новикова
Морозова
Петрова
Волкова
Соловьева
Васильева
Зайцева
Павлова
Семенова
Голубева
Виноградова
Богданова
Воробьева
Федорова
Михайлова
Беляева
Тарасова
Белова
Комарова
Орлова
Киселева
Макарова
Андреева
Ковалева
Ильина
Гусева
Титова
Кузьмина
Кудрявцева
Баранова
Куликова
Алексеева
Степанова
Яковлева
Сорокина
Сергеева
Романова
Захарова
Борисова
Королева
Герасимова
Пономарева
Григорьева
Лазарева
Медведева
Ершова
Никитина
Соболева
Рябова
Полякова
Цветкова
Данилова
Жукова
Фролова
Журавлева
Николаева
Крылова
Максимова
Сидорова
Осипова
Белоусова
Федотова
Дорофеева
Егорова
Матвеева
Боброва
Дмитриева
Калинина
Анисимова
Петухова
Антонова
Тимофеева
Никифорова
Веселова
Филиппова
Маркова
Большакова
Суханова
Миронова
Ширяева
Александрова
Коновалова
Шестакова
Казакова
Ефимова
Денисова
Громова
Фомина
Давыдова
Мельникова
Щербакова
Блинова
Колесникова
Карпова
Афанасьева
Власова
Маслова
Исакова
Тихонова
Аксенова
Гаврилова
Родионова
Котова
Горбунова
Кудряшова
Быкова
Зуева
Третьякова
Савельева
Панова
Рыбакова
Суворова
Абрамова
Воронова
Мухина
Архипова
Трофимова
Мартынова
Емельянова
Горшкова
Чернова
Овчинникова
Селезнева
Панфилова
Копылова
Михеева
Галкина
Назарова
Лобанова
Лукина
Белякова
Потапова
Некрасова
Хохлова
Жданова
Наумова
Шилова
Воронцова
Ермакова
Дроздова
Игнатьева
Савина
Логинова
Сафонова
Капустина
Кириллова
Моисеева
Елисеева
Кошелева
Костина
Горбачева
Орехова
Ефремова
Исаева
Евдокимова
Калашникова
Кабанова
Носкова
Юдина
Кулагина
Лапина
Прохорова
Нестерова
Харитонова
Агафонова
Муравьева
Ларионова
Федосеева
Зимина
Пахомова
Шубина
Игнатова
Филатова
Крюкова
Рогова
Кулакова
Терентьева
Молчанова
Владимирова
Артемьева
Гурьева
Зиновьева
Гришина
Кононова
Дементьева
Ситникова
Симонова
Мишина
Фадеева
Комиссарова
Мамонтова
Носова
Гуляева
Шарова
Устинова
Вишнякова
Евсеева
Лаврентьева
Брагина
Константинова
Корнилова
Авдеева
Зыкова
Бирюкова
Шарапова
Никонова
Щукина
Дьячкова
Одинцова
Сазонова
Якушева
Красильникова
Гордеева
Самойлова
Князева
Беспалова
Уварова
Шашкова
Бобылева
Доронина
Белозерова
Рожкова
Самсонова
Мясникова
Лихачева
Бурова
Сысоева
Фомичева
Русакова
Стрелкова
Гущина
Тетерина
Колобова
Субботина
Фокина
Блохина
Селиверстова
Пестова
Кондратьева
Силина
Меркушева
Лыткина
Турова

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonTemplate xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="49d17d5c-11a3-438e-b865-995c382c6099">
<name>ЮТ_СловарьПодражателя_Люди_ЖенскиеФамилии_ru</name>
<synonym>
<key>ru</key>
<value>Подражатель люди женские фамилии ru</value>
</synonym>
<templateType>TextDocument</templateType>
</mdclass:CommonTemplate>

View File

@ -0,0 +1,321 @@
Август
Авдей
Аверкий
Аверьян
Авксентий
Автоном
Агап
Агафон
Аггей
Адам
Адриан
Азарий
Аким
Александр
Алексей
Амвросий
Амос
Ананий
Анатолий
Андрей
Андрон
Андроник
Аникей
Аникита
Анисим
Антип
Антонин
Аполлинарий
Аполлон
Арефий
Аристарх
Аркадий
Арсений
Артемий
Артем
Архип
Аскольд
Афанасий
Афиноген
Бажен
Богдан
Болеслав
Борис
Борислав
Боян
Бронислав
Будимир
Вадим
Валентин
Валерий
Валерьян
Варлаам
Варфоломей
Василий
Вацлав
Велимир
Венедикт
Вениамин
Викентий
Виктор
Викторин
Виссарион
Виталий
Владилен
Владлен
Владимир
Владислав
Влас
Всеволод
Всемил
Всеслав
Вышеслав
Вячеслав
Гаврила
Галактион
Гедеон
Геннадий
Георгий
Герасим
Герман
Глеб
Гордей
Гостомысл
Гремислав
Григорий
Гурий
Давыд
Данила
Дементий
Демид
Демьян
Денис
Дмитрий
Добромысл
Доброслав
Дорофей
Евгений
Евграф
Евдоким
Евлампий
Евсей
Евстафий
Евстигней
Егор
Елизар
Елисей
Емельян
Епифан
Еремей
Ермил
Ермолай
Ерофей
Ефим
Ефрем
Захар
Зиновий
Зосима
Иван
Игнатий
Игорь
Измаил
Изот
Изяслав
Иларион
Илья
Иннокентий
Иосиф
Ипат
Ипатий
Ипполит
Ираклий
Исай
Исидор
Казимир
Каллистрат
Капитон
Карл
Карп
Касьян
Ким
Кир
Кирилл
Клавдий
Климент
Кондрат
Кондратий
Конон
Константин
Корнил
Кузьма
Куприян
Лавр
Лаврентий
Ладимир
Ладислав
Лазарь
Лев
Леон
Леонид
Леонтий
Лонгин
Лука
Лукьян
Лучезар
Любим
Любомир
Любосмысл
Макар
Максим
Максимильян
Мариан
Марк
Мартын
Мартьян
Матвей
Мефодий
Мечислав
Милан
Милен
Милий
Милован
Мина
Мир
Мирон
Мирослав
Митофан
Михаил
Михей
Модест
Моисей
Мокей
Мстислав
Назар
Наркис
Натан
Наум
Нестор
Никандр
Никанор
Никита
Никифор
Никодим
Николай
Никон
Нифонт
Олег
Олимпий
Онуфрий
Орест
Осип
Остап
Остромир
Павел
Панкратий
Панкрат
Пантелеймон
Панфил
Парамон
Парфен
Пахом
Петр
Пимен
Платон
Поликарп
Порфирий
Потап
Пров
Прокл
Прокофий
Прохор
Радим
Радислав
Радован
Ратибор
Ратмир
Родион
Роман
Ростислав
Рубен
Руслан
Рюрик
Савва
Савватий
Савелий
Самсон
Самуил
Светозар
Святополк
Святослав
Севастьян
Селиван
Селиверст
Семен
Серафим
Сергей
Сигизмунд
Сидор
Сила
Силантий
Сильвестр
Симон
Сократ
Соломон
Софон
Софрон
Спартак
Спиридон
Станимир
Станислав
Степан
Стоян
Тарас
Твердислав
Творимир
Терентий
Тимофей
Тимур
Тит
Тихон
Трифон
Трофим
Ульян
Устин
Фадей
Федор
Федосий
Федот
Феликс
Феоктист
Феофан
Ферапонт
Филарет
Филимон
Филипп
Фирс
Флорентин
Фока
Фома
Фортунат
Фотий
Фрол
Харитон
Харлампий
Христофор
Чеслав
Эдуард
Эммануил
Эмиль
Эраст
Эрнест
Эрнст
Ювеналий
Юлиан
Юлий
Юрий
Яков
Ян
Якуб
Януарий
Ярополк
Ярослав

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonTemplate xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="05112757-a04e-4ec0-a935-c6ed9fc9899f">
<name>ЮТ_СловарьПодражателя_Люди_МужскиеИмена_ru</name>
<synonym>
<key>ru</key>
<value>Подражатель люди мужские имена ru</value>
</synonym>
<templateType>TextDocument</templateType>
</mdclass:CommonTemplate>

View File

@ -0,0 +1,132 @@
Ааронович
Абрамович
Августович
Авдеевич
Аверьянович
Адамович
Адрианович
Аксёнович
Александрович
Алексеевич
Анатольевич
Андреевич
Анисимович
Антипович
Антонович
Ануфриевич
Арсенович
Арсеньевич
Артёмович
Артемьевич
Артурович
Архипович
Афанасьевич
Бенедиктович
Богданович
Бориславович
Борисович
Брониславович
Валентинович
Валерианович
Валерьевич
Валерьянович
Васильевич
Венедиктович
Викентьевич
Викторович
Виленович
Вилорович
Витальевич
Владиленович
Владиславович
Владленович
Власович
Всеволодович
Вячеславович
Гавриилович
Гаврилович
Геннадиевич
Георгиевич
Герасимович
Германович
Гертрудович
Глебович
Гордеевич
Григорьевич
Гурьевич
Давидович
Давыдович
Даниилович
Данилович
Демидович
Демьянович
Денисович
Димитриевич
Дмитриевич
Дорофеевич
Евсеевич
Евстигнеевич
Егорович
Елизарович
Елисеевич
Еремеевич
Ермилович
Ермолаевич
Ерофеевич
Ефимович
Ефимьевич
Ефремович
Ефстафьевич
Жанович
Жоресович
Захарьевич
Зиновьевич
Игнатович
Игнатьевич
Игоревич
Измаилович
Изотович
Иларионович
Ильич
Ильясович
Иосипович
Иосифович
Исидорович
Марсович
Матвеевич
Тарасович
Теймуразович
Терентьевич
Тимурович
Тихонович
Трифонович
Трофимович
Устинович
Фадеевич
Фёдорович
Федосеевич
Федосьевич
Федотович
Феликсович
Феодосьевич
Феоктистович
Феофанович
Филатович
Филимонович
Филиппович
Фокич
Фомич
Фролович
Харитонович
Харламович
Харлампович
Харлампьевич
Чеславович
Эдгардович
Эдгарович
Эдуардович
Юлианович
Юльевич
Яковлевич
Якубович
Ярославович

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonTemplate xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="4037f89e-366d-40f6-a544-cb2aaa6595b4">
<name>ЮТ_СловарьПодражателя_Люди_МужскиеОтчества_ru</name>
<synonym>
<key>ru</key>
<value>Подражатель люди мужские отчества ru</value>
</synonym>
<templateType>TextDocument</templateType>
</mdclass:CommonTemplate>

View File

@ -0,0 +1,250 @@
Смирнов
Иванов
Кузнецов
Попов
Соколов
Лебедев
Козлов
Новиков
Морозов
Петров
Волков
Соловьев
Васильев
Зайцев
Павлов
Семенов
Голубев
Виноградов
Богданов
Воробьев
Федоров
Михайлов
Беляев
Тарасов
Белов
Комаров
Орлов
Киселев
Макаров
Андреев
Ковалев
Ильин
Гусев
Титов
Кузьмин
Кудрявцев
Баранов
Куликов
Алексеев
Степанов
Яковлев
Сорокин
Сергеев
Романов
Захаров
Борисов
Королев
Герасимов
Пономарев
Григорьев
Лазарев
Медведев
Ершов
Никитин
Соболев
Рябов
Поляков
Цветков
Данилов
Жуков
Фролов
Журавлев
Николаев
Крылов
Максимов
Сидоров
Осипов
Белоусов
Федотов
Дорофеев
Егоров
Матвеев
Бобров
Дмитриев
Калинин
Анисимов
Петухов
Антонов
Тимофеев
Никифоров
Веселов
Филиппов
Марков
Большаков
Суханов
Миронов
Ширяев
Александров
Коновалов
Шестаков
Казаков
Ефимов
Денисов
Громов
Фомин
Давыдов
Мельников
Щербаков
Блинов
Колесников
Карпов
Афанасьев
Власов
Маслов
Исаков
Тихонов
Аксенов
Гаврилов
Родионов
Котов
Горбунов
Кудряшов
Быков
Зуев
Третьяков
Савельев
Панов
Рыбаков
Суворов
Абрамов
Воронов
Мухин
Архипов
Трофимов
Мартынов
Емельянов
Горшков
Чернов
Овчинников
Селезнев
Панфилов
Копылов
Михеев
Галкин
Назаров
Лобанов
Лукин
Беляков
Потапов
Некрасов
Хохлов
Жданов
Наумов
Шилов
Воронцов
Ермаков
Дроздов
Игнатьев
Савин
Логинов
Сафонов
Капустин
Кириллов
Моисеев
Елисеев
Кошелев
Костин
Горбачев
Орехов
Ефремов
Исаев
Евдокимов
Калашников
Кабанов
Носков
Юдин
Кулагин
Лапин
Прохоров
Нестеров
Харитонов
Агафонов
Муравьев
Ларионов
Федосеев
Зимин
Пахомов
Шубин
Игнатов
Филатов
Крюков
Рогов
Кулаков
Терентьев
Молчанов
Владимиров
Артемьев
Гурьев
Зиновьев
Гришин
Кононов
Дементьев
Ситников
Симонов
Мишин
Фадеев
Комиссаров
Мамонтов
Носов
Гуляев
Шаров
Устинов
Вишняков
Евсеев
Лаврентьев
Брагин
Константинов
Корнилов
Авдеев
Зыков
Бирюков
Шарапов
Никонов
Щукин
Дьячков
Одинцов
Сазонов
Якушев
Красильников
Гордеев
Самойлов
Князев
Беспалов
Уваров
Шашков
Бобылев
Доронин
Белозеров
Рожков
Самсонов
Мясников
Лихачев
Буров
Сысоев
Фомичев
Русаков
Стрелков
Гущин
Тетерин
Колобов
Субботин
Фокин
Блохин
Селиверстов
Пестов
Кондратьев
Силин
Меркушев
Лыткин
Туров

View File

@ -0,0 +1,9 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonTemplate xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="e31c6720-ca35-41d5-beee-0f755d3440df">
<name>ЮТ_СловарьПодражателя_Люди_МужскиеФамилии_ru</name>
<synonym>
<key>ru</key>
<value>Подражатель люди мужские фамилии ru</value>
</synonym>
<templateType>TextDocument</templateType>
</mdclass:CommonTemplate>

View File

@ -26,6 +26,7 @@
<languageCode>ru</languageCode>
</languages>
<subsystems>Subsystem.ЮТДвижок</subsystems>
<subsystems>Subsystem.ЮТПодражатель</subsystems>
<subsystems>Subsystem.ЮТФункциональность</subsystems>
<commonPictures>CommonPicture.ЮТНеизвестный</commonPictures>
<commonPictures>CommonPicture.ЮТОшибка</commonPictures>
@ -34,6 +35,14 @@
<commonPictures>CommonPicture.ЮТУпал</commonPictures>
<commonPictures>CommonPicture.ЮТУспешно</commonPictures>
<commonPictures>CommonPicture.ЮТЭлементыТестов</commonPictures>
<commonTemplates>CommonTemplate.ЮТ_СловарьПодражателя_Компании_Наименования_ru</commonTemplates>
<commonTemplates>CommonTemplate.ЮТ_СловарьПодражателя_Компании_ПрефиксыНаименований_ru</commonTemplates>
<commonTemplates>CommonTemplate.ЮТ_СловарьПодражателя_Люди_ЖенскиеИмена_ru</commonTemplates>
<commonTemplates>CommonTemplate.ЮТ_СловарьПодражателя_Люди_ЖенскиеОтчества_ru</commonTemplates>
<commonTemplates>CommonTemplate.ЮТ_СловарьПодражателя_Люди_ЖенскиеФамилии_ru</commonTemplates>
<commonTemplates>CommonTemplate.ЮТ_СловарьПодражателя_Люди_МужскиеИмена_ru</commonTemplates>
<commonTemplates>CommonTemplate.ЮТ_СловарьПодражателя_Люди_МужскиеОтчества_ru</commonTemplates>
<commonTemplates>CommonTemplate.ЮТ_СловарьПодражателя_Люди_МужскиеФамилии_ru</commonTemplates>
<commonTemplates>CommonTemplate.ЮТОписаниеМетаданных</commonTemplates>
<commonModules>CommonModule.Мокито</commonModules>
<commonModules>CommonModule.МокитоОбучение</commonModules>
@ -66,6 +75,13 @@
<commonModules>CommonModule.ЮТПараметрыЗапуска</commonModules>
<commonModules>CommonModule.ЮТПереопределениеКонтекста</commonModules>
<commonModules>CommonModule.ЮТПовторногоИспользования</commonModules>
<commonModules>CommonModule.ЮТПодражатель</commonModules>
<commonModules>CommonModule.ЮТПодражатель_Банки</commonModules>
<commonModules>CommonModule.ЮТПодражатель_Компании</commonModules>
<commonModules>CommonModule.ЮТПодражатель_Люди</commonModules>
<commonModules>CommonModule.ЮТПодражательВызовСервера</commonModules>
<commonModules>CommonModule.ЮТПодражательПовтИсп</commonModules>
<commonModules>CommonModule.ЮТПодражательСлужебный</commonModules>
<commonModules>CommonModule.ЮТПредикаты</commonModules>
<commonModules>CommonModule.ЮТПредикатыКлиентСервер</commonModules>
<commonModules>CommonModule.ЮТРасширения</commonModules>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<cmi:CommandInterface xmlns:cmi="http://g5.1c.ru/v8/dt/cmi"/>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<cmi:CommandInterface xmlns:cmi="http://g5.1c.ru/v8/dt/cmi"/>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<cmi:CommandInterface xmlns:cmi="http://g5.1c.ru/v8/dt/cmi"/>

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Subsystem xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="b5fd9106-1b76-4e21-987e-12d440e36400">
<name>ЮТПодражатель_Реализация_Банки</name>
<synonym>
<key>ru</key>
<value>ЮТПодражатель реализация банки</value>
</synonym>
<includeHelpInContents>true</includeHelpInContents>
<content>CommonModule.ЮТПодражатель_Банки</content>
<parentSubsystem>Subsystem.ЮТПодражатель.Subsystem.ЮТПодражательРеализации</parentSubsystem>
</mdclass:Subsystem>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<cmi:CommandInterface xmlns:cmi="http://g5.1c.ru/v8/dt/cmi"/>

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Subsystem xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="82c2f4c4-1684-4483-a709-67a48f14c63c">
<name>ЮТПодражатель_Реализация_Компании</name>
<synonym>
<key>ru</key>
<value>ЮТПодражатель реализация компании</value>
</synonym>
<includeHelpInContents>true</includeHelpInContents>
<content>CommonModule.ЮТПодражатель_Компании</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Компании_Наименования_ru</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Компании_ПрефиксыНаименований_ru</content>
<parentSubsystem>Subsystem.ЮТПодражатель.Subsystem.ЮТПодражательРеализации</parentSubsystem>
</mdclass:Subsystem>

View File

@ -0,0 +1,2 @@
<?xml version="1.0" encoding="UTF-8"?>
<cmi:CommandInterface xmlns:cmi="http://g5.1c.ru/v8/dt/cmi"/>

View File

@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Subsystem xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="afae5d03-2025-4f15-a735-3a88c14f7913">
<name>ЮТПодражатель_Реализация_Люди</name>
<synonym>
<key>ru</key>
<value>ЮТПодражатель реализация люди</value>
</synonym>
<includeHelpInContents>true</includeHelpInContents>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_ЖенскиеИмена_ru</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_ЖенскиеФамилии_ru</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_ЖенскиеОтчества_ru</content>
<content>CommonModule.ЮТПодражатель_Люди</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_МужскиеИмена_ru</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_МужскиеОтчества_ru</content>
<content>CommonTemplate.ЮТ_СловарьПодражателя_Люди_МужскиеФамилии_ru</content>
<parentSubsystem>Subsystem.ЮТПодражатель.Subsystem.ЮТПодражательРеализации</parentSubsystem>
</mdclass:Subsystem>

View File

@ -0,0 +1,13 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Subsystem xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="675f2886-dc9b-4f34-aa07-0983d4a769e7">
<name>ЮТПодражательРеализации</name>
<synonym>
<key>ru</key>
<value>ЮТПодражатель реализации</value>
</synonym>
<includeHelpInContents>true</includeHelpInContents>
<subsystems>ЮТПодражатель_Реализация_Банки</subsystems>
<subsystems>ЮТПодражатель_Реализация_Компании</subsystems>
<subsystems>ЮТПодражатель_Реализация_Люди</subsystems>
<parentSubsystem>Subsystem.ЮТПодражатель</parentSubsystem>
</mdclass:Subsystem>

View File

@ -0,0 +1,14 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:Subsystem xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="bda333bc-3760-4247-8d9f-b6e6a03b0b4f">
<name>ЮТПодражатель</name>
<synonym>
<key>ru</key>
<value>Подражатель</value>
</synonym>
<includeHelpInContents>true</includeHelpInContents>
<content>CommonModule.ЮТПодражатель</content>
<content>CommonModule.ЮТПодражательПовтИсп</content>
<content>CommonModule.ЮТПодражательВызовСервера</content>
<content>CommonModule.ЮТПодражательСлужебный</content>
<subsystems>ЮТПодражательРеализации</subsystems>
</mdclass:Subsystem>

View File

@ -1,25 +1,25 @@
&НаСервере
Процедура Заполнить()
Запрос = Новый Запрос("ВЫБРАТЬ
| ВзаиморасчетыОстатки.Контрагент,
| ВзаиморасчетыОстатки.Валюта,
| ВзаиморасчетыОстатки.СуммаОстаток КАК СуммаОстаток
|ИЗ
| РегистрНакопления.Взаиморасчеты.Остатки КАК ВзаиморасчетыОстатки
&НаСервере
Процедура Заполнить()
Запрос = Новый Запрос("ВЫБРАТЬ
| ВзаиморасчетыОстатки.Контрагент,
| ВзаиморасчетыОстатки.Валюта,
| ВзаиморасчетыОстатки.СуммаОстаток КАК СуммаОстаток
|ИЗ
| РегистрНакопления.Взаиморасчеты.Остатки КАК ВзаиморасчетыОстатки
|АВТОУПОРЯДОЧИВАНИЕ");
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
НоваяСтрока = ТаблицаОстатков.Добавить();
НоваяСтрока.Контрагент = Выборка.Контрагент;
НоваяСтрока.Валюта = Выборка.Валюта;
Если Выборка.СуммаОстаток > 0 Тогда
НоваяСтрока.НашДолг = Выборка.СуммаОстаток;
Иначе
НоваяСтрока.ДолгНам = Выборка.СуммаОстаток * -1;
КонецЕсли;
КонецЦикла
КонецПроцедуры
Выборка = Запрос.Выполнить().Выбрать();
Пока Выборка.Следующий() Цикл
НоваяСтрока = ТаблицаОстатков.Добавить();
НоваяСтрока.Контрагент = Выборка.Контрагент;
НоваяСтрока.Валюта = Выборка.Валюта;
Если Выборка.СуммаОстаток > 0 Тогда
НоваяСтрока.НашДолг = Выборка.СуммаОстаток;
Иначе
НоваяСтрока.ДолгНам = Выборка.СуммаОстаток * -1;
КонецЕсли;
КонецЦикла
КонецПроцедуры
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
@ -29,7 +29,7 @@
&НаКлиенте
Процедура ТаблицаОстатковВыбор(Элемент, ВыбраннаяСтрока, Поле, СтандартнаяОбработка)
ПоказатьЗначение( ,ТаблицаОстатков.НайтиПоИдентификатору(ВыбраннаяСтрока).Контрагент);
СтандартнаяОбработка = Ложь;
СтандартнаяОбработка = Ложь;
КонецПроцедуры
&НаКлиенте

View File

@ -102,9 +102,9 @@
КонецФункции
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
&НаКлиенте
Процедура ПриОткрытии(Отказ)
@ -135,7 +135,7 @@
#КонецЕсли
КонецПроцедуры
&НаКлиенте
Процедура НовыйРасчетныйСчетВыполнить()
@ -146,11 +146,11 @@
// Подготовка параметров и открытие формы нового расчетного счета контрагента.
ЗначенияЗаполнения = Новый Структура();
ЗначенияЗаполнения.Вставить("НаименованиеЗаполнить", "Р/С " + Объект.Наименование);
ЗначенияЗаполнения.Вставить("Владелец", Объект.Ссылка);
СтруктураПараметров = Новый Структура("ЗначенияЗаполнения", ЗначенияЗаполнения);
ЗначенияЗаполнения.Вставить("НаименованиеЗаполнить", "Р/С " + Объект.Наименование);
ЗначенияЗаполнения.Вставить("Владелец", Объект.Ссылка);
СтруктураПараметров = Новый Структура("ЗначенияЗаполнения", ЗначенияЗаполнения);
ОткрытьФорму("Справочник.РасчетныеСчетаКонтрагентов.ФормаОбъекта", СтруктураПараметров);
КонецПроцедуры
&НаКлиенте

View File

@ -1,8 +1,8 @@
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ОБЪЕКТА
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ ОБЪЕКТА
////////////////////////////////////////////////////////////////////////////////
// Обработчик события "Проверка заполнения"
////////////////////////////////////////////////////////////////////////////////
// Обработчик события "Проверка заполнения"
Процедура ОбработкаПроверкиЗаполнения(Отказ, ПроверяемыеРеквизиты)
// Если это группа,
@ -32,10 +32,10 @@
Если НЕ ПустаяСтрока(Улица) Тогда
// Тогда, должны быть заполнены и поля Регион, Город, и Дом.
ПроверяемыеРеквизиты.Добавить("Регион");
ПроверяемыеРеквизиты.Добавить("Регион");
ПроверяемыеРеквизиты.Добавить("Город");
ПроверяемыеРеквизиты.Добавить("Дом");
КонецЕсли;
КонецПроцедуры

View File

@ -1,13 +1,13 @@
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
Если Параметры.Ключ.Пустая() Тогда
Объект.БитДанных = 8;
Объект.БитДанных = 8;
Объект.Скорость = 9600;
Объект.Порт = "COM1";

View File

@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
&НаСервере
Процедура ПриСозданииНаСервере(Отказ, СтандартнаяОбработка)
@ -12,7 +12,7 @@
СправочникСписок.Параметры.УстановитьЗначениеПараметра("ПоВсемСкладам", Ложь);
СправочникСписок.Параметры.УстановитьЗначениеПараметра("Склад", Параметры.ОстаткиПоСкладу);
Иначе
Отказ = Истина;

View File

@ -9,4 +9,4 @@
// Подключение внешней компоненты
НачатьУстановкуВнешнейКомпоненты(, "ОбщийМакет.ДрайверСканераШтрихкодов");
КонецПроцедуры
КонецПроцедуры

View File

@ -1,5 +1,5 @@
////////////////////////////////////////////////////////////////////////////////
// ПЕРЕМЕННЫЕ МОДУЛЯ
//
Перем ДрайверСканераШтрихкодов Экспорт; // Сканер штрихкодов
////////////////////////////////////////////////////////////////////////////////
// ПЕРЕМЕННЫЕ МОДУЛЯ
//
Перем ДрайверСканераШтрихкодов Экспорт; // Сканер штрихкодов

View File

@ -5,33 +5,33 @@
&НаКлиенте
Перем АдресТоваровВХранилище;
////////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ
//
// Функция возвращает цену определенного товара на дату согласно виду цены
//
// Параметры:
// Дата – Дата – дата, на которую определяется цена.
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
// ВидЦен – СправочникСсылка.ВидыЦен – вид цены.
//
// Возвращаемое значение:
// Число - Цена товара на определенную дату, согласно виду цены.
////////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ
//
// Функция возвращает цену определенного товара на дату согласно виду цены
//
// Параметры:
// Дата – Дата – дата, на которую определяется цена.
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
// ВидЦен – СправочникСсылка.ВидыЦен – вид цены.
//
// Возвращаемое значение:
// Число - Цена товара на определенную дату, согласно виду цены.
&НаСервереБезКонтекста
Функция ПолучитьЦенуТовара(Дата, Товар, ВидЦен)
ЦенаТовара = РегистрыСведений.ЦеныТоваров.ПолучитьПоследнее(
Дата, Новый Структура("Товар, ВидЦен", Товар, ВидЦен));
Возврат ЦенаТовара.Цена;
КонецФункции
// Функция возвращает вид цены для указанного покупателя
//
// Параметры:
// Покупатель – СправочникСсылка.Контрагенты – контрагент.
//
// Возвращаемое значение:
// СправочникСсылка.ВидыЦен - Вид цены для указанного покупателя.
Функция ПолучитьЦенуТовара(Дата, Товар, ВидЦен)
ЦенаТовара = РегистрыСведений.ЦеныТоваров.ПолучитьПоследнее(
Дата, Новый Структура("Товар, ВидЦен", Товар, ВидЦен));
Возврат ЦенаТовара.Цена;
КонецФункции
// Функция возвращает вид цены для указанного покупателя
//
// Параметры:
// Покупатель – СправочникСсылка.Контрагенты – контрагент.
//
// Возвращаемое значение:
// СправочникСсылка.ВидыЦен - Вид цены для указанного покупателя.
&НаСервереБезКонтекста
Функция ПолучитьВидЦенПокупателя(Покупатель)
Запрос = Новый Запрос();
@ -41,7 +41,7 @@
Если Выборка.Следующий() Тогда
Возврат Выборка.ВидЦен;
КонецЕсли;
Возврат Справочники.ВидыЦен.ПустаяСсылка();
Возврат Справочники.ВидыЦен.ПустаяСсылка();
КонецФункции
// Функция определяет услуга это или нет
@ -50,19 +50,19 @@
Возврат ?(Товар.Вид = Перечисления.ВидыТоваров.Услуга, Истина, Ложь);
КонецФункции
КонецФункции
// Процедура устанавливает цены товаров и вычисляет суммы по каждой строке
// табличной части Товары.
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// Нет.
// табличной части Товары.
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// Нет.
&НаСервере
Процедура ПересчитатьЦеныИСуммыТоваров(ПересчитатьДляВсехТоваров)
Запрос = Новый Запрос();
Запрос = Новый Запрос();
Запрос.Текст = "ВЫБРАТЬ
| ЦеныТоваровСрезПоследних.Цена,
| ЦеныТоваровСрезПоследних.Товар
@ -70,14 +70,14 @@
| РегистрСведений.ЦеныТоваров.СрезПоследних(
| ,
| ВидЦен = &ВидЦены
| И Товар В (&Товары)) КАК ЦеныТоваровСрезПоследних";
| И Товар В (&Товары)) КАК ЦеныТоваровСрезПоследних";
Запрос.УстановитьПараметр("ВидЦены", Объект.ВидЦен);
Товары = Новый Массив();
Для каждого Стр Из Объект.Товары Цикл
Товары.Добавить(Стр.Товар);
КонецЦикла;
Товары = Новый Массив();
Для каждого Стр Из Объект.Товары Цикл
Товары.Добавить(Стр.Товар);
КонецЦикла;
Запрос.УстановитьПараметр("Товары", Товары);
ТЗЦены = Запрос.Выполнить().Выгрузить();
ТЗЦены.Индексы.Добавить("Товар");
Для каждого Стр Из Объект.Товары Цикл
@ -93,8 +93,8 @@
Стр.СуммаИзменена = Ложь;
Стр.ЭтоУслуга = ЭтоУслуга(Стр.Товар);
КонецЦикла;
КонецПроцедуры
КонецПроцедуры
// Функция помещает список товаров во временное хранилище и возвращает адрес
&НаСервере
Функция ПоместитьТоварыВХранилище()
@ -109,17 +109,17 @@
КонецПроцедуры
// Функция возвращает ссылку на текущую строку в списке товаров
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// СправочникСсылка.Товары - Текущий товар в списке.
// Функция возвращает ссылку на текущую строку в списке товаров
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// СправочникСсылка.Товары - Текущий товар в списке.
&НаКлиенте
Функция ПолучитьТекущуюСтрокуТовары()
Возврат Элементы.Товары.ТекущиеДанные;
КонецФункции
Функция ПолучитьТекущуюСтрокуТовары()
Возврат Элементы.Товары.ТекущиеДанные;
КонецФункции
// Процедура вычисляет дополнительные данные строки документа
&НаКлиентеНаСервереБезКонтекста
@ -143,16 +143,16 @@
КонецФункции
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
&НаКлиенте
Процедура ТоварыТоварПриИзменении(Элемент)
Стр = ПолучитьТекущуюСтрокуТовары();
Стр = ПолучитьТекущуюСтрокуТовары();
Стр.ЭтоУслуга = ЭтоУслуга(Стр.Товар);
Стр.Цена = ПолучитьЦенуТовара(Объект.Дата, Стр.Товар, Объект.ВидЦен);
Стр.Количество = ?(Стр.ЭтоУслуга ИЛИ Стр.Количество = 0, 1, Стр.Количество);
Стр.Количество = ?(Стр.ЭтоУслуга ИЛИ Стр.Количество = 0, 1, Стр.Количество);
Стр.Сумма = Стр.Количество * Стр.Цена;
ЗаполнитьДополнительныеДанныеСтроки(Стр);
КонецПроцедуры
@ -177,15 +177,15 @@
&НаКлиенте
Процедура ТоварыЦенаПриИзменении(Элемент)
Стр = ПолучитьТекущуюСтрокуТовары();
Стр = ПолучитьТекущуюСтрокуТовары();
Стр.Сумма = Стр.Количество * Стр.Цена;
ЗаполнитьДополнительныеДанныеСтроки(Стр);
КонецПроцедуры
&НаКлиенте
Процедура ТоварыКоличествоПриИзменении(Элемент)
Стр = ПолучитьТекущуюСтрокуТовары();
Стр.Сумма = Стр.Количество * Стр.Цена;
Стр = ПолучитьТекущуюСтрокуТовары();
Стр.Сумма = Стр.Количество * Стр.Цена;
ЗаполнитьДополнительныеДанныеСтроки(Стр);
КонецПроцедуры
@ -194,8 +194,8 @@
Стр = ПолучитьТекущуюСтрокуТовары();
ЗаполнитьДополнительныеДанныеСтроки(Стр);
КонецПроцедуры
// Обработчик команды подбора
// Обработчик команды подбора
&НаКлиенте
Процедура КомандаПодбор()
#Если МобильныйКлиент Тогда
@ -206,7 +206,7 @@
АдресТоваровВХранилище = ПоместитьТоварыВХранилище();
ПараметрыПодбора = Новый Структура("АдресТоваровДокумента, ВидЦен, Склад", АдресТоваровВХранилище, Объект.ВидЦен, Объект.Склад);
ФормаПодбора = ОткрытьФорму(Имя, ПараметрыПодбора, ЭтотОбъект);
КонецПроцедуры
КонецПроцедуры
&НаКлиенте
Процедура ОрганизацияПриИзменении(Элемент)

View File

@ -1,7 +1,7 @@
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
&НаКлиенте
Процедура ОрганизацияПриИзменении(Элемент)

View File

@ -1,26 +1,26 @@
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
// Обработчик копирования документа выполняет также копирование движений
Процедура ПриКопировании(ОбъектКопирования)
ОбъектКопирования.Движения.ТоварныеЗапасы.Прочитать();
Для каждого ИсхЗапись Из ОбъектКопирования.Движения.ТоварныеЗапасы Цикл
Запись = Движения.ТоварныеЗапасы.Добавить();
Запись.ВидДвижения = ИсхЗапись.ВидДвижения;
Запись.Товар = ИсхЗапись.Товар;
Запись.Склад = ИсхЗапись.Склад;
Запись.Количество = ИсхЗапись.Количество;
КонецЦикла;
КонецПроцедуры
Процедура ПриКопировании(ОбъектКопирования)
ОбъектКопирования.Движения.ТоварныеЗапасы.Прочитать();
Для каждого ИсхЗапись Из ОбъектКопирования.Движения.ТоварныеЗапасы Цикл
Запись = Движения.ТоварныеЗапасы.Добавить();
Запись.ВидДвижения = ИсхЗапись.ВидДвижения;
Запись.Товар = ИсхЗапись.Товар;
Запись.Склад = ИсхЗапись.Склад;
Запись.Количество = ИсхЗапись.Количество;
КонецЦикла;
КонецПроцедуры
// Обработчик события, предшествующего записи, устанавливает всем
// движениям дату самого документа
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
// движениям дату самого документа
Процедура ПередЗаписью(Отказ, РежимЗаписи, РежимПроведения)
Для каждого Запись Из Движения.ТоварныеЗапасы Цикл
Запись.Период = Дата;
КонецЦикла;
Для каждого Запись Из Движения.ТоварныеЗапасы Цикл
Запись.Период = Дата;
КонецЦикла;
КонецПроцедуры
КонецПроцедуры

View File

@ -1,8 +1,8 @@
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
Процедура ОбработкаПроведения(Отказ, Режим)
// Формирование движения регистра накопления Взаиморасчеты
Движения.Взаиморасчеты.Записывать = Истина;
@ -10,7 +10,7 @@
Движение.ВидДвижения = ВидДвиженияНакопления.Расход;
Движение.Период = Дата;
Движение.Контрагент = Поставщик;
Движение.Сумма = Сумма;
Движение.Сумма = Сумма;
Движение.Валюта = Валюта;
КонецПроцедуры
@ -20,7 +20,7 @@
Поставщик = ДанныеЗаполнения.Поставщик;
Организация = ДанныеЗаполнения.Организация;
Сумма = ДанныеЗаполнения.Товары.Итог("Сумма");
ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Контрагенты") Тогда
ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Контрагенты") Тогда
ЗапросПоКонтрагенту = Новый Запрос("ВЫБРАТЬ
| Контрагенты.ЭтоГруппа
@ -34,7 +34,7 @@
Возврат;
КонецЕсли;
Поставщик = ДанныеЗаполнения.Ссылка;
Поставщик = ДанныеЗаполнения.Ссылка;
КонецЕсли;
КонецПроцедуры

View File

@ -1,10 +1,10 @@
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
Процедура ОбработкаПроведения(Отказ, Режим)
// Формирование движения регистра накопления Взаиморасчеты
// Формирование движения регистра накопления Взаиморасчеты
Движения.Взаиморасчеты.Записывать = Истина;
Движение = Движения.Взаиморасчеты.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
@ -19,7 +19,7 @@
Валюта = ДанныеЗаполнения.Валюта;
Покупатель = ДанныеЗаполнения.Покупатель;
Организация = ДанныеЗаполнения.Организация;
ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Контрагенты") Тогда
ИначеЕсли ТипЗнч(ДанныеЗаполнения) = Тип("СправочникСсылка.Контрагенты") Тогда
ЗапросПоКонтрагенту = Новый Запрос("ВЫБРАТЬ
| Контрагенты.ЭтоГруппа
@ -33,7 +33,7 @@
Возврат;
КонецЕсли;
Покупатель = ДанныеЗаполнения.Ссылка;
Покупатель = ДанныеЗаполнения.Ссылка;
КонецЕсли;
КонецПроцедуры

View File

@ -1,14 +1,14 @@
////////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ
//
// Функция возвращает закупочную цену определенного товара на дату
//
// Параметры:
// Дата – Дата – дата, на которую определяется цена.
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
//
// Возвращаемое значение:
////////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ
//
// Функция возвращает закупочную цену определенного товара на дату
//
// Параметры:
// Дата – Дата – дата, на которую определяется цена.
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
//
// Возвращаемое значение:
// Число - Цена товара на определенную дату.
&НаСервереБезКонтекста
Функция ПолучитьЦенуТовара(Дата, Товар)
@ -21,29 +21,29 @@
КонецФункции
// Функция возвращает ссылку на текущую строку в списке товаров
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// СправочникСсылка.Товары - Текущий товар в списке.
// Функция возвращает ссылку на текущую строку в списке товаров
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// СправочникСсылка.Товары - Текущий товар в списке.
&НаКлиенте
Функция ПолучитьТекущуюСтрокуТовары()
Возврат Элементы.Товары.ТекущиеДанные;
КонецФункции
КонецФункции
// Функция возвращает товар по штрихкоду
// Функция возвращает товар по штрихкоду
&НаСервереБезКонтекста
Функция ПолучитьТоварПоШтрихкоду(Штрихкод)
Возврат Справочники.Товары.НайтиПоРеквизиту("Штрихкод", Штрихкод);
КонецФункции
// Функция добавляет товар в накладную или увеличивает кол-во уже добавленного
Функция ПолучитьТоварПоШтрихкоду(Штрихкод)
Возврат Справочники.Товары.НайтиПоРеквизиту("Штрихкод", Штрихкод);
КонецФункции
// Функция добавляет товар в накладную или увеличивает кол-во уже добавленного
&НаКлиенте
Функция ДобавитьТовар(Товар)
Строки = Объект.Товары.НайтиСтроки(Новый Структура("Товар", Товар));
Если Строки.Количество() > 0 Тогда
@ -51,25 +51,25 @@
Элемент = Строки[0];
Иначе
Элемент = Объект.Товары.Добавить();
Элемент.Товар = Товар;
Элемент = Объект.Товары.Добавить();
Элемент.Товар = Товар;
Элемент.Цена = ПолучитьЦенуТовара(Объект.Дата, Товар);
КонецЕсли;
Элемент.Количество = Элемент.Количество + 1;
Элемент.Количество = Элемент.Количество + 1;
Элемент.Сумма = Элемент.Количество * Элемент.Цена;
Элементы.Товары.ТекущаяСтрока = Элемент.ПолучитьИдентификатор();
Элементы.Товары.ТекущийЭлемент = Элементы.Товары.ПодчиненныеЭлементы.ТоварыКоличество;
Элементы.Товары.ИзменитьСтроку();
КонецФункции
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
КонецФункции
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
&НаКлиенте
Процедура ТоварыТоварПриИзменении(Элемент)
@ -83,34 +83,34 @@
&НаКлиенте
Процедура ТоварыЦенаПриИзменении(Элемент)
Стр = ПолучитьТекущуюСтрокуТовары();
Стр = ПолучитьТекущуюСтрокуТовары();
Стр.Сумма = Стр.Количество * Стр.Цена;
КонецПроцедуры
&НаКлиенте
Процедура ТоварыКоличествоПриИзменении(Элемент)
Стр = ПолучитьТекущуюСтрокуТовары();
Стр = ПолучитьТекущуюСтрокуТовары();
Стр.Сумма = Стр.Количество * Стр.Цена;
КонецПроцедуры
&НаКлиенте
&НаКлиенте
Процедура ВнешнееСобытие(Источник, Событие, Данные)
Если Источник = "СканерШтрихкода" Тогда
Если ВводДоступен() Тогда
Товар = ПолучитьТоварПоШтрихкоду(Данные);
Если НЕ Товар.Пустая() Тогда
ДобавитьТовар(Товар);
Товар = ПолучитьТоварПоШтрихкоду(Данные);
Если НЕ Товар.Пустая() Тогда
ДобавитьТовар(Товар);
КонецЕсли
КонецЕсли
КонецЕсли
КонецПроцедуры
КонецПроцедуры
&НаКлиенте
Процедура ОрганизацияПриИзменении(Элемент)

View File

@ -16,16 +16,16 @@
КонецЦикла;
// Создание движения в регистре накопления Взаиморасчеты
// Создание движения в регистре накопления Взаиморасчеты
Движения.Взаиморасчеты.Записывать = Истина;
Движение = Движения.Взаиморасчеты.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Контрагент = Поставщик;
Движение = Движения.Взаиморасчеты.Добавить();
Движение.ВидДвижения = ВидДвиженияНакопления.Приход;
Движение.Период = Дата;
Движение.Контрагент = Поставщик;
Движение.Валюта = Валюта;
Если Валюта.Пустая() Тогда
Движение.Сумма = Товары.Итог("Сумма");
Иначе
@ -37,8 +37,8 @@
Иначе
Движение.Сумма = Товары.Итог("Сумма") / Курс;
КонецЕсли;
КонецЕсли;
КонецЕсли;
КонецПроцедуры

View File

@ -5,33 +5,33 @@
&НаКлиенте
Перем АдресТоваровВХранилище;
////////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ
//
// Функция возвращает цену определенного товара на дату согласно виду цены
//
// Параметры:
// Дата – Дата – дата, на которую определяется цена.
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
// ВидЦен – СправочникСсылка.ВидыЦен – вид цены.
//
// Возвращаемое значение:
// Число - Цена товара на определенную дату, согласно виду цены.
////////////////////////////////////////////////////////////////////////////////
// ПРОЦЕДУРЫ И ФУНКЦИИ
//
// Функция возвращает цену определенного товара на дату согласно виду цены
//
// Параметры:
// Дата – Дата – дата, на которую определяется цена.
// Товар – СправочникСсылка.Товары – товар, цена которого определяется.
// ВидЦен – СправочникСсылка.ВидыЦен – вид цены.
//
// Возвращаемое значение:
// Число - Цена товара на определенную дату, согласно виду цены.
&НаСервереБезКонтекста
Функция ПолучитьЦенуТовара(Дата, Товар, ВидЦен)
ЦенаТовара = РегистрыСведений.ЦеныТоваров.ПолучитьПоследнее(
Дата, Новый Структура("Товар, ВидЦен", Товар, ВидЦен));
Возврат ЦенаТовара.Цена;
КонецФункции
// Функция возвращает вид цены для указанного покупателя
//
// Параметры:
// Покупатель – СправочникСсылка.Контрагенты – контрагент.
//
// Возвращаемое значение:
// СправочникСсылка.ВидыЦен - Вид цены для указанного покупателя.
Функция ПолучитьЦенуТовара(Дата, Товар, ВидЦен)
ЦенаТовара = РегистрыСведений.ЦеныТоваров.ПолучитьПоследнее(
Дата, Новый Структура("Товар, ВидЦен", Товар, ВидЦен));
Возврат ЦенаТовара.Цена;
КонецФункции
// Функция возвращает вид цены для указанного покупателя
//
// Параметры:
// Покупатель – СправочникСсылка.Контрагенты – контрагент.
//
// Возвращаемое значение:
// СправочникСсылка.ВидыЦен - Вид цены для указанного покупателя.
&НаСервереБезКонтекста
Функция ПолучитьВидЦенПокупателя(Покупатель)
Запрос = Новый Запрос();
@ -41,7 +41,7 @@
Если Выборка.Следующий() Тогда
Возврат Выборка.ВидЦен;
КонецЕсли;
Возврат Справочники.ВидыЦен.ПустаяСсылка();
Возврат Справочники.ВидыЦен.ПустаяСсылка();
КонецФункции
// Функция определяет услуга это или нет
@ -50,19 +50,19 @@
Возврат ?(Товар.Вид = Перечисления.ВидыТоваров.Услуга, Истина, Ложь);
КонецФункции
КонецФункции
// Процедура устанавливает цены товаров и вычисляет суммы по каждой строке
// табличной части Товары.
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// Нет.
// табличной части Товары.
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// Нет.
&НаСервере
Процедура ПересчитатьЦеныИСуммыТоваров(ПересчитатьДляВсехТоваров)
Запрос = Новый Запрос();
Запрос = Новый Запрос();
Запрос.Текст = "ВЫБРАТЬ
| ЦеныТоваровСрезПоследних.Цена,
| ЦеныТоваровСрезПоследних.Товар
@ -70,14 +70,14 @@
| РегистрСведений.ЦеныТоваров.СрезПоследних(
| ,
| ВидЦен = &ВидЦены
| И Товар В (&Товары)) КАК ЦеныТоваровСрезПоследних";
| И Товар В (&Товары)) КАК ЦеныТоваровСрезПоследних";
Запрос.УстановитьПараметр("ВидЦены", Объект.ВидЦен);
Товары = Новый Массив();
Для каждого Стр Из Объект.Товары Цикл
Товары.Добавить(Стр.Товар);
КонецЦикла;
Товары = Новый Массив();
Для каждого Стр Из Объект.Товары Цикл
Товары.Добавить(Стр.Товар);
КонецЦикла;
Запрос.УстановитьПараметр("Товары", Товары);
ТЗЦены = Запрос.Выполнить().Выгрузить();
ТЗЦены.Индексы.Добавить("Товар");
Для каждого Стр Из Объект.Товары Цикл
@ -93,8 +93,8 @@
Стр.СуммаИзменена = Ложь;
Стр.ЭтоУслуга = ЭтоУслуга(Стр.Товар);
КонецЦикла;
КонецПроцедуры
КонецПроцедуры
// Функция помещает список товаров во временное хранилище и возвращает адрес
&НаСервере
Функция ПоместитьТоварыВХранилище()
@ -109,17 +109,17 @@
КонецПроцедуры
// Функция возвращает ссылку на текущую строку в списке товаров
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// СправочникСсылка.Товары - Текущий товар в списке.
// Функция возвращает ссылку на текущую строку в списке товаров
//
// Параметры:
// Нет.
//
// Возвращаемое значение:
// СправочникСсылка.Товары - Текущий товар в списке.
&НаКлиенте
Функция ПолучитьТекущуюСтрокуТовары()
Возврат Элементы.Товары.ТекущиеДанные;
КонецФункции
Функция ПолучитьТекущуюСтрокуТовары()
Возврат Элементы.Товары.ТекущиеДанные;
КонецФункции
// Процедура вычисляет дополнительные данные строки документа
&НаКлиентеНаСервереБезКонтекста
@ -130,16 +130,16 @@
КонецПроцедуры
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
////////////////////////////////////////////////////////////////////////////////
// ОБРАБОТЧИКИ СОБЫТИЙ
//
&НаКлиенте
Процедура ТоварыТоварПриИзменении(Элемент)
Стр = ПолучитьТекущуюСтрокуТовары();
Стр = ПолучитьТекущуюСтрокуТовары();
Стр.ЭтоУслуга = ЭтоУслуга(Стр.Товар);
Стр.Цена = ПолучитьЦенуТовара(Объект.Дата, Стр.Товар, Объект.ВидЦен);
Стр.Количество = ?(Стр.ЭтоУслуга ИЛИ Стр.Количество = 0, 1, Стр.Количество);
Стр.Количество = ?(Стр.ЭтоУслуга ИЛИ Стр.Количество = 0, 1, Стр.Количество);
Стр.Сумма = Стр.Количество * Стр.Цена;
ЗаполнитьДополнительныеДанныеСтроки(Стр);
КонецПроцедуры
@ -164,15 +164,15 @@
&НаКлиенте
Процедура ТоварыЦенаПриИзменении(Элемент)
Стр = ПолучитьТекущуюСтрокуТовары();
Стр = ПолучитьТекущуюСтрокуТовары();
Стр.Сумма = Стр.Количество * Стр.Цена;
ЗаполнитьДополнительныеДанныеСтроки(Стр);
КонецПроцедуры
&НаКлиенте
Процедура ТоварыКоличествоПриИзменении(Элемент)
Стр = ПолучитьТекущуюСтрокуТовары();
Стр.Сумма = Стр.Количество * Стр.Цена;
Стр = ПолучитьТекущуюСтрокуТовары();
Стр.Сумма = Стр.Количество * Стр.Цена;
ЗаполнитьДополнительныеДанныеСтроки(Стр);
КонецПроцедуры
@ -181,8 +181,8 @@
Стр = ПолучитьТекущуюСтрокуТовары();
ЗаполнитьДополнительныеДанныеСтроки(Стр);
КонецПроцедуры
// Обработчик команды подбора
// Обработчик команды подбора
&НаКлиенте
Процедура КомандаПодбор()
#Если МобильныйКлиент Тогда
@ -193,7 +193,7 @@
АдресТоваровВХранилище = ПоместитьТоварыВХранилище();
ПараметрыПодбора = Новый Структура("АдресТоваровДокумента, ВидЦен, Склад", АдресТоваровВХранилище, Объект.ВидЦен, Объект.Склад);
ФормаПодбора = ОткрытьФорму(Имя, ПараметрыПодбора, ЭтотОбъект);
КонецПроцедуры
КонецПроцедуры
&НаСервере
Процедура ПересчитатьНаСервере()

View File

@ -39,8 +39,8 @@
Ответ.УстановитьТелоИзСтроки("Неизвестное имя метода");
КонецЕсли;
Возврат Ответ;
Возврат Ответ;
КонецФункции

View File

@ -70,7 +70,7 @@
Возврат Ответ;
КонецФункции
Функция СоздатьXMLПоВыборке(Выборка)
@ -212,5 +212,5 @@
КонецПопытки;
Возврат Ответ;
КонецФункции

View File

@ -4,5 +4,5 @@
ПараметрыФормы = Новый Структура("Отбор,КлючНазначенияИспользования,СформироватьПриОткрытии", Новый Структура("Склад", ПараметрКоманды), "ОстаткиПоСкладу", Истина);
ОткрытьФорму("Отчет.ОстаткиТоваровНаСкладах.Форма", ПараметрыФормы, ПараметрыВыполненияКоманды.Источник, ПараметрыВыполненияКоманды.Уникальность, ПараметрыВыполненияКоманды.Окно);
КонецПроцедуры

View File

@ -28,6 +28,8 @@
.ДобавитьТест("РезультатПустой")
.ДобавитьТест("Запись")
.ДобавитьТест("Записи")
.ДобавитьТест("ЗначенияРеквизитовЗаписи")
.ДобавитьТест("ЗначениеРеквизитаЗаписи")
;
КонецПроцедуры
@ -261,4 +263,71 @@
КонецПроцедуры
Процедура ЗначенияРеквизитовЗаписи() Экспорт
Конструктор = ЮТест.Данные().КонструкторОбъекта("Справочники.Товары")
.Фикция("Наименование")
.Фикция("Штрихкод")
.Фикция("Поставщик");
Данные = Конструктор.ДанныеОбъекта();
Конструктор.Записать();
Предикат = ЮТест.Предикат().Реквизит("Наименование").Равно(Данные.Наименование);
ДанныеСсылки = ЮТЗапросы.ЗначенияРеквизитовЗаписи("Справочник.Товары", Предикат, "Наименование");
ЮТест.ОжидаетЧто(ДанныеСсылки)
.ИмеетТип("Структура")
.Заполнено()
.Свойство("Наименование").Равно(Данные.Наименование);
Предикат = ЮТест.Предикат()
.Реквизит("Штрихкод").Равно(Данные.Штрихкод)
.Реквизит("Поставщик").Равно(Данные.Поставщик);
ДанныеСсылки = ЮТЗапросы.ЗначенияРеквизитовЗаписи("Справочник.Товары", Предикат, "Штрихкод, Поставщик, Поставщик.Наименование");
ЮТест.ОжидаетЧто(ДанныеСсылки)
.ИмеетТип("Структура")
.Заполнено()
.Свойство("Штрихкод").Равно(Данные.Штрихкод)
.Свойство("Поставщик").Равно(Данные.Поставщик)
.Свойство("ПоставщикНаименование").Равно(Строка(Данные.Поставщик));
Предикат = ЮТест.Предикат().Реквизит("Ссылка").Равно(ПредопределенноеЗначение("Справочник.Товары.ПустаяСсылка"));
ДанныеСсылки = ЮТЗапросы.ЗначенияРеквизитовЗаписи("Справочник.Товары", Предикат, "Код, Поставщик");
ЮТест.ОжидаетЧто(ДанныеСсылки)
.ИмеетТип("Структура")
.Заполнено()
.Свойство("Код").Равно(Неопределено)
.Свойство("Поставщик").Равно(Неопределено);
КонецПроцедуры
Процедура ЗначениеРеквизитаЗаписи() Экспорт
Конструктор = ЮТест.Данные().КонструкторОбъекта("Справочники.Товары")
.Фикция("Наименование")
.Фикция("Поставщик");
Данные = Конструктор.ДанныеОбъекта();
Конструктор.Записать();
Предикат = ЮТест.Предикат().Реквизит("Наименование").Равно(Данные.Наименование);
ЮТест.ОжидаетЧто(ЮТЗапросы.ЗначениеРеквизитаЗаписи("Справочник.Товары", Предикат, "Наименование"))
.ИмеетТип("Строка")
.Заполнено()
.Равно(Данные.Наименование);
Предикат = ЮТест.Предикат().Реквизит("Поставщик").Равно(Данные.Поставщик);
ЮТест.ОжидаетЧто(ЮТЗапросы.ЗначениеРеквизитаЗаписи("Справочник.Товары", Предикат, "Поставщик"))
.Равно(Данные.Поставщик);
Предикат = ЮТест.Предикат()
.Реквизит("Наименование").Равно(Данные.Наименование)
.Реквизит("Поставщик").Равно(Данные.Поставщик);
ЮТест.ОжидаетЧто(ЮТЗапросы.ЗначениеРеквизитаЗаписи("Справочник.Товары", Предикат, "Наименование, Поставщик"))
.Равно(Данные.Наименование);
Предикат = ЮТест.Предикат().Реквизит("Ссылка").Равно(ПредопределенноеЗначение("Справочник.Товары.ПустаяСсылка"));
ЮТест.ОжидаетЧто(ЮТЗапросы.ЗначениеРеквизитаЗаписи("Справочник.Товары", Предикат, "Наименование"))
.Равно(Неопределено);
КонецПроцедуры
#КонецОбласти

View File

@ -0,0 +1,82 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// 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.
//
//©///////////////////////////////////////////////////////////////////////////©//
#Область СлужебныйПрограммныйИнтерфейс
Процедура ИсполняемыеСценарии() Экспорт
ЮТТесты
.ДобавитьТестовыйНабор("Банки")
.ДобавитьТест("БИК")
.ДобавитьТест("НомерСчета")
;
КонецПроцедуры
#Область События
Процедура ПередВсемиТестами() Экспорт
КонецПроцедуры
Процедура ПередКаждымТестом() Экспорт
КонецПроцедуры
Процедура ПослеКаждогоТеста() Экспорт
КонецПроцедуры
Процедура ПослеВсехТестов() Экспорт
КонецПроцедуры
#КонецОбласти
Процедура БИК() Экспорт
БИК = ЮТТестовыеДанные.Подражатель().Банки().БИК();
Ютест.ОжидаетЧто(БИК)
.ИмеетТип("Строка")
.Заполнено()
.ИмеетДлину(9)
;
КонецПроцедуры
Процедура НомерСчета() Экспорт
БИК = ЮТТестовыеДанные.Подражатель().Банки().БИК();
КодВалюты = "978";
НомерСчета = ЮТТестовыеДанные.Подражатель().Банки().НомерСчета(БИК, КодВалюты);
Ютест.ОжидаетЧто(НомерСчета)
.ИмеетТип("Строка")
.Заполнено()
.ИмеетДлину(20)
;
КодВалютыИзСчета = Сред(НомерСчета, 6, 3);
ЮТест.ОжидаетЧто(КодВалютыИзСчета)
.Равно(КодВалюты)
;
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
#КонецОбласти

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="00963ec4-1094-4309-b701-8fb8830bd1ac">
<name>ОМ_ЮТПодражатель_Банки</name>
<synonym>
<key>ru</key>
<value>О м ЮТПодражатель банки</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>
<clientOrdinaryApplication>true</clientOrdinaryApplication>
</mdclass:CommonModule>

View File

@ -0,0 +1,89 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// 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.
//
//©///////////////////////////////////////////////////////////////////////////©//
#Область СлужебныйПрограммныйИнтерфейс
Процедура ИсполняемыеСценарии() Экспорт
ЮТТесты
.ДобавитьТестовыйНабор("Компании")
.ДобавитьТест("Наименование")
.ДобавитьТест("ИНН")
.ДобавитьТест("КПП")
;
КонецПроцедуры
#Область События
Процедура ПередВсемиТестами() Экспорт
КонецПроцедуры
Процедура ПередКаждымТестом() Экспорт
КонецПроцедуры
Процедура ПослеКаждогоТеста() Экспорт
КонецПроцедуры
Процедура ПослеВсехТестов() Экспорт
КонецПроцедуры
#КонецОбласти
Процедура Наименование() Экспорт
Имя = ЮТТестовыеДанные.Подражатель().Компании().Наименование();
Ютест.ОжидаетЧто(Имя)
.ИмеетТип("Строка")
.Заполнено()
;
ЮТест.ОжидаетЧто(СтрДлина(Имя))
.Больше(1)
;
КонецПроцедуры
Процедура ИНН() Экспорт
ИНН = ЮТТестовыеДанные.Подражатель().Компании().ИНН("77");
Ютест.ОжидаетЧто(ИНН)
.ИмеетТип("Строка")
.Заполнено()
.ИмеетДлину(10)
.НачинаетсяС("77")
;
ЮТЛогирование.Отладка("ИНН: " + ИНН);
КонецПроцедуры
Процедура КПП() Экспорт
ИНН = ЮТТестовыеДанные.Подражатель().Компании().КПП("7701");
Ютест.ОжидаетЧто(ИНН)
.ИмеетТип("Строка")
.Заполнено()
.ИмеетДлину(9)
.НачинаетсяС("7701")
;
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
#КонецОбласти

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="80d689ad-0837-43f2-bd97-e8e5af5c1edc">
<name>ОМ_ЮТПодражатель_Компании</name>
<synonym>
<key>ru</key>
<value>О м ЮТПодражатель компании</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>
<clientOrdinaryApplication>true</clientOrdinaryApplication>
</mdclass:CommonModule>

View File

@ -0,0 +1,161 @@
//©///////////////////////////////////////////////////////////////////////////©//
//
// 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.
//
//©///////////////////////////////////////////////////////////////////////////©//
#Область СлужебныйПрограммныйИнтерфейс
Процедура ИсполняемыеСценарии() Экспорт
ЮТТесты
.ДобавитьТестовыйНабор("ИменаЛюдей")
.ДобавитьТест("Имя")
.ДобавитьТест("Фамилия")
.ДобавитьТест("Отчество")
.ДобавитьТест("ФИО")
.ДобавитьТест("ИНН")
.ДобавитьТест("СНИЛС")
.ДобавитьТестовыйНабор("Локализации")
.ДобавитьТест("УстановкаЛокализации")
.ДобавитьТест("НесуществующийСловарьПоЛокализации")
.ДобавитьТестовыйНабор("Некорректные параметры")
.ДобавитьТест("НереализованныйПолЧеловека")
;
КонецПроцедуры
#Область События
Процедура ПередВсемиТестами() Экспорт
КонецПроцедуры
Процедура ПередКаждымТестом() Экспорт
КонецПроцедуры
Процедура ПослеКаждогоТеста() Экспорт
КонецПроцедуры
Процедура ПослеВсехТестов() Экспорт
КонецПроцедуры
#КонецОбласти
Процедура Имя() Экспорт
Имя = ЮТТестовыеДанные.Подражатель().Люди().Имя();
Ютест.ОжидаетЧто(Имя)
.ИмеетТип("Строка")
.Заполнено()
;
ЮТест.ОжидаетЧто(СтрДлина(Имя))
.Больше(1)
;
КонецПроцедуры
Процедура Фамилия() Экспорт
Фамилия = ЮТТестовыеДанные.Подражатель().Люди().Фамилия();
Ютест.ОжидаетЧто(Фамилия)
.ИмеетТип("Строка")
.Заполнено()
;
ЮТест.ОжидаетЧто(СтрДлина(Фамилия))
.Больше(1)
;
КонецПроцедуры
Процедура Отчество() Экспорт
Отчество = ЮТТестовыеДанные.Подражатель().Люди().Отчество();
Ютест.ОжидаетЧто(Отчество)
.ИмеетТип("Строка")
.Заполнено()
;
ЮТест.ОжидаетЧто(СтрДлина(Отчество))
.Больше(1)
;
КонецПроцедуры
Процедура ФИО() Экспорт
ФИО = ЮТТестовыеДанные.Подражатель().Люди().ФИО();
Ютест.ОжидаетЧто(ФИО)
.ИмеетТип("Строка")
.Заполнено()
;
ЮТест.ОжидаетЧто(СтрРазделить(ФИО, " "))
.ИмеетДлину(3)
;
КонецПроцедуры
Процедура ИНН() Экспорт
ИНН = ЮТТестовыеДанные.Подражатель().Люди().ИНН();
Ютест.ОжидаетЧто(ИНН)
.ИмеетТип("Строка")
.Заполнено()
.ИмеетДлину(12)
;
КонецПроцедуры
Процедура СНИЛС() Экспорт
СНИЛС = ЮТТестовыеДанные.Подражатель().Люди().СНИЛС();
Ютест.ОжидаетЧто(СНИЛС)
.ИмеетТип("Строка")
.Заполнено()
.ИмеетДлину(14)
;
КонецПроцедуры
Процедура УстановкаЛокализации() Экспорт
Подражатель = ЮТТестовыеДанные.Подражатель();
ЮТест.ОжидаетЧто(Подражатель.Локализация())
.Равно("ru")
;
Подражатель.УстановитьЛокализацию("en");
ЮТест.ОжидаетЧто(Подражатель.Локализация())
.Равно("en")
;
КонецПроцедуры
Процедура НесуществующийСловарьПоЛокализации() Экспорт
Подражатель = ЮТТестовыеДанные.Подражатель();
Подражатель.УстановитьЛокализацию("en");
Ютест.ОжидаетЧто(ЮТПодражатель_Люди)
.Метод("Имя")
.ВыбрасываетИсключение("не найден")
;
КонецПроцедуры
Процедура НереализованныйПолЧеловека() Экспорт
Подражатель = ЮТТестовыеДанные.Подражатель();
Ютест.ОжидаетЧто(ЮТПодражатель_Люди)
.Метод("Имя", ЮТОбщий.ЗначениеВМассиве("ТрансгендернаяДевушкаОлень"))
.ВыбрасываетИсключение("Отсутствует реализация словаря")
;
КонецПроцедуры
#КонецОбласти
#Область СлужебныеПроцедурыИФункции
#КонецОбласти

View File

@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<mdclass:CommonModule xmlns:mdclass="http://g5.1c.ru/v8/dt/metadata/mdclass" uuid="28203d5f-eead-4052-a45f-42a18a2c67ec">
<name>ОМ_ЮТПодражатель_Люди</name>
<synonym>
<key>ru</key>
<value>О м ЮТПодражатель люди</value>
</synonym>
<clientManagedApplication>true</clientManagedApplication>
<server>true</server>
<clientOrdinaryApplication>true</clientOrdinaryApplication>
</mdclass:CommonModule>

View File

@ -93,7 +93,7 @@
Наборы = ЮТЧитатель.ЗагрузитьТесты(ПараметрыЗапуска);
ЮТест.ОжидаетЧто(Наборы, "Прочитанные наборы расширения tests")
.ИмеетДлину(17);
.ИмеетДлину(20);
КонецПроцедуры
@ -158,4 +158,4 @@
КонецПроцедуры
#КонецОбласти
#КонецОбласти

View File

@ -31,6 +31,9 @@
<commonModules>CommonModule.ОМ_ЮТест</commonModules>
<commonModules>CommonModule.ОМ_ЮТЗапросы</commonModules>
<commonModules>CommonModule.ОМ_ЮТКонструкторТестовыхДанных</commonModules>
<commonModules>CommonModule.ОМ_ЮТПодражатель_Банки</commonModules>
<commonModules>CommonModule.ОМ_ЮТПодражатель_Компании</commonModules>
<commonModules>CommonModule.ОМ_ЮТПодражатель_Люди</commonModules>
<commonModules>CommonModule.ОМ_ЮТПредикатыКлиентСервер</commonModules>
<commonModules>CommonModule.ОМ_ЮТСравнениеКлиентСервер</commonModules>
<commonModules>CommonModule.ОМ_ЮТТестовыеДанные</commonModules>