26.04.2002, 14:32 | #1 |
Продавец игрушек
|
Переименование номенклатуры
По материалам:
http://www.axforum.info/forums/showt...=&threadid=683 Ошибка при переименование номенклатуры и не только Есть в Аксапте такая возможность: переименование ключевых полей. При этом возникает обновление всех ссылок. Например, при переименовании номенклатуры вызывается метод InventTable::renamePrimaryKey, который по умолчанию обновляет все связанные ссылки и может сделать что-то ещё (у нас он обновляет связи в классификаторе). Проблема и ошибка (как мне кажется) Аксапты в том, что: Обновление ссылок происходит в пределах одной компании. Т.е., если у нас есть две компании с общей номенклатурой (InventTable), но разными проводками по номенклатуре (InventTrans), то, переименовывая номенклату, находясь в одной компании, мы получаем оборванные ссылки Номенклатура-Проводки в другой компании, поскольку там проводки не обновились. <hr> Данный проект содержит пример обхода этой ошибки. У нас есть две компании, мы переименовываем номенклатуру, убирая из неё всё, что находится до символа "минус": "abc-123" - "123" Метод исправления ошибки: 1. Переименовываем номенклатуру, находясь в одной компании. При этом теряются связи в другой компании. 2. Переходим в эту несчастную компанию, переименовываем номенклатуру в старое значение (при этом подцепляются связи в новой и отцепляются в старой компаниях). 3. Завершающим шагом в третий раз переименовываем (в новое название). Все связи во всех коомпаниях сохранены. Очевидно, что этот метод подходит и для N>2 компаний. Аккуратнее используйте этот пример. Для корректной работы потребуется проект "Работа с длительными операциями": http://www.axforum.info/forums/showt...=&threadid=182
__________________
С уважением, Роман Кошелев. |
|
|
|