|
|
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
мы у себя в базе сохраняем и читаем RVF, это формат TRichView. он бинарный, то есть база не расползается. всё работает отлично в обе стороны, чтение, сохранение, отображение, редактирование. если нужно, то можно этим же набором компонент сделать RTF/Txt/Html с частиным урезанием везде фич до возможностей формата. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 10:53 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
GrigoriyFomin Сабж, собббственно. Как простейший вариант - это хранить в RTF, но это тяжелый формат, хоть и универсальный. Какие тогда компоненты для его отображения/отчетности использовать? Его вроде просто так конкатенировать нельзя? И как хранить картинки в тексте? Зависит от версии RTF? Или есть более красивый способ? Хранил одно время в MHT, но нужно хранить именно как редактируемый текст. MHT - это уже "скомпилированный". Если сам текст не нужно редактировать из приложения (из Delphi), то почему бы не хранить в БД файл с этим текстом? PS Если это отчеты, сделанные в к.-л. генераторе отчетов, то, например, реализовать выдачу отчета через параметры отчета. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 11:05 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
asviridenkov И да, закопайте уже стюардессу. В смысле HtmlViewer. У него аналогов нет, так что он будет долго жить. За 350 баксов - это не аналог. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 12:46 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
alekcvp asviridenkov И да, закопайте уже стюардессу. В смысле HtmlViewer. У него аналогов нет, так что он будет долго жить. За 350 баксов - это не аналог. 350 баксов это зарплата нормального разаботчика за полтора дня. То есть влияния практически не оказывает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 12:51 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
GrigoriyFomin, В одном проекте использовал TJvRichEdit из JEDI VCL . Он и вставку/хранение/печать изображений поддерживает, в отличие от стандартного TRichEdit. Плюс там еще 2 компонента TJvRichEditToHTML для экспорта в HTML и TJvPreviewRenderJvRichEdit для превью перед печатью есть, я правда ими не пользовался. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 13:06 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
asviridenkov alekcvp пропущено... У него аналогов нет, так что он будет долго жить. За 350 баксов - это не аналог. 350 баксов это зарплата нормального разаботчика за полтора дня. То есть влияния практически не оказывает. Ну вот нафига мне работать полтора дня бесплатно, если я могу сделать то же самое с HtmlViewer?.. А вот когда его будет не хватать - тогда и будем думать. К тому же я что-то не видел тонну вакансий на делфи где платят 350к в месяц. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 14:26 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
alekcvp, Зарплата зависит не от языка а от уровня. А в плане "то же самое" - это от требований зависит. У HtmlViewer возможностей на порядок меньше. Но основной момент это то что проект мертвый, и закладываться на него чревато проблемами в будущем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 14:32 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
GrigoriyFomin, Много лет пользуюсь TRichView, использую и как хранилище документов, приходящих по почте, и как генератор отчетов из БД. Обучил нескольких врачей "шлёпать" шаблоны документов, они обучили остальных. Редко-редко обратятся сгенерить какой-нибудь новый тег из БД, а так всё сами. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 14:54 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
zeon11> Обучил нескольких врачей "шлёпать" шаблоны документов Поподробнее можно (своя самописка для шаблонизатора или чужое, только плоские с 1 таблицей или несколько, или не только плоские и т.д.) ? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 15:00 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам, Своя самописка, сделал, когда понял, что ни FR2.56, ни FR5.56 (у меня на них лицензии) не позволяют сделать полноценные медицинские документы. Смотрел, как сделано в других МИС (медицинских инф. системах). Но там, как правило, кроме внесения голого текста от врачей не требуется. Под голым текстом подразумевается внесение врукопашную врачом фактически всей истории болезни исходя из личного опыта врача, его загруженности и т.п. У врачей естественно были свои наработки в вордовских документах, но это всё не стандартизованно, и достаточно убого. Короче, сделал так. Вся история болезни раскидана по таблицам, справочникам. Для формирования печатного документа автоматически делаются запросы, результаты запросов оформляются как теги, далее врач выбирает нужный ему шаблон документа, автоматически заменяются теги шаблона на результаты запросов, сформированный окончательный документ сохраняется в БД. Его уже может просмотреть другой врач, можно распечатать. Документ изменить может только автор документа, но можно и запретить ему это делать. Тут шаблон документа, врачу показывается по умолчанию только левая часть, где дерево. При желании может открыть и левую часть, подредактировать текст. Не автор шаблона может только использовать этот шаблон, при желании на основе авторского шаблона может сделать и свой собственный шаблон. Автор может закрыть видимость шаблона другим врачам и пользоваться им единолично, такое тоже распространено. Теги - текст в квадратных скобках. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 18:22 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам, По поводу запросов. Запросы нисходящие, т.е. в корне дерева может быть несколько запросов, результаты запросов распространяются на подчинённые отчёты. Т.е. на закладке "Запросы" никаких запросов может и не быть, если результаты запросов верхнего уровня обслуживают нижние шаблоны. Если запросов недостаточно, то для конкретного шаблона можно дописать дополнительные запросы. Помимо запросов, в теги могут попадать и константы, как-то главный врач, бухгалтер ИНН и прочее. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 18:31 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
zeon11, нет желания выложить свою разработку на тот же гитхаб? выглядит достаточно интересно... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 18:42 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
zeon11Запросы нисходящие, т.е. в корне дерева может быть несколько запросов, результаты запросов распространяются на подчинённые отчёты. Т.е. на закладке "Запросы" никаких запросов может и не быть, если результаты запросов верхнего уровня обслуживают нижние шаблоны. Это необычная архитектура. Ну т.е. вон в подузле "Справки" доступны все запросы (и датасеты) из узла "Педиатрия", я правильно понял? Тут возникает пара вопросов - собсно, "наверху" может быть 4 запроса, плюс 3 своих. Когда они "выполняются", и все или только "затронутые" в нижнем (текущем) отчёте? "Композитные" отчеты поддерживаются? zeon11> для конкретного шаблона можно дописать дополнительные запросы. Никакой построитель запросов не используется? А-то мне как-то слабо верится во врачей, пишущих запросы к БД. Ну, я знаю двух, но это исключения. asutp2> нет желания выложить свою разработку на asutp2> тот же гитхаб? выглядит достаточно интересно... Присоединяюсь. Если лень/стыдно на гитхаб - можете просто куда-нибудь архивом (хоть сюда). Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 18:58 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
zeon11, а как обрабатываешь списки? Например, в документе нужно отобразить таблицу с переменным числом строк или столбцов. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 19:06 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
Кстати, да. Плюс всякие итоги и кроссы, шахматки. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.02.2021, 20:10 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам ..... в подузле "Справки" доступны все запросы (и датасеты) из узла "Педиатрия", я правильно понял? Тут возникает пара вопросов - собсно, "наверху" может быть 4 запроса, плюс 3 своих. Когда они "выполняются", и все или только "затронутые" в нижнем (текущем) отчёте? Перед формированием отчета будут формироваться все семь dataset'ов сверху вниз. Если по каким-то причинам (по невнимательности) будут формироваться одинаковые теги, то значения тегов будут переписываться более свежими. Это сделано для того, чтобы врачей не смущала закладка "Запросы", как правило она пустая. При создании своих документов им достаточно в дереве документов создать свой "листочек", дать ему название и в правой части в редакторе копипастом "воткнуть" или чужой шаблон документов с тегами, а затем его подредактировать под себя, либо также копипастом воткнуть свой доковский документ и расставить теги где нужно. Такая иерархия запросов и получилась из-за осознания того, что скопировать текст документа врачи ещё могут, а вот плюсом скопировать закладку "запросы" у них уже возникают проблемы. Так что запросы врачи не пишут, их может написать сисадмин, если немного понимает в SQL, то по образцу что-то может и написать. Построитель запросов есть (на закладке кнопка "SQL Строитель"), но на самом деле это никому не нужная лажа, которой никто не пользуется. Не то, что плохо написана, просто сама идея таких "Строителей" изжила себя. Гаджимурадов Рустам "Композитные" отчеты поддерживаются? Да. На закладке "Запросы к БД" можно увидеть блок {Композит} Если туда записать через точку с запятой коды отчетов, то больше ничего писать не надо, программа соберёт один документ из перечисленных документов. В дереве документов можно выделить несколько документов, тогда по одному клику пациенту создастся пакет документов. Запросы возвращают как правило одну запись, так что нагрузки на БД не наблюдал. По таблицам. TRichView позволяет делать таблицы, но что-то серьезное, проблематично. Проблематично не столько для меня, сколько для конечных пользователей, так что лучше им эти горизонты не показывать. Серьезные табличные документы проще сделать в FastReport, шахматки там-же делаю. В рамках той-же МИС есть "Меню-раскладка для приготовления питания" на FR256 с динамичным количеством колонок (столы, режимы питания и т.д.) форма 44-МЗ, формат листа A3. Для врачей, кто по-продвинутей, есть OLAP-отчеты (FastCube, лицензии на 1.* и 2.*), там они считают свою нагрузку, делают годовые отчёты и т.п. Есть мысль закидывать OLAP-отчеты в RichView документ, но пока никто этой фичи не заказал, а самому лениво. По выкладке. Причесать надо, если что конкретное, спрашивайте, поясню. В принципе каких-то особых фишек тут нет, все из картинок видно, а как на уровне БД устроено, поясню. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2021, 06:48 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
Таким образом, мы приходим к неожиданным выводам: пользователь не может создать запросы, пользователь не может создать отчет сколько-нибудь сложной структуры. Коллеги, делайте отчеты в виде плагинов. В них нетрудно разместить логику любого уровня сложности. Причем, логика будет написана на любимом Delphi, а не на колченогом FastScript. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2021, 09:20 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
zeon11> По таблицам. Серьезные табличные документы zeon11> проще сделать в FastReport, шахматки там-же делаю. Тогда это сильно упрощает дело. Из того, что подумалось, когда читал вышеописанное, - лично я бы добавил опцию, установленную по дефолту "доступ к запросам/данным верхних узлов" (или как они у вас именуются - "родительские" отчеты), которую можно было бы сбросить, чтобы для внучатого отчёта не выполнять 15 ненужных запросов верхней иерархии без необходимости. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2021, 12:28 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
давайте вернёмся к тому, чего начался топик. мне вот реально интересно, с чего вдруг Гриша решил объявить нам, что RTF - "тяжелый формат"? или это игра в четыре руки со Свириденковым? Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2021, 12:40 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
ъъъъъ Таким образом, мы приходим к неожиданным выводам: пользователь не может создать запросы, пользователь не может создать отчет сколько-нибудь сложной структуры. Коллеги, делайте отчеты в виде плагинов. В них нетрудно разместить логику любого уровня сложности. Причем, логика будет написана на любимом Delphi, а не на колченогом FastScript. Пользователь никогда и не умел делать отчеты. Эта тема тянется ещё с односекундной жёлтой программы, когда для гипотетического бухгалтера был даже придуман русифицированный язык. За 20 лет я так и не встретил бухгалтера, которому это-бы понадобилось. Наверное, и на всём этом форуме таких счастливчиков не найдётся. По поводу плагинов - тема хорошая, но всё-таки для отчетов слишком громоздкая. И даже с самой изощренной логикой в плагине, в конце концов встанет вопрос - куда выводить результат? Если не в FastReport, то Word & Excel? Недорогих "печаталок"-то и нет, а скоро и совсем не будет. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2021, 12:46 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
МП> с чего вдруг ... RTF - "тяжелый формат"? Ну, нужно для начало определиться с термином "тяжёлый". Заполнять (формировать) RTF вручную и правда муторно... Хотя если набросать свои функции на всё про всё - можно свой WordPad написать и привыкнуть, наверное... Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2021, 13:02 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
zeon11 По поводу плагинов - тема хорошая, но всё-таки для отчетов слишком громоздкая. И даже с самой изощренной логикой в плагине, в конце концов встанет вопрос - куда выводить результат? Если не в FastReport, то Word & Excel? Недорогих "печаталок"-то и нет, а скоро и совсем не будет. С плагинами сие просто: куда хочешь, туда и выводи. Хоть превью в окошке FR. Хоть вызывай ассоциированное с заданным расширением файла приложение, например, .XLSX -> MS Excel | OpenOffice Calc | и т.д. Главное - соблюсти интерфейс вызова плагина. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2021, 13:02 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
ъъъъъ> С плагинами сие просто: куда хочешь, туда и выводи. Вы про разное, ты про фундамент, он про окна и двери. Плагины - это архитектурное решение, код формирования отчётов (включая шаблонизирование, запросы и т.д.) всё равно придётся писать (или искать готовый). Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2021, 13:05 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
24.02.2021 13:02, Гаджимурадов Рустам пишет: > Ну, нужно для начало определиться с термином "тяжёлый". > Заполнять (формировать) RTF вручную и правда муторно... > Хотя если набросать свои функции на всё про всё - можно > свой WordPad написать и привыкнуть, наверное... сильно подозреваю, что документ создаётся в Word'е, а в "мегапрограмме" только отображается/сохраняется в БД. зы: в поставке Делфи (в сэмплах) идёт уже готовый простенький RTF-редактор. Posted via ActualForum NNTP Server 1.5 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2021, 13:09 |
|
||
|
как вы храните в БД форматированный текст?
|
|||
|---|---|---|---|
|
#18+
Гаджимурадов Рустам код формирования отчётов (включая шаблонизирование, запросы и т.д.) всё равно придётся писать (или искать готовый). Я про то, что рассчитывать, что этот код напишет юзер - архитектурная ошибка. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.02.2021, 13:17 |
|
||
|
|

start [/forum/topic.php?fid=58&msg=40048116&tid=2037578]: |
0ms |
get settings: |
5ms |
get forum list: |
9ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
154ms |
get topic data: |
7ms |
get forum data: |
2ms |
get page messages: |
41ms |
get tp. blocked users: |
1ms |
| others: | 193ms |
| total: | 416ms |

| 0 / 0 |
