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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 02.03.2006, 07:25   #1  
Sequel is offline
Sequel
Участник
 
53 / 13 (1) ++
Регистрация: 17.06.2005
Адрес: Новокузнецк
Ошибка при создании проводок
Всем привет!
Работаем с виртуальными компаниями. Все таблицы модуля Invent входят в табличную коллекцию, относящуюся к виртуальной компании VIR.
Когда я работаю в одной из компаний, входящих в виртуальную компанию Vir, возникает такая ошибка: открываю один из документов, содержащих складские проводки (например заказ, или журнал проводок, или журнал переноса), начинаю добавлять строки, при этом периодически выскакивает сообщение "Невозможно добавить запись в таблицу Складские проводки (InventTrans). Запись уже существует".
Такую ошибку аксапта выдает, когда нарушается уникальность индекса. Но в таблице InventTrans уникальный индекс построен по трем полям: InventTransId, InventDimId, RecId. Плюс еще Аксапта автоматически добавляет поле Dataareaid. Теоретически уникальность по комбинации из этих четырех полей не может быть нарушена никак: RecId генерируется новый и уникальный в пределах компании. Выходит эта ошибка глюк Аксапты? Кто нибудь с такой уже сталкивался? Про виртуальные компании в начале сообщения я упомянул потому что без виртуальных компаний все работает без ошибок
Старый 02.03.2006, 09:06   #2  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Наверно дела в названии компании, Vir - система думает вирус.

На самом деле, проверьте номерные серии, во всех команиях они должны отличаться, скорее всего где то идет пересечение.
Старый 02.03.2006, 09:24   #3  
klo is offline
klo
Участник
 
76 / 14 (1) ++
Регистрация: 23.10.2003
Да, проверьте номерные серии inventdim (у нас из-за этого была такая же ошибка), ну, может, еще номера лотов.
Старый 02.03.2006, 09:27   #4  
Натка is offline
Натка
Участник
Аватар для Натка
 
30 / 10 (1) +
Регистрация: 22.07.2004
Адрес: Москва
Проводки используют следующие номерные серии:
- Номер лота
- Инвент дим
- Номер складских журналов
- номер заказа
- номер закупки
все эти номерные серии абсолютно разные в компаниях, входящих в виртуальную
Старый 02.03.2006, 09:47   #5  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Цитата:
Сообщение от Натка
Проводки используют следующие номерные серии:
- Номер лота
- Инвент дим
- Номер складских журналов
- номер заказа
- номер закупки
все эти номерные серии абсолютно разные в компаниях, входящих в виртуальную
На одном из проектов мы использовали похожую схему и проблем не было.
1. Проверьте свои кастомизации.
2. Вы не "химичили" с таблицей SystemSequences?
3. Если используете АОС, то перезапусите его.
Старый 02.03.2006, 10:12   #6  
Sequel is offline
Sequel
Участник
 
53 / 13 (1) ++
Регистрация: 17.06.2005
Адрес: Новокузнецк
Дело в том что мы трассировкой выяснили ошибка эта возникает в методе Insert таблицы InventTrans причем при вызове Super() в этом методе, т.е. непосредственно при вызове sql-ного метода Insert в таблицу InventTrans. Триггеров у таблицы InventTrans в базе данных нет, т.е. все остальные таблицы исключаются из рассмотрения. Для таблицы InventTrans я даже отключал индекс, по которому идет проверка на уникальность - ошибка возникает все равно. Я в полном замешательстве
Старый 02.03.2006, 10:36   #7  
raz is offline
raz
NavAx
Аватар для raz
NavAx Club
Лучший по профессии 2014
Лучший по профессии 2009
 
1,494 / 1065 (38) ++++++++
Регистрация: 22.07.2003
Адрес: МО
Цитата:
Сообщение от Sequel
Дело в том что мы трассировкой выяснили ошибка эта возникает в методе Insert таблицы InventTrans причем при вызове Super() в этом методе, т.е. непосредственно при вызове sql-ного метода Insert в таблицу InventTrans. Триггеров у таблицы InventTrans в базе данных нет, т.е. все остальные таблицы исключаются из рассмотрения. Для таблицы InventTrans я даже отключал индекс, по которому идет проверка на уникальность - ошибка возникает все равно. Я в полном замешательстве
Еще раз сгенерируйте ошибку и запишите все значения ключевых полей. А потом проверте наличие похожей записи в таблице. Проверку делайте напрямую в SQL.

ЗЫ. В InventTrans есть еще уникальный индекс по RecId, возможно в ней остались записи, внесенные до попещения таблицы в виртульную компанию, у которых совпадает RecId.

Последний раз редактировалось raz; 02.03.2006 в 10:57.
Старый 02.03.2006, 11:50   #8  
Sequel is offline
Sequel
Участник
 
53 / 13 (1) ++
Регистрация: 17.06.2005
Адрес: Новокузнецк
2 raz
Спасибо, действительно такой индекс есть. Ошибка оказалась в том что когда мы стали работать с виртуальной компанией мы еще и переколбасили все строки в таблицах модуля Invent - проставили у них в поле dataareaid виртуальную компанию. В результате - как только начали работать в виртуальной компании, нумерация стала снова с нуля, а записи с RecId выше чем 0 остались из предыдущей компании
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Ошибка при создании журнала ega DAX: Администрирование 8 14.04.2008 09:06
Ошибка при создании кредит-ноты longson DAX: Функционал 1 02.03.2008 01:49
Ошибка при создании табеля. Spider DAX: Функционал 4 20.09.2006 17:38
Error "Непоправимая ошибка" при создании заказа/закупки Zabr DAX: Администрирование 11 11.03.2004 12:50
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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