Корзина для удаленных записей
Корзина для удаленных записей
Думаю не нужно объяснять для чего. Мало ли кто и что из нерадивых сотрудников случайно (или специально) удалит. Хотелось бы иметь возможность восстановления записи. И да, бэкапы делаю ежедневно )
- support
- Техническая поддержка
- Сообщения: 7661
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Корзина для удаленных записей
Из за того что нету функционала "Корзина" нету и многострочного удаления:)
Когда то будет, в планах уже давно весит.
Когда то будет, в планах уже давно весит.
- nikorn
- Сообщения: 252
- Зарегистрирован: 02 апр 2016, 22:26
- Имя: Корняков Никита
- Откуда: РФ, Ярославль
- Организация: Тяжмаштрейд
- Контактная информация:
Re: Корзина для удаленных записей
Вставлю свое лыко в строку. Хорошая система удаления записей реализована в 1С. Там понятия удаления нет, а есть понятие "пометить на удаление". При этом физически запись не удаляется, а просто в поле "Удаленная" записывается true. При этом запись автоматически отфильтровывается во всех запросах.
Чтобы физически удалить помеченные на удаление записи, у администратора системы есть обработка, которая проверяет базу данных на связность и удаляет записи, помеченные на удаление. Но эта операция довольно рискованная, поэтому выполняется редко и только при крайней нужде.
Я у себя во всех системах (в том числе, в Руководителе) реализую подобный подход. В каждой таблице есть логическое поле "Архив". Если запись не нужна, то просто отправляю ее в архив. По умолчанию установлены фильтры "Архив != true". При случае всегда можно посмотреть, что было сброшено в архив и вернуть обратно.
Чтобы физически удалить помеченные на удаление записи, у администратора системы есть обработка, которая проверяет базу данных на связность и удаляет записи, помеченные на удаление. Но эта операция довольно рискованная, поэтому выполняется редко и только при крайней нужде.
Я у себя во всех системах (в том числе, в Руководителе) реализую подобный подход. В каждой таблице есть логическое поле "Архив". Если запись не нужна, то просто отправляю ее в архив. По умолчанию установлены фильтры "Архив != true". При случае всегда можно посмотреть, что было сброшено в архив и вернуть обратно.
-
$Expert
- Спонсор

- Сообщения: 371
- Зарегистрирован: 06 фев 2017, 23:32
- Имя: Сергей
- Откуда: Планета Земля
Re: Корзина для удаленных записей
+ плюсую к пометке на удаление по аналогии с 1С. Сейчас реализовал у себя такой функционал в виде статуса у записи - "Пометить на удаление". Но при большой структуре добавлять и настраивать данное поле в каждой сущности трудо и времязатратно, поэтому было бы удобно иметь подобную функцию по умолчанию к создаваемым записям. И в правилах доступа правило - Помечать на удаление.
Re: Корзина для удаленных записей
+1 за корзину (правда чтоб можно было ее и отключить,если не надо)
Re: Корзина для удаленных записей
За.
как-то обсуждали этот вопрос viewtopic.php?f=3&t=1760&p=10433&hilit= ... %B2#p10433
как-то обсуждали этот вопрос viewtopic.php?f=3&t=1760&p=10433&hilit= ... %B2#p10433
-
Raffaello
- Сообщения: 4
- Зарегистрирован: 22 апр 2021, 09:26
- Имя: Рафаэль
- Откуда: РФ, Тольятти
- Организация: ООО ЛАЙФМЕДИКАЛ
Re: Корзина для удаленных записей
Да, корзина удаленных записей очень нужна!
- support
- Техническая поддержка
- Сообщения: 7661
- Зарегистрирован: 19 окт 2014, 18:22
- Имя: Харчишин Сергей
- Откуда: Крым, Евпатория
Re: Корзина для удаленных записей
Принял решение не делать корзину. Изначально я ее не сделал, сейчас все переделывать очень проблематично.
Выйти из положения можно с помощью видимости записей https://docs.rukovoditel.net.ru/index.php?p=82
Запрещаете пользователям удалять записи. Добавляете какой-то флаг, например "Архив" и пусках пользователи помещают записи в архив. С помощью правил видимости скрываете архивные записи для всех.
Выйти из положения можно с помощью видимости записей https://docs.rukovoditel.net.ru/index.php?p=82
Запрещаете пользователям удалять записи. Добавляете какой-то флаг, например "Архив" и пусках пользователи помещают записи в архив. С помощью правил видимости скрываете архивные записи для всех.
- Fait
- Инвестор

- Сообщения: 1196
- Зарегистрирован: 19 ноя 2020, 17:46
- Имя: Максим Балакшеев
- Откуда: Россия, Златоуст
- Организация: ИП Балакшеев Максим Георгиевич
- Контактная информация:
Re: Корзина для удаленных записей
Я у себя тоже делал пометки на удаление.support писал(а): 24 ноя 2021, 07:11 Принял решение не делать корзину. Изначально я ее не сделал, сейчас все переделывать очень проблематично.
Выйти из положения можно с помощью видимости записей https://docs.rukovoditel.net.ru/index.php?p=82
Запрещаете пользователям удалять записи. Добавляете какой-то флаг, например "Архив" и пусках пользователи помещают записи в архив. С помощью правил видимости скрываете архивные записи для всех.
У меня есть флаг, фильтры по нему и 2 кнопки автоматизации.
Создавать это для каждой сущности реально долго. Очень долго.
Я вижу решение проблемы такое:
1) Сделать кнопку "В архив" рядом с кнопками Удалить, Изменить, Просмотр.
2) В настройках доступа сделать пункты "Архивировать", "Архивировать выбранные" "Восстанавливать" и "Восстанавливать выбранные" в том меню, где указывается, что пользователь может делать с записями (Обновить, Удалить выбранные и т.д.)
3) В базу данных во все таблицы app_entity_..... добавить поля "archieved" с численным типом (проще указать 1 или 0, чем true или false, но не в этом суть сейчас) и "date_archieved" с типом Дата и время
При создании сущности создавать автоматически это поле так же, как date_added, created_by, и т.д.
4) Тип поля сделать отдельный, например "fieldtype_archieved" для прописывания в типах полей в БД. Потом настраивать отображение и фильтрацию записей по этому признаку.
5) При редактировании или добавлении записи это поле не показывать никому, даже администратору. Но при этом его должно быть видно в фильтрах.
6) В настройках сущности сделать флаг "Разрешить архивацию", по умолчанию false.
При установке в true возможность архивации появится. (Примерно так, как это сделано сейчас в 3.0 с добавлением в избранное)
Будет очень удобно, это факт.
Что скажете? Насколько возможно всё это сделать?
Re: Корзина для удаленных записей
Да все возможно) главное желание и время)
но описано как то сложновато - можно сделать намного проще!
плюс не описан алгоритм работы с корзиной!
но описано как то сложновато - можно сделать намного проще!
плюс не описан алгоритм работы с корзиной!