Имя: Пароль:
1C
1C 7.7
v7: Как через ВыгрузитьИтоги() из регистра остатков получить в ТЗ регистратор?
,
0 SAAAAS
 
09.08.11
04:32
Всем привет!
Делаю такой код:

РегистрОстатков.ВыгрузитьИтоги(тзИтоги, 1, 1);

тзИтоги.НоваяКолонка("ДокументРегистратор");
тзИтоги.ВыбратьСтроки();
Пока тзИтоги.ПолучитьСтроку() = 1 Цикл
       
 РегистрОстатков.ВыбратьДвижения(НачМесяца((РабочаяДата()), );
 Пока РегистрОстатков.ПолучитьДвижение() > 0 Цикл
   Если РегистрОстатков.УникальноеИзмерение = тзИтоги.УникальноеИзмерение Тогда
      тзРезервИтоги.ДокументРегистратор = РегистрОстатков.ТекущийДокумент();
      Прервать;
   КонецЕсли;
 КонецЦикла;        
   
КонецЦикла;

Однако, он не подходит по быстродействию. Ищу способ получить таблицу значений итогов регистра с регистратором более быстрым способом.
1 SAAAAS
 
09.08.11
04:33
Запрос не подходит, т.к. код выполняется в цикле.
2 SAAAAS
 
09.08.11
04:38
Или может быть есть альтернативные способы, а не через ВыгрузитьИтоги()?
3 ДенисЧ
 
09.08.11
04:39
В итогах нет регистратора.
4 SAAAAS
 
09.08.11
04:48
(3)А как бы извернуться?
5 nicxxx
 
09.08.11
05:21
добавить измерение регистра с типом "документ" и туда писать ссылку на документ движения при проведении. только так.
6 big
 
09.08.11
05:47
(4) Когда в каких остатках вообще был документ движения (регистратор)? Ты путаешь некоторые понятия. М.б. тебе нужны остатки в разрезе кредитовых (дебетовых) документов?
(5) Аааакуеть, как феерично!!! ))))
7 Simod
 
09.08.11
05:52
(0) Индийский код детектэд...
(5) "Мама не бей меня мокрым пототенцем.." (с)
8 nicxxx
 
09.08.11
06:00
(6) ну а че, вдруг ТС  не знает, что так можно :)
9 SAAAAS
 
09.08.11
06:43
(6) я прекрасно понимаю что никогда в регистрах остатков не было документа движения, но вот задача сделать так, чтобы оперативно получить табицу значений с итогами и документом движения
10 SAAAAS
 
09.08.11
06:44
(5)только вот этот вариант и остается, но глупость получается.
11 Simod
 
09.08.11
06:54
(10) В чем смысл получения остатков на документ?
12 SAAAAS
 
09.08.11
06:58
(10)это регистр для резервов. Таблица итогов сортируется по дате документа резервирования и таким образом определяется приоритет. Конфа самописная неизвестными авторами, логика витиеватая.
13 ДенисЧ
 
09.08.11
06:59
(12) документ резервирования != документ движения...
14 SAAAAS
 
09.08.11
06:59
(13)в данном случае документом движения и является документ резервирования
15 big
 
09.08.11
07:32
(12)(14) ты путаешь понятия документа движения и остаков в разрезе документа. Если это заказы, то должно быть измерение в регистре типа Документ. Вот тогда ты и будешь смотреть остатки по этому документу.

з.ы. "гляди как сделано в типовых" (с)
16 VoditelKobyly
 
09.08.11
08:13
(14) Для поставленной задачи в (9) код в (0) не рабочий.
Как минимум нельзя обрезать выборку по дате и как минимум надо проверять на Приход. Иначе можешь наткнуться на документ списания. А это уже может быть документ друго типа и структуры.
А для ускорения решения надо использовать прямые запросы.
17 nicxxx
 
09.08.11
09:01
в типовой ТиС есть регистры Покупатели и Поставщики, там можно посмотреть пример реализации того, что хочет автор, измерение КредДокумент вполне соответствует заявленному требованию
18 Джинн
 
09.08.11
09:11
(0) Коллега, курите доку. Она рулез. С познаниями, выданными в сабже и в ходе обсуждения рано топтать клавиатуру.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.