Программа анализируя метаданные формирует корд запросов. Порадовала возможность в регистрах (кроме регистров сведений) выбрать перечень стандартных реквизитов
Для Каждого СтандартныйРеквизит из Рег.СтандартныеРеквизиты Цикл
Стр.ПутиРегистра.Добавить(СтандартныйРеквизит.Имя);
КонецЦикла;
Однако при генерации запроса выплыло следующее....
У регистра расчета в перечне стандартных реквизитов типа дата есть реквизит который называется период. Однако не в запросе не в записи через набор записей к нему нельзя обратиться по причине того что на самом то деле его нет.
Проблема в релизе 8.3.6.2152
В общем на случай если кому интересно привожу код заглушки для проверки натурности стандартного реквизита
Функция ПроверкаНатуральностиСтандартногоРеквизита(_ИмяРег,_СтандартныйРеквизит)
_Регистр=Вычислить("Регистры"+Сред(_ИмяРег,8));
_Набор=_Регистр.СоздатьНаборЗаписей();
_Запись=_Набор.Добавить();
Попытка _Дата=Вычислить("_Запись."+_СтандартныйРеквизит.Имя);
Исключение
Возврат Ложь;
КонецПопытки;
Возврат Истина;
КонецФункции
//То есть если получается прочитать значение реквизита из записи, то он у нас действительно есть