Имя: Пароль:
1C
1С v8
СправочникСписок в табличное поле. Как пронумеровать строки?
,
0 maxstore
 
01.07.12
21:38
Табличное поле на форме. Тип значения СправочникСписок.ИмяСправочника.
Как пронумеровать строки по порядку?
В обработчике ПриВыводеСтроки
     ОформлениеСтроки.Ячейка.НомерСтроки = ? может какой индекс имеют строки?
1 maxstore
 
01.07.12
21:39
или как-то иначе можно вывести номер?
2 maxstore
 
01.07.12
21:50
Или прийдется создать ТЗ. Данные записывать туда, там нумеровать и потом выводить в табличное поле..
3 maxstore
 
01.07.12
21:52
Кстати, формы обычные
4 YF
 
01.07.12
21:59
Я думаю, что никак, т.к. в любом месте списка может появиться новая строка, поэтому постоянно придется перенумеровывать
5 maxstore
 
01.07.12
22:10
(4) при добавлении строки можно ведь перерисовать данные табличного поля. Главное как в добавленную колонку выводить номер строки.
вот если бы
НомерСтроки = ЭлементыФормы.НашеТабличноеПоле.ТекущаяСтрока:)НомерСтроки
6 YF
 
01.07.12
22:11
(5) Перерисовывая табличное поле пробегаешь все его данные и выводишь номера, причем делать это надо постоянно, при автообновлении или ручном обновлении формы ... А если строк 10500?
7 maxstore
 
01.07.12
22:19
(6) вобщем согласен, но в данном (частном) случае речь идет о справочнике сотрудники, скорее всего список не будет большим, тем более перерисовывать нужно будет только сотрудников из одной группы.

но задача именно в нумерации строк, оптимизация дело второе
8 hhhh
 
01.07.12
22:22
(7) считать код элемента номером и выводить в порядке кодов - не оно?
9 maxstore
 
01.07.12
22:24
(8) не.. во первых тогда нужно присваивать код в пределах группы, а во вторых код могут и вручную в будущем поменять
10 maxstore
 
01.07.12
22:25
+(8) не универсально, и код выглядит не 1..2..3..4.. а 0001..0002.. а тут удалили и 0004.. 0006 и т.д.
11 YF
 
01.07.12
22:27
Попробуй произвольный запрос для динамического списка с функцией счетчик
12 nbIx
 
01.07.12
22:32
В ПриПолученииДанных делай запрос по всем сотрудникам. Затем выгружай в таблицу значений и нумеруй, хотя в таблице они уже пронумерованы по индексу с 0.

потом пробегись по оформлению, найди текущую ссылку в таблице Ячейка.НомерСтроки.УстановитьТЕкст(НомерСтроки)
13 maxstore
 
01.07.12
22:34
(12) хорошая идея спасибо
14 maxstore
 
01.07.12
22:53
+(13) интересно, а почему ПриПолученииДанных и ПриВыводеСтроки пробегает строки табличного поля дважды? (чисто для себя интересно)
15 hhhh
 
01.07.12
23:20
(14) потому что при установке отбора тоже выводит. И не всё табполе пробегает, а только то что на экране.
16 experimentator76
 
01.07.12
23:26
поди симпотичная бухша\кадровичка попросила пронумеровать
видимо для печати или для понимания количества сотров в группе
может быть взять ее голову в руки, заглянуть ей в галаз и понять что она хочет получить?
17 maxstore
 
01.07.12
23:48
(16) да не.. нужно получить (хотелка клиента) нумерацию в списке сотрудников. Просто для красивости
18 maxstore
 
01.07.12
23:48
(15) понятно
19 experimentator76
 
02.07.12
00:12
(17) тыщ тридцать за такую хотелку))
20 maxstore
 
05.07.12
16:17
(19) да ну ))) я за пару часов сделал