Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

refacted predefined functions and removed bugs #173

Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -72,9 +72,7 @@
Возврат;
КонецЕсли;

Если Не пбп_ПереадресацияКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "ЭтоНовый", Ложь) Тогда
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект);
КонецЕсли;
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект);

КонецПроцедуры

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,7 @@
Возврат;
КонецЕсли;

Если Не пбп_ПереадресацияКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "ЭтоНовый", Ложь) Тогда
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект);
КонецЕсли;
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект);

КонецПроцедуры

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -55,8 +55,33 @@
Возврат;
КонецЕсли;

ЭлементНаследования = Справочники.пбп_ТипыИнтеграций
.ПолучитьПредопределенныйЭлементНаследованияНастроекТипаИнтеграции(ТипИнтеграции);
Если Не ЭтоГруппа Тогда
ЭлементНаследования = Справочники.пбп_ТипыИнтеграций
.ПолучитьПредопределенныйЭлементНаследованияНастроекТипаИнтеграции(ТипИнтеграции);

ЗаполнитьРеквизитыНаОснованииЭлементаНаследования(ЭлементНаследования);
КонецЕсли;

ДополнительныеСвойства.Вставить("ЭтоНовый", ЭтоНовый());

КонецПроцедуры

Процедура ПриЗаписи(Отказ)

Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;

пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект);

КонецПроцедуры

#КонецОбласти // ОбработчикиСобытий

#Область СлужебныеПроцедурыИФункции

Процедура ЗаполнитьРеквизитыНаОснованииЭлементаНаследования(ЭлементНаследования)

Если ЭлементНаследования = Справочники.пбп_ТипыИнтеграций.Каталог Тогда
Порт = "";
ВнешняяКомпонента = Неопределено;
Expand Down Expand Up @@ -114,23 +139,9 @@
ИмяОбъекта = Неопределено;
КонецЕсли;

ДополнительныеСвойства.Вставить("ЭтоНовый", ЭтоНовый());

КонецПроцедуры

Процедура ПриЗаписи(Отказ)

Если ОбменДанными.Загрузка Тогда
Возврат;
КонецЕсли;

Если Не пбп_ПереадресацияКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "ЭтоНовый", Ложь) Тогда
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект);
КонецЕсли;

КонецПроцедуры

#КонецОбласти // ОбработчикиСобытий
#КонецОбласти

#Иначе
ВызватьИсключение НСтр("ru = 'Недопустимый вызов объекта на клиенте.'");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,7 @@
Возврат;
КонецЕсли;

Если Не пбп_ПереадресацияКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "ЭтоНовый", Ложь) Тогда
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект);
КонецЕсли;
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект);

КонецПроцедуры

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,7 @@
Возврат;
КонецЕсли;

Если Не пбп_ПереадресацияКлиентСервер.СвойствоСтруктуры(ДополнительныеСвойства, "ЭтоНовый", Ложь) Тогда
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект);
КонецЕсли;
пбп_ОбщегоНазначенияСервер.ОбработатьСуществующийПредопределенныйЭлемент(ЭтотОбъект);

КонецПроцедуры

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -74,7 +74,7 @@
Процедура ПриДобавленииПодсистемы(Описание) Экспорт

Описание.Имя = "ПроектнаяБиблиотекаПодсистем";
Описание.Версия = "1.0.4.17";
Описание.Версия = "1.0.4.18";

// Требуется библиотека стандартных подсистем.
Описание.ТребуемыеПодсистемы.Добавить("СтандартныеПодсистемы");
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -882,6 +882,10 @@
//
Процедура ОбработатьСуществующийПредопределенныйЭлемент(Объект) Экспорт

Если пбп_ПереадресацияКлиентСервер.СвойствоСтруктуры(Объект.ДополнительныеСвойства, "ЭтоНовый", Ложь) Тогда
Возврат;
КонецЕсли;

пбп_ПредопределенныеЗначения.ОбновитьХешПредопределенногоЭлемента(Объект);

КонецПроцедуры
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -298,6 +298,8 @@
Поля.Вставить("УровеньИерархии");
Поля.Вставить("ИдентификаторРодитель");

ДополнитьИсключаемыеПоляДляРасчетХешаНастройкиИнтеграции(Поля);

Возврат Поля;

КонецФункции
Expand All @@ -313,8 +315,6 @@
Поля.Вставить("ХешСумма");
Поля.Вставить("УровеньИерархии");
Поля.Вставить("ИдентификаторРодитель");
Поля.Вставить("Пароль");
Поля.Вставить("СписокЗначений");

Возврат Поля;

Expand Down Expand Up @@ -357,4 +357,15 @@

КонецФункции

