Jump to content

UNIDBTreeGrid VScroll after Refresh Grid


Skyp

Recommended Posts

14 hours ago, Sherzod said:

Hello @Skyp

Not enough details in my opinion. What needs to be done to reproduce this case?

Привет. 

Если совсем  коротко (для простоты понимания) - я не могу найти  способ получить текущую позицию и установить новую позицию VertScrollBar у UniDBTreeGrid, как я могу это сделать? К примеру установить новую позицию сразу после обновления TDataSet (привязанного к UniDBTreeGrid (UniDBTreeGrid-Datasource-Dataset))?

UniDbTG.VertScrollBar = nil и когда я пытаюсь обратиться к свойству Position то получаю ошибку.

---

Hello,

In short(for simplicity), I have some problems. Firstly, I can't find a way to get the current position. Secondly, I cannot set a new VertScrollBar position from UniDBTreeGrid. How can I do it? For example, how can I set a new position after updating TDataSet (bind with UniDBTreeGrid (UniDBTreeGrid-Datasource-Dataset))?

UniDbTG.VertScrollBar = nil and if I try to access the Position property then I get an error.

 

Link to comment
Share on other sites

10 hours ago, Sherzod said:

Привет @Skyp

Этот пост может Вам помочь, попробуйте.

---

Hello,

This post may help you, try.

 

Проблема в том что Locate - отрабатывает прекрасно, и нужная запись в DBGrid выделена, но ScrollBar уезжает вниз, а мне хотелось-бы чтобы он был пропорционален строке выбранной в locate... кейс который Вы приложили не помогает, Scroll не возвращается.

 

Link to comment
Share on other sites

Just now, Skyp said:

Проблема в том что Locate - отрабатывает прекрасно, и нужная запись в DBGrid выделена, но ScrollBar уезжает вниз, а мне хотелось-бы чтобы он был пропорционален строке выбранной в locate... кейс который Вы приложили не помогает, Scroll не возвращается.

Можете прикрепить тестовый проект?

Link to comment
Share on other sites

54 minutes ago, Sherzod said:

Можете прикрепить тестовый проэкт?

Example.zip

Получилось быстрее.. Вот.. используется unidac ещё но не думаю что дело в нем. testData лежит в Win32.

Нажми на любой CheckBox

Link to comment
Share on other sites

3 minutes ago, Sherzod said:

Все ли вожность селат из спользуя ClientDataSet?

Могу попробовать FireDac - т.е там есть логика на afterEdit связанная с LocalSQL.. сейчас переделаю... 

Link to comment
Share on other sites

53 минуты назад Шерзод сказал:

Все новые и другие клиенты ClientDataSet?

Ex2.zip, - FireDac demo --- вроде все модули unidac убрал и переписал немного работу с LocalSQL на aAfterEdit. 

Файл с данными в Win32 - testdatafdd.FDS. 

Ошибка в любом случае осталась прежней. Посмотрите - может быть проблема в дополнительной логики на onAfterEdit (мне в любом случае нужно каскадное обновление=()?

Link to comment
Share on other sites

26 minutes ago, Sherzod said:

У мения видэт сладущая ошибка :

image.png.f6df36da9206f368249e4a90445413ab.png

Эта ошибка глушится в модуле unidbcheckbox - я его специально приложил к проекту потому как редактирование на самом деле в этот момент уже возможно и это какой-то глюк который возникает кстати только unidbcheckbox - к примеру у DBEdit его нет т.к memtable уже не в статусе Edit находится на момент AfterEdit. 

image.thumb.png.5f5f9c256f01c6a16376bd0b5c5231ef.png

Я ранее об этой проблеме писал т.к дефакто afterEdit работает уже с закрытым на редактирование DataSet - т.е если Вы её заглушите вставка пройдёт и все данные будут вставлены, компоненты DAC работают на AfterEdit и позволяют обновить тот-же DataSet, как это ошибка в CheckBox возникает - не понятно. 

 

 

Link to comment
Share on other sites

29 minutes ago, Sherzod said:

У мения видэт сладущая ошибка :

image.png.f6df36da9206f368249e4a90445413ab.png

Подробнее здесь:

 

где onAfterEdit подразумевает что DataSet уже закрыт для редактирования. 

Link to comment
Share on other sites

47 minutes ago, Sherzod said:

У меня вылетает следующая ошибка:

image.png.f6df36da9206f368249e4a90445413ab.png

На самом деле это не связанные вещи и можно написать такую заглушку: 

image.thumb.png.b9797d8eedb1e3ba274b32a3a5c76d36.png

Это ничего не меняет - как VertScrollBar себя вел так и ведет... 

Link to comment
Share on other sites

3 hours ago, Sherzod said:

Так и должно быть?:

image.thumb.png.fa8b72e9379e1fd09d32ee717d8a703c.png

Да, конечно - это путь компонента в интерфейсе, это модель интерфейса RTTI из реального проекта. 

Функционал "прав" пользователя. На onAfterEdit отрабатывает логика - Если мы даём права на родительский компонент, то автоматический становятся доступны все дочерние компоненты - а когда я изменяю интерфейс у пользователя при авторизации за счёт свойств родительского компонента обновляются права на новые компоненты - каскадом, но это не здесь.   А ID не может быть строкой?

Link to comment
Share on other sites

 

52 minutes ago, Sherzod said:

Да.

Со Scroll это не помогло - он все равно скачет..

Если сможете подсказать как в JS получить позицию Scroll и выставить - я могу попробовать "вручную" это ловить и на Refresh или другое событие выставлять? 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...