AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Программирование
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 01.03.2007, 18:14   #1  
Buba is offline
Buba
Участник
 
90 / 10 (1) +
Регистрация: 24.04.2003
Адрес: Томск
Подскажите, пожалуйста, ссылку на обсуждение проблемы с задвоенными RecId

Со вчерашнего дня юзеры не могут зависти ни одного договора, система утверждает что запись уже существует.

В свойствах таблицы договоров нахожу CreateRecIdIndex стоит Yes
Меняю свойство на No, записи стали создаваться, однако RecId упорно с каждой новой записью повторяет RecId ранее созданных в этой таблицы записей.
Не знание того, чем это может быть чревато в дальнейшем (я имею ввиду дубли и то что индекс перестанет существовать), напрягает.

Может кто-либо дать рецепт лечения?
Старый 02.03.2007, 06:26   #3  
Buba is offline
Buba
Участник
 
90 / 10 (1) +
Регистрация: 24.04.2003
Адрес: Томск
Спасибо, Сергей!

Можно вопрос, как определить есть ли в моем приложении ссылки по RecId не наследованные от RecIdRef, глобально по всему AOT?
Старый 02.03.2007, 09:51   #4  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
Цитата:
Сообщение от buba Посмотреть сообщение
Спасибо, Сергей!

Можно вопрос, как определить есть ли в моем приложении ссылки по RecId не наследованные от RecIdRef, глобально по всему AOT?
Я не знаю такого способа.
RecId - это обычное целое число.
Я не знаю, как униварсальным алгоритмом гарантировано распознать, что целое число является не числом, а RecID.
__________________
полезное на axForum, github, vk, coub.
Старый 02.03.2007, 10:11   #5  
Buba is offline
Buba
Участник
 
90 / 10 (1) +
Регистрация: 24.04.2003
Адрес: Томск
Однако засада

Спасибо.
Старый 02.03.2007, 11:00   #6  
Владимир Максимов_imported is offline
Владимир Максимов_imported
Участник
 
33 / 10 (1) +
Регистрация: 20.01.2004
Можно попробовать поискать не по реквизитам полей таблицы, а по способу их наполнения.

Если поле содержит в себе ссылку на RecId, то где-то должен быть явно прописан код такого присвоения. Нечто вроде

MyTab.MyRef = Tab.RecId
MyTab.update()

Т.е. сначала находишь все поля, которые наследованы от RecIdRef, а потом по AOT ищешь где в коде напрямую используется каждое из этих полей, а также собственно RecId.

Потом повторяешь операцию для найденных полей, поскольку возможны "ссылки на ссылку"

Разумеется, работенка "та еще". Но, по крайней мере, это нечто, что может быть хотя бы частично автоматизировано.
Старый 02.03.2007, 22:43   #7  
mazzy is offline
mazzy
Участник
Аватар для mazzy
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
29,472 / 4494 (208) ++++++++++
Регистрация: 29.11.2001
Адрес: Москва
Записей в блоге: 10
но это тоже не дает 100% гарантии.
к сожалению.
__________________
полезное на axForum, github, vk, coub.
Старый 05.03.2007, 06:51   #8  
Buba is offline
Buba
Участник
 
90 / 10 (1) +
Регистрация: 24.04.2003
Адрес: Томск
Думаю идея здравая, не смотря на то что придется глаза поломать изрядно, просматривая найденный код.
 

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 09:37.