12.01.2006, 17:56 | #1 |
program-ёр
|
Изменение кода склада
Изменили код склада.
Через паспорт записи переименование прошло нормально. Однако, в таблице InventDim у нескольких записей в поле InventLocationId остался старый код и его изменить вручную не удается. То есть, изменяю на новый, а при следующем открытии таблицы в этих строках стоит старый код. Что делать?
__________________
Становись лучше |
|
12.01.2006, 18:08 | #2 |
NavAx
|
см. метод update на таблице
__________________
Isn't it nice when things just work? |
|
12.01.2006, 18:27 | #3 |
program-ёр
|
void update(boolean doUpdate = false)
{ if (doUpdate) super(); } Что не так?
__________________
Становись лучше |
|
12.01.2006, 18:32 | #4 |
Участник
|
Уберите на время условие, если правите в browse.
Если в коде, тогда inventDim.update(true) |
|
13.01.2006, 09:10 | #5 |
program-ёр
|
Правлю в browse.
Если оставляю только super(), то выдает ошибку: Невозможно отредактировать запись в 'Складская аналитика' ('InventDim'). Запись уже существует. Убираю все - редактируется нормально, но потом снова все по-старому
__________________
Становись лучше |
|
13.01.2006, 12:18 | #6 |
Участник
|
Цитата:
Сообщение от kvg6
у нескольких записей
Цитата:
Сообщение от kvg6
выдает ошибку: Невозможно отредактировать запись в 'Складская аналитика' ('InventDim'). Запись уже существует.
Ошибка связана с уникальностью индекса DimIdx (комбинация складских аналитик). |
|
13.01.2006, 12:30 | #7 |
NavAx
|
Цитата:
Сообщение от kvg6
Правлю в browse.
Если оставляю только super(), то выдает ошибку: Невозможно отредактировать запись в 'Складская аналитика' ('InventDim'). Запись уже существует. Убираю все - редактируется нормально, но потом снова все по-старому
__________________
Isn't it nice when things just work? |
|
13.01.2006, 12:55 | #8 |
Moderator
|
Мне кажется править существующие записи в InventDim нельзя. Исключая ситуации удаления записей которые не используются.
Для изменения аналитик есть стандартный подход (реализован во многих формах, на память не помню). Если менять программно, то методом PHP код:
|
|
13.01.2006, 12:57 | #9 |
program-ёр
|
Цитата:
Сообщение от macklakov
Похоже Вы не все нам рассказали. Не должно было при поростом переименовании возникнуть дублирующих записей в InventDim.
Напомню: 1. Переименование прошло неудачно только для нескольких (около 30) строк InventDim. В остальных - все нормально. 2. Ошибку выдает только если убрать из update() и условие и сам super(). Последний, думаю, правильнее оставить, тогда все как раньше: у этих записей перевыбираю новый склад в поле InventLocationId , выхожу, снова открываю InventDim и вижу старый код склада.
__________________
Становись лучше |
|
13.01.2006, 13:04 | #10 |
Участник
|
Цитата:
Сообщение от kvg6
Дублей действительно нет, но строка не редактируется.
|
|
13.01.2006, 13:15 | #11 |
program-ёр
|
Цитата:
Сообщение от KMV
Дубль как раз получиться, если запись будет успешно отредактирована.
Тогда бы были дубли с одинаковым значением поля InventDimId для всех строк, где переименование прошло успешно
__________________
Становись лучше |
|
13.01.2006, 13:49 | #12 |
Участник
|
Дубль не по InventDimId, а по комбинации складских аналитик, см. DimIdx.
Т.е. при изменении InventLocationId, нарушается целостность БД не по полю InventDimId, а по комбинации складских аналитик. Думаю Вам можно попытаться просто удалить эти записи. И если система позволит Вам это сделать, то все в порядке, если нет, то соглашусь с Цитата:
Сообщение от macklakov
Похоже Вы не все нам рассказали. Не должно было при поростом переименовании возникнуть дублирующих записей в InventDim.
|
|
13.01.2006, 14:40 | #13 |
program-ёр
|
Цитата:
Сообщение от KMV
Дубль не по InventDimId, а по комбинации складских аналитик, см. DimIdx.
Думаю Вам можно попытаться просто удалить эти записи. И если система позволит Вам это сделать, то все в порядке, если нет, то соглашусь с |
|
13.01.2006, 14:47 | #14 |
Участник
|
Если позволяет, значит, на InventTrans и InventSum точно ни как не повлияет.
Цитата:
Сообщение от kvg6
Удалить позволяет, но при следующем открытии строки появляются вновь
if(doDelete) PHP код:
|
|
|
За это сообщение автора поблагодарили: kvg6 (1). |
13.01.2006, 14:56 | #15 |
program-ёр
|
Цитата:
Сообщение от KMV
Та же песня что и с update(). В методе delete() временно закомментируйте
|
|
|
Похожие темы | ||||
Тема | Ответов | |||
Denis Fedotenko: Себестоимость и закрытие склада | 44 | |||
Изменение кода в таблицах | 5 | |||
Закрыть изменение кода? | 11 | |||
проблема с настройкой штрихового кода | 4 | |||
Бизнес-процессы склада в Аксапта | 6 |
Опции темы | Поиск в этой теме |
Опции просмотра | |
|