У меня проблема с обновлением старой модели данных до текущей. У него есть несколько слоев, которые могут быть причиной проблемы, и я изо всех сил пытаюсь определить, в чем проблема.
У меня есть абстрактная сущность «Клиент», которая содержит общие отношения с телефонными номерами, адресами электронной почты и т. Д. В моей старой модели были отношения, в которых клиент мог владеть 1 собственностью (но у собственности могло быть много владельцев), или клиент мог быть арендатором в аренде (но в аренде может быть много арендаторов). Сейчас я обновил модель так, чтобы Клиент мог владеть многими свойствами и быть частью многих договоров аренды.
Конкретные сущности Клиента в основном добавляют различную информацию об именах в реферат, поэтому существуют подклассы Индивидуальный, Бизнес, Правительственный и Импорт (импортированные из других систем).
Я ожидал, что отношение «один ко многим», установленное в старой модели данных, будет добавлено в качестве первого экземпляра в новое отношение «многие ко многим» в новой модели данных. К сожалению, обновленное хранилище данных, по-видимому, не содержит никаких связей в новых конкретных клиентах для свойств или аренды.
Старая модель:
Client{
Property<<-->Property.Owners
Tenancy<<-->Lease.Tenants
}
ImportClient:Client{
name:string
}
Новая модель:
Client{
Properties<<-->>Property.Owners
Tenancies<<-->>Lease.Tenants
}
ImportClient:Client{
name:string
}
Так что теперь о возможных проблемах я могу видеть. Во-первых, имена отношений в сущности «Клиент» изменились с «Недвижимость» на «Свойства» и «Аренда в аренду». Итак, я добавил модель отображения. Модель не добавляла автоматически сопоставление сущностей для ClientToClient (только для конкретных классов), поэтому я попытался добавить его самостоятельно. Однако я не уверен, как настроить выражение значения, так что на данный момент это:
FUNCTION($manager,"destinationInstancesForEntityMappingName:sourceInstances:","PropertyToProperty","$source.Property")
Если я попытаюсь добавить сопоставление с конкретными классами (например, ImportClientToImportClient), то, по-видимому, будет абсолютно невозможно правильно установить значения отношений (в основном это запрещено редактором).
Так что я подозреваю, что либо не удается передать отношения, потому что, когда выборка запускается для объекта Client, она ничего не возвращает (всякий раз, когда я пытался это сделать, это было так), или я просто не получал выражение значения правый.
Помощь будет принята с благодарностью, потому что на данный момент это единственная проблема, блокирующая выпуск моего основного обновления приложения.