Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];

Вниз

Кто-нибудь пробовал в TDBGrid устроить автонумерацию строк?   Найти похожие ветки 

 
Anics   (2005-10-12 08:45) [0]

Кто-нибудь пробовал в TDBGrid устроить автонумерацию строк? Есть колонка с нумерацией строки в TDBGrid. Например накладываю фильтр или убираю его, соответственно автоматически пересчитывается нумерация строк.


 
Reindeer Moss Eater ©   (2005-10-12 09:08) [1]

То есть одна и та же сторка может быть десятой, а через минуту стодесятой?
Кому и зачем нужна такая бессмыслица?


 
sniknik ©   (2005-10-12 09:10) [2]

сделать легко, но безсмысленно... каким боком нумерация строк в TDBGrid (всего то ~ 10-20строк видимых на экране) поможет при сооответствию с реальной записью в таблице?

если же нумерацию таблици/рекордсета то немного сложнее, используеш запрос, показываеш RecNo в вычисляемом поле, а фильтры делаеш перезапросом.  

либо пользоваться рекордсетами в памяти(ADO/Client Recordset) там по фильтру RecNo перещитывается (должен. логично. но не проверял, не было нужды. так что могу ошибиться)


 
Anics   (2005-10-12 09:34) [3]

Reindeer Moss Eater

Чтобы было как в многострочной части документов 1С


 
Reindeer Moss Eater ©   (2005-10-12 09:41) [4]

И как потом воспользоваться этим номером? Смысл в нем какой?

- Маша! проведи документ!
- Какой документ?
- А третий документ.
- Провела!
- ~[!"&^% ты провела пятый !!!!
- Иди в баню, он у меня третий был!!!


 
Sergey13 ©   (2005-10-12 09:42) [5]

2[3] Anics   (12.10.05 09:34)
>Чтобы было как в многострочной части документов 1С
В многострочной части документов номер является необходимым атрибутом и хранится в отдельном поле, как правило.


 
msguns ©   (2005-10-12 10:25) [6]

Очевидно, имеется в виду порядковый номер строки отображаемого списка.
Естественно, № строки - вещь "действительная" только в момент получения и отображения результатов запроса.

>Reindeer Moss Eater ©   (12.10.05 09:08) [1]
>Кому и зачем нужна такая бессмыслица?

Нужно многим. Для ориентации.

>sniknik ©   (12.10.05 09:10) [2]
 
Если НД не Unidirectional, то зачем такие изгаляции ? Все на два порядка проще

>Reindeer Moss Eater ©   (12.10.05 09:41) [4]

Ну ооочень смешно.. У документа есть "живой" № и такая же дата. Ни одна Маша не обзовет накладную № 289р от 23.05.05 "третьим" документом.

Решение : В датасете есть хотя бы одно поле, которое незачем отображать (чаще всего ID). Это поле "всовывается" в начало грида, а в св-ве DisplayLabel указывается "№пп". В обработчике OnGetText этого поля пишем:
 Text := IntToStr(Field.DataSet.RecNo);


 
sniknik ©   (2005-10-12 11:09) [7]

>>sniknik ©   (12.10.05 09:10) [2]
> Если НД не Unidirectional, то зачем такие изгаляции ? Все на два порядка проще
показать RecNo в вычисляемом поле сложно?

помоему как раз дополнительное поле  "которое незачем отображать (чаще всего ID)" заводить лишнее. а ID как раз очень часто отображается т.к. это может быть как раз тот номер который реально отображает номер документа.
сделать поле выбрать Calculated и быть уверенным что оно то точно никому не понадобится кроме того для чего предназначено гораздо проще.

> Ни одна Маша не обзовет накладную № 289р от 23.05.05 "третьим" документом.
практически каждая вторая так делает... если есть возможность спутать (есть минимум 2 варианта одного и тогоже реальный/виртуальный), практически ВСЕГДА при описании проблемы выбирается ничего не значащий вариант. @ ЦТО (служба поддержки)
далеко ходить незачем (могу пригласить в наше ЦТО), просто посмотрите КАК задаются вопросы в форуме. и ЧТО приводится вместо значимой информации.


 
Reindeer Moss Eater ©   (2005-10-12 11:17) [8]

У документа есть "живой" № и такая же дата.

То есть это значение записанное в физическом поле.
Согласен. Полезное и нужное поле.

А зачем нумерация строк в гриде?
Для ориентации?
Какой именно?

Пример если можно.


 
msguns ©   (2005-10-12 11:53) [9]

>sniknik ©   (12.10.05 11:09) [7]
>показать RecNo в вычисляемом поле сложно?

Зачем вообще нужно какое-то дополнительное поле ? Тем более, что надо лезть либо в текст самого запроса, либо в соотв.коллекции филдов перед открытием НД.

>помоему как раз дополнительное поле  "которое незачем отображать (чаще всего ID)" заводить лишнее. а ID как раз очень часто отображается т.к. это может быть как раз тот номер который реально отображает номер документа.
сделать поле выбрать Calculated и быть уверенным что оно то точно никому не понадобится кроме того для чего предназначено гораздо проще.

Это очень по-твоему. Если я захочу отсортировать документы по сумме, то твоя "нумерация" пойдет кувырком. Кроме того, ставить прямую зависимость между ID и № документа - это не просто элементарная неграмотность и незнание "жизни", а головотяпство со взломом (с) ;) Ты меня просто поражаешь ;))

>практически каждая вторая так делает... если есть возможность спутать ..
>..просто посмотрите КАК задаются вопросы в форуме. и ЧТО приводится вместо значимой информации.

Зачем мне лазать по подобным форумам, если у меня такие "форумы" в реале десятками и сотнями ? А если "Маша" не знает, что такое "накладная" или "счет-фактура" или "платежное поручение в банк", то либо Марь Иванна должна Маше это объяснить так, чтобы та вникла на всю оставшуюся, либо вводить документы сама. Вместо Маши.

>Reindeer Moss Eater ©   (12.10.05 11:17) [8]
>Пример если можно.

Без проблем, прямо "с пылу с жару":
Делаю поисковое приложение для картотеки архивных фондов. Всего из в БД около 50000 (на сегодня). По "среднему" запросу обычно выдается не более десятка. Однако бывают такие запросы, когда результат поиска составляет сотни фондов, каждый из которых оператор должна просмотреть и сделать соотв. пометку (псысу в одной из спецячеек грида). И одна без "нумерации" работать категорически не желает, ибо "я должна знать, сколько уже прошла". Вариант с текстом в статусбаре "Запись 111 из 1111" ее не устроил. Точнее, она сказала, что пусть будет, но и нумерация нужна !!!
И такие случаи типичны.


 
Anics   (2005-10-12 11:53) [10]


> msguns

Спасибо! То что нужно было.


 
Reindeer Moss Eater ©   (2005-10-12 12:02) [11]

Пример не вполне убедительный.
Потому что во время поиска может накладываться фильтрация (как сам вопрошающий говорит) и ваша нумерация улетает в космос вместе с вопросом "а сколько я уже прошла ?"


 
sniknik ©   (2005-10-12 12:16) [12]

> >sniknik ©   (12.10.05 11:09) [7]
> >показать RecNo в вычисляемом поле сложно?
>
> Зачем вообще нужно какое-то дополнительное поле ? Тем более,
>  что надо лезть либо в текст самого запроса, либо в соотв.
> коллекции филдов перед открытием НД.

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

и причем тут запрос? вычисляемое поле (Calculated) накладывается на клиенте....

и ты.ды. и ты.ды.
не хочется спорить об очевидном, тем более ты меня "обвиняеш" в том что я не говорил. а про связь говорил как раз наоборот. см. sniknik ©   (12.10.05 09:10) [2]
противоречит твоему
> Это очень по-твоему. Если я захочу отсортировать документы
> по сумме, то твоя "нумерация" пойдет кувырком. Кроме того,
>  ставить прямую зависимость между ID и № документа - это
> не просто элементарная неграмотность и незнание "жизни",
>  а головотяпство со взломом (с) ;) Ты меня просто поражаешь
> ;))

т.е. вы гражданин сомравши. @ Булгаков Мастер и Маргарита

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


 
msguns ©   (2005-10-12 12:22) [13]

>Reindeer Moss Eater ©   (12.10.05 12:02) [11]
>Пример не вполне убедительный.
>Потому что во время поиска может накладываться фильтрация (как сам вопрошающий говорит) и ваша нумерация улетает в космос вместе с вопросом "а сколько я уже прошла ?"

В данном контексте "поиск решает все". Никаких фильтров ! Аргументы поиска и есть лучший фильтр.

>sniknik ©   (12.10.05 12:16) [12]

По поводу того, что ID "может пригодиться", я спорить не буду, ибо не вижу никакого смысла.
В остальном будем считать, что я тебя неверно понял и зря бросил камень, в чем и приношу извинения ;)

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

До встреч в других ветках ;)


 
Anatoly Podgoretsky ©   (2005-10-12 13:28) [14]

Anics   (12.10.05 08:45)  
Конечно такие люди были.


 
Anatoly Podgoretsky ©   (2005-10-12 13:35) [15]

msguns ©   (12.10.05 11:53) [9]
И одна без "нумерации" работать категорически не желает, ибо "я должна знать, сколько уже прошла". Вариант с текстом в статусбаре "Запись 111 из 1111" ее не устроил. Точнее, она сказала, что пусть будет, но и нумерация нужна !!!
И такие случаи типичны.

И эта одна владелец фирмы?  Может для фирмы будет дешевле заменить эту одну?
Вот у нас бухгалтера грамотные и за попытку внесения незначищего номера в грид могут кое что и оторвать. Аргумент простой зачем ты нас путаешь?


 
ANB ©   (2005-10-12 13:37) [16]

Опять холивар. А вот я себе в тоаде включил номерацию строк - очень удобно иногда. Зачем, спрашивается, я это сделал, если это нафиг никому не нужно ? Хотя корябать дейтасет для этого как то некузяво.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.11.20;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.51 MB
Время: 0.057 c
3-1129054896
denissoft
2005-10-11 22:21
2005.11.20
Вопрос по написанию компонента, с двумя DataField-ыми


2-1130953198
getttr
2005-11-02 20:39
2005.11.20
Как разместить форму в правом нижнем углу десктопа?


3-1128687489
alfa_star
2005-10-07 16:18
2005.11.20
E.Message под Linux


1-1130322509
G0ga
2005-10-26 14:28
2005.11.20
Работа с TObjectList


1-1130324832
AlexeyMir
2005-10-26 15:07
2005.11.20
Разделитель целой и дробной частей числа





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский