Имя: Пароль:
1C
1С v8
СрезПоследних, Активность и Период
0 Ёхан Палыч
 
15.03.14
15:26
Подскажите, а это нормально когда

// Получение всех наиболее поздних записей регистра сведений
ВЫБРАТЬ * ИЗ РегистрСведений.КурсыВалют.СрезПоследних()

работает как с учетом Активности записей регистра (думаю, правильно работает),

а

// Получение всех наиболее поздних записей регистра сведений на указанную дату и по указанной валюте.
ВЫБРАТЬ * ИЗ РегистрСведений.КурсыВалют.СрезПоследних(&ПараметрДата,
    Валюта = &ПараметрВалюта)

плюёт на Активность записей и считает их все активными.
Это нормально или баг? Или я туплю?
У меня 1С:Предприятие 8.3 (8.3.4.389).
1 Ёхан Палыч
 
15.03.14
15:31
вот так Активность отрабатывает нормально:
   ВЫБРАТЬ * ИЗ РегистрСведений.КурсыВалют.СрезПоследних()

а вот так Активность вообще не учитывает:
    ВЫБРАТЬ * ИЗ РегистрСведений.КурсыВалют.СрезПоследних(&ПараметрДата,)
2 hhhh
 
15.03.14
15:33
(1) синтакс-помощник не пробовал читать?

Активность (Active)
Использование:

Только чтение.
Описание:

Тип: Булево.
Содержит признак активности записи. Используется для регистров сведений, для которых в Конфигураторе установлен режим записи "Подчинение регистратору".

Доступность:
3 Ёхан Палыч
 
15.03.14
15:40
у меня вот: и что? вопрос то почитайте

РегистрСведенийЗапись.<Имя регистра сведений> (InformationRegisterRecord.<Имя регистра сведений>)
Активность (Active)
Использование:

Чтение и запись.
Описание:

Тип: Булево.
Содержит признак активности записи. Используется для регистров сведений, для которых в Конфигураторе установлен режим записи "Подчинение регистратору".

Доступность:

Сервер, толстый клиент, внешнее соединение, мобильное приложение(сервер).
Примечание:

Записи, для которых значение данного свойства установлено в Ложь, не будут учитываться при получении "первых" или "последних" записей регистра, а также при получении сведений на определенный момент времени.
4 Ёхан Палыч
 
15.03.14
15:42
у меня все подчинено регистратору и (повторю)


вот так Активность отрабатывает нормально:
   ВЫБРАТЬ * ИЗ РегистрСведений.КурсыВалют.СрезПоследних()

а вот так Активность вообще не учитывает (как-будто она у всех стоит):
    ВЫБРАТЬ * ИЗ РегистрСведений.КурсыВалют.СрезПоследних(&ПараметрДата,)
5 Ёхан Палыч
 
15.03.14
16:51
...
6 echo77
 
15.03.14
17:49
- это баг. С виртуальные таблицы работают только с активными записями(так заявлено)
7 echo77
 
15.03.14
17:50
+ в 8.3 СрезПоследних() без указанного параметра период - берет данные из сохраненной таблицы среза последних, т.е. есть специальная таблица в 8.3(в 8.2 такого не было), а для указанного параметра выполняется хранимая процедура(как и 8.2)
8 echo77
 
15.03.14
17:57
+(7) Пруф: http://downloads.v8.1c.ru/content/Platform/8_3_1_531/1cv8upd.htm#4cc794a1-7d56-11e1-b5d1-e61f135f174b

искать по словам "Для периодических регистров сведений реализованы итоги"
9 Ёхан Палыч
 
15.03.14
19:33
Спасибо
Проблемы невозможно решaть нa том же уровне компетентности, нa котором они возникaют. Альберт Эйнштейн