![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Пронумеровать записи [Access]
Alex_C © (2011-12-07 16:06:00)
Страницы: < 1 2 3 4 5 6 7 8 9 10 11 >
Так правильнопронумеровать записи в таблице при выводе пользователю? Делал на 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 21:53:00) [181]-На какйо строке МарьИванна? -На 37!
Нет, он же просто невменяем.
мариванна набивает с листа.
и номер строки в вопросе - он на листе.
и на листе бумаги этот номер строки вполне логичен и понятен.
antonn (2011-12-07 21:46:00) [182]
> Вообще-то хорошим тоном будет сохранение значения ключевого
> поля в НД при выходе из программы.
Я не про выход. Вот сидит оператор, набивает строки, редактирует что то там. Остановилась на десятой строке, сделала передышку, сделала еще десять. "-На какйо строке МарьИванна? -На 37! -Медленно работаешь!"
>
> Вообще-то хорошим тоном считается вывод общего количества
> записей в НД в статус-бар.
вообще еще группировка бывает :)
например как тут http://www.ssw.com.au/SSW/Standards/DeveloperGeneral/Images/janus_gridex_v3.gif
> А для того, чтобы "отсортируй столбцы по цене" мне надо:
>
> 1. В точности повторить именно ту сортировку и те фильтры,
> которые у соседки.
> 2. После отсчитать нужное количество строк
> 3. Посмотреть, чё там и как.
> 4. Снова восстановить все сортировки и фильтры, которые
> были у меня выставлены изначально.
вот я и говорю - зачем считать? щелкнул по столбцу и отмотал сразу ориентируясь на номера строк.
Я почему тему завел - каждый рабочий день общаюсь с операторами которые далеко не гуру, часто путают "диск Це" и "мои документы", но они умеют сортировать по столбцу, и даже умеют менять очередность столбцов перпетаскиванием (грид позволяет). Быстрый поиск - это как автокомплит в дельфи? А если там "ОООРогаИКопытаДомодедовскихАвиалиний" и различие в строках идет уже после этого заклинания? И строк штук 50-100?
Ega23 (2011-12-07 21:42:00) [183]
> тебе нарисовать? сейчас 2011 год, если что
Никто не говорит, что этого сделать невозможно. Вполне возможно. Только будет это работать только в случае соблюдения массы нюансов. А во всех остальных - фиг.
Ega23 (2011-12-07 21:40:00) [184]
> абсолютно никогда? никогда нет смысла нумеровать строки
> в отображаемом гриде на экране?
Почему в TDBGrid нет нумерации строк? Ведь это "так естественно"!
Почему в стандартной поставке компонентов нет TDBTreeView? Ведь это так естественно!
Почему ParamSwitch распознаёт только один символ, а не несколько? Ведь это так естественно!
Медвежонок Пятачок (2011-12-07 21:39:00) [185]тебе нарисовать?
Нарисуй. Только не мне.
Ембаркадере нарисуй.
И уломай их включить это недоразумение как 3rd party компонент в XE3
antonn (2011-12-07 21:38:00) [186]
> если бы он был, то гриды были бы именно такими bydesign
тебе нарисовать? сейчас 2011 год, если что
Ega23 (2011-12-07 21:37:00) [187]
> и не думаете применять нумерацию в своих личных целях (запример
> запомнив номер последней строки с которой работали)
Вообще-то хорошим тоном будет сохранение значения ключевого поля в НД при выходе из программы. И, соответственно, Locate на него при старте.
> Вам никогда не понадобится одним взглядом окинув грид увидеть
> общее количество строк
Вообще-то хорошим тоном считается вывод общего количества записей в НД в статус-бар.
> И уж тем более вы никогда не сможите общаясь друг с другом
> сказать "отсортируй столбцы по цене", ведь это недосягаемое
> кун фу для вас
Быстрый поиск по столбцу ещё никто не отменял. А для того, чтобы "отсортируй столбцы по цене" мне надо:
1. В точности повторить именно ту сортировку и те фильтры, которые у соседки.
2. После отсчитать нужное количество строк
3. Посмотреть, чё там и как.
4. Снова восстановить все сортировки и фильтры, которые были у меня выставлены изначально.
Плохая эргономика, плохая программа.
Медвежонок Пятачок (2011-12-07 21:35:00) [188]никогда нет смысла нумеровать строки в отображаемом гриде на экране?
если бы он был, то гриды были бы именно такими bydesign
antonn (2011-12-07 21:31:00) [189]
> А вот нумерация "строк" в наборе данных - нет.
абсолютно никогда? никогда нет смысла нумеровать строки в отображаемом гриде на экране?
Ega23 (2011-12-07 21:30:00) [190]
> я без понятия кто подумал что я говорю про нумерацию в БД
Так как нумерация в БД имеет вполне конкретный смысл.
А вот нумерация "строк" в наборе данных- нет.
> быть не должно.
Наоборот. Ты просто обязан объяснить заказчику, что он хочет получить и каковы будут последствия этого. если он настаивает и готов оплатить данную работу - ну тут да, любой каприз за ваши деньги. Но если ты сам, без его желания туда такое прикрутишь - это дурь.
Такое имеет смысл только в неизменяющихся (ну либо крайне редко изменяющихся) справочных таблицах. Но для этого есть масса других вариантов решения.
Пример из жизни: когда-то давно, лет 7 назад, я являлся разработчиком модуля "Бюро Пропусков" в рамках большой охранной системы. Как раз с такими МарьИваннами приходилось дело иметь.
Так вот, я во всех справочных таблицах заводил поле SortOrdedr, которое делал настраиваемым. Как раз для того, чтобы МарьИванна имела возможность получать наиболее часто используемые справочные данные в начале НД, а не искать их.
Медвежонок Пятачок (2011-12-07 21:27:00) [191]и тогда вы не сможите друг другу сказать номер строки и однозначно идентифицировать объект.
разумеется не смогут.
объекты идентифицируются их атрибутами, а не тем кто в каком порядке выстроился.
antonn (2011-12-07 21:26:00) [192]
> ну я же говорил, что тот софт дурной.
а я говорил про шоры.
на том и порешим
Медвежонок Пятачок (2011-12-07 21:25:00) [193]ситуации когда кликать нельзя - не бывает?
ну я же говорил, что тот софт дурной.
еще и кликать для сортировки нельзя.
antonn (2011-12-07 21:19:00) [194]В общем как я вижу ситуацию глазами Пятачка:
- Данные на клиенте нельзя нумеровать. Потому что вы, тупые курицы (операторы), будите сортировать их и тогда нумерация не будет одинаковой и тогда вы не сможите друг другу сказать номер строки и однозначно идентифицировать объект. Разумеется вы, старые калоши, и не думаете применять нумерацию в своих личных целях (запример запомнив номер последней строки с которой работали), а не при общении друг с другом, используйте маркеры. И уж тем более вы никогда не сможите общаясь друг с другом сказать "отсортируй столбцы по цене", ведь это недосягаемое кун фу для вас. Вам никогда не понадобится одним взглядом окинув грид увидеть общее количество строк, а если понадобится, то я где нибудь отдельно прикручу эту цифру. Исходя из этого я констатирую - вам не нужна нумерация, абсолютно.
И вообще отстаньте, у меня из-за вас шоры виски натирают.
antonn (2011-12-07 21:11:00) [195]
> Но мариванна кликнула по заголовку цены
ситуации когда кликать нельзя - не бывает?
будешь дальше спорить?
Медвежонок Пятачок (2011-12-07 21:10:00) [196]Маривана видит пять строк рогов и копыт.
Нинапетровна тоже видит пять строк рогов и копыт.
Но мариванна кликнула по заголовку цены и во второй строке у нее документ на сто рублей.
А нинапетровна никуда не кликала, и второй документ у нее на десять рублей.
мариванна вставила строку номер шесть, а нина петровна не обновила свой датасет и видит пять строк.
и так далее.
в общем дурь программирует дурь.
antonn (2011-12-07 21:06:00) [197]
> Так может быть.
> А еще так может и не быть.
Вот тебе и ответ. Значит однозначного твоего:
> Им надо объяснить, что они не хотят видеть эту цифирьку,
>
> > а им просто это кажется, что они хотят ее видеть.
быть не должно.
Медвежонок Пятачок (2011-12-07 21:05:00) [198]с чего бы это? одна база, один запрос, обе сделали обновление отображаемых данных в гриде. Так не может быть?
Так может быть.
А еще так может и не быть.
Могу рассказать возможные варианты.
antonn (2011-12-07 21:05:00) [199]
> Это твоё посмотри пятую строку у поставщика РогаИКопыта
> выглядит бредовым
ты хоть глупости не говори, пожалуйста.
я отвечал медвежонку на конкретную фразу, глянь что я отквотил
> Но нумеровать строки в НД это просто бессмысленно.
я без понятия кто подумал что я говорю про нумерацию в БД
antonn (2011-12-07 21:03:00) [200]
> Она пятая у мариванны. А у Елены Николаевны в это же самое
> время она вторая.
с чего бы это? одна база, один запрос, обе сделали обновление отображаемых данных в гриде. Так не может быть?
> И типа других ключевых естественных ключей в гриде просто
> нету.
Я уже говорил про узкий кругозор. Это исправляется, но исключительно при собственном желании и действии, сидя за компьютером дома и отвечая глупыми советами на ДМ кругозор не сильно расширяется.
> У вопрошающего дурной софт.
Свободен. Крестик справа сверху