|
УФ указание ТекущаяСтрока после обновления ТЧ обработки | ☑ | ||
---|---|---|---|---|
0
EarthsSoul
03.07.14
✎
12:04
|
Добрый день
У меня в обработке имеется табличная часть, которая отображена на форме. Пользователь нажимает кнопку, и часть данных меняется, и содержимое табличной части обновляется. В момент нажатия у пользователя выделена некоторая строчка в табличной части. После обновления информации в табличной части, возможно, эта строчка останется, в таком случае мне нужно снова выделить данную строчку (строчка конечно другая, то данные идентичные и уникальные). Понимаю, что нужно написать, что то вроде Элементы.ДокументыКПодписанию.ТекущаяСтрока = Индентификатор ВНужнойСтроке; Вот вопрос как определить идентификатор нужной строке ? |
|||
1
EarthsSoul
03.07.14
✎
12:05
|
*Вот вопрос как определить идентификатор в нужной строке ?
|
|||
2
EarthsSoul
03.07.14
✎
12:15
|
up
|
|||
3
SUA
03.07.14
✎
12:27
|
- ищешь строчку по данным идентичным и уникальным
- берешь ее идентификатор - ????????? - PROFIT! |
|||
4
YF
03.07.14
✎
12:28
|
(0) Дополнительная колонка в источноке строк, в которую будешь писать некое уникальное значение спасет отца русской демократии
|
|||
5
EarthsSoul
03.07.14
✎
12:41
|
(3) При обновлении ТЧ на сервере. В табличную часть подргужаются данные из запроса, соответственно идентификатор у всех строк новый.
У текущих данных он определяется как Элементы.ДокументыКПодписанию.ТекущиеДанные.ПолучитьИдентификатор() Перебрать в цикле значения набора Элементы.ДокументыКПодписанию не возможно. Придумал такой вариант СтруктураОтбора = Новый ФиксированнаяСтруктура("ПрисоединенныеФайл",ПрисоединенныеФайлНаПодпись); Элементы.ДокументыКПодписанию.ОтборСтрок=СтруктураОтбора; ИдентификаторСтроки = Элементы.ДокументыКПодписанию.ТекущиеДанные.ПолучитьИдентификатор(); Элементы.ДокументыКПодписанию.ОтборСтрок=Неопределено; Элементы.ДокументыКПодписанию.ТекущаяСтрока=ИдентификаторСтроки; Выделяет нужную строку, но сбивает расположение полос прокрутки, есть достигается через визуально манипулирование формой, что не правильно ... |
|||
6
EarthsSoul
03.07.14
✎
12:56
|
(4) может быть конкретнее сформулируете
|
|||
7
YF
03.07.14
✎
13:04
|
(6) Куда уж конкретнее? В табличную чать еще реквизит, в него писать при заполнении строки некие уникальные значения, запоминать это значение при смене текущей строки. Потом искать и позиционироваться
|
|||
8
EarthsSoul
03.07.14
✎
13:39
|
(7) код это конкретно.
Слова искать и позиционироваться абстрактные понятие по отношению к языку 1с. Можно сформулировать хотя бы примерный код. Как будите искать ? Что и чему присваивать при позиционировании? У меня уникальные данные и так уже есть. |
|||
9
Fedor-1971
03.07.14
✎
13:41
|
(8) перебор строк ТЧ в цикле тебе поможет.
|
|||
10
EarthsSoul
03.07.14
✎
13:44
|
(8) и что мне это даст ?
Да я узнаю номер строки, но не узнаю идентификатор строки. А мне нужен идентификатор. |
|||
11
Timon1405
03.07.14
✎
13:56
|
&НаСервере
Процедура Сортировать() СтрокаКоллекции = Объект.Товары.НайтиПоИдентификатору(Элементы.Товары.ТекущаяСтрока); ИндексСтрокиКоллекции = Объект.Товары.Индекс(СтрокаКоллекции); ТЗ = Объект.Товары.Выгрузить(); СтрокаВыгруженнойТаблицы = ТЗ.Получить(ИндексСтрокиКоллекции); ТЗ.Сортировать("Цена"); //<--или обработать как хочешь ИндексСтрокиПослеСортировки = ТЗ.Индекс(СтрокаВыгруженнойТаблицы); Объект.Товары.Загрузить(ТЗ); СтрокаКоллекции = Объект.Товары.Получить(ИндексСтрокиПослеСортировки); Элементы.Товары.ТекущаяСтрока = СтрокаКоллекции.ПолучитьИдентификатор(); КонецПроцедуры |
|||
12
EarthsSoul
03.07.14
✎
14:19
|
(11) спасибо, завтра попробую
|
|||
13
Fedor-1971
03.07.14
✎
14:21
|
(10) ПолучитьИдентификатор() на найденной строке?
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |