|
|
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Всем привет. В гриде есть столбец с галкой. При установке галки, значение в базе не обновляется, обновляется, например, при переходе на другую запись. Соответственно проблема, юзер тыкает галку, потом тыкает, например, кнопку печать и получает шиш. Пока выкрутился, поставив Edit Post при потере фокуса гридом, но чуйствую это через опу... Как лучше делать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2017, 19:14 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
didgik, 1. Оставь, как сделал (черех ж@пу), раз работает. 2. Объясни юзеру, как нужно работать. 3. Редактирование записи вынеси в отдельную модальную форму. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2017, 19:20 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
чччД, это не редактирование формы, это отметка записей для последующих действий. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2017, 19:26 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
просто думал, может есть волшебное свойство, которое я не знаю... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2017, 19:34 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
didgikчччД, это не редактирование формы, это отметка записей для последующих действий. У тедбя как раз - редактирование записи, если вызывать Post требуется. Отметка записей в эхлибгриде делается вовсе не изменением значения одного из столбцов. Не чекбоксом. Посмотри на демки. После отметки запись просто подсвечивается по-другому, и переходить на другую запись необходимости нет. Там специальная демка по мультивыбор записей есть. ... Если лень разбираться и нет доп. условий, можешь тупо на событие изменения значения поля с чекбоксом Post навесить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2017, 19:47 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Вот ведь зараза какая. Опять всплыло. Через опу теперь не прокатывает, грид фокус не теряет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 14:36 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
didgik, Проверь в кнопке печати состояние он да, и если он в режиме редактирования сделай ему Post(). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 15:17 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Vlad Fdidgik, Проверь в кнопке печати состояние он да, и если он в режиме редактирования сделай ему Post(). В кнопке не хотелось бы. Хочется в момент установки крыжика. OnСellClick не подходит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 15:32 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
didgik, Если в момент установки делать пост, то когда делать снова Edit, если юзер будет щёлкать по одному и тому же несколько раз подряд? Больше извратов, хороших и разных.)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 15:39 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
didgikВ кнопке не хотелось бы. Хочется в момент установки крыжика. OnСellClick не подходит. Почему? ЗЫ: Правильно так, как советует Vlad F - перед анализом нужно проверить, в каком режиме датасет, с которым связан грид. И если он в Edit, то вызвать Post. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 15:47 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
didgik грид фокус не теряет. Кнопка стала другой? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 15:47 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
goldmi45didgikВ кнопке не хотелось бы. Хочется в момент установки крыжика. OnСellClick не подходит. Почему? ЗЫ: Правильно так, как советует Vlad F - перед анализом нужно проверить, в каком режиме датасет, с которым связан грид. И если он в Edit, то вызвать Post. Кнопок может быть много, ситуаций может быть много. Каждый раз проверять не верно. Хочется в одном месте. goldmi45didgik грид фокус не теряет. Кнопка стала другой? Да. SpeedButton не забирает на себя фокус. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 16:05 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
didgik, Тогда на OnChange соотв поля если датасет при этом режиме редактирования попробуй пост. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 16:27 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Vlad Fdidgik, Тогда на OnChange соотв поля если датасет при этом режиме редактирования попробуй пост. Еле нашел подходящее событие. DataChange у соответствующего DataSource вроде подошло. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 17:42 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Нехорошее решение. Правильное - это Post перед печатью. Как раз единственное место, все как ты хочешь. Заодно, если прога станет мультиюзерной, можно и Refresh навесить, и блокировку в отдельной транзакции, и массу всего другого. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 18:37 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Василий 2, Он не хочет, вестимо, хорошее, хочет привычный костыль.)) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 20:16 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Почему не хорошее? Обосновать есть чем? Столбец с галкой это отметка нужных записей. Логично предположить, что если отметил нужное, оно должно сразу где-то сохраниться. Чтоб в десятке мест не проверять, а не изменилось ли чего. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 21:37 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
didgik, Потому, что текущее "централизованное" решение не выглядит достаточно культурным. Более культурным представляется вызов CheckBrowseMode первой строкой в каждом из обработчиков нажатий SpeedButton-ов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 21:52 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Vlad F, сильно спорно. Это можно забыть проверить и потом пол дня тупить, почему галочками помечено четыре строки, а в обработку пропадает только три. Онож визуально крыжик ставит. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 22:02 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
didgik, Все в этом мире спорно и все в любой момент можно забыть, таки, да. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 22:13 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Такие проблемы решаются через OnCellCheckClick + PostMessage ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 22:48 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Michael LongneckТакие проблемы решаются через OnCellCheckClick + PostMessage Звучит угрожающе. OnCellCheckClick не нашел, нашел просто OnCellClick но он не подходит. Т.е. не не понимаю, зачем туда PostMessage прикручивать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.04.2019, 23:09 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
А зачем отметки для юзерских манипуляций в принципе сохранять в базе? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 10:33 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Василий 2А зачем отметки для юзерских манипуляций в принципе сохранять в базе? Вариантов миллион. Например, что заявка выполнена/закрыта. ЗЫ. Странный вопрос. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 10:34 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Непонятна проблема. Почему нельзя вызвать post сразу после изменения конкретного поля, раз уж так хочется? В датасете/датасорце есть соответствующие эвенты, чтобы ловить нужный момент. Ну, добавить защиту от дурака, чтобы не чекали записи, логически непригодные для сохранения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 10:50 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Василий 2А зачем отметки для юзерских манипуляций в принципе сохранять в базе? Намного проще потом манипулировать данными с помощью обычных запросов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 10:51 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
wadmanВасилий 2А зачем отметки для юзерских манипуляций в принципе сохранять в базе? Вариантов миллион. Например, что заявка выполнена/закрыта. ЗЫ. Странный вопрос. Вопрос странный, да. Но, как раз "заявка выполнена/закрыта" надо делать по другому. Через окошко с вопросом, "А вы точно уверены?" ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 10:53 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
ёёёёёНепонятна проблема. Почему нельзя вызвать post сразу после изменения конкретного поля, раз уж так хочется? В датасете/датасорце есть соответствующие эвенты, чтобы ловить нужный момент. Ну, добавить защиту от дурака, чтобы не чекали записи, логически непригодные для сохранения. Я так и хотел, когда понял, что само оно не работает. Просто не сразу нашел подходящий эвент. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 10:55 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Я делал так. У колонки с Checkbox есть OnUpdateData (Правда, у меня Ehlib 6.2) В этом обработчике вручную поменяйте (через TpFIBQuery) значение, и значение Checkbox'a, и ставите Handled := True; Текст, конечно, кривоват, но стабильно работает уже лет 12: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 11:14 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
И никто не узнает что ж там за ошибка была, если что... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 11:19 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
didgikwadmanпропущено... Вариантов миллион. Например, что заявка выполнена/закрыта. ЗЫ. Странный вопрос. Вопрос странный, да. Но, как раз "заявка выполнена/закрыта" надо делать по другому. Через окошко с вопросом, "А вы точно уверены?" )))Теперь представь условия да/нет в виде битовой маски. Окошки для каждого бита выводить? А если у каждого условия больще двух вариантов? Юзверь повесится. Вот короткий собачий примерУсловиеЗначениеПорода BIS 09.09.1918-Заявка до 01.01.2019+Заявка до 01.06.2019+Есть гарантийное письмо+Оплачено полностью+ Вот тебе маска 1E А от этого бабло зависит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 13:55 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Gator, какие то две не связные ситуации. В этом случае нужно еще две кнопки Сохранить и Отменить. Этот пример и есть вариант этого окошка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 14:09 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
wadmanВасилий 2А зачем отметки для юзерских манипуляций в принципе сохранять в базе? Вариантов миллион. Например, что заявка выполнена/закрыта. ЗЫ. Странный вопрос. Странный, потому что ты его не так понял. У ТС отметки типа "отправить на печать". Им в базе делать нечего. Имхо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 14:28 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Василий 2wadmanпропущено... Вариантов миллион. Например, что заявка выполнена/закрыта. ЗЫ. Странный вопрос. Странный, потому что ты его не так понял. У ТС отметки типа "отправить на печать". Им в базе делать нечего. Имхо. Не совсем так. У ТС отметки типа "помеченная запись". А что с ней делать дальше, это дело десятое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 14:33 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
Василий 2Странный, потому что ты его не так понял. У ТС отметки типа "отправить на печать". Им в базе делать нечего. Имхо. Интересная версия... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.04.2019, 15:30 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
didgikGator, какие то две не связные ситуации. В этом случае нужно еще две кнопки Сохранить и Отменить. Этот пример и есть вариант этого окошка. Это только твоё мнение. А опыт подсказывает, что сегодня это две не связные ситуации , а завтра их свяжут вместе и ещё 3 добавят. :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2019, 00:09 |
|
||
|
DBGridEh 3.6 + checkbox сохранение в базе
|
|||
|---|---|---|---|
|
#18+
wadman, ну что ты волнуешься, приятель, добавь "отправить на телефон" или "отправить в шредер". Всё равно из базы чистить не след. Вот потом, раз в полгода можно базу одним джобом почистить по условию. Но это - другая песня. _________ Здоровья, кстати. И Солнца, радости, природы разной летом и потом... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.04.2019, 00:22 |
|
||
|
|

start [/forum/topic.php?all=1&fid=58&tid=2039541]: |
0ms |
get settings: |
6ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
197ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
72ms |
get tp. blocked users: |
1ms |
| others: | 202ms |
| total: | 502ms |

| 0 / 0 |
