Имя: Пароль:
1C
 
Как узнать у регистра накопления его документы-регистраторы
0 wmzdeadman
 
22.04.11
14:35
Собственно сабж.
1 zak555
 
22.04.11
14:35
Регистратор ?
2 Kookish
 
22.04.11
14:36
Посмотреть в поле "Регистратор". Собственно ответ.
3 wmzdeadman
 
22.04.11
14:36
а программно?
4 shuhard
 
22.04.11
14:36
(3) метаданные
5 бомболюк
 
22.04.11
14:36
РегистрыНакопления.ПартииТоваров.СоздатьНаборЗаписей().Отбор.Регистратор.ТипЗначения.Типы() кажися так
6 aleks-id
 
22.04.11
14:36
+(1) если период выбран Регистратор )
7 Fragster
 
гуру
22.04.11
14:37
кури метаданные
8 wmzdeadman
 
22.04.11
14:37
например регистр "Товары на складах" - хотел программно узнать его документы-регистраторы
9 asady
 
22.04.11
14:38
10 wmzdeadman
 
22.04.11
14:39
(5) спасибо
11 Lys
 
22.04.11
14:39
(5) Зачем извращаться, когда все есть в метаданных?
12 бомболюк
 
22.04.11
14:42
(11) придется обходить все документы, потом все регистры, которые он двигает. Через метаданные инфа есть, только получать ее придется "с другого конца".
13 wmzdeadman
 
22.04.11
14:42
(11) и как же через метаданные полчить?
14 Lys
 
22.04.11
14:45
(13) Для каждого документа в метаданных найти/не найти нужное имя регистра в коллекции "Движения", если найдено - добавляем имя в массив имен регистраторов.
Правда, не факт, что это будет быстрее (9).
15 wmzdeadman
 
22.04.11
14:54
(14) ок, но проще сделать через СоздатьНаборЗаписей()
16 aleks-id
 
22.04.11
14:55
ВЫБРАТЬ РАЗЛИЧНЫЕ
   ТИПЗНАЧЕНИЯ(МойРегистр.Регистратор) КАК ТипРегистратора
ИЗ
   РегистрНакопления.МойРегистр КАК МойРегистр
17 wmzdeadman
 
22.04.11
15:05
(16) а что в запросах уже появилась такая функция?
18 Живой Ископаемый
 
22.04.11
15:06
2(17) уже много месяцев как.
19 aleks-id
 
22.04.11
15:06
(17) а ты думаешь я это тут написал а не из консоли запросов скопировал?
20 hhhh
 
22.04.11
15:07
(19) не прокатит. Даст только то, что есть в движениях.
21 Живой Ископаемый
 
22.04.11
15:11
2(20) подходит под то, что написано в сабже.
22 Живой Ископаемый
 
22.04.11
15:11
наверное. :)
23 73
 
22.04.11
15:13
Если хочется запросом:

   Запрос = Новый Запрос("
   |ВЫБРАТЬ
   |    РКасса.Регистратор
   |ИЗ
   |    РегистрНакопления.Касса КАК РКасса
   |ГДЕ
   |    Ложь
   |");

   Результат = Запрос.Выполнить();
   ОписаниеТиповРегистаторы = Результат.Колонки.Регистратор.ТипЗначения;

)
24 Живой Ископаемый
 
22.04.11
15:27
капец, круто...
25 wmzdeadman
 
22.04.11
16:35
(19) у меня консоль ругается на ТИПЗНАЧЕНИЯ
26 shuhard
 
22.04.11
16:35
(25) неужто ты в 8.0 работаешь ?
27 wmzdeadman
 
22.04.11
16:37
(26) 8.1
28 wmzdeadman
 
22.04.11
16:38
1С:Предприятие 8.1 (8.1.15.14)
29 Vetal_978
 
22.04.11
16:39
в 8.1 такого тоже нет. в 8.2 только.
Требовать и эффективности, и гибкости от одной и той же программы — все равно, что искать очаровательную и скромную жену... по-видимому, нам следует остановиться на чем-то одном из двух. Фредерик Брукс-младший