Skip to content
Open
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 @@ -17079,26 +17079,35 @@
&НаКлиенте
//И в таблице "ИмяТаблицы" я активизирую колонку "ИмяКолонки" в группе "ИмяГруппы"
//@ВТаблицеЯАктивизируюКолонкуВГруппе(Парам01,Парам02,Парам03)
//Сначала идёт в группе главная колонка (дальняя от реквизита), которую нужно найти, потом подколонка 1, 2 и т.д.
Функция ВТаблицеЯАктивизируюКолонкуВГруппе(ИмяТаблицы,ИмяКолонки,ИмяГруппы,ИскатьКолонкуПоИмени = Ложь) Экспорт
Таблица = Ванесса.НайтиТЧПоИмени(ИмяТаблицы);
ГруппаКолонок = Таблица.НайтиОбъект(Тип("ТестируемаяГруппаФормы"),ИмяГруппы);

Если ГруппаКолонок = Неопределено Тогда
ТекстСообщения = Ванесса.ПолучитьТекстСообщенияПользователю("Группа колонок <%1> в таблице <%2> не найдена.");
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%1",ИмяГруппы);
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%2",ИмяТаблицы);
ВызватьИсключение ТекстСообщения;
КонецЕсли;
ГруппыКолонокМассив = СтрРазделить(ИмяГруппы,"|");
НайденныеКолонки = "";
ОчереднойОбъектДляПоиска = Таблица;
Для Каждого ИмяОчереднойГруппы Из ГруппыКолонокМассив Цикл
ГруппаКолонок = ОчереднойОбъектДляПоиска.НайтиОбъект(Тип("ТестируемаяГруппаФормы"),ИмяОчереднойГруппы);
Если ГруппаКолонок = Неопределено Тогда
ТекстСообщения = Ванесса.ПолучитьТекстСообщенияПользователю("Группа колонок <%1> в последовательности групп колонок <%3> таблицы <%2> не найдена.");
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%1",ИмяГруппы);
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%2",ИмяТаблицы);
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%3",Лев(НайденныеКолонки,СтрДлина(НайденныеКолонки)-3));
ВызватьИсключение ТекстСообщения;
Иначе
НайденныеКолонки = НайденныеКолонки + ИмяОчереднойГруппы + " | ";
ОчереднойОбъектДляПоиска = ГруппаКолонок;
КонецЕсли;
КонецЦикла;

Если ИскатьКолонкуПоИмени Тогда
НужнаяКолонка = ГруппаКолонок.НайтиОбъект(Тип("ТестируемоеПолеФормы"),,ИмяКолонки);
НужнаяКолонка = ОчереднойОбъектДляПоиска.НайтиОбъект(Тип("ТестируемоеПолеФормы"),,ИмяКолонки);
Иначе
НужнаяКолонка = ГруппаКолонок.НайтиОбъект(Тип("ТестируемоеПолеФормы"),ИмяКолонки);
НужнаяКолонка = ОчереднойОбъектДляПоиска.НайтиОбъект(Тип("ТестируемоеПолеФормы"),ИмяКолонки);
КонецЕсли;
Если НужнаяКолонка = Неопределено Тогда
ТекстСообщения = Ванесса.ПолучитьТекстСообщенияПользователю("В таблице <%1> в группе колонок <%2> колонка <%3> не найдена.");
ТекстСообщения = Ванесса.ПолучитьТекстСообщенияПользователю("В таблице <%1> в последовательности групп колонок <%2> колонка <%3> не найдена.");
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%1",ИмяТаблицы);
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%2",ИмяГруппы);
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%2",Лев(НайденныеКолонки,СтрДлина(НайденныеКолонки)-3));
ТекстСообщения = СтрЗаменить(ТекстСообщения,"%3",ИмяКолонки);
ВызватьИсключение ТекстСообщения;
КонецЕсли;
Expand Down