Имя: Пароль:
1C
1C 7.7
v7: ИндексированнаяТаблица. что вместо "ПолучитьСтрокуПоНомеру" ?
,
0 Dolly_EV
 
16.10.13
09:03
Собственно, сабж.
в простой ТЗ есть метод ПолучитьСтрокуПоНомеру(<НомерСтроки>). Что в таком случае делать в ИТЗ? В случае, когда по номеру основного индекса надо спозиционироваться на конкретной строке?
Надоело всякие обходные пути применять, может я чего не знаю секретного? или просто туплю? :-(
1 vinogradъ
 
16.10.13
09:13
НайтиСтроку(Индекс, Ключ, [чНайтиПоследнюю = 0], [чСпозиционироваться = 0])?
2 viktor_vv
 
16.10.13
09:14
НайтиСтроку() с параметром Позиционироваться.
3 Dolly_EV
 
16.10.13
09:14
Вот лошара! :-((

"НомерСтроки
Назначение:
Доступ: чтение и ЗАПИСЬ(!!).
Тип: Число.
Номер текущей строки в основном индексе. Если строка не выбрана, то 0."

проверил. ИТЗ.НомерСтроки = НужныйНомер. Работает!

В общем тема закрыта))

(Хотя помнится пару лет назад чего-то с этим НомерСтроки не получалось...)
4 viktor_vv
 
16.10.13
09:17
(3) Упс, че-то я лоханулся :), немного не в ту сторону подумал.
5 Dolly_EV
 
16.10.13
09:18
для НайтиСтроку() как указать ОсновнойИндекс?

вот так НайтиСтроку(,лНомСтр,1,1) или НайтиСтроку(1,лНомСтр,1,1)
ругается "Таблица не проиндексирована"
6 viktor_vv
 
16.10.13
09:18
(4)+ Хотя НомерСтроки ты как получаешь, не через НайтиСтроку() ?
7 Dolly_EV
 
16.10.13
09:18
(4) :-)
8 Dolly_EV
 
16.10.13
09:19
(6) вот прямо сейчас вот так получаю:
лТЗ.ВыбратьСтроку(лПоз,"Выберите подходящего контрагента...",10)

Но всякие варианты бывают
9 viktor_vv
 
16.10.13
09:21
НайтиСтроку(ИмяКолонки,ЗначениеИзЭтойКолонкиДляПоиска,1,1)
Можно попробовать ИмяКолонки= "НомерСтроки", но вряд ли.
(8) Ну тогда (3).
10 Dolly_EV
 
16.10.13
09:23
(9) не ИмяКолонки, а Имя или номер Индекса.
11 viktor_vv
 
16.10.13
09:30
(10) Если поиск по одной колонке, то имя колонки в качестве имени индекса.
12 viktor_vv
 
16.10.13
09:31
(11)+ И в этом случе отдельно индексировать ее не надо.
13 Dolly_EV
 
16.10.13
09:32
(12)
лТЗ.НайтиСтроку("НомерСтроки",лПоз,1,1);
{D:\BASES\_WORKINGERT\ОБОРОТРОЗНИЦА\ИМПОРТДОКОВСУПЕРМАГ.ERT(1442)}: Индекс с именем НомерСтроки не найден !
14 viktor_vv
 
16.10.13
09:34
(13) Ну я в (9) и выразил сомнение, что это сработает для НомерСтроки, это не совсем обычная колонка. А для остальных (11) и (12) работает.
15 viktor_vv
 
16.10.13
09:37
(14)+ Хотя че-то засомневался насчет остальных колонок :).
16 Dolly_EV
 
16.10.13
09:40
(15) правильно засомневался))) ибо для остальных будет работать, только если по ним предварительно СОЗДАТЬ индекс, и обозвать его так же, как и колонка зовется
17 viktor_vv
 
16.10.13
09:48
(16) Да. Это меня группировать сбило с толку, а там индекс неявно создается.
18 Salimbek
 
16.10.13
09:58
(13) лТЗ.НайтиСтроку("",лПоз,1,1);
19 Dolly_EV
 
16.10.13
10:35
(18) лТЗ.НайтиСтроку("",лПоз,1,1);
{D:\BASES\_WORKINGERT\ОБОРОТРОЗНИЦА\ИМПОРТДОКОВСУПЕРМАГ.ERT(1596)}: Таблица не проиндексирована!

Давайте еще варианты - совместно отыщем истину)))...пока отлаживаю эту обработку - буду параллельно проверять
20 ADirks
 
16.10.13
10:41
(19) ты же прочитал уже документацию, чего дальше то фигнёй страдать?

ну а так, чтобы поиск по "основному индексу" работал, надо его проинициализировать. Например, сказать .Сиртировать(...)
или .СоздатьИндекс("", ...)
21 Dolly_EV
 
16.10.13
14:36
(20) ясно