Я надеюсь, что кто-то испытал это раньше.Как восстановить данные в Alfresco после изменения модели данных
У меня есть модель данных в Alfresco, которая определяет несколько типов и несколько аспектов.
Для примера типа X имеет обязательные аспекты A и B.
В рамках разработки моего приложения на вершине, мне нужно, чтобы добавить новый аспект типа X. Но когда я добавляю свой новый обязательный аспект и развертывание My amp, все существующие данные для типа X больше не будут отображаться в моих новых запросах, пытающихся присоединиться к аспекту X.
Кто-нибудь знает, как можно исправить это?
В идеале можно запустить какой-либо скрипт, который будет анализировать модель, сопоставить имена типов и применять любые отсутствующие аспекты к экземплярам этого типа. Таким образом, модель может эволюционировать с одним сценарием для разработки данных, и все наши запросы могут развиваться с помощью модели данных в последовательном пути.
Вот пример ...
Так позволяет сказать, что у нас есть этот запрос для нашего типа X
SELECT P:nameSpace:aspect.nameSpace.propertyA
FROM nameSpace:typeX AS primary
JOIN nameSpace:aspect AS P:nameSpace:aspect
ON primary.cmis:objectId=P:nameSpace:aspect.cmis:objectId
В любое время мы делаем объект X мы будем всегда аспект применяется с ним является обязательным. Теперь через несколько недель мы добавим обязательный аспект2. И нам нужно свойство B от него ...
SELECT P:nameSpace:aspect.nameSpace.propertyA, P:nameSpace:aspect2.nameSpace.propertyB
FROM nameSpace:typeX AS primary
JOIN nameSpace:aspect AS P:nameSpace:aspect
ON primary.cmis:objectId=P:nameSpace:aspect.cmis:objectId
JOIN nameSpace:aspect2 AS P:nameSpace:aspect2
ON primary.cmis:objectId=P:nameSpace:aspect2.cmis:objectId
Наш запрос эволюционировала с нашей моделью данных, но старые экземпляры typeX не будут возвращены, так как они не имеют aspect2 применять еще. Наша теория заключается в том, что мы можем запускать скрипт для применения отсутствующих аспектов без управления версиями; и плавно развивать наш контент с помощью нашего приложения.
Не могли бы вы опубликовать свой запрос? На самом деле этого не должно быть. – mitpatoliya
Действительно? Мы видим это довольно регулярно, я верю. Это в том случае, когда мы создаем кучу объекта x и запрос с неотъемлемыми аспектами. Тогда в будущем, когда объект x имеет новый обязательный аспект ... И теперь наши запросы присоединяются, наши старые объекты x не имеют этого аспекта. Я попытаюсь опубликовать пример в моем вопросе в ближайшее время. – TheNorthWes
Спасибо @mitpatoliya. Я добавил пример – TheNorthWes