Имя: Пароль:
1C
1С v8
работа с массивом
, ,
0 saksaul
 
22.09.11
09:33
Выбрать строку с максимальным значением в одном из полей (это поле типа Дата). Как это реализовать?
1 mirosh
 
22.09.11
09:37
2 ЛЮС
 
22.09.11
09:37
Научиться внятно задавать вопросы. У массива нет строк и полей.
3 mirosh
 
22.09.11
09:38
(2) да хорош выпендриваться, понял же, небось, что имеется в виду
4 ЛЮС
 
22.09.11
09:45
(3) По тексту сообщения (без темы) - явно про таблицу значений. Может нужно найти номер строки. Или для массива  - индекс элемента с максимальной датой.
5 saksaul
 
22.09.11
09:53
Строки = ТаблОр.НайтиСтроки(Отбор);
Получается, что Строки - данные типа Массив.
А перебираешь в цикле этот массив Строки, то появляются "поля". Именно поэтому и был сформулирован вопрос так.
6 Нуф-Нуф
 
22.09.11
09:54
проще сделать запрос к таблице значений
7 saksaul
 
22.09.11
09:54
спасибо за подсказку
8 saksaul
 
22.09.11
09:55
Запрос? Через временные таблицы?
9 ЛЮС
 
22.09.11
09:57
Я бы так подошел:
ВрТаб = ТаблОр.Скопировать(Строки);
ВРТаб.Сортировать("Период Убыв");
НужнаяСтрока = ВРТаб[0];

Только нюанс: это копия исходной строки. Для чтения годится, а для записи - нет.
10 ZanderZ
 
22.09.11
09:58
(9) ему отбор еще нужен
11 ЛЮС
 
22.09.11
10:01
(10) Дык, Строки - это уже с учетом отбора. Копируется только часть таблицы.
12 saksaul
 
22.09.11
10:02
кстати в по приведенному примеру во втором посте.. там метод Сортировать  - применить не получается...
13 ZanderZ
 
22.09.11
10:05
(12) там ошибка - сортировать=сортироватьпозначению
14 ЛЮС
 
22.09.11
10:05
(12) Правильно, ты же пытаешься отсортировать СтрокаТаблицыЗначений. Его особо не посортируешь.
Это работало, если бы у тебя в массиве сами даты лежали.
15 ZanderZ
 
22.09.11
10:06
(12) сделай запрос с нужными отборами и сортировкой и не парси