Имя: Пароль:
1C
 
Как получить всех регистраторов регистра Бухгалтерии
0 Нехта
 
27.03.08
15:11
Необходимо получить все документы-регистраторы Бух. регистра Хозрасчетный.
Т.е. получить список типов наподобие:
АвансовыйОтчет,ЗакрытиеМесяца,ОперацияБух и т.д.
Как это сделать программно?!
1 Salvador Limones
 
27.03.08
15:12
Через метаданные.
2 Нехта
 
27.03.08
15:14
Для каждого Док Метаданные.РегистрБухгалтерии.Хозрасчетный.Регистраторы Цикл

КонецЦикла;

???
3 Нехта
 
27.03.08
15:16
Для каждого Док из Метаданные.РегистрыБухгалтерии.Хозрасчетный.Регистратор Цикл

выдает ошибку поле регистратор не обнаружено...
4 Нехта
 
27.03.08
15:23
up
5 Salvador Limones
 
27.03.08
15:23
Нет.
Перебирая документы, смотреть движения.
6 Aloex
 
27.03.08
15:27
Запросом выбери все регистраторы.
7 Нехта
 
27.03.08
15:32
(5) делаю так:
Для каждого Док из Метаданные.Документы Цикл
Если Док.Движения.Содержит(Метаданные.РегистрыБухгалтерии.Хозрасчетный) Тогда
  Сообщить(Док.Имя);        
КонецЕсли;    
КонецЦикла;    

ура! все работает!
8 megalodon
 
27.03.08
15:32
НаборЗаписей = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
ТипРегистратора = НаборЗаписей.Отбор.Регистратор.ТипЗначения;
Для Каждого Тип Из ТипРегистратора.Типы() цикл
 Сообщить(Метаданные.НайтиПоТипу(Тип).Имя);
КонецЦикла;
9 Salvador Limones
 
27.03.08
15:33
(7) Кстати, можно еще так попробовать:
Набор = РегистрыБухгалтерии.Хозрасчетный.СоздатьНаборЗаписей();
МассРег = Набор.Отбор.Регистратор.ТипЗначения.Типы();
10 Defender aka LINN
 
27.03.08
15:37
(9) Чут-чуть опоздал :)
Пользователь не знает, чего он хочет, пока не увидит то, что он получил. Эдвард Йодан