01.04.2011, 12:54 | #21 |
Участник
|
|
|
01.04.2011, 13:40 | #22 |
Участник
|
Цитата:
X++: InventSum inventSum; InventTrans inventTrans; ; ttsbegin; delete_from inventSum notexists join inventTrans where inventTrans.ItemId == inventSum.ItemId && inventTrans.inventDimId == inventSum.InventDimId; ttscommit; |
|
01.04.2011, 13:55 | #23 |
Участник
|
если хорошо подумать,
то ВНЕЗАПНО обнаружится, что InventSum зависит не только от inventTrans, но и от: = заказов на продажу = заказов на покупку = заказов на перемещение = заказов на производство = складских журналов = прогнозов = сводного планирования = проектов = CRM = ОС (как asset, так и rAsset) = и т.п. и станет понятно, что задача обнаружения неиспользованных InventSum сводится к задаче обнаружения неиспользованных inventDim |
|
01.04.2011, 14:02 | #24 |
Участник
|
|
|
|
За это сообщение автора поблагодарили: mazzy (10). |
01.04.2011, 14:07 | #25 |
Участник
|
Цитата:
Ожидается приход, Ожидается расход, Зарезервировано в ожидаемом расходе. не, я тормоз. да, из проводок. да, inventSum можно удалить, посмотрев только в InventTrans. спасибо. Последний раз редактировалось mazzy; 01.04.2011 в 14:10. Причина: я тормоз. да, из проводок. |
|
01.04.2011, 14:35 | #26 |
Участник
|
|
|
01.04.2011, 15:31 | #27 |
Участник
|
Цитата:
|
|
02.04.2011, 14:46 | #28 |
Участник
|
Цитата:
В общем, InventDimId (и связанные записи таблицы InventDim), вполне могут не присутствовать в InventSum, но иметь вполне значимые сущности. |
|
02.04.2011, 22:10 | #29 |
Участник
|
Цитата:
Сообщение от S.Kuskov
Это точно, тут совсем без вариантов. Да и развитие складских аналитик вроде как совсем в другую сторону идёт dynamicsmatters: Performance and InventDim
Тем более что в следующих версиях Аксапты в LedgerTrans хотят объединить Dimension и LedgerAccount в одно значение по аналогии с InventDimId - InventDim. |
|
02.04.2011, 22:27 | #30 |
Участник
|
Цитата:
Абсолютно никакого смысла этот признак иметь не может. Комбинация аналитик используется далеко не только в InventSum. Например, при использовании WMS можно задавать разные настройки для разных складов (да и не только для WMS, например, можно задавать разные группы инвентаризации для разных складов). В комбинациях аналитик опять же используется InventDimId. В настройках внешних кодов так же используется InventDimId
В общем, InventDimId (и связанные записи таблицы InventDim), вполне могут не присутствовать в InventSum, но иметь вполне значимые сущности. Цитата:
Да совсем не факт.
__________________
Thx, Ievgenii Korovin| Dynamics Ax SCM| Microsoft Corp| http://blogs.msdn.com/DynamicsAxSCM/ |
|
21.04.2011, 10:33 | #31 |
Участник
|
Кто-нибудь пробовал использовать класс InventUnusedDimCleanUp в четверке? Я имею ввиду экспортировать из 2009, импортировать в четверку и запустить?
Работает? Были ли замечены какие-либо подводные камни? |
|
26.04.2011, 10:56 | #32 |
Axapta Retail User
|
Цитата:
При переносе из 2009 в 4-ку в методе isCandidateInventDimIdTable() необходимо закомментировать строчку с упоминанием конфигурационного ключа SysDeletedObjects41, т.к. в 4-ке его нет, и тут же добавили строчку с InventSum для его исключения из проверки: X++: protected boolean isCandidateInventDimIdTable(SysDictTable _sysDictTable) { configurationKeyId configurationKeyId = _sysDictTable.configurationKeyId(); tableId tableId = _sysDictTable.id(); ; // The table should only be evaluated if it has not been marked for deletion, it is // not a temporary table and is not InventDim nor InventDimCleanUp if (configurationKeyId == configurationkeynum(SysDeletedObjects40) || //configurationKeyId == configurationkeynum(SysDeletedObjects41) || _sysDictTable.isTmp() == true || tableId == tablenum(InventDim) || tableId == tablenum(InventSum) || tableId == tablenum(InventDimCleanUp)) return false; else return true; } Во вложении класс InventUnusedDimCleanUp для 4-ки. |
|
|
За это сообщение автора поблагодарили: Logger (1), petr (8), Kabardian (4). |
16.12.2011, 13:56 | #33 |
Axapta Retail User
|
Возникла необходимость очистить неиспользуемые InventDim на AX3.0, поэтому по аналогии с AX2009 сделал класс InventUnusedDimCleanUp для трешки.
Может быть кому-то будет полезен. AX3.0SP3 Проект во вложении. |
|
|
За это сообщение автора поблагодарили: Zabr (1), Pustik (2), lev (5), Bega (3), JBOS (1). |
22.12.2011, 15:22 | #34 |
Участник
|
Ну, и для комплекта, код для Axapta 2.5 SP3.
Правда, просто копировать было не интересно, поэтому сделал несколько модификаций
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
|
За это сообщение автора поблагодарили: Pustik (2). |
22.12.2011, 17:24 | #35 |
Участник
|
|
|
22.12.2011, 17:31 | #36 |
Участник
|
Цитата:
X++: connection.ttsbegin(); statement.executeUpdate(sqlStr); connection.ttscommit(); Хотя, по большому счету, нарушить целостность выполнения одной единственной команды Delete - это надо постараться И еще, о какой целостности идет речь, если удаляются записи, на которые нет ссылок ни в одной другой таблице?
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
22.12.2011, 17:51 | #37 |
Участник
|
Даешь всем желающим по модифе удаления ненужных InventDim!!!!!! Ура
__________________
-Ты в гномиков веришь? -Нет. -А они в тебя верят, смотри, не подведи их. |
|
22.12.2011, 18:28 | #38 |
Модератор
|
Может кто-то поделиться статистикой - какие аналитики используются и как, количество записей в InventDim до и после, общие впечатления (по возможности - объективные) ? Просто не очень понятно, что там такого можно понавычистить и что от этого улучшится
P.S. что можно поломать, случайно вычистив не то что надо, я в общих чертах представляю
__________________
-ТСЯ или -ТЬСЯ ? |
|
22.12.2011, 19:35 | #39 |
Участник
|
Цитата:
Сообщение от Vadik
Может кто-то поделиться статистикой - какие аналитики используются и как, количество записей в InventDim до и после, общие впечатления (по возможности - объективные) ? Просто не очень понятно, что там такого можно понавычистить и что от этого улучшится
P.S. что можно поломать, случайно вычистив не то что надо, я в общих чертах представляю Ну, во-первых, я просто шутил, смайлики об этом очень открыто говорят . Если серьезно, то чистка лишних InventDim имеет имеет смысл для экономии места. В InventDim, в будущем не нужные записи появляются если : 1) В черновике (Закупка, Заказ, Журнал, Заявки на покупку и т.д.) пользователь изначально задал не правильную аналитику. А потом ответственное лицо аналитику поменяло как надо и разнесло. 2) Проводка, связанная с Производственным заказом без партии, по мере оприходования разобьется на несколько по партиям. И если заказ одноразовый, то комбинация без партии уже не нужна. 3) В Спецификациях вообще привязок к проводкам нет. Т.е. забил пользователь сначала одно, потом поменял на другое, потом на третье. А это уже 3 комбинации.(и это не только в спецификациях). Очень похоже на первый случай, но все таки там документы готовые к разноски, а это просто справочник. Я думаю случаев еще много. Пользователи, естественно не знают, про InventDim, и на комбинации аналитик им наплевать.Могут шуровать как хотят. В итоге добавят еще пару не нужных комбинаций. Статистику сказать не могу. Мы этого не делали. Но думаю, что при больших разнообразиях и вариантов комбинаций аналитик, согласно настройкам системы, лишние аналитики будут периодически появляться. почему бы их и не почистить.
__________________
-Ты в гномиков веришь? -Нет. -А они в тебя верят, смотри, не подведи их. |
|
22.12.2011, 19:38 | #40 |
Участник
|
Удалилось примерно 10% от общего количества записей. Как в InventDim, так и в InventSum. От общего объема базы данных это составило примерно 0,1% (по объему InventSum / InventDim = 3 / 1) Строго говоря, "копейки", которые вряд ли вообще заметно повлияют на что-либо. Так что, удаление скорее "для порядка", чем из практической необходимости.
Из стандартных аналитик у нас используется только Склад и ГТД. Плюс добавлены еще 2 собственные аналитики.
__________________
- Может, я как-то неправильно живу?! - Отчего же? Правильно. Только зря... |
|
Теги |
inventdim, inventsum, складская аналитика, удаление |
|
|