Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Номер записи [D6, Paradox]


Страницы:   1 2 3

13-ый ©   (2004-01-27 12:17:00) 

Есть таблица(Table Не Query-это принципиально) необходимо после фильтрации данных в этой таблице вычислить номер каждой записи.
Т.е. если было 6 записей ,а после фильтрации осталось 3,то и соответственно номера должны идти по-порядку (в первом случае от 1 к 6,а во втором от 1 к 3 не смотря  ни на что)


Некто   (2004-01-28 14:13:00) [21]

http://cards.yandex.ru/cards/c604adfd6fa97e4ab0513f11fea42bd5.gif


Anatoly Podgoretsky   (2004-01-28 14:01:00) [22]

Подай пример, там посмотрим.


Некто   (2004-01-28 13:57:00) [23]

2 Плохиш

> >Вариант 1
> Делается средствами подготовки отчёта

Да, извините, опечатался. Перефразирую: "Для выборки списков студентов по группам"
Какой смысл использовать генераторы отчетов, если конечному пользователю достаточно простого представления в виде электронной таблицы? Просто чтобы посмотреть, обсудить, сидя перед монитором, и закрыть окно. Не больше, но и не меньше.


> >Вариант 2
> Никакого отношения к заданному вопросу (порядковый номер)
> не имеет

см. [31] "...у вопрошающего вряд ли бы возник (заданный) вопрос.". Попрошу меня не цитировать! :)

2 Anatoly Podgoretsky

> а чистый порядковы, вычисляемый номер

см. Вопрос, "вычислить номер каждой записи"

И давайте прекращать спорить! Ведь все уже давно всё поняли. Идет только отстаивание собственной правоты. Не более!


Плохиш   (2004-01-28 13:39:00) [24]

>Некто   (28.01.04 13:26) [31]

>Вариант 1
Делается средствами подготовки отчёта

>Вариант 2
Никакого отношения к заданному вопросу (порядковый номер) не имеет


Anatoly Podgoretsky   (2004-01-28 13:39:00) [25]

Некто   (28.01.04 13:26) [31]
Вроде я уже сказал про отчеты, или мне почуилось, в отчетах это святое, но там и не RecNo, а чистый порядковы, вычисляемый номер, никак проблем ни с номером ни с ненужностью.


Некто   (2004-01-28 13:32:00) [26]

2 Плохиш
 Не буду говорить о таблицах Paradox (13-ый   (27.01.04 12:26) [2]), но в ADO меняется...


Некто   (2004-01-28 13:27:00) [27]

2 Sandman25
 :)


Некто   (2004-01-28 13:26:00) [28]

2 Anatoly Podgoretsky
 >>номера учащегося
 "Я бывают разные!" (С) Заяц :)

Вариант 1: Для распечатки списка студентов по группам. Вас в данном случае интересует номер студента в базе данных, или просто порядковый номер студента в списке студентов группы, отсортированном в алфавитном порядке?

Вариант 2: Регистрационный номер студента в базе данных. В общем случае такое номер используется в качестве первичного ключа. Если этот номер присутствует в базе данных, то у вопрошающего вряд ли бы возник (заданный) вопрос.

P.S. С радостью рассмотрю другие варианты...


Плохиш   (2004-01-28 13:21:00) [29]

>Некто   (28.01.04 13:16) [27]
>    DBGrid.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top
> + 2, IntToStr(Table.RecNo));

А что, если к таблице применить фильтр, RecNo то же измениться?


Sandman25   (2004-01-28 13:19:00) [30]

[27] Некто   (28.01.04 13:16)

Можно еще попробовать OnGetText, для этого TField.
Все, прекращаю "спорить". Вроде мы друг друга поняли :)


Некто   (2004-01-28 13:19:00) [31]

2 Sandman25
 У Володи-С-Подчерком от этогопроцессор грузится на 100%. Вот это уже проблема...


Некто   (2004-01-28 13:16:00) [32]

Замедления в работе программы или в работе с программой?...

Если программы, то вряд ли это вызовет замедление:

procedure TForm1.DBGridDrawColumnCell(Sender: TObject; const Rect: TRect; DataCol: Integer; Column: TColumn; State: TGridDrawState);
begin
 if (DataCol = 0) then
   DBGrid.Canvas.TextRect(Rect, Rect.Left + 2, Rect.Top + 2, IntToStr(Table.RecNo));
end;

P.S. Ух... о чем мы спорим? 13-й давно уже ушел... :о)


Volodya_   (2004-01-28 13:16:00) [33]

2 Некто   (28.01.04 12:22) [17]
Проц грузится на 100%


Anatoly Podgoretsky   (2004-01-28 13:15:00) [34]

Некто   (28.01.04 12:49) [21]
Давай не будем отказываться от номеров в накладных, отчетов.
Речь же идет об RecNo, который совсем не RecNo, и который оставлен для совместимости с древними временами, в большинстве случаев ты получишь номер -1

Ему же по уточнению в [2] нужен не RecNo, " Это необходимо для отображения номера учащегосяв таблице студентов"


Sandman25   (2004-01-28 13:09:00) [35]

[23] Некто   (28.01.04 13:07)

Согласен.
Но опять-таки с оговорками. Если из-за этого не будет замедления, которое для пользователя более неудобно, чем ему номера удобны. Надеюсь, эта конструкция понимаема :)


Некто   (2004-01-28 13:07:00) [36]

2 Sandman25
 Это рассудит рынок. Плохую программу никто не купит. :)
 Но я все же думаю, что в нумерации строк таблицы нет ничего крамольного. Ведь пользователи не жалуются на нумерацию строк и столбцов в том же Excel'е. Ведь удобно сказать, сидя с собеседником перед монитором: "обратите внимание на строку 238". А большего, поди, от такой нумерации и не требуется.


Sandman25   (2004-01-28 12:58:00) [37]

[21] Некто   (28.01.04 12:49)

В данном случае согласен, мне следовало молчать. Только потом не жалуйтесь, если какая-то программа будет становиться в автозагрузку, гадить в реестре и запрашивать по 3 подтверждения на каждую операцию. Ведь Вы запретили мне советовать, что следует делать, а что не следует :)


Некто   (2004-01-28 12:49:00) [38]

О!... Церберы накинулись! :)... Спровоцировал таки!... ;)

2 Anatoly Podgoretsky
 То, о чем идет речь - не номер человека. Это - номер записи в отфильтрованном DataSet. Порядковый номер записи в результирующем наборе данных. (Перефразировать по-другому?).

>>из за отсутствия реализации этого в базе данных
Во-первых, то, о чем идет речь - не уровень данных, а уровень представления. Поэтому о базе данных говорить поздно. Хотя, если Вас послушать, тогда давайте вообще откажемся от нумерации! Начнем с номеров страниц в книгах, потому что номер страницы никак не связан с информацией, представленной в книге. Согласны?
Во-вторых, в DataSet'e есть свойство RecNo. Интересно, зачем оно нужно? Не объясните?

2 Sandman25
 Вопрос стоял не "что сделать", а "как сделать". Вот когда он спросит "как сделать лучше" - тогда и советовать будете. А до тех пор - или отвечайте на поставленный вопрос, или молчите. Потому что советов можно надавать сколько угодно. Только нужны ли они вопрошающему?


Sandman25   (2004-01-28 12:36:00) [39]

[18] Некто   (28.01.04 12:26)

Вы не будете предлагать человеку другое решение, если он уже какое-то выбрал, причем выбрал, не зная всех возможных решений? Если человек пытается уменьшить размер файла на 1 байт, считывая весь файл в TStringList, изменяет один Strings, и записывает в тот же файл, но наткнулся на ограничение размера, Вы ему посоветуете уйти с Win95 или добавить памяти? Вместо того, чтобы предложить Truncate?


Anatoly Podgoretsky   (2004-01-28 12:36:00) [40]

Некто   (28.01.04 12:26) [18]
Это уже не первый человек. Следующий вопрос от пользователя, почему у этого человек поменялся номер.


Страницы:   1 2 3

Наверх

Титульная страница Поиск, карта сайта Написать письмо