09.12.2008, 11:27 | #1 |
Участник
|
Ошибка при обновлении моделей
Dynamics Ax 4.0 SP02 EE (Application version: 4.0.2501.347)
Наткнулись на ошибку дублирования данных уникального индекса FieldCache таблицы SRSModelFieldCache которую генерирует Dynamics Ax при попытке процессинга моделей обновления (Business Analysis\Update Models). Ошибка возникает на таблицах входящих в табличные коллекции при некоторых условиях на EDT (наличии у EDT relation c related field fixed) и id полей по которым строится связь между таблицами. Сценарий воспроизведения ошибки (для простоты изложения буду оперировать 2 таблицами, например EmplTable и ProdTable) : 1. Создаем в таблице EmplTable поле типа Enum (пусть будет NoYes) SomeCondition ( FieldId = 50001 ) 2. Создаем EDT EmplIdCondition ( EmplIdCondition == EmplTable.EmplId && 1 == EmplTable.SomeCondition ) 3. На основе EDT EmplIdCondition в таблице ProdTable создаем поле EmplIdCondition ( FieldId = 50001 ). Собственно это первое условие при котором воспроизводится ошибка - id поля 'основной' таблицы (ProdTable.EmplIdCondition = 50001) и id поля related field fixed ( EmplTable.SomeCondition = 50001 ) EDT SomeIdCondition совпадают. 4. Создаем перспективу SomePerspective и в список таблиц включаем модифицированные EmplTable и ProdTable Запускаем процесс 'Update Models'. На этом шаге процесс проходит успешно. Последний штрих: 5. Создаем табличную коллекцию SomeTableCollection в которую включаем EmplTable и ProdTable (можно любую 1 из них) - Второе условие воспроизведения ошибки. Запускаем процесс 'Update Models' и получаем сообщение: Цитата:
Ошибка:
Невозможно создать запись в Кэш полей Reporting Services (SRSModelFieldCache). Поле: 50001, SOMECONDITION. Запись уже существует. Проект с симуляцией ситуации прилагаю: |
|
08.12.2011, 14:14 | #2 |
Участник
|
Такая же ошибка в AX 2009 SP1 (RU7)
Цитата:
Невозможно создать запись в Кэш полей Reporting Services (SRSModelFieldCache). Поле: 5, COSTGROUPTYPE.
Запись уже существует. |
|