|
|
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
DarkMasterДля этого сделали подсистему, которая умеет строить список доступных для пользователя отчетов, брать текст SQL запроса из БД, при наличии параметров - строить форму для их ввода, выводить результаты в сетку и экспортировать при необходимости куда нужно. Весь код (подсистемы) влез в пару экранов + 1 dfm (форма с PageControl) - все делается с помощью динамически создаваемых Query. Вся работа по поддержке - написать запрос и внести его в специальную табличку вместо постоянной возьни в IDE с настройками в design-time. Как-то так.Тоже такая фигня есть. Но в отчете может быть несколько запросов, в виде иерархии со связанными полями для организации мастер-деталь, выводятся в cxGrid с уровнями. Можно нарисовать отчет в FastReport на этих же запросах, и сохранить в отчете. Потом ещё был допилен показ на внутреннем сайте. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.11.2017, 23:30:12 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
Мне кажется, мой вариант лучше такого: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. У себя, впрочем, я такое вообще конструктором 'собираю': Код: pascal 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 00:48:45 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
makhaonмой вариант лучше такогоТакого вообще не бывает :) Когда контролы называются Edit1,2,3,4,5,6... это не код, дальше можно не смотреть. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 01:29:04 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
makhaonМне кажется, мой вариант лучше такого:Просто ни ты ни автор приведенного кода не слышали про UpdateSQL. Типично, чо :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 01:38:42 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
и у меня есть такой лисапед: Код: pascal 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Для вставки можно генерить SQL: Код: pascal 1. списки разные: Код: pascal 1. 2. 3. 4. и вообще очень много подобного накопилось. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 09:26:41 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
softwarerФункция типа "сделай запрос" нужна тогда, когда требуется реализовать какую-то мелочь, под которую жалко и несоразмерно использовать тяжёлую артиллерию. Впрочем, со временем я всё больше убеждаюсь, что потребность в таких функциях означает плохой дизайн приложения. Если приложение для одной конкретной задачи, то, наверное, потребности в таких подручных средствах и не должно возникать, но для большой мультимегаполисистемы всего в классы не задизайнишь )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 09:36:58 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
makhaon:cposob_opl_g В мемориз! Такого я на протяжении своей долгой работы с базами данных еще не встречал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 10:25:36 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
Гхостик, авторПросто ни ты ни автор приведенного кода не слышали про UpdateSQL. 1. Знаток Гхостик наверно не в курсе, что к IBSQL IBUpdateSQL вообще не цепляется 2. А даже если бы и цеплялся (как к IBQuery) он слабо поможет, если нужно делать запросы к разным таблицам. Точнее - поможет, но эти же запросы придётся в него же и добавлять вместо того, что бы просто добавить в IBQuery. А еще лучше, собрать запрос конструктором. авторТакого я на протяжении своей долгой работы с базами данных еще не встречал Чего только на развалах в интернетах не встретишь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 11:08:33 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
> Знаток Гхостик наверно не в курсе, что к IBSQL IBUpdateSQL вообще не цепляется В приведенном коде - db-aware контролы. Т.е. явно TDataSet. К которому IBUpdateSQL легко цепляется. А сравнивать свое решение с явно плохим - значит заранее занижать свою планку качества. > эти же запросы придётся в него же и добавлять вместо того, что бы просто добавить в IBQuery. Чем "просто добавить" проще чем "добавить"? Тем что "просто" же! Про тупой код связывания контролов с параметрами о котором речь и велась, уже забыли. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 11:48:03 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
Гхостик, авторТ.е. явно TDataSet. К которому IBUpdateSQL легко цепляется У меня для тебя плохие новости :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 13:19:17 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
Более того. К TDataSet'у в принципе нельзя прицепить ничего из IBX'а, потому что это разные библиотеки. Как и к ADOшным компонентам. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 13:22:56 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
makhaon, авторпотому что это разные библиотеки Если быть еще более точным, то ibx и tdataset вообще разные слои абстракции. А у ADO апдейтера вообще нет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 13:28:44 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
> Если быть еще более точным, то ibx и tdataset вообще разные слои абстракции. Ок, TIBDataSet. > А у ADO апдейтера вообще нет. Это повод не использовать ADO или дописать чтобы он таки появился. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 14:37:00 |
|
||
|
Насчет свойств формирования SQL запроса
|
|||
|---|---|---|---|
|
#18+
Гхостик, Чудо, ты хоть в среду заглядывай Прежде чем писать, да еще с таким пафосом. Обычно пишущие запросы делаются с помощью IBSQL. К нему апдейтер не цепляется вообще. Но ок, будем делать их с помощью IBQuery. Итак, два запроса: Код: sql 1. Код: sql 1. У меня это 'собирается' 'поэлементно' и даётся команда на выполнение запроса. Чем тут TIBUpdateSQL поможет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.11.2017, 15:01:59 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=39559073&tid=2041524]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
60ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
45ms |
get tp. blocked users: |
1ms |
| others: | 243ms |
| total: | 387ms |

| 0 / 0 |
