Ru-Board.club
← Вернуться в раздел «Прикладное программирование»

» firemonkey работа с базами данных

Автор: alexgala
Дата сообщения: 02.10.2014 21:42
Пытаюсь перевести проект написаный delphi w32 перевести на кросплатформенность, тоесть на firemonkey. Столкнулся с тем, что на firemonkey, очень медленный вывод данных в Grid, кто как пытался решить эту проблему. Перепробовал fibplus, ibdac, firedac - все тормоза в выводе данных в таблицу, на delphi w32 такого никогда не наблюдалось. Есть кто пробывал?
Автор: Rudia
Дата сообщения: 03.10.2014 09:24
Там сам грид тормознутый, а не компоненты для работы с бд. Обещали исправить в делфи XE{фиг знает какой фиг знает когда}. Попробуйте грид в firemonkey pack от TMS (в варезе неоднократно проскакивало).
Автор: alexgala
Дата сообщения: 03.10.2014 10:09
пробывал я от TMS , чуть лучше, но для полноценной работы с базой слабоват
Автор: NickNNN
Дата сообщения: 03.10.2014 11:08
Аналогичная проблема. Список заказов содержит большую таблицу с множеством колонок. Если сделать через LiveBinding на любой Грид жутко медленно работает .

Для себя решил что дектопную версию лучше сделать с помощью формы VCL в FMX приложении. А для мобильной какой-нибуть TableView с минимумом информации
Автор: alexgala
Дата сообщения: 03.10.2014 12:59

Цитата:
Для себя решил что дектопную версию лучше сделать с помощью формы VCL в FMX приложении. А для мобильной какой-нибуть TableView с минимумом информации

не понял ," здесь немного про vcl в fmx,"
в fmx есть TMSFMXGrid или stringgrid,
dbgrid есть в VCL, а это уже не fmx.
Автор: NickNNN
Дата сообщения: 03.10.2014 13:02
В приложении FMX использовать форму VCL при сборке под win32

Т.е. фактически сделать два вида интерфейса - для мобилки и для десктопа. Не всех форм, а основных


У меня вот так в приложении:

FMX.Forms.Application.CreateForm(TLoginF, LoginF);
VCL.Form.Application.CreateForm(TVCLF, VCLF);
FMX.Forms.Application.Run;
Автор: alexgala
Дата сообщения: 03.10.2014 13:08

Цитата:
Junior Member

какой компонент используешь для отображения данных?
Автор: NickNNN
Дата сообщения: 03.10.2014 13:11
В VCL - TCxGrid (DevExpress)
Автор: alexgala
Дата сообщения: 03.10.2014 13:25

Цитата:
FMX.Forms.Application.CreateForm(TLoginF, LoginF);
VCL.Form.Application.CreateForm(TVCLF, VCLF);
FMX.Forms.Application.Run;

это все в одном проекте FMX или в разных VCL and FMX?
в инете пробегало, что если в FMX создать 3D приложение, то с таблицами нормальная работа, работает видеокарта.
Автор: NickNNN
Дата сообщения: 03.10.2014 13:31
У меня в одном проекте используются формы и FMX и VCL
Автор: alexgala
Дата сообщения: 03.10.2014 13:43

Цитата:
У меня в одном проекте используются формы и FMX и VCL

никогда подобного не делал, где можно подробнее об этом прочитать или увидеть пример написания подобного приложения?
Автор: NickNNN
Дата сообщения: 03.10.2014 13:59
одна из первых ссылок в гугле по "fmx in vcl "

http://www.tindex.net/FireMonkey/MixingVCLandFMX.html
Автор: alexgala
Дата сообщения: 03.10.2014 14:16

Цитата:
одна из первых ссылок в гугле по "fmx in vcl "
 
http://www.tindex.net/FireMonkey/MixingVCLandFMX.html

спасибо за наводку, есть тема для изучения.

Добавлено:
нашел плугин MonkeyMixer , который помогает добавлять в FMX - VLC формы и наоборот, но все это только под виндой, кроссплатформенности нету...
Автор: NickNNN
Дата сообщения: 03.10.2014 14:45
Я же это и писал:

Цитата:
В приложении FMX использовать форму VCL при сборке под win32

Автор: alexgala
Дата сообщения: 04.10.2014 06:19
я так понимаю fmx это платформа для удобства при написании под разные ОС, а связка с VCL в данном случае, как временное явление, пока fmx не дотянет свои компоненты до нужного уровня. Весь вопрос когда дотянет? То есть полноценной работой с базой данных на mac os, пока рано думать. Только под винду.
Автор: protoror
Дата сообщения: 05.10.2014 17:39

Цитата:
То есть полноценной работой с базой данных на mac os, пока рано думать. Только под  винду.  

Это да, или полностью менять логику приложения отходя от километровых гридов, что по сути даже намного лучше
Автор: NickNNN
Дата сообщения: 05.10.2014 17:51

Цитата:
или полностью менять логику приложения отходя от километровых гридов, что по сути даже намного лучше


Специфика некоторых приложений это сделать не позволит. Например бух.учет в 1С
Автор: protoror
Дата сообщения: 05.10.2014 20:40

Цитата:
Специфика некоторых приложений это сделать не позволит. Например бух.учет в 1С

да ну?
если вы не знаете как это сделать это не значит что другие не знают. З.ы. я не про себя.
К слову, эти километровые гриды вообще то мало кому нужны, это все матушка лень реализации и непроработка юзабилити.
Все привыкли закинуть куеву тучу записей пользователю и пусть сам разбирается, а вы спросили нужна ли ему вся эта куча?

Автор: miwa
Дата сообщения: 06.10.2014 14:19
protoror
Как без кучи записей показать пользователю документ? Накладную, чек - неважно. Как проанализировать взаиморасчеты между двумя фирмами, если у поставщика по данным учета задолжености нет, а у получателя по тем же данным задолженость есть? Как узнать 100 самых денежных покупателей чтобы затем в индивидуальном порядке предложить им какие-то плюшки? Как сделать еще миллион вещей, о которых адепты "убрать все гриды" просто не знают, но уверены, что гриды все же надо убрать?
Автор: protoror
Дата сообщения: 06.10.2014 15:53
miwa
По моему этим занимается модули отчетности, а не кучи гридов с сотнями записей разве нет? Неужто пользователю удобнее копаться сравнивая данные в гридах или мельком посмотреть специально подготовленный отчет? Какую чушь уважаемый вы городите...
Автор: miwa
Дата сообщения: 07.10.2014 13:05
protoror
Ответа на вопросы «как» не последовало. Что и требовалось доказать.

А разговоры об отчетности, когда первый вопрос был о первичке - это вообще несерьезно.
Автор: protoror
Дата сообщения: 07.10.2014 13:59
miwa
На дурацкие вопросы дурацкие ответы. Что и требовалось доказать)
Если бы вы удосужились подумать и нормально сформулировать один конкретный вопрос, я бы дал на него ответ.
Еще раз повторю если вы чего то не можете представить, это не означает что этого нельзя сделать.
Автор: NickNNN
Дата сообщения: 07.10.2014 14:09
protoror, ответ "нет ничего невозможного" подходит в 100% случаях.

Можете показать пример реализации тяжелого приложения с множеством данных без грида? Я себе не представляю как можно реализовать ту же 1С без табличных частей. Но конечно нет ничего невозможного,
Автор: alexgala
Дата сообщения: 07.10.2014 14:13
из всей дискуссии могу сделать вывод, что возможно написание сабжа, просто нужно менять сам подход к выводу данных на экран, а вот вопрос стоит ли это делать и ради чего, только ради firemonkey? на это зптрудняюсь ответить. Приложение на w32 бегает идеально, через crossover на mac os. А так хотелось кросплатформенности.
Автор: miwa
Дата сообщения: 07.10.2014 14:31
protoror
Вопрос "как реализовать отображение документа без грида" дурацкий? Или если вопросов больше одного конкретного (в исходном посте их три, просто навскидку), то это уже слишком много для вас?

alexgala
Подход менять не сильно нужно, разве что очень хочется. В FM когда-то был криво реализован грид (как сейчас - не знаю, поскольку не интересуюсь развитием этой библиотеки) что делало слабореальным разработку приложений, которые используют оной грид в своей работе.

Нам более-менее вменяемую кроссплатформенность (для наших задач) удалось достичь только лазарусом. Еще Qt хорошо делает свою работу, но это уже оффтоп.
Автор: alexgala
Дата сообщения: 07.10.2014 14:34

Цитата:
miwa

сегодня попробую последнюю версию грида от TMS (2.6), отпишусь.
Автор: protoror
Дата сообщения: 07.10.2014 15:34

Цитата:
Вопрос "как реализовать отображение документа без грида" дурацкий?

дурацкий на все 100%. Под документом можно понять много чего, где конкретика?
Для меня много даже один дурацкий вопрос, почему я уже написал выше.
Автор: miwa
Дата сообщения: 07.10.2014 18:22
protoror

Силен, батенька, силен.

В таких случаях я безсилен. Остается только подчеркнуть - вы полностью во всем правы, ваша конкретика зашкаливает, ваш кунфу больше моего и все остальное в том же духе.
Автор: protoror
Дата сообщения: 07.10.2014 19:53
miwa
спасибо, повеселил.
по теме, вы как бык, несетесь на красную тряпку даже не вникнув в то что вам пишут.
Еще раз подчеркну, я не говорю что записи в базе не нужны, я говорю что не нужны гриды с сотнями записей.
С базой можно работать и в тихую выводя только результаты, то бишь отчеты.
Покажу в качестве примера вот такие два каталога в которых разная реализация:
https://yadi.sk/i/GDfoFO5HbsEfK
https://yadi.sk/i/6AlZlKo3bsEhm
какая реализация лучше решай сам
Автор: miwa
Дата сообщения: 07.10.2014 21:52
protoror

Цитата:
спасибо, повеселил.

Пожалуйста, рад


Цитата:
по теме, вы как бык, несетесь на красную тряпку даже не вникнув в то что вам пишут.
Еще раз подчеркну, я не говорю что записи в базе не нужны, я говорю что не нужны гриды с сотнями записей.

Я тоже не говорю что нужны гриды с сотнями записей, я прошу показать пример отображения товарного чека или складской накладной без использования грида. Ну и другие вышеперечисленные варианты заодно.


Цитата:
Покажу в качестве примера вот такие два каталога в которых разная реализация:

В первом случае имеем список, там грид как бы ни к чему. Во втором - грид как грид, ничего особенного. Странно, правда, что вы выкладываете скриншоты, которые иллюстрируют мою точку зрения, но спишем это на хорошее настроение.

Страницы: 12

Предыдущая тема: WPF vb.net потоки


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.