Процедура ДополнитьИсключаемыеПоляДляРасчетХешаНастройкиИнтеграции(Поля)

Поля.Вставить("Порт");
Поля.Вставить("ВнешняяКомпонента");
Поля.Вставить("УчетнаяЗапись");
Поля.Вставить("ТипАвторизации");
Поля.Вставить("ИмяОбъекта");
Поля.Вставить("ИмяФайлаВнешнейКомпоненты");

КонецПроцедуры

#КонецОбласти
Original file line number Diff line number Diff line change
Expand Up @@ -96,6 +96,9 @@

Параметры.Вставить("КлючиХешаЭлемент",
пбп_ПредопределенныеЗначения.КлючиХешаПредопределенногоЭлемента(мКолонки, Ложь));

мКолонки = ПолучитьПоляГруппы(МенеджерОбъекта, мКолонки);

Параметры.Вставить("КлючиХешаГруппа",
пбп_ПредопределенныеЗначения.КлючиХешаПредопределенногоЭлемента(мКолонки, Истина));

Expand Down Expand Up @@ -254,7 +257,8 @@
Для Каждого Строка Из ТаблицаПредопределенных Цикл
ВыборкаДетальныеЗаписи.Сбросить();
Если ВыборкаДетальныеЗаписи.НайтиСледующий(Строка.ИдентификаторНастройки, "ИдентификаторНастройки") Тогда
Если ВыборкаДетальныеЗаписи.РучноеИзменение Или ВыборкаДетальныеЗаписи.ХешСумма = Строка.ХешСумма Тогда
Если ВыборкаДетальныеЗаписи.РучноеИзменение Или ВыборкаДетальныеЗаписи.ХешСумма = Строка.ХешСумма
И Не ВыборкаДетальныеЗаписи.ПометкаУдаления Тогда
СтрокиДляУдаления.Добавить(Строка);
Иначе
ОбработатьСтроку(Строка, ВыборкаДетальныеЗаписи, ТаблицаКонфликтныхЭлементов, СтрокиДляУдаления);
Expand Down Expand Up @@ -326,6 +330,32 @@

КонецФункции

// Формирует массив полей группы объекта метаданных
//
// Параметры:
// МенеджерОбъекта - СправочникМенеджер, ПланВидовХарактеристикМенеджер - менеджер объекта
// Поля - Массив - Поля предопределенного элемента.
//
// Возвращаемое значение:
// Массив - Строка
//
Функция ПолучитьПоляГруппы(МенеджерОбъекта, Поля) Экспорт
ОбъектМетаданных = Метаданные.НайтиПоТипу(ТипЗнч(МенеджерОбъекта));

мПоляГруппы = Новый Массив;

Для Каждого Поле Из Поля Цикл
Реквизит = ОбъектМетаданных.Реквизиты.Найти(Поле);
Если Реквизит = Неопределено
Или Реквизит.Использование <> Метаданные.СвойстваОбъектов.ИспользованиеРеквизита.ДляЭлемента Тогда
мПоляГруппы.Добавить(Поле);
КонецЕсли;
КонецЦикла;

Возврат мПоляГруппы

КонецФункции

#Область РаботаСТаблицейПредопределенных

// Инициализирует предопределенные значения из таблицы.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,7 @@
// Удалим "мусор" схемы запроса
УдалитьНенужныеПоля(НовыйТекстЗапроса);

УстановитьНовыйТекстЗапроса(Запрос, ТекстЗапроса);
УстановитьНовыйТекстЗапроса(Запрос, НовыйТекстЗапроса);

Возврат Запрос;

Expand Down
2 changes: 1 addition & 1 deletion src/cf/Configuration.xml
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@
<xr:Item xsi:type="xr:MDObjectRef">Role.ИнтерактивноеОткрытиеВнешнихОтчетовИОбработок</xr:Item>
</DefaultRoles>
<Vendor>Первый БИТ</Vendor>
<Version>1.0.4.17</Version>
<Version>1.0.4.18</Version>
<UpdateCatalogAddress/>
<IncludeHelpInContents>false</IncludeHelpInContents>
<UseManagedFormInOrdinaryApplication>false</UseManagedFormInOrdinaryApplication>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -122,6 +122,10 @@
мПоля.Добавить(КлючЗначение.Ключ);
КонецЦикла;

Если ЭтоГруппа Тогда
мПоля = пбп_ПредопределенныеЗначенияСлужебный.ПолучитьПоляГруппы(МенеджерОбъекта, мПоля);
КонецЕсли;

Возврат пбп_ПредопределенныеЗначения.КлючиХешаПредопределенногоЭлемента(мПоля, ЭтоГруппа);

КонецФункции
Expand Down
Loading