Как пронумеровать номера строк в таблице значений? #315698


#0 by iSNEG
Добавил колонку "№ строки" в таблицу. Думаю вставить в событие ПриВыводеСтроки код который будет заполнять это поле. Подскажите пожалуйста, что писать? Спасибо.
#1 by iSNEG
ОформлениеСтроки.Ячейки.НомерСтроки.Значение = ?
#2 by Terv
чем стандартное поле "НомерСтроки" не устраивает?
#3 by iSNEG
Terv, а где оно? Как его найти?
#4 by Terv
в данные колонки табличного поля напиши "НомерСтроки"
#5 by Terv
только скорее всего это свойство будет только доступно только для чтения
#6 by iSNEG
Не дает ничего записать. У этого табличного поля свойство данные - СправочникСписок. Дает выбирать только поля из этого справочника. Писать самому не дает.
#8 by Terv
для какой цели ты хочешь пронумеровать список?
#9 by iSNEG
спутал, извиняюсь. Цель тривиальная, открывается список (источник - справочник), в нем записи, надо видеть порядковый номер каждой записи.
#10 by iSNEG
Минимальная цель - видеть общее кол-во записей. Но лучше сделать нумерацию.
#11 by Terv
ну и добавь реквизит в справочник ... "ПорядковыйНомер" из него считывай либо испольузй реквизит "Код"
#12 by Defender aka LINN
А зачем?
#13 by iSNEG
Нет в справочник добавлять никак нельзя. Во первых надо тогда его заполнять при всех добавлениях элементов в справочник. Во вторых из справочника могут быть удалены элементы и вся нумерация рухнет. А реквизит Код это просто многозначный уникальный код, а мне нужен номер строки в табличном поле.
#14 by Terv
и как должна вести твоя номерация при смене сортировки или установке отборов?
#15 by Terv
*нумерация
#16 by iSNEG
Что зачем? Зачем нумерацию или зачем общее кол-во? На самом деле, нужно видеть сколько элементов имеется на данный момент в табличном поле. Визуальная нумерация, думаю, лучшее решение.
#17 by Terv
ну ТОЛЬКО видимые посчитать достаточно легко, тебя это устроит?
#18 by Эрнст
Структура Таблица Значений имеет атрибут НомерСтроки
#19 by Terv
+ хотя нет, наверно ошибаюсь проверять надо
#20 by Terv
прежде чем писать, неплохо было бы научиться читать
#21 by iSNEG
Именно это и нужно.
#22 by Defender aka LINN
и то, и то. Не могу представить, какая от этого практическая польза.
#23 by iSNEG
Потому что справочник этот не в чистом смысле справочник. А некий перечень уникальных автомобилей (буфер). Нужно знать общее кол-во автомобилей.
#24 by iSNEG
Т.е. я так понимаю стандартных решений (или полей/методов ака НомерСтроки/НомерПозиции) нет?
#25 by Terv
нет ибо не имеет практического смысла... можно посчитать записи, которые отображены на данным момент в ТП, но я не вижу в этом никакой пользы
#26 by iSNEG
Terv, ни тебе и даже мне пользы никакой нет. Но нашему главному менеджеру есть большая польза видеть кол-во автомобилей в квоте от дилера. Ну надо это сделать.
#27 by Собеседник
+ а у иерархического справочника с "развернутой" иерархией как должна выглядеть нумерация? а сортировки и отборы? - Порядковый номер элемента относительно чего? "Видеть" количество элементов - более логичное пожелание. Но все равно, как быть с отборами? Оптимально: Запрос и результат в текстовое поле. + обновление данных этого поля по обработке оповещения
#28 by Terv
сделай ему отчет
#29 by IronDemon
Отчетом
#30 by Собеседник
Три варианта: 1 - менеджеру по башке 2 - заменить справочник список на ТЗ 3 - (тупо) определить состояние отбора, и упорядочивания - сделать запрос, который даст в результате ТЗ "аналогичную" структуре представленного в ТП списка, выгрузить в ТЗ, при выводе строки искать в тз текущий элемент и выводить номер... перечитал - ЖЕСТЬ.
#31 by iSNEG
Порядковый номер относительно номера строки в табличном поле (давайте отойдем от самого справочника). Вне зависимости от отборов и фильтрации. Т.е. даже если отбор убрал половину записей, все оставшиеся записи должны быть пронумерованы относительно своего текущего (т.е. нового после отбора) положения в ТП. Тут надо писать код в событии при выводе строки. Я так понимаю все строки выводятся заново при отборе/фильтрации?
#32 by Собеседник
+ при изменении отборов, сортировки, иерархии - обновлять запрос
#33 by Terv
ну если хошь этот бред, то держи: (обновление нумерации вручную, добавь в ТП колонку "НомерОтображеннойСтроки")
#34 by iSNEG
Спасибо! А разве ПриПолученииДанных не будет срабатывать при отборе/сортировке. нельзя никак без ручной кнопки обойтись? Сейчас попробую.
#35 by iSNEG
1 - бесполезно :) 2 - сложно реализовать. тогда уж лучше п.1 ) 3 - думаю возможно, но подозреваю что у меня где-то в других местах "поплывет" после такого.
#36 by Terv
хм... поиграйся с размерами формы и полистай список, поймешь
#37 by Собеседник
для иерархического списк проверял?
#38 by iSNEG
проверил, посмотрел - понял :) сейчас попробую сделать это на событии при открытии.
#39 by Собеседник
+ и как быть с текущей строкой?
#40 by iSNEG
Я совсем запутался. Почему когда обращаюсь к полю НомерСтроки в все срабатывает, а когда обращаюсь в то пишет что "Поле объекта не обнаружено (НомерСтроки)" ?? В чем засада?
#41 by iSNEG
поправка: ТабличноеПоле1 = Список.
#42 by iSNEG
поправка 2: УстановитьТекст = Счетчик+1 = УстановитьТекст(Счетчик+1). Все равно не работет. Самие интересное что у меня сделана точно такая же конструкция в другой форме на этом же событии и все работает! Что за глюки?
#43 by iSNEG
Извиняюсь за текстуальные ошибки. нервничаю...
#44 by iSNEG
В общем никак по-человечески не получилось пронумеровать. решил делать предварительный запрос на количество элементов и выводить кол-во в подвале. Всем спасибо за мозговой штурм! :)
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С