Имя: Пароль:
1C
1C 7.7
v7: Поиск в таблице значений
0 Третья Молодость
 
08.04.15
15:09
День добрый!
Голову сломала...
Кусок кода:

                Если (ТаблицаПартий.НайтиЗначение(ТекПартия, , "Партия") = 1) Тогда         // партия уже частично списана
                    МожноСписать = ТаблицаПартий.Количество;
                    Если (МожноСписать = 0) Тогда        // списана вся партия
                        Списываем = 0;
                    Иначе                                // что-то осталось


ТаблицаПартий - создается раньше.
ТекПартия - Справочник.Партии.
Перед первым Если показывает - ТекПартия = 00012589, а после него - ТекПартия = 00013131.
То есть - ищет одну, а находит другую...
Почему?

Спасибо.
1 makaorel
 
08.04.15
16:37
(0) получитьСтрокуПоНомеру
2 Третья Молодость
 
08.04.15
16:38
(1) Спасибо, конечно, но пока вы соизволили... Сама уже наткнулась.
А вот - почему? Поиск же возвращает номер строки.
3 makaorel
 
08.04.15
16:42
(1) что значит соизволила? Непонятно
4 Builder
 
08.04.15
16:47
(2) Поиск возвращает номер строки, но не позиционируется на ней.
5 Третья Молодость
 
08.04.15
16:49
(4) Спасибо. Дурдом, правда :(
6 Ёпрст
 
08.04.15
16:49
(0) как бэ в куске кода брэд.. пит.
Нет позиционирования на нужном номере строи тЗ, твой код
МожноСписать = ТаблицаПартий.Количество;
будет брать всегда количество с первой строки в лучшем случае.

Хотя бы так переделай, что ле
  ТекСтр="";
  Если (ТаблицаПартий.НайтиЗначение(ТекПартия,ТекСтр , "Партия") = 1) Тогда         // партия уже частично списана

                    МожноСписать = ТаблицаПартий.ПолучитьЗначение(ТекСтр,"Количество");
7 Третья Молодость
 
08.04.15
16:59
(6) Повторю, не знала (даже представить не могла), что найти паспорт - нашел, а отдал свой :)

Всем спасибо.