8.4 и номер строки - баг или фича?! #767069


#0 by Midasu
УФ. 8.4.1.455. Есть 2 таблицы с 2-мя реквизитами типа ТаблицаЗначений. В одной я выбираю группы номенклатуры (ТаблицаГрупп), в другой (ТаблицаЭлементов) подгружаю номенклатуру из неё, предварительно очищая, естественно. Мне нужно определять номер выбранной строки, но после очистки номера строки постоянно приращиваются на количество элементов в прошлой группе, т.е. очистка не до конца срабатывает (РеквизитТаблицыЭлементов.Очистить). Я конечно могу хранить эту "дельту" и прибавлять к абсолютному номеру строки, но мало-ли когда в переменной места не хватит, да и бред это полный. НомерСтроки определяю через Элементы.ТаблицаЭлементов.ВыделенныеСтроки[0]. Я понимаю, что создав новый реквизит и присвоив его элементу таблицы после выбора другой группы, я решу проблему. Но не хочу тратить ресурсы на такую хрень. Элементы.ТаблицаЭлементов.Обновить - ничего не меняет. Прошу помощи, может есть какое-то более быстрое решение, чем новый реквизит?
#1 by Cyberhawk
Индекс - это не обязательно номер строки
#2 by Карупян
Ты в продакшн 8.4 пустил?
#3 by Midasu
Для Каждого Строчка Из Подбор Цикл Хм, вот так определяю. А как надо? Да самопилку адаптирую пока.
#4 by Midasu
Почему ВыделенныеСтроки[0] возвращает номер строки, как будто и не было никаких Очистить, как будто эти элементы просто скрыты?!
#5 by Cyberhawk
ТаблицаФормы.ВыделенныеСтроки (FormTable.SelectedRows) ВыделенныеСтроки (SelectedRows) Использование: Только чтение. Описание: Тип: Массив. Содержит массив идентификаторов выделенных строк. Доступность: Тонкий клиент, веб-клиент, сервер, толстый клиент, мобильное приложение(клиент), мобильное приложение(сервер). См. также: Расширение таблицы формы для динамического списка Расширение таблицы формы для таблицы значений ТаблицаФормы, метод ДанныеСтроки ДанныеФормыКоллекция, метод НайтиПоИдентификатору --------------------------------------------------------------------------------
#6 by Cyberhawk
Идентификатор элемента коллекции не связан с позицией этого элемента в коллекции
#7 by Midasu
Ок, спасибо, а как же этот идентификатор в номер строки тогда превратить? Мне мультивыделение не нужно, они и отключено, но не вижу у Элемента других свойств, чтоб номер узнать выделенных. (причём поле с возможностью записи нужно)
#8 by Cyberhawk
Я это хотел сказать в , не так выразился касательно "индекса"
#9 by Cyberhawk
Используй табличную часть - таблица, связанная с таблчиной частью, будет иметь свойство "Исходный номер строки", уже связанное с позицией элемента в ТЧ
#10 by Cyberhawk
*Не таблица, а элемент коллекции этой таблицы
#11 by su_mai
Очисти на сервере
#12 by su_mai
+ Создай новую ТЗ
#13 by Midasu
Специально проверил, там и чищу. Слишком ресурсоёмко, не могу себе позволить, проще "дельту" хранить.
#14 by Midasu
Буду изучать, первый раз слышу.
#15 by Карупян
ты путаешь номер строки и идентификатор строки
#16 by Midasu
Я знаю о разнице, просто перебрать строки из Элемента я же не могу, поэтому и перебираю из реквизита, а там только идентификатор. У меня сортировка меняться не будет, для меня они все по алфавиту быть должны, поэтому почему бы и не соотнести их...
#17 by Midasu
Ни в какую. Не видит такого свойства. На сервере строки перебираю. Вот:
#18 by EugeniaK
Это нормально. Так вроде и раньше было. Нельзя ссылаться на индекс строки. Используй ПолучитьИдентификатор и НайтиПоИдентификатору
#19 by Cyberhawk
Коллекция должна указывать ("путь к данным") на реквизит формы, являющийся табличной частью
#20 by Midasu
Не катит, идентификатор у меня есть из ВыделенныеСтроки[0] допустим, но НайтиПоИдентфикатору на Элементе я также не могу вызвать, а мне нужно тут уже присвоить ВыделенныеСтроки[0] полученный ранее идентификатор из первого пункта...
#21 by Midasu
Хм, может кому будет интересно зачем это всё: На УФ реализовал быстрый поиск как в обычных формах раньше, без вызова дополнительного окна через внешний клавиатурный хук.
#22 by Midasu
Спасибо за помощь, но каши сварить не удалось, не понял я что за ("путь к данным"), через "дельту" первого элемента при загрузке новой группы сделал - не так и много у нас номенклатуры.
#23 by Aprobator
номер строки в форме <> номер строки реквизита. Для УФ это нормально. В тебе подсказали, куда смотреть.
Тэги: 1С 8
Ответить:
Комментарии доступны только авторизированным пользователям