![]() |
|
Процедура "СинхронизироватьСтроки", для отбора по нескольким полям? | ☑ | ||
---|---|---|---|---|
0
SkillUp
03.08.21
✎
11:43
|
Здравствуйте, есть такая процедура - "СинхронизироватьСтроки", подскажите пож., есть ли возможность использовать ее не по одному полю, а по нескольким (допустим делать отбор по: контрагенту, складу и организации в других ТЧ объекта)? Или нет такой возможности?
Сама процедура: // процедура устанавливает текущую строку в табличных полях формы // объекта, связанных с табличными частями объекта // предположения: // все табличные части и соответсвующие им табличные поля - одноименны // все "синхронизируемые" табличные части имеют колонку с одинаковым // именем по которой ведется синхронизация // // Параметры: // Форма - форма объекта // Объект - объект данных // Элемент - элемнт формы в котором возникла активизация строки // СинхронизируемыеТабличныеЧасти - соответствие с // элементами, соответствующими синхронизируемым табличным полям // ИмяКолонки - имя колонки синхронизации Процедура СинхронизироватьСтроки(Форма, Объект, Элемент, СинхронизируемыеТабличныеЧасти, ИмяКолонки) Экспорт Если Элемент.ТекущиеДанные = Неопределено Тогда Возврат; КонецЕсли; Имя = Элемент.Имя; Если СинхронизируемыеТабличныеЧасти[Имя] = Неопределено Тогда Возврат; КонецЕсли; Если СинхронизируемыеТабличныеЧасти[Имя] Тогда СинхронизируемыеТабличныеЧасти[Имя] = Ложь; Возврат; КонецЕсли; Для Каждого ЭлементСоответствия Из СинхронизируемыеТабличныеЧасти Цикл Если ЭлементСоответствия.Ключ = Имя Тогда Продолжить; КонецЕсли; Попытка СтрокаТЧ = Объект[ЭлементСоответствия.Ключ].Найти(Элемент.ТекущиеДанные[ИмяКолонки], ИмяКолонки); Исключение СтрокаТЧ = Форма[ЭлементСоответствия.Ключ].Найти(Элемент.ТекущиеДанные[ИмяКолонки], ИмяКолонки); КонецПопытки; Если СтрокаТЧ <> Неопределено Тогда СинхронизируемыеТабличныеЧасти[ЭлементСоответствия.Ключ] = Истина; Форма.ЭлементыФормы[ЭлементСоответствия.Ключ].ТекущаяСтрока = СтрокаТЧ; КонецЕсли; КонецЦикла; КонецПроцедуры // СинхронизироватьСтроки |
|||
1
SkillUp
03.08.21
✎
11:50
|
Может скопировать эту процедуру в общий модуль, и модифицировать?
|
|||
2
SkillUp
03.08.21
✎
11:53
|
Пардон:
Кажется вот решение: Параметры: <Значение> (обязательный) Тип: Произвольный. Искомое значение. <Колонки> (необязательный) Тип: Строка. Список имен колонок, в которых будет осуществляться поиск, разделенных запятыми. Если параметр не указан, поиск осуществляется по всей табличной части. Значение по умолчанию: Пустая строка. |
|||
3
SkillUp
03.08.21
✎
11:54
|
Блин, нет, это просто список колонок, где будет поиск ОДНОГО значения...
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |