Проверка перед удалением.
-
- Сообщения: 349
- Зарегистрирован: 01 мар 2019, 08:57
- Имя: Эльдар Имамвердиев
- Откуда: Россия, Санкт-Петербург
Проверка перед удалением.
Добрый день, подскажите пожалуйста как можно реализовать данный функционал? Допустим есть записи, чтобы при нажатии на кнопку удалить или из "с выбранными" проводилась проверка по одному из полей записи и потом проводилось удаление в противном случае оставить не удалить.
Для чего нужно: есть сущность номенклатура, эти записи могут быть использованы в разных сущностях (продажи, приходы, возвраты и т.д.) и когда удаляешь запись тут, заходишь в приходы и видишь безымянную запись. Стандартными средствами почему то не получилось забыл почему (правила доступа хотят выпадающий список отдельный, который так же в свою очередь надо настроить на нужный статус. автостатус работает на странице записи после редактирования кажется)
В любом случае думаю можно как то проще решить данную проблему. Допустим есть поле кол-во записей в подсущности. если оно равно нулю - то можно удалить. нет если там есть запись запретить удаление или же пропустить
Для чего нужно: есть сущность номенклатура, эти записи могут быть использованы в разных сущностях (продажи, приходы, возвраты и т.д.) и когда удаляешь запись тут, заходишь в приходы и видишь безымянную запись. Стандартными средствами почему то не получилось забыл почему (правила доступа хотят выпадающий список отдельный, который так же в свою очередь надо настроить на нужный статус. автостатус работает на странице записи после редактирования кажется)
В любом случае думаю можно как то проще решить данную проблему. Допустим есть поле кол-во записей в подсущности. если оно равно нулю - то можно удалить. нет если там есть запись запретить удаление или же пропустить
-
- Сообщения: 2430
- Зарегистрирован: 14 окт 2020, 09:13
- Имя: Ruslan
- Откуда: Moscow
- Контактная информация:
Re: Проверка перед удалением.
Использовать автоматизацию - там есть выполнить процесс перед удалением.
-
- Сообщения: 349
- Зарегистрирован: 01 мар 2019, 08:57
- Имя: Эльдар Имамвердиев
- Откуда: Россия, Санкт-Петербург
-
- Сообщения: 349
- Зарегистрирован: 01 мар 2019, 08:57
- Имя: Эльдар Имамвердиев
- Откуда: Россия, Санкт-Петербург
Re: Проверка перед удалением.
хах! нашел решение самое простое:imamverdiyeveldar писал(а): ↑21 фев 2024, 11:20не подскажите код? как запретить удаление если поле А > 0 например
1)запретить всем удалять запись
2)создать процесс удаления записи, выполнить php код:
$tovar = [id];
db_query("delete from app_entity_37 where id={$tovar}");
3)повесить фильтр на эту автоматизацию
и все.
Re: Проверка перед удалением.
Удалять напрямую из базы - так себе варик.
Используйте класс:
В Вашем случае выглядит так:
Используйте класс:
Код: Выделить всё
items::delete($entities_id, $items_id);
Код: Выделить всё
$tovar = [id];
items::delete(37, $tovar);
-
- Сообщения: 349
- Зарегистрирован: 01 мар 2019, 08:57
- Имя: Эльдар Имамвердиев
- Откуда: Россия, Санкт-Петербург
Re: Проверка перед удалением.
Подскажите пожалуйста в чем разница?tehnos писал(а): ↑22 фев 2024, 07:56 Удалять напрямую из базы - так себе варик.
Используйте класс:В Вашем случае выглядит так:Код: Выделить всё
items::delete($entities_id, $items_id);
Код: Выделить всё
$tovar = [id]; items::delete(37, $tovar);
Re: Проверка перед удалением.
Если удалять напрямую из БД - система не знает, что Вы что-то удаляете и не запустит соответствующие автоматизации и процессы (если они конечно есть).
Например, не отправит уведомления или не изменит автостатус или ещё что Вы там навесите на удаление записей.
Например, не отправит уведомления или не изменит автостатус или ещё что Вы там навесите на удаление записей.
-
- Сообщения: 2430
- Зарегистрирован: 14 окт 2020, 09:13
- Имя: Ruslan
- Откуда: Moscow
- Контактная информация:
Re: Проверка перед удалением.
в данном случаи у вас как минимум из доп таблицы значения спиков - не будут удалены данные.
воспользуйтесь советом выше использовать готовые команды.
Касательно общего способа, минус вашего варианта(отключить удаление вообще) в том, что это спецкнопка, а стандартные кнопки удаления отключены!
воспользуйтесь советом выше использовать готовые команды.
Касательно общего способа, минус вашего варианта(отключить удаление вообще) в том, что это спецкнопка, а стандартные кнопки удаления отключены!
-
- Сообщения: 349
- Зарегистрирован: 01 мар 2019, 08:57
- Имя: Эльдар Имамвердиев
- Откуда: Россия, Санкт-Петербург
Re: Проверка перед удалением.
Большое спасибо за информацию!!!