08.02.2012, 11:54 | #1 |
Участник
|
Объединение единиц
Добрый день!
Может кто решал практическую задачу объединения единиц(Основное\Настройки\Единицы\Единицы) с последующим удалением ненужной единицы? Старая и новая Единица используется в Номенклатурных единицах, имеются остатки. Буду признателен за любую информацию по способу объединения. |
|
08.02.2012, 12:46 | #2 |
Участник
|
По сути вам нужно везде в системе заменить использование одного кода еденицы измерения на другой. Найти все таблицы в которых есть поле "Еденица измерения" можно по расширенному типу данных.
В стандарте есть (был) недокументированный инструмент для выполнения слияния ключей. Удавление дубликатов Проблемы могут появиться если переименование кода приведёт к дублирующим записям в таблицах с уникальными индексами. |
|
08.02.2012, 13:18 | #3 |
Ищущий знания...
|
Мне кажется, по хорошему, при изменении единицы измерения лучше создать новую номенклатуру с новой единицей измерения.
Потому как, по идее. если у номенклатуры изменилась единица измерения (по каким либо причинам), то это уже другая номенклатура. Да, в начале будет немного хлопотно получать различные отчеты по номенклатуре, но когда со старой номенклатуры уйдут остатки, все встанет на свои места. З.Ы. в зависимости от правил наименования номенклатуры могут конечно возникнуть проблемы с путаницей старой номенклатуры с новой при выборе её в документах... Но эту проблему так же можно решить переименованием старой номенклатуры. + если вдруг со временем понадобится опять вернуться к старым единицам измерения, у Вас уже будет куда возвращаться. В общем, на мой взгляд, можно и без программирования обойтись
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем |
|
08.02.2012, 13:38 | #4 |
Участник
|
Как я понял у автора проблема в том что в справочнике едениц измерения присутствуют дубликаты. Ну, например, присутствует еденица измерения "Ящик_5кг" и "Коробка_5кг". Т.е. по сути это одно и тоже и все настройки у них одни и теже. Просто кто-то не глядя на то что уже есть ящики ввёл дополнительно ещё и коробки. Сейчас, когда выяснилось что это одно и тоже в системе уже используется и то и другое. Как быть? Для того чтобы отказаться от ящиков и оставить только коробки вводить новые номенклатуры не очень хочется.
|
|
08.02.2012, 13:50 | #5 |
Ищущий знания...
|
Цитата:
Сообщение от S.Kuskov
Как я понял у автора проблема в том что в справочнике едениц измерения присутствуют дубликаты. Ну, например, присутствует еденица измерения "Ящик_5кг" и "Коробка_5кг". Т.е. по сути это одно и тоже и все настройки у них одни и теже. Просто кто-то не глядя на то что уже есть ящики ввёл дополнительно ещё и коробки. Сейчас, когда выяснилось что это одно и тоже в системе уже используется и то и другое. Как быть? Для того чтобы отказаться от ящиков и оставить только коробки вводить новые номенклатуры не очень хочется.
Если программировать то, вот тут я выкладывал инструмент, с помощью которого можно найти все таблицы где используется EDT. Но там не просто поиск таблиц там ещё бонусы. Функция возвращает временную таблицу со списком таблиц. Вам останется только обновить записи в этих таблицах
__________________
"Страх перед возможностью ошибки не должен отвращать нас от поисков истины." (с) С Уважением, Елизаров Артем |
|
08.02.2012, 23:02 | #6 |
Member
|
Если бы передо мной на реальном внедрении с реальными данными встала такая проблема, то я бы предпочел объединить единицы измерения, нежели заводить новую номенклатуру и переписывать остатки .
К программированию обновления данных я бы постарался не прибегать. Вместо этого организовал бы удаление в справочнике единиц измерения одной из ненужных единиц измерения и переименование оставшейся в удаленную через паспорт записи. При этом нужно обеспечить чтобы не сработало каскадное удаление. На время выполнения хирургической операции нужно обеспечить чтобы пользователи не вводили связанные с единицами измерения данные. Переименовывал бы ту единицу, которая в системе используется в меньшем количестве транзакций. Оценивал бы на глаз. Прежде чам переименовывать проверил бы не приведет ли слияние к нарушению целостности данных. Тут общих подходов нет вообще. Для единиц измерения это может быть следующее. 1. В настройках пересчета единиц могут появиться дубликаты. Предварительно удалить для одной из единиц. 2. Если для единиц настроены внешние коды или тексты, то тоже проверил бы могут ли возникнуть дубликаты. Поискал бы еще справочники или прочие таблицы, где могут возникнуть дубликаты, нарушающие уникальность. Вообще как авриант проверки возможности возникновения дубликатов можно попробовать организовать слияние на тестовой базе. 3. Проверил бы нет ли настроек пересчета этих двух единиц измерения в какую-нибудь третью, причем какие-то из параметров пересчета отличаются. Такая проблема решается только творчески. Разумеется, если есть кастомизации, то проверил бы их тоже. Как-то так. Подготовку данных перед слиянием делал бы руками или джобами.
__________________
С уважением, glibs® |
|