Имя: Пароль:
1C
1С v8
Позиционирование на записях таблиц регистров расчета
0 Кондидат В
 
14.12.11
17:29
Всем привет. Недавно сдавал экзамен экзамен (не удачно)
В коментарии экзаменатор написал, что позиционирование на записи по индексу некорректно. Создавал набор записей, устанавливал отбор, из запроса вытаскивал № строки, и устанавливал результат. Подскажите пож. как "корректно" то...
1 Axel2009
 
14.12.11
17:31
из какого запроса вытаскивал?
2 Beduin
 
14.12.11
17:32
(1) Считал в выборке наверно количество строк.
3 Кондидат В
 
14.12.11
17:34
Как то так...

Запрос = Новый Запрос;
Запрос.Текст = "ВЫБРАТЬ Т.НомерСтроки, Размер ИЗ РегистрРасчетов.ОсновныеНачисления КАК Т"
Набор = РегистрыРасчетов.ОсновныеНачисления.СоздатьНаборЗаписей();
Набор.Отбор.Регистратор.Установить(Ссылка);
Набор.Прочитать;
Выб = Запрос.Выполнить().Выбрать();
Пока Выб.Следующий() Цикл
Набор[Выб.НомерСтроки-1].результат = //Ну и расчет рез-та
КонецЦикла;
4 GenV
 
14.12.11
17:38
(3) А зачем запрос, если записи и так прочитал? Просто перебирай их в наборе.
ЗЫ Тем более в твоем примере в запросе отбора по ссылке нет.
5 Кондидат В
 
14.12.11
17:38
+3
В тексте запроса еще условие на Регистратор = &Ссылка
6 Кондидат В
 
14.12.11
17:39
(5)
Там еще в запросе я объединяю с данными графика
7 GenV
 
14.12.11
17:43
(6) Либо перебором набора и поиску по измерениям в данных запроса. Либо перебором данных запроса и поиском в выгруженном в ТЗ данным набора, потом загрузка ТЗ опять в набор.
8 Кондидат В
 
14.12.11
17:47
Кстати, забыл уточнить. В коменте экзаменатора была ссылка на итс. А статью найти не могу. Может кто кинет ее на [email protected]
9 Beduin
 
14.12.11
17:50
(8) А зачем вообще первый запрос? Ответь на вопрос (4)
10 Кондидат В
 
14.12.11
17:51
(9) см (6)
11 Beduin
 
14.12.11
17:52
(10) А у данных графика есть номер строки?
12 Кондидат В
 
14.12.11
17:53
(11) Да. По ней идет связь с реальной таблицей
13 Beduin
 
14.12.11
17:57
(12) Тогда используй ПолучитьДанныеГрафика и пересчитывай.
Закон Брукера: Даже маленькая практика стоит большой теории.