2
Удаление связанных записией
Автор costas, 11 мая 2011 13:21
Сообщений в теме: 8
#1
Отправлено 11 Май 2011 - 13:21
Здравствуйте.
Посмотрел Вашу программу (версия 1.9.3), возник вопрос следующего характера:
В программе реализованы связи в виде подчинённых таблиц, при добавлении записей всё чудесно работает, а при удалении записи из головной таблицы, записи в подчинённых таблицах остаются.
Это так задумано разработчиками? Планируется ли в следующих релизах изменение логики работы и приведение в порядок сего дела или есть какое то решение уже сейчас?
Посмотрел Вашу программу (версия 1.9.3), возник вопрос следующего характера:
В программе реализованы связи в виде подчинённых таблиц, при добавлении записей всё чудесно работает, а при удалении записи из головной таблицы, записи в подчинённых таблицах остаются.
Это так задумано разработчиками? Планируется ли в следующих релизах изменение логики работы и приведение в порядок сего дела или есть какое то решение уже сейчас?
#2
Отправлено 11 Май 2011 - 15:31
Можно сказать что и "задумано". Во-первых, подчиненные таблицы разрабатывались изначально как невидимые из основного меню (вкладки сверху), поэтому особого резона удалять подчиненные записи в этом случае нет, они все равно пропадают из поля видимости вместе с удалением в корзину основной записи. Во-вторых, если все же подчиненная таблица видна в меню (что бывает гораздо реже), то видимо были сомнения, всегда ли следует автоматически удалять связанные записи, или бывают случаи когда этого не требуется. Если такие случаи есть, то надо вводить дополнительные настройки в подчиненную, а возможно и в другие связанные таблицы.
Опять же возникает вопрос что делать в случае когда вначале были удалены некоторые подчиненные записи, а затем основная. Если при этом удалить и все активные подчиненные записи, то при открытии основной записи в корзине, всплывут все старые подчиненные строки. Если соответственно восстановить потом основную, то все лишние подчиненные записи тоже восстановятся, что совсем ни к чему. Непонятно как отличать одни от других. Текущая схема работает существенно проще.
Опять же возникает вопрос что делать в случае когда вначале были удалены некоторые подчиненные записи, а затем основная. Если при этом удалить и все активные подчиненные записи, то при открытии основной записи в корзине, всплывут все старые подчиненные строки. Если соответственно восстановить потом основную, то все лишние подчиненные записи тоже восстановятся, что совсем ни к чему. Непонятно как отличать одни от других. Текущая схема работает существенно проще.
#3
Отправлено 11 Май 2011 - 15:38
costas (11.5.2011, 14:21) писал:
или есть какое то решение уже сейчас?
#4
Отправлено 12 Май 2011 - 05:57
Скрытые таблицы - неудалённые записи - это мусор со всеми вытекающими...
Достаточно ввести новое поле в таблицу в котором будет значение удалена запись через подчинённую таблицу или самостоятельно, а дальше простая проверка этого поля во всех подчинённых таблицах при восстановлении записи из главной таблицы, по этой же логике если запись удалена через главную таблицы то её не возможно восстановить без восстановления записи из главной, тоже самое касается и архива кстати.
По поводу Вашего решения, посмотрел шаблоны, пришёл к выводу, что можно написать "костыль", а вернее поручить это программисту, и тот напишет (не бесплатно) "костыль" реализующий каскадное удаление (мягкое, полное) и архивацию в соответствии с логикой главная-подчинённая, но тогда простите какой смысл покупать программу и платить программисту чтоб её "допиливать" - обосновать это начальству не возможно, здравый смысл победит...
Разработчик (11.5.2011, 15:31) писал:
Опять же возникает вопрос что делать в случае когда вначале были удалены некоторые подчиненные записи, а затем основная. Если при этом удалить и все активные подчиненные записи, то при открытии основной записи в корзине, всплывут все старые подчиненные строки. Если соответственно восстановить потом основную, то все лишние подчиненные записи тоже восстановятся, что совсем ни к чему. Непонятно как отличать одни от других. Текущая схема работает существенно проще.
По поводу Вашего решения, посмотрел шаблоны, пришёл к выводу, что можно написать "костыль", а вернее поручить это программисту, и тот напишет (не бесплатно) "костыль" реализующий каскадное удаление (мягкое, полное) и архивацию в соответствии с логикой главная-подчинённая, но тогда простите какой смысл покупать программу и платить программисту чтоб её "допиливать" - обосновать это начальству не возможно, здравый смысл победит...
#5
Отправлено 12 Май 2011 - 08:36
Ваше предложение логично, внесем в список доработок.
#6
Отправлено 25 Февраль 2014 - 21:16
Ищу решение, смотрю еще 3 года назад запланировали доработку. Как включить при удалении автоматическое удаление записей из связанных таблиц? Спасибо.
#7
Отправлено 26 Февраль 2014 - 10:25
Можно написать вычисление на событие удаления записи, где и прописать удаление связанных записей.
#8
Отправлено 26 Февраль 2014 - 11:03
CbCoder (26 Февраль 2014 - 10:25) писал:
Можно написать вычисление на событие удаления записи, где и прописать удаление связанных записей.
Творческая группа "ТАВР".
www.TAVR.pro Художественная ковка, металлоконструкции.
www.СтолМет.рф Складные столы, стулья и системы для их хранения
#9
Отправлено 26 Февраль 2014 - 11:14
Во-первых, там речь только про подтаблицы. Насчет ближайших планов - не помню такого, но пока этого в любом случае нет. Во-вторых, собственно по этим причинам и дано текущее решение.
Количество пользователей, читающих эту тему: 2
0 пользователей, 2 гостей, 0 анонимных