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


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

если в любых представлениях данных номера остаются постоянными.

тогда у тебя просто не хватает одного целочисленного поля в таблице.


antonn   (2011-12-07 23:16:00) [142]


> Может.
> Если это физический номер документа.
> Если не физический, то не может.

Может, если в любых представлениях данных номера остаются постоянными. Здесь в пределах поставщика операторы могут использовать нумерацию для определения конкретной поставки. А могут называть шестизначный номер документа описывающий поставку. А могут сказать 1-3 значный номер поставки который соответсвует номеру в подтаблице и до которого не сложно добраться ориентируясь на столбец нумерации.


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

речь про возможную полезность нумерации строк в таблице для пользователя. Ему все равно что ты не умеешь достать данные из БД ничем кроме датасета. И речь не об этом.

Ну если об этом, то сам перечитывай ветку.
Тебе раз сто уже сказали, что забудь про грид, если твои юзера общаются меж собой оперируя номерами документов в котором они выстроились в таблице.


antonn   (2011-12-07 23:12:00) [144]


> конечно нет.
> но если нет датасета, то нет и дбгрида.
> и нет необходимости нумеровать его.
>

Еще раз для полного понимания: [12]. Если что - пользователю пофиг что там рисует табличку, хоть дбгрид, хоть стринггрид, хоть пейнтбокс с canvas.rectangle(). Посмотри что я отквотил, речь про возможную полезность нумерации строк в таблице для пользователя. Ему все равно что ты не умеешь достать данные из БД ничем кроме датасета. И речь не об этом.


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

В принципе номер строки в пределах поставки может служить идентификатором в общении операторов.

Может.
Если это физический номер документа.
Если не физический, то не может.


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

конечно нет.
но если нет датасета, то нет и дбгрида.
и нет необходимости нумеровать его.


antonn   (2011-12-07 23:07:00) [147]


> Ты вот так слишком-то откровенно не выдавай все тайны своего
> дизайна.
> Лошарой же назовут, потом неоттереться будет.

это не мой софт, столбцы не сортируются/фильтруются (нет необходимости), строки в пределах поставки не удаляются (закрывается весь протокол разом). В принципе номер строки в пределах поставки может служить идентификатором в общении операторов. Но речь про полезность нумерации
Но Медвежонок все еще пытается коряво телепатировать...


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

Один делает четные, второй нечетные.

Ты вот так слишком-то откровенно не выдавай все тайны своего дизайна.
Лошарой же назовут, потом неоттереться будет.


antonn   (2011-12-07 23:04:00) [149]

датасет - это заклинание такое? одно на все случаи жизни?


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

Нумерация строк будет понятна и непротиворечива в мемо, в стринггриде.
В общем там, где к элементам коллекции можно обращаться по индексу.

дбгрид же - это визуальное воплощение датасета.
для датасетов порядковые номера строк - понятие абстрактное и негарантируемое.

именно поэтому там (в гриде) специально убрано понятие "номер строки на которой я строю"

и убрано неспроста.
но некоторые упорно жуют кактус и причмокивают.


antonn   (2011-12-07 22:56:00) [151]


> Медвежонок Пятачок ©   (07.12.11 22:53) [63]

не утруждай себя, отмотай в начало и посмотри на что я отвечал. А потом уже говори про "негриды"


antonn   (2011-12-07 22:55:00) [152]


> > Давай проще - реальный пример в студию.

Собственно дальше. Небольшая программка, в которой опять же вложенные таблицы, в них толи остатки на складе по поставкам конкретного поставщика (т.к. три вложенных получается), кол-во запрошенного, и прочее. Дали двоим задание пройтись по поставщику и сменить статусы поставок в некоторых условиях (открыть подтаблицу плюсиком, посмотреть остаток и объем поставки, закрыть если удовлетворено условие, ничего сложного, много кликать и иногда звонить по телефону). Один делает четные, второй нечетные.


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

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

я склоняюсь к тому, что некий мозг впитал стереотип:
"если бд и запрос то значит и грид".

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

а не представляет потому что не умеет.


antonn   (2011-12-07 22:50:00) [154]

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


> Не тормози, приятель.
> Не на клиенте, а в гриде, приятель, в гриде!

будь проще; в гриде, в гриде. Это когда информация оторбажается в гриде. А гриды бывают разные, и, о боже", иногда они хранят информацию. А нумерацию можно выводить через аналог OnDrawItem(). Ну ты понял к чему я веду


> Давай проще - реальный пример в студию.

[12]
нумерация "на лету" позволяет оценить объем, кол-во строк (как вообще в целом, так и во время работы (строк 100, а остановился на 37-й)). Если строк много и есть скролл, а другие данные затруднительны для быстрой ориентации в массиве данных (название как в [34]), то маленький столбец с автонумерацией строк во вложенной таблице позволит быстрее ориентироваться.


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

и упорно твердит что нумерация строк на клиенте не нужна никогда.

Не тормози, приятель.
Не на клиенте, а в гриде, приятель, в гриде!


Ega23   (2011-12-07 22:41:00) [156]


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


Давай проще - реальный пример в студию.


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

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

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


Ega23   (2011-12-07 22:37:00) [158]


> это я и пытаюсь ему донести.


Это и без твоих донесений всем понятно.


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

Если не нравится отчет - используй другое средство визуализации строк (не грид).


antonn   (2011-12-07 22:37:00) [160]

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

Удивительно что медвежонок этого не понимает и упорно твердит что нумерация строк на клиенте не нужна никогда. Еще удивительней что с ним согласны вполне нормальные люди. Может просто писатели...


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

Наверх

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