Работаю с FastReport (Создание провайдера данных отчета) и возник вопрос. 
Как найти Guid entitySchemaUId? 
В примере который есть (Знаменательные события контакта(пример)) указано 
private readonly Guid _contactEntitySchemaUId = new Guid("41af89e9-750b-4ebb-8cac-ff39b64841e");

Когда, создаю по примеру, то требуется поменять Guid, то откуда беру (из объекта к прим.: (0/ClientApp/#/EntitySchemaDesigner/41af89e9-750b-4ebb-8cac-ff39b64841ec) не правильно, т.к. при попытке печати отчета выходит ошибка неполадки сервера

Нравится

8 комментариев
Лучший ответ

SQL:

select UId
from SysSchema
where Name = 'Contact' and ExtendParent = 0

C#:

UserConnection.EntitySchemaManager.GetInstanceByName("Contact").UId

 

Добрый день.

 

Получить UId схемы можно запросом из таблицы:

select UId
from SysSchema
where Caption = N'<Заголовок схемы>'

 

SQL:

select UId
from SysSchema
where Name = 'Contact' and ExtendParent = 0

C#:

UserConnection.EntitySchemaManager.GetInstanceByName("Contact").UId

 

Алла Савельева, 

не совсем правильно, так как ваш запрос вернет несколько строк, для каждой замещенной схемы. А нужно взять UId самого базового объекта.

Владислав Литвинчук,
привет , а что будет самым базовым объектом для Lead , я перебирал буквально каждый , но не с одним фаст репорт не заработал, просто выдает ошибку загрузки и все, хотя в примере из академии на объекте контакта все норм

Где ExtendParent = 0, как в моем запросе выше.

Владислав Литвинчук,

проставила вместо 0 false, иначе выдавал ошибку 
Он выдал две записи, какую все же из них следует выбрать?

Анастасия Демидова,

0 - MS, false - Postgre скорее всего.
Данный запрос не может выдать 2 записи. В системе сожет быть только 1 схема объекта без наследования.
Можно скриншот запроса и результата выборки?

Владислав Литвинчук,

Показать все комментарии