Сообщество
FAQ
Логин
Пароль
Войти при помощи
Кстати, вы можете
Общение / Приложение для ОС Windows / Как быстро удалить все записи другого пользователя

Как быстро удалить все записи другого пользователя

Владимир
15 мая 2015 17:01
Здравствуйте!

Есть второй пользователь (в статусе отключен)
Суммы его записей в отчетах стали мне мешать, например в разделе "расходы по месяцам" отражаются суммы всех пользователей.

Пока мне известен только один способ: создать отчет расходов/доходов по пользователю и удалять руками каждую запись из отчета.

Есть ли способ корректно и быстро удалить все расходы / доходы /перемещения/обмены другого пользователя.
Да, потом желательно удалить еще и его категории расходов/доходов

спасибо!
Владимир
15 мая 2015 17:09
Да, кстати,
После отключения второго пользователя, его записи под его -же учеткой перестали быть видны, то есть, у него вообще теперь нет ни одной записи.
Есть ли способ сделать экспорт всех данных второго пользователя из под моей учетки, чтобы импортировать их в учетку второго пользователя, которая стала "пустой"?
Admin
15 мая 2015 19:04
Здравствуйте.
Если их удалить, то разъедутся все остатки, для того они (записи) и оставляются.
Как вариант вы можете сделать экспорт данных в CSV файл для резервной копии, который открыть в текстовом редакторе, вручную пройтись по строкам с id другого пользователя и удалить их. После чего загрузить заново этот файл.

Категории расходов/доходов не подразделяются по пользователям. Они общие на всю семью.

Второму пользователю копируются все операции, ничего пустого быть не должно. Но если речь про приложение для Windows (на форум которого вы пишете), то ему нужно приложение переустановить снуля. Уточните подробнее, что делаете и что видите.
Владимир
15 мая 2015 19:31
спасибо!
>Если их удалить, то разъедутся все остатки, для того они (записи) и оставляются.
>Как вариант .. и удалить их. После чего загрузить заново этот файл.

А почему остатки не разъедуться во втором случае?
меня интересует сохранность остатков по местам хранения только моей учётки (основной). Я пока не понимаю, как на них может повлиять удаление записей другого пользователя.

>Уточните подробнее, что делаете и что видите

Речь о web приложении. Был user1 с кучей записей. Затем к нему был присоединен user2, как член семьи с ограниченными правами и он, также, создал записи по своей учеткой.
User1 видел записи свои + записи user2.
Затем была проведена следующая операция: user1 удалили user2 "из семьи", при этом копия записей user2 осталась доступна user1. Но, обнаружилось, что user2 не видит из под своей учетки ни одной записи, баланс нулевой - вообще никаких следов активности. Почему это произошло - непонятно, трудно восстановить события в точности, но записи руками точно никто не удалял.

user1 видит следующее в разделе пользователи:

ПользовательЗаписейПоследняя тратаДействия
Владимир
2217
342 Руб, разные услуги
13 мая 00:40

Анна
Ограничен. Доступные счета:
1331
650 Руб, разные услуги
8 апреля 13:26
Отключен 9-го апреля

ПС:
учетка user1 начинается на 108vap
учетка user2 начинается на avyermakova
Admin
15 мая 2015 19:40
Владимир Пишет:
А почему остатки не разъедуться во втором случае?
Разъедутся в любом случае, это на ваш страх и риск.
Остаток по счёту слагается всегда из всех транзакций по этому счёту. Если какая-то транзакция удаляется - остаток меняется.

Отключенный пользователь не видит операций ввиду того, что он ограничен в правах. Можно отключить ограничение напрямую в БД, но тогда ему станут видны все операции сделанные ранее другим пользователем.
Владимир
15 мая 2015 20:02
Понятно
у меня сейчас задача: вырезать транзакции user2 из базы user1 и залить их импортом в базу user2. Как посоветуете быстрей сделать?

>Отключенный пользователь не видит операций ввиду того, что он ограничен в правах

А вот это забавно! Я не могу дать ему больше прав, тк user2 уже не "член семьи" и управление им мне недоступно. Сам себе он также не может добавить прав :)
Кстати, у user2 также нет пункта меню "импорт", но, возможно, это происходит из за неоплаченного сервиса для user2?
Admin
15 мая 2015 21:49
Владимир Пишет:
Как посоветуете быстрей сделать?
Выше был совет про экспорт CSV, штатных способов "вырезать" траты другого пользователя нет, увы.

Мы можем отключить ограничение прав пользователя, но тогда ему станут видны все операции сделанные ранее другим пользователем.
Владимир
15 мая 2015 22:04
1)
>Выше был совет про экспорт CSV

Какой формат бэкапа из двух предложенных удобнее для этих целей? Или все равно?

2)
>Отключенный пользователь не видит операций ввиду того, что он ограничен в правах

изначально предполагалось что удаленный пользователь будет жить индивидуально и независимо, на другие учетки повлиять не может и ограничивать его в правах смысла нет.
Как нужно было изначально правильно "отселить" пользователя со "своими" записями, чтобы он ими полноправно распоряжался?

3) Я понял из ваших слов что второго пользователя уже нельзя сделать полноправным, без того чтобы он видел записи других пользователей. Значит, остается удалить его, создать нового (с тем же именем надеюсь можно) и импортировать его данные? Верно?

4) Как удалить user2 из списка пользоватлей в учетке основного юзера? Только удалением всех его записей?

5) В какую ветку лучше писать подобные вопросы по WEB приложению (не Windows)?
Владимир
15 мая 2015 22:06
И еще пож-та вопрос:
при импорте данных, имеющиеся в базе записи все удаляются, или только перезаписываются "одинаковые"? Не получится ли "наложения" записей старых и из файла бэкапа?
Admin
16 мая 2015 17:22
1. Для бэкапа и восстановления есть только один формат - для бэкапа.
2-3. Отселить со своими записями ограниченного пользователя пока нельзя. Нужно его записи оставить в CSV файле и загрузить в новый личный кабинет, а старый удалить.
4. Это виртуальный пользователь. Его нельзя удалить, т.к. его записи участвуют в формировании текущего баланса.
5. Делаем сервис лучше.
6. При загрузке файла импорта будет предложено сначала всё почистить.
Владимир
16 мая 2015 18:11
Спасибо за ответы. Надеюсь, последние уточнения:

>2-3. Отселить со своими записями ограниченного пользователя пока нельзя. Нужно его записи оставить в CSV файле и загрузить в новый личный кабинет, а старый удалить.

Если бы восстановить ему права до полных перед отселением, то он останется при своих записях?

В качестве одолжения, если вы знакомы с какой либо windows утилитой типа grep.exe, можете ли привести пример команды для извлечения из файла бэкапа всех строк одного пользователя? Предполагаю, что Вы regexp наизусть знаете, а я лет 10 его не щупал :)

>6. При загрузке файла импорта будет предложено сначала всё почистить.

А если отказаться почистить, то как "сольются" записи при импорте: дублирование или замещение "одинаковых"?
Владимир
16 мая 2015 18:14
>новый личный кабинет, а старый удалить.

с тем же email ID создать новый можно?

>4. Это виртуальный пользователь. Его нельзя удалить, т.к. его записи участвуют в формировании текущего баланса.

Когда будут удалены все его записи, он исчезнет?
Admin
16 мая 2015 18:20
Если восстановить права, он увидит записи всех пользователей, и свои в том числе.

По извлечению навскидку нет идей, возможно в excel есть средства в фильтрах строк.

Если отказаться почистить - данные зальются поверх имеющихся.

Личный кабинет с тем же email создать можно, если он до этого был удалён.

Виртуальный пользователь не исчезнет. Если очень надо мы можем его удалить вручную.
Владимир
16 мая 2015 18:26
>Если отказаться почистить - данные зальются поверх имеющихся.

то есть просто добавление записей к имеющимся, в том числе добавление тех новых записей, которые полностью совпадают с имеющимися включая временную метку?
Admin
16 мая 2015 18:32
Да.
Но при загрузке CSV файла в расширенном формате (какой у вас будет), можно загрузить только с очисткой существующих записей, т.к. создаётся вся структура категорий целиком заново.

Выбирать можно при загрузке CSV в простом формате.
Владимир
16 мая 2015 18:43
О как!
спасибо
Чтобы отвечать на сообщения - зарегистрируйтесь и войдите в личный кабинет.
© drebedengi.ru 2007 - 2017  |  Мобильная версия  |  Карта сайта  |  API интеграции  |  Обратная связь  |   English