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

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

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


Страницы:   1 2 3 4 5 6 7 8 9 10 11

Alex_C ©   (2011-12-07 16:06:00) 

Так правильнопронумеровать записи в таблице при выводе пользователю? Делал на 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


Ega23   (2011-12-07 21:02:00) [201]


> Меня удивляет насколько умными считают отвечающие и выдающие
> такие бредовые и недальновидные ответы.


Знаешь... Это твоё посмотри пятую строку у поставщика РогаИКопытавыглядит бредовым. Такое впечатление, что ты никогда БД не проектировал. Если тебе нужно нумеровать сроки у поставщика - заведи в таблице "Строки поставщиков" поле StringNr, поставь уникальный индекс на сочетание (ID_Поставщика, StringNr), Order by ID_Поставщика, StringNr и смело выводи его в грид отдельной колонкой. Опять таки с возможностью сортировки на клиенте.
Но нумеровать строки в НД это просто бессмысленно.


Медвежонок Пятачок   (2011-12-07 21:00:00) [202]

Понятия не имеющие какой софт у вопрошающего

У вопрошающего дурной софт.
Если теткам нужны номера строк, они должны получить не грид, а отчет.


Медвежонок Пятачок   (2011-12-07 20:59:00) [203]

Чтобы Марь Иванна могла Елене Николаевне просто сказать - посмотри пятую строку у поставщика РогаИКопыта.

Аха аха.
Она пятая у мариванны. А у Елены Николаевны в это же самое время она вторая.

И типа других ключевых естественных ключей в гриде просто нету.
Все документы рогов и копыт имеют одну дату, одну сумму, одно количество и вообще всё одно имеют.
Но программист спешит на помощь и бабушкам и нумерует строки.


antonn   (2011-12-07 20:46:00) [204]


> Им надо объяснить, что они не хотят видеть эту цифирьку,
>  а им просто это кажется, что они хотят ее видеть.

Нет, они правильно хотят.
Есть общая БД, есть сетевой софт, который через запрос выбирает записи и отображает их в гриде. Номер строки в гриде - это совершенно элементарное желание. Когда этих строк на экране штук 30, и текст почти не различается, то удобно иметь номер строки. Чтобы Марь Иванна могла Елене Николаевне просто сказать - посмотри пятую строку у поставщика РогаИКопыта. Это удобно, быстро, наглядно. Такая информация совсем лишней не бывает, занимает относительно мало места на экране. Запрос один, данные одни и те же, ситуация когда данные изменятся и один из клиентов не обновит список - бывает, но не смертальная в большинстве случаев. И как ее исправить очень просто донести даже до дубого пользователя, сделав кнопочку "обновить список".
Меня удивляет насколько умными считают отвечающие и выдающие такие бредовые и недальновидные ответы. Понятия не имеющие какой софт у вопрошающего, но дающие однозначные ответы с высоты узкого кругозора.


Ega23   (2011-12-07 19:11:00) [205]


> Да я поле то уберу не проблема. Но я в шоке))) Вроде такая
> простая задача))

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

Так вот. Колода - это таблица в СУБД, твои 10 карт - это записи, которые тебе вернул запрос. Сортировка по мастям и по возрастанию-убыванию, это то, что клиент в заголовках грида тыкает. Оставшиеся карты после сдачи - это тот фильтр, который клиент на выборку накладывает.
Посему - задача не имеет никакого практического смысла.
Только в одном случае: данные на клиенте никогда не сортируются и никак не фильтруются.


Anatoly Podgoretsky   (2011-12-07 17:37:00) [206]

> Alex_C  (07.12.2011 17:16:05)  [5]

Которая не нужна в базах. Скажу страшное - ее нет даже в Эксель.
Это очень вредная вещь.


Inovet   (2011-12-07 17:37:00) [207]

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

Это что за фраза?


Anatoly Podgoretsky   (2011-12-07 17:36:00) [208]


> Inovet ©   (07.12.11 17:07) [3]

В генераторах отчетов это делается средствами генератора.


Медвежонок Пятачок   (2011-12-07 17:27:00) [209]

Но пользователи хотят идеть Цыферку.  

Им надо объяснить, что они не хотят видеть эту цифирьку, а им просто это кажется, что они хотят ее видеть.

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


Alex_C   (2011-12-07 17:17:00) [210]

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


Alex_C   (2011-12-07 17:16:00) [211]


> например пятая запись. это что значит?


Нет смысла. Но пользователи хотят идеть Цыферку.  
Что реально нельзя как то просто?


> Да, пронимеровать записи в выборке возможно в запросе, но
> сильно тормозно будет


Да я поле то уберу не проблема. Но я в шоке))) Вроде такая простая задача))


Inovet   (2011-12-07 17:10:00) [212]

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


Inovet   (2011-12-07 17:07:00) [213]

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


Anatoly Podgoretsky   (2011-12-07 16:15:00) [214]

> Alex_C  (07.12.2011 16:06:00)  [0]

Загадочная фраза "ADO+Access работало"


Медвежонок Пятачок   (2011-12-07 16:08:00) [215]

а смысл этих нумераций в чем?

например пятая запись. это что значит?


Страницы:   1 2 3 4 5 6 7 8 9 10 11

Наверх

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