Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
tygra авторТ.е. пока пользователь на грид просто смотрит - он все поля видит, а как только надо редактировать - тут же перестает поля видеть? Очень странная избирательность Т.е. вы утверждаете, что сразу сможете увидеть полностью 15 полей в гриде? Без прокрутки по полям? Ну если так, то значит вы не землянин :)) -- Tygra's -- Во-первых - 15 полей я увидеть могу. Могу даже и больше. Столбцы ресайзить я умею, шрифт менять тоже, да и монитор не двенадцатидюймовый. Во-вторых. Я вообще-то не про просмотр спрашиваю, а про редактирование. Если у вас 200 полей каждое в полкилометра длиной - то вам эту радость неудобно просматривать в гриде. И скорее всего грид для просмотра не используется. В таком случае и редактировать через грид - не лучшее решение. Однако если грид уже используется (для просмотра) - значит просматривать уже удобно. Т.е. все что нужно - влезает. Если все что нужно влезает - то почему это нельзя тут же и редактировать? Причем "нельзя" в суперкатегоричном тоне? а лучше всего конечно дать пользователю выбирать - в чем ему удобнее работать, в гриде или в сингле. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 15:16 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
Тигра, а вот если нужно скопировать область из ехеля в tdbgrideh через copy/paste, вы тоже будете противиться? (все хорошо работает, просто хочу спросить, как бы вы решили этот момент) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 15:20 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
2 f_w_p f_w_p ЛПДля ФС - один хрен напрямую, что через доп.форму, что через грид. С чего вы это взяли. Не зря ж писали такие функции как RecordToArray() и ArrayToRecord(). Ээээ... это к чему? Я утверждал, что даже если принять, что грид висит прямо на данных (что в общем-то неверно), и при сохранении измененной записи меняет данные напрямую, то и запрос, исполненный в ФС - точно так же прямо с клиента лезет напрямую к данным. Так что для ФС процес редактирования и сохранения записи через грид и через допформу - принципиально не отличаются. Причем здесь RecordToArray? f_w_p ЛПНе думаете же вы, что грид напрямую с mdf и ldf файлами работает (для MS SQL)? А вот тут я с вами полностью согласен. В том то и дело, что не напрямую. И с разными серверами по-разному:-(. Однако (как и в случае ФС) - примерно одинаково что для грида, что для своей кнопки? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 15:23 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
Рыжий КотТигра, а вот если нужно скопировать область из ехеля Тссс... tygra в экселе не работает. Потому что там 256 полей, а tygra больше 15 не видит :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 15:27 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
авторВо-первых - 15 полей я увидеть могу. Могу даже и больше. Столбцы ресайзить я умею, шрифт менять тоже, да и монитор не двенадцатидюймовый. Во-вторых. Я вообще-то не про просмотр спрашиваю, а про редактирование О! Так я и говорю - полностью 15 полей увидеть. Наверняка редактировать вы будете не на ресайзенных полях :) авторОднако если грид уже используется (для просмотра) - значит просматривать уже удобно . Т.е. все что нужно - влезает. Если все что нужно влезает - то почему это нельзя тут же и редактировать ? Причем "нельзя" в суперкатегоричном тоне? Очень странный вывод. Из того, что используется грид можно сказать только то, что он используется. Но никак, что это удобно. Ответ простой - а кроме грида ничего нет для просмотра списков данных Поэтому грид используется всегда и везде, как единственная возможность показать много строк. Поля ресайзить, передвигать и т.д. - это все лишь для того, чтобы хоть как-то было лучше видно, хотя бы часть. Но редактировать - это совсем другое дело. При редактировании данных желательно, чтобы юзер видел все данные одновременно, без всяких скроллирований колонок и по возможности длина компонентов, в которых редактируют данные, должна быть не меньше. Это все в гриде почти никогда не получится (если только 2-3 поля в нем всего, но и в этом случае смысла нет менять технологию). Ну и к тому же, форма с гридом - это просмотр и все, что с ним связано, а для редактирования отдельная форма, чтобы не мешать в кучу. Категорично, не категорично - удобно. И для меня, и для юзеров. авторТигра, а вот если нужно скопировать область из ехеля в tdbgrideh через copy/paste, вы тоже будете противиться? (все хорошо работает, просто хочу спросить, как бы вы решили этот момент) Не знаю, как бы решил. Ну на такой крайний случай можно и в гриде - это если только такая операция производится, copy/paste. Если это лишь частный случай, иногда возможный, ввода данных - то без грида. -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 15:52 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
Да, кстати, я в экселе действительно не работаю :)) Не люблю я его. Только если отчеты какие в него скопировать и отослать. И все. -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 15:53 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
tygra автор2 tygra : скорей вопрос в том. как результат редактировая грида отправлять в базу. Я считаю правильным отравлять не построчно, а одной транзакций Если вы говорите о клиентских транзакциях, и транзакции открываете перед началом редактирования и закрываете после, да еще после редактирования нескольких строк, то это самый неправильный способ :) Или вы что-то иное имели ввиду? -- Tygra's -- Я этого не говорил. Я говорил, что в случае использования грид можно изменения каждой строки не отправлять немедленно в базу(неважно какую, кс или фс) . Отправлять изменения - одной транзакцией . В этом случае не вижу никакой разницы между кс и фс ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 16:02 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
Что в вашем понимании есть транзакция? То, о чем вы говорите, действительно похоже на кэшированные изменения. И транзакции - это механизм кэшированных изменений, но к БД они ни коим образом не относятся, там свои транзакции. Но лично я не вижу смысла. Только неудобство: 1. нужно все время проверять, посылать ли, не посылать все строки, которые меняли/добавляли. 2. в БД должна быть актуальная информация, а то, что какая-то запсиь будет ждать 10 других, есть некарашо, остальные то клиенты ее не видят. 3. какой смысл городить городушки в принципе? -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 16:12 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
Alexey ShЯ говорил, что в случае использования грид можно изменения каждой строки не отправлять немедленно в базу(неважно какую, кс или фс) . Отправлять изменения - одной транзакцией . То же самое можно сделать и для редактирования через форму. С точки зрения взаимодействия с БД абсолютно параллельно - грид или не грид. Только для того чтобы изменить одно и то же поле в десяти записях - придется форму десять раз открыть, десять раз мышью в нужное поле на форме ткнуть, десять раз форму закрыть, потом уже отправить все изменения. Утверждается что это удобно А у меня пользователи или из экселя столбец копируют, или один раз нажимают стрелочку вниз после редактирования строки. З.Ы. Что тут про зависшие блокировки и разрушенные индексы пытались сказать - так и не понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 16:13 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
2 tygra : называйте кэшированными изменениями, по барабану. транзакция окажется и прикладной и субд одновременно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 16:47 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
Alexey Sh2 tygra : называйте кэшированными изменениями, по барабану. Так вы все же сами то знаете, чего применяете? Alexey Shтранзакция окажется и прикладной и субд одновременно. Так не бывает :)) Или-или. Вы тогда уж расскажите вкратце, как вы это делаете. А то вдруг вы транзакцию в БД открываете перед началом редактирования а коммитите после окончания редактирования 10-ой записи - но тогда это полный кошмар. Надеюсь, у вас не так? ЛПТолько для того чтобы изменить одно и то же поле в десяти записях - придется форму десять раз открыть, десять раз мышью в нужное поле на форме ткнуть, десять раз форму закрыть, потом уже отправить все изменения. Утверждается что это удобно А что, у вас на скорость записи редактируют? :) Юзер не блоха, ко всему привыкнет -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 16:58 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
2 tygra : я даю себе отчёт в сходстве и различиях между транзакциями СУБД и бизнес-транзакциями. Повторяю , я нигде не говорил об открытии СУБД транзакции при открытии формы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 17:00 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
А что, у вас на скорость записи редактируют? :) Юзер не блоха, ко всему привыкнет Не, не на скорость. Скорость сама по себе никого не интересует. Юзера записи редактируют на время. Которое деньги. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 17:01 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
Вы говорили про транзакцию . Откуда я знаю, что вы на самом деле под этим понимаете, но так как разговор идет о работе с БД, то вывод сам собой напрашивается. В третий раз закинул невод.... Э, не то :). В третий раз уже спрашиваю, что вы под этим понимаете конкретно в этом топике и прошу уже примера. :) -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 17:03 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
2 tygra : Попытаюсь ответить. 1) Пользователь открывает документ состоящий из шапки и многострочного тела, отображаемого в гриде. Начата бизнес-транзакция. 2) пользоваеьтель резвится с документом как может, шапку ,грид правит, из эселя данные копирует и т д. Без всяких изменений в базе. 3) Пользователь давит кнопку сохранить. Открывается СУБД транзакция , проверяется, что данные выданные пользователю никем не были изменены, СУБД транзакция коммитися. Если СУБД-коммит успешен, бизнес-транзакция считается завершённой успешно. Если пришлось сделать СУБД роллбэк, производится откат бизнес транзакции , всё что наредактировал пользователь теряется. Бизнес-транзакция откатывается P.S. разницы в реализации между фс и кс - не вижу ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 17:17 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
Ну так бы сразу и сказали, что речь идет о документе типа "счет-фактура" и т.д. :) А говорили то об редактировании вообще, поэтому никак и не прикручивалось никуда: ну есть 100 записей, нужно отредактировать 13, где тут "транзакция на все записи".... :) -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 17:23 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
2 tygra : уфф, наконец договорились :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 01.03.2005, 17:34 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
ЛПЧто тут про зависшие блокировки и разрушенные индексы пытались сказать - так и не понял. Да дело то было в 1991-1994гг. Качество сетей соответствующее, упс-это был возглас удивления, а не UPS. Только пользователи были такими же как и сейчас:-(. ПО - MSDOS+Clipper(FoxPro,Paradox,CodeBase и т.д.). Поэтому редактирование было таким - копировалась запись в массив. Затем редактировался массив. Затем массив возвращался в запись, к-рая перед этим блокировалась. Т.о. если произошел сбой сети или пользователь просто выключил компьютер или ушел на обед, то никаких блокировок или неперестроенных индексов нет. P.S. А с 1995 года свалил на КС. И вам советую. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 08:42 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
не всякий грид отображает данные подлежащие непосредственному редактированию. частенько это поля вычисляемые тем или иным образом. и редактируются они редактированием нескольких других полей таблицы или даже нескольких записей нескольких таблиц. про скорость ввода. делается это не так уж и сложно, пользователь долбит в строку, открывается форма, где в нужном порядке идут поля для заполнения. ентерогм или табом пользователь скачет по полям и все заполняет, затем долбит или ок или отмену если что-то не так. на удобство или скорость такая форма работы не влияет. потому что скорость открытия нового окна много больше скорости реакции человека :-) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 10:41 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
2 f_w_p Современные гриды (с которыми я сталкивался) так и работают - используют буфер для новых значений, и сбрасывают изменения именно в момент сохранения записи. Оптимистическую блокировку тоже умеют выставлять. Если в клиппере это было не так - ну значит действительно приходилось извращаться. Спасибо за разъяснения. 2 alex_k Вам домашнее задание. Откройте любой экселевский документ. Возьмите какой-нибудь числовой (к примеру) столбец, и измените значения в этом столбце в десяти подряд идущих строках. Рискну предположить, что ваши действия будут выглядеть как [ввел число - нажал Enter]*[10 раз] Теперь представьте, что на каждое изменение вам пришлось бы даблкликаться в строку, открывалась бы форма, где были бы отображены значения всех полей в этой строке, находить нужное текстовое поле, изменять там значение, закрывать форму. Представьте, что надо было ввести не 10, а 100 чисел. Если после этого вы продолжите утверждать, что скорость и удобство ввода не меняются потому как скорость реакции человека низкая и сам человек тормозит на открытии/закрытии формы - то я просто не завидую вашим пользователям :). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 11:58 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
2 ЛП Ну если конкретный пользователь только и занимается, что правит один столбец в десятках строк и только этим, то конечно ему проще сделать правку в гриде. Но говорить, что так нужно делать всегда - ИМХО не есть хорошо :) -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 12:24 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
2 tygra А если пользователь занимается только тем, что правит одну запись, да с еще с пятью десятками полей - то ему и отображать эти данные в гриде не нужно. В большинстве случаев (у меня) если данные удобно отображать в гриде, то их удобнее и редактировать в гриде. Если их не удобно редактировать в гриде, то и отображать в гриде их скорее всего не удобно. Тогда они отображаются по умолчанию в режиме обычной формы (т.е. одновременно на экране только одна запись с нормально расположенными контролами), и юзера если и переводят эту форму в режим грида, то обычно только для всякого там поиска/фильтации/сортировки (что, однако, не мешает им и редактировать записи в таком виде - если захотят) Но говорить, что так нужно делать всегда - ИМХО не есть хорошо :) Согласен. Но я и не утверждал, что в гриде всегда удобнее редактировать. Это обратные утверждения были - что в гриде всегда ("кроме особых случаев") нехорошо и неудобно. И даже была рекомендация "не позволяй пользователю редактировать/добавлять записи прямо в гриде" (с) alex_k. Т.е. даже если пользователю удобнее - все равно не позволяй ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 12:47 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
авторА если пользователь занимается только тем, что правит одну запись, да с еще с пятью десятками полей - то ему и отображать эти данные в гриде не нужно. Эээээ, а как искать то эту запись без грида? :)) К примеру, хотя бы ФИО и мыло у клиента нужно в грид вывести, а уж дальше нашел запись - открыл форму. Как иначе то? Все 50 полей в грид конечно выводить не надо, все-равно пока последнее домотаешь, что было вначале забудешь :). -- Tygra's -- ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 14:44 |
|
||
|
Access или FireBird?
|
|||
|---|---|---|---|
|
#18+
tygraЭээээ, а как искать то эту запись без грида? :)) Дык эта... Ctrl-F рулит :) а уж дальше нашел запись - открыл форму Со своей аксесовской колокольни я даже не сразу понял, о чем речь то идет У меня это выглядит как "открыл форму - нашел запись" В аксесе форма может быть в виде грида (datasheet), и она же в виде формы на одну запись (single form). В любом виде она все равно висит на полном наборе данных, только режим отображения разный (либо куча записей в виде грида, либо одна запись в каком хошь виде). Т.к. набор данных - весь, то и навигация по нему, поиск, фильтрация, сортировка и т.п. - ничем не отличаются. Надо в режиме Single Form отфильтровать по фамилии, отсортировать по имени, и найти запись с нужным е-мейл - вводишь фильтр для одного поля, делаешь сортировку по другому, и поиск по третьему, не выходя из режима Single Form. Набор данных отфильтруется, отсортируется и отпозиционируется на первое совпадение. В каком виде этот набор отображается (single form или datasheet) - совершенно не важно. В каком виде удобнее - в том виде и отображается. И редактируется. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 02.03.2005, 15:16 |
|
||
|
|

start [/forum/topic.php?fid=35&msg=32939189&tid=1553916]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
48ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
| others: | 207ms |
| total: | 360ms |

| 0 / 0 |
