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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 17.09.2014, 07:28   #1  
Vasiliusis is offline
Vasiliusis
Участник
 
225 / 13 (1) ++
Регистрация: 30.01.2013
Баг или фича? Проблема с InventDimId
Добрый день!

Встретилась забавная особенность:
Есть номенклатуры: "Уборка салона", "Снятие кресел", "Мытье стекол".

У каждой номенклатуры есть, к примеру, конфигурации: "Ваз2110", "Газ66", "ЭлектровозВЛ85". Т.е. Уборка салона для Ваз2110, Уборка салона для Газ66 и т.д.

При создании конфигураций, для каждой создается строка в inventDim, в нашем случае, создастся 9 inventDim...

Допустим, в inventDim создалось 9 записей, у каждой из которых такие inventDimId:
Уборка салона для Ваз2110 - 00111_031
Уборка салона для Газ66 - 00112_031
Уборка салона для ЭлектровозВЛ85 - 00113_031
Снятие кресел для Ваз2110 - 00114_031
Снятие кресел для Газ66 - 00115_031
Снятие кресел для ЭлектровозВЛ85 - 00116_031
Мытье стекол для Ваз2110 - 00117_031
Мытье стекол для Газ66 - 00118_031
Мытье стекол для ЭлектровозВЛ85 - 00119_031

Все inventDimId - разные!

А вот теперь самое интересное:
при назначении цен продажи для "Уборка салона для Ваз2110", "Снятие кресел для Ваз2110", "Мытье стекол для Ваз2110"
в priceDiscTable ставится ДЛЯ ВСЕХ СЛУЧАЕВ 00111_031, а не 00111_031, 00114_031, 00117_031 соотвественно.....

Как такое может быть?))

Последний раз редактировалось Vasiliusis; 17.09.2014 в 07:39.
Старый 17.09.2014, 07:59   #2  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,437 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от Vasiliusis Посмотреть сообщение
У каждой номенклатуры есть, к примеру, конфигурации: "Ваз2110", "Газ66", "ЭлектровозВЛ85". Т.е. Уборка салона для Ваз2110, Уборка салона для Газ66 и т.д.

При создании конфигураций, для каждой создается строка в inventDim, в нашем случае, создастся 9 inventDim...
Так все-таки сколько конфигураций вы создали три (одинаковые для всех номенклатур) или девять (по три для каждой номенклатуры)? Чем отличаются эти 9 записей в inventDim кроме как полем InventDimId? Поле СonfigId у них у всех разное?
Старый 17.09.2014, 10:38   #3  
Ivanhoe is offline
Ivanhoe
Участник
Аватар для Ivanhoe
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
 
4,143 / 2156 (80) +++++++++
Регистрация: 29.09.2005
Адрес: Санкт-Петербург
Аналитики включены для учета в ценах?
__________________
Ivanhoe as is..
Старый 17.09.2014, 10:46   #4  
Vasiliusis is offline
Vasiliusis
Участник
 
225 / 13 (1) ++
Регистрация: 30.01.2013
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Так все-таки сколько конфигураций вы создали три (одинаковые для всех номенклатур) или девять (по три для каждой номенклатуры)? Чем отличаются эти 9 записей в inventDim кроме как полем InventDimId? Поле СonfigId у них у всех разное?
по три для каждой номенклатуры. Набор конфигураций идентичен
Старый 17.09.2014, 10:50   #5  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,437 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от Vasiliusis Посмотреть сообщение
по три для каждой номенклатуры. Набор конфигураций идентичен
Не понимаю тогда откуда в InventDimId девять строк? Там же не может быть строк с абсолютно одинаковыми комбинациями значений (уникальный индекс DimIdx не позволит)? А по вашим словам получается что там по три одинаковые строки создалось. Или они все-таки чем-то различаются?
Старый 17.09.2014, 11:35   #6  
Vasiliusis is offline
Vasiliusis
Участник
 
225 / 13 (1) ++
Регистрация: 30.01.2013
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Не понимаю тогда откуда в InventDimId девять строк? Там же не может быть строк с абсолютно одинаковыми комбинациями значений (уникальный индекс DimIdx не позволит)? А по вашим словам получается что там по три одинаковые строки создалось. Или они все-таки чем-то различаются?
Нет, вы не поняли... InventDimId - разные, конфигураций 9, строк в InventDim тоже 9, по одной на каждую конфигурацию..

Вопрос в том: почему при назначении цен продажи для "Уборка салона для Ваз2110", "Снятие кресел для Ваз2110", "Мытье стекол для Ваз2110"
в priceDiscTable в поле priceDiscTable.InventDimId ставится ДЛЯ ВСЕХ СЛУЧАЕВ 00111_031, а не 00111_031, 00114_031, 00117_031 соотвественно.....? Номенклатуры разные, ведь...

Последний раз редактировалось Vasiliusis; 17.09.2014 в 11:38.
Старый 17.09.2014, 12:05   #7  
lvan is offline
lvan
Участник
Аватар для lvan
Лучший по профессии 2014
 
858 / 82 (4) ++++
Регистрация: 15.04.2011
Записей в блоге: 1
Потому что inventDimId не зависит от номенклатуры
Это набор аналитик, и ничего больше. Одинаковый набор - одинаковый inventDimId

Последний раз редактировалось lvan; 17.09.2014 в 12:25.
Старый 17.09.2014, 12:08   #8  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,437 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от Vasiliusis Посмотреть сообщение
Нет, вы не поняли... InventDimId - разные
Я немного не об этом спрашивал. У таблицы InventDim два уникальных индекса: DimIdIdx и DimIdx. Второй как раз обеспечивает уникальность комбинации значений. Вот этот момент мне и интересен. Обеспечивается ли у вас в этих 9 записях такая уникальность? Или у вас разные InventDimId могут ссылаются на одинаковый набор значений?
Старый 17.09.2014, 12:19   #9  
Perc is offline
Perc
Участник
 
194 / 57 (2) ++++
Регистрация: 05.03.2005
Цитата:
Сообщение от Vasiliusis Посмотреть сообщение
Нет, вы не поняли... InventDimId - разные, конфигураций 9, строк в InventDim тоже 9, по одной на каждую конфигурацию..

Вопрос в том: почему при назначении цен продажи для "Уборка салона для Ваз2110", "Снятие кресел для Ваз2110", "Мытье стекол для Ваз2110"
в priceDiscTable в поле priceDiscTable.InventDimId ставится ДЛЯ ВСЕХ СЛУЧАЕВ 00111_031, а не 00111_031, 00114_031, 00117_031 соотвественно.....? Номенклатуры разные, ведь...
Поразбирайтесь еще в таблицах. Все у вас в мыслях спуталось. В InventDim ссылки на номенклатуру нет. В ConfigTable да, 9 записей, в InventDim должно быть 3 (ну это если не вмешивать другие разрезы. Вы в InventDim чего то джобом нагенерили загрузили?
Старый 17.09.2014, 12:36   #10  
Vasiliusis is offline
Vasiliusis
Участник
 
225 / 13 (1) ++
Регистрация: 30.01.2013
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Я немного не об этом спрашивал. У таблицы InventDim два уникальных индекса: DimIdIdx и DimIdx. Второй как раз обеспечивает уникальность комбинации значений. Вот этот момент мне и интересен. Обеспечивается ли у вас в этих 9 записях такая уникальность? Или у вас разные InventDimId могут ссылаются на одинаковый набор значений?
уникальности нет. записи один к одному, за исключением разных inventDimId. Разные inventDimId могут быть ключами к одинаковым наборам (используется в основном только configId)

Последний раз редактировалось Vasiliusis; 17.09.2014 в 12:43.
Старый 17.09.2014, 12:41   #11  
lvan is offline
lvan
Участник
Аватар для lvan
Лучший по профессии 2014
 
858 / 82 (4) ++++
Регистрация: 15.04.2011
Записей в блоге: 1
Цитата:
Сообщение от Vasiliusis Посмотреть сообщение
на все вопросы ответ "да".
пили вчера?
Старый 17.09.2014, 12:44   #12  
Vasiliusis is offline
Vasiliusis
Участник
 
225 / 13 (1) ++
Регистрация: 30.01.2013
Цитата:
Сообщение от lvan Посмотреть сообщение
пили вчера?
нет. не внимательно прочитал
Старый 17.09.2014, 13:04   #13  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,437 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга
Цитата:
Сообщение от Vasiliusis Посмотреть сообщение
Разные inventDimId могут быть ключами к одинаковым наборам
Такого не должно быть. У вас модифицирована таблица InventDim? Там отключена проверка уникальности на соответствующем индексе (DimIdx)?
Старый 17.09.2014, 13:20   #14  
Vasiliusis is offline
Vasiliusis
Участник
 
225 / 13 (1) ++
Регистрация: 30.01.2013
Цитата:
Сообщение от S.Kuskov Посмотреть сообщение
Такого не должно быть. У вас модифицирована таблица InventDim? Там отключена проверка уникальности на соответствующем индексе (DimIdx)?
Нет, ничего не модифицировано, ничего не отключено. НО, если попытаться сделать записи одинаковыми (нарушить индекс DimIdx) - он не ругается, но и не записывает в базу... чудеса
Старый 17.09.2014, 13:50   #15  
S.Kuskov is offline
S.Kuskov
Участник
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
3,437 / 1775 (66) ++++++++
Регистрация: 28.04.2007
Адрес: Калуга

Попробуйте синхронизировать таблицу.
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
AX 2012 Пересчет единиц измерения - баг или фича? Kabardian DAX: Функционал 3 25.02.2014 11:00
Добавление полей в существующую таблицу - баг или фича ? kair84 DAX: Программирование 8 12.10.2012 12:15
Баг или фича в правах доступа raz DAX: Администрирование 6 17.03.2009 10:51
Edit-метод и Relation - баг или фича ? TasmanianDevil DAX: Программирование 9 20.11.2008 10:16
FormListItem.stateChecked() - баг или фича ? Андре DAX: Программирование 5 20.02.2003 14:25

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

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

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