Форум: "Базы";
Текущий архив: 2007.09.30;
Скачать: [xml.tar.bz2];
ВнизСкрыть записи в DBGrid е Найти похожие ветки
← →
MZ (2007-05-24 12:38) [0]Нужно скрыть записи в DBGrid, чтобы отмеченные пользователям записи не отображались в гриде. Создавать лишнее поле в базе данных, чтобы потом запросом выбирать из него нужные записи не очень хочется. Может есть какой другой способ...
← →
ЮЮ © (2007-05-24 12:41) [1]Тогда удали их вовсе. Он же их никогда больше видеть не желает, коль так с ними поступил.
← →
MZ (2007-05-24 12:45) [2]
> Тогда удали их вовсе. Он же их никогда больше видеть не
> желает, коль так с ними поступил.
>
Увы, нельзя Из грида их убрать надо для того чтоб они "не мозолили глаза"(как сказал мне бухгалтер). А в базе она должна хранится.....
← →
ЮЮ © (2007-05-24 12:51) [3]чтоб записи они "не мозолили глаза" нужно выводить лишь те записи, которые нужны.
Создавать лишнее поле в базе данных ... не очень хочется.
Не надо создавать поля, надо выявлять атрибуты сущностей. Почему одна запись мозолит глаза, а другая нет? Выясни и бухгалтера. И тогда это будет не оишнее полн, а атрибут сущности, экземпляры которых хранятся в таблице
← →
MZ (2007-05-24 12:58) [4]
> Не надо создавать поля, надо выявлять атрибуты сущностей.
> Почему одна запись мозолит глаза, а другая нет? Выясни
> и бухгалтера. И тогда это будет не оишнее полн, а атрибут
> сущности, экземпляры которых хранятся в таблице
>
По этим записям делается сверка, делается она ручками... А записи которые прошли эту сверку и есть "мазолящие глаза"
← →
MZ (2007-05-24 13:01) [5]
> > Не надо создавать поля, надо выявлять атрибуты сущностей.
>
> > Почему одна запись мозолит глаза, а другая нет? Выясни
> > и бухгалтера. И тогда это будет не оишнее полн, а атрибут
> > сущности, экземпляры которых хранятся в таблице
> >
>
>
> По этим записям делается сверка, делается она ручками...
> А записи которые прошли эту сверку и есть "мазолящие глаза"
>
Т.е. бухгалтер должна посмотреть запись, одобрительно кивнуть и скрыть ее, а если она не согдасна с даннами, должна выполнить какие то, только ей ведомые действия
← →
Desdechado © (2007-05-24 13:13) [6]Вот тебе и атрибут сущности "факт прошествия проверки". Заполняешь, анализируешь, обрабатываешь в соответствии с бизнес-логикой.
← →
Робинзон (2007-05-25 09:01) [7]Сделай столбец невидимым.
← →
Робинзон (2007-05-25 09:05) [8]В контекстном меню пишеш код
procedure TForm1.N5Click(Sender: TObject);
begin
if popupmenu1.Items[7].Items[0].Checked then
begin
DataModule1.BookTable.Fields[1].Visible:=false;
popupmenu1.Items[7].Items[0].Checked:=false;
end
else
begin
DataModule1.BookTable.Fields[1].Visible:=true;
popupmenu1.Items[7].Items[0].Checked:=true;
end ;
end;
← →
Jan1 © (2007-05-25 10:36) [9]
> Нужно скрыть записи в DBGrid, чтобы отмеченные пользователям
> записи не отображались в гриде. Создавать лишнее поле в
> базе данных, чтобы потом запросом выбирать из него нужные
> записи не очень хочется. Может есть какой другой способ.
> ..
Это называется RLS: Row Level Security. Поля создавать не надо. Надо создать таблицу развязки: ссылка на запись таблицы, ссылка на пользователя, уровень доступа. Потом к запросу, на выбор даных прилепливается фильтр:
select *
from Table
where exists(select * from TableRight
where Table.ID= TableRight.RecordID
and TableRight.User = CURRENT_USER
and TableRight.CanRead = 1)
← →
Loginov Dmitry © (2007-05-25 10:39) [10]А обычный фильтр случаем не поможет?
← →
Jan1 © (2007-05-25 10:40) [11]
> Потом к запросу, на выбор даных прилепливается фильтр:
А лучше всего вьюху. Даже не лучше а надо.
← →
ЮЮ © (2007-05-25 10:50) [12][7]-[11]
О чем речь?
Создавать лишнее поле в базе данных, чтобы потом запросом выбирать из него нужные записи не очень хочется
Автору хочется чтобв записи волшебным образом исчезали с экрана.
← →
Desdechado © (2007-05-25 11:20) [13]Jan1 © (25.05.07 10:36) [9]
Мне кажется, ты не в ту степь пошел.
Речь ведь не о разграничениях по пользователям или правам. Речь об отсеве обработанных этим же юзером записей.
← →
ЮЮ © (2007-05-25 11:30) [14]> [13] Desdechado © (25.05.07 11:20)
> Речь об отсеве обработанных этим же юзером записей.
Речь идет не об отсеве не на сеанс, а "навсегда", как я понял. Т.е. появляющиеся новые записи не внушают доверия бухгалтера, поэтому он их просматривает самомстоятельно. Тезапис, которым он дал "добро" скрываются с глаз долой из этого клиента.
← →
Jan1 (2007-05-25 11:39) [15]
> Речь ведь не о разграничениях по пользователям или правам.
> Речь об отсеве обработанных этим же юзером записей.
Да ты прав. Ну тогда без признака что запись отработана: дата, булево поле и т.п. признак - не обойтись!
← →
Anatoly Podgoretsky © (2007-05-25 14:12) [16]> ЮЮ (25.05.2007 11:30:14) [14]
Без поля в таблице не обойтись, ну разве что обучить базу телепатии
← →
Павел Калугин © (2007-05-25 14:20) [17]
> Anatoly Podgoretsky © (25.05.07 14:12) [16]
> > ЮЮ (25.05.2007 11:30:14) [14]
>
> Без поля в таблице не обойтись,
Ну почему, если к каждой записи еще и есть статус то просто изменить его на "выверено"
но с другой стороны был бы статус не было бы вопроса:)
← →
Anatoly Podgoretsky © (2007-05-25 14:30) [18]> Павел Калугин (25.05.2007 14:20:17) [17]
Что есть статус, случайно это не поле, буз которого ты хочешь обойтись
← →
MsGuns © (2007-05-26 14:33) [19]>Anatoly Podgoretsky © (25.05.07 14:12) [16]
>Без поля в таблице не обойтись, ну разве что обучить базу телепатии
Легко.
Например, выделить "проверенные" (просмотренные, помеченные или др.) в отдельную таблицу. После "проверки" запись из таблицы "непроверенных" удаляется, а в таблицу "проверенных" добавляется.
В случаях со статистической информацией (большой общий объем, низкий процент потенциально интересных (свежих) данных, много длинных символьный полей) такой способ позволяет избежать тормозов при выборах, появляющихся при достаточно долгой эксплуатации системы.
← →
Игорь Шевченко © (2007-05-28 16:23) [20]
> А записи которые прошли эту сверку и есть "мазолящие глаза"
А как бухгалтер отличает, какие прошли, а какие не прошли ?
← →
Anatoly Podgoretsky © (2007-05-28 16:25) [21]Глазами
← →
Sergey13 © (2007-05-28 16:33) [22]> [2] MZ (24.05.07 12:45)
> их убрать надо для того чтоб они "не мозолили глаза"(
На мониторе скочем заклеить.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2007.09.30;
Скачать: [xml.tar.bz2];
Память: 0.5 MB
Время: 0.049 c