воскресенье, 10 февраля 2013 г.

как пронумеровать строкив dbgrid

antonn (07.12.11 20:46) [12]

> Да я поле то уберу не проблема. Но я в шоке))) Вроде такая > простая задача))Вот представь себе.Ты играешь в преферанс. Тебе пришло 10 карт. Ты говоришь: "Хочу, штоб были циферки, с 1 по 10". ОК, расставили циферки. Ты взял карты в руки и расположил снаяала пики по старшинству, потом трефы, бубну и черви.Что станет с твоими циферками? Они перемешаются.Потом ты подумал, и расположил масти по старшинству, но сначала пики, потом бубны, потом трефы, потом черви. Ну чтобы чёрное-красное чередовалось.Что опять станет с твоими циферками? Они опять перемешаются.Ты сделал три захода с каких-то карт У тебя на руках осталось семь. Твои циферки мало того что перемешаются, в них ещё и "дырки" появятся.Так вот. Колода - это таблица в СУБД, твои 10 карт - это записи, которые тебе вернул запрос. Сортировка по мастям и по возрастанию-убыванию, это то, что клиент в заголовках грида тыкает. Оставшиеся карты после сдачи - это тот фильтр, который клиент на выборку накладывает.Посему - задача не имеет никакого практического смысла.Только в одном случае: данные на клиенте никогда не сортируются и никак не фильтруются.

> [8] Anatoly Podgoretsky Y   (07.12.11 17:36)> > Inovet Y   (07.12.11 17:07) [3] > > В генераторах отчетов это делается средствами генератора.Это что за фраза?

> Alex_C  (07.12.2011 17:16:05)  [5]Которая не нужна в базах. Скажу страшное - ее нет даже в Эксель.Это очень вредная вещь.

Anatoly Podgoretsky (07.12.11 17:37) [9]

> Inovet Y   (07.12.11 17:07) [3] В генераторах отчетов это делается средствами генератора.

Anatoly Podgoretsky (07.12.11 17:36) [8]

Но пользователи хотят идеть Цыферку.  Им надо объяснить, что они не хотят видеть эту цифирьку, а им просто это кажется, что они хотят ее видеть.А если они все же хотят ее видеть, то вероятно они смотрят на неправильное представление данных, которое ты им ошибочно дал.Ты им дал грид, а они хотят смотреть на таблицу в отчете.

Медвежонок Пятачок (07.12.11 17:27) [7]

Да кстати -благодаря форуму переделал практически свою программу))) Круто получилось))) Еще раз спасибо ВСЕМ!!!!

> например пятая запись. это что значит?Нет смысла. Но пользователи хотят идеть Цыферку.  Что реально нельзя как то просто?> Да, пронимеровать записи в выборке возможно в запросе, но > сильно тормозно будетДа я поле то уберу не проблема. Но я в шоке))) Вроде такая простая задача))

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

Поряуовый номер бывает нужен в отчётах, средствами генератора отчётов и делается. В интерфейсе он не нужен и бессмыслен - новая выборка с новыми исловиями и сортировкой изменит и номер. Если номер имеет смысл, например это номер записи в журнале, то и хранить его надо в базе.

> Alex_C  (07.12.2011 16:06:00)  [0]Загадочная фраза "ADO+Access работало"

Anatoly Podgoretsky (07.12.11 16:15) [2]

а смысл этих нумераций в чем?например пятая запись. это что значит?

Медвежонок Пятачок (07.12.11 16:08) [1]

Так правильнопронумеровать записи в таблице при выводе пользователю? Делал на CalcFields  if LogTable.RecNo <> -1 then    LogTableNumer.AsInteger := LogTable.RecNo  else if LogTable.Bof then    LogTableNumer.AsInteger := 1  else if LogTable.Eof then    LogTableNumer.AsInteger := LogTable.RecordCount; До использования ADO+Access работало. Сейчас первую и последнюю запись неправильно нумерует - первую как номер последней записи, последнюю - как 1

» Пронумеровать записи [Access]

PHP DM Gate » Пронумеровать записи [Access]

Комментариев нет:

Отправить комментарий