Компоненти за генериране на HTML

18 отговора 429 прегледа
#1

Компоненти за генериране на HTML

Една моя програмка, даваща различни данни (и графики понякога), се опитвам да я направя с възможност за HTML експорт. Та ако някой знае читави компоненти за целта, нека да свирка. Не, че не мога да си запиша таговете в TStrings и да ги сложа във фаил със SaveToFile, но предполагам, че има и по-елегантни начини за целта. Интересува ме главно подхода, по който е организиран експорта в други компоненти, та ако има сорс ще е най-добре. 10x предварително!

Mixy
Отговор
в отговор на Mixy #2

Re: Компоненти за генериране на HTML

Ако справките са ти в QuickReport - там си има такава опция

Отговор
в отговор на Mixy #3

Re: Компоненти за генериране на HTML

Една идея - защо не организираш отчетите си в XML - и след това с XSLT templates- да преобразуваш до HTML код - много ли ще те затрудни подобна операция ?
Мисля, че вече може да се намери безплатни компоненти за това. Потърси TurboPower XML в sourceforge.

---
Колкото повече, толкова повече.
Отговор
в отговор на PhantomAS #4

Re: Компоненти за генериране на HTML

Там е работата, че не са точно отчети (не ползвам report-и поради спецификата на проекта). Трябва ми чист HTML - вярно, че XML е бъдещето, но ще го оставя за бъдещи версии . Просто ми се щеше да видя какво са направили другите по въпроса и да не преоткривам топлата вода.

Mixy
Отговор
в отговор на Mixy #5

Re: Компоненти за генериране на HTML

Az primerno si podgotwqm html template i sled towa si go popalwam. Templatite poddarjat Sekcii i pod-sekcii, napisal sam si gotin "kompilator" ot HTML-template-a prawi .pas fajl spored strukturata na template i taka primerne kod za generirane na stranichka:

index.BeginDoc(cd);
index.sec_lichensastav.BeginDoc(cd);
index.sec_lichensastav.sec_podrazdeleniqedit.BeginDoc;


index.sec_lichensastav.sec_podrazdeleniqedit.P_typ:=tmpstr;
index.sec_lichensastav.sec_podrazdeleniqedit.P_nomer:=podrazd.nomer;
index.sec_lichensastav.sec_podrazdeleniqedit.P_name:=podrazd.name;
index.sec_lichensastav.sec_podrazdeleniqedit.P_key:=podrazd.key;
index.sec_lichensastav.sec_podrazdeleniqedit.P_godina:=podrazd.godina;

if pos(','+btyp+',',','+klasnityps+',')=0 then begin
index.sec_lichensastav.sec_podrazdeleniqedit.P_god1_start:='<!--';
index.sec_lichensastav.sec_podrazdeleniqedit.P_god1_end:='-->';
index.sec_lichensastav.sec_podrazdeleniqedit.P_god2_start:='<!--';
index.sec_lichensastav.sec_podrazdeleniqedit.P_god2_end:='-->';
end;

index.sec_lichensastav.P_podrazdeleniqedit:=index.sec_lichensastav.sec_podrazdeleniqedit.ProduseDoc(false);
index.P_lichensastav:=index.sec_lichensastav.ProduseDoc(false);
q.Free;
acs.Free;
cd.ProduseDoc(index);


------------------------------
I got a COMPILER, and I'm not afraid to use it!
Отговор
в отговор на Mixy #6

Re: Компоненти за генериране на HTML

Това че не използваш отчети е плюс - идеята ми е да правиш dump на данни - било то от БД или от някакви твои обекти - тези данни ги прехвърляш в XML файл с определена структура (за да си направиш подобен файл много ще ти помогне XML spy a и не само). След което ще ти се наложи да генерираш XSLT темплей (пак XML Spy) който да преобразува XML- до HTML - и последната стъпка е да използваш пакет с компоненти - мисля че онзи който посочих ще ти свърши работа - за да направиш всичко това в run -time.

Ок - ти си знаеш какво правиш - но аз мисля да поработя по това - да видя дали ще стане нещо смислено - но резултати няма да има в следващите 1-2 месеца. Искам да престана да ползвам report-и ако е възможно и да прекарвам всичко през XML/HTML.

---
Колкото повече, толкова повече.
Отговор
в отговор на gogo #7

Re: Компоненти за генериране на HTML

Абе че има - има. Ама после ти трябва доста въображение за да си познаеш репорта :)

Човешкият ум е ограничен. Глупостта не е.
Отговор
в отговор на PhantomAS #8

Re: Компоненти за генериране на HTML

Silno poddarjam taq ideq!! Ako imah malk opowechko swobodno wreme....

------------------------------
I got a COMPILER, and I'm not afraid to use it!
Отговор
в отговор на SDR #9

Re: Компоненти за генериране на HTML

Ползвал ли си нещо готово или сам си писал всичко?

PS. За много години!

Mixy
Отговор
в отговор на PhantomAS #10

Re: Компоненти за генериране на HTML

> Ок - ти си знаеш какво правиш - но аз мисля да поработя по това - да видя дали ще стане нещо смислено...

Бе и аз така мислех, ама много писане ми се видя, та затова реших да потърся първо готови решения и да видя що за чудо са. Свиркай като го почнеш, дали се получава нещо сносно.

Mixy
Отговор
в отговор на Mixy #11

Re: Компоненти за генериране на HTML

Po star paranoichen nawik - wsichko sam - ako te walnuwa sfirkaj da prashtam

p.s. Chestita i na tebe! Poluchih ti kartichkata ma me domarzq da ti otgowarqm

------------------------------
I got a COMPILER, and I'm not afraid to use it!
Отговор
в отговор на SDR #12

Re: Компоненти за генериране на HTML

Не знам дали ще ми влезне в работа, но ако не е много голямо, можеш да ми го пуснеш на мейла. 10x

Mixy
Отговор
в отговор на Mixy #13

Re: Компоненти за генериране на HTML

Izwinqwaj che ne sam ti pratil nishto do sega - misleh da podgotwq nekaf example po waprosa ama pusto wse ne ostawa wreme - w surow wid mojesh da namerish wsichko neobhodimo w [линк] "kompilatora" na HTML se naricha htm2inc za sintaksisa na sekciite i parametrite pogledni .t fajla, kojto e shablona za shablonite :)
Ako uspeq da skalapq example sha ti pisha - ako imash waprosi......

------------------------------
I got a COMPILER, and I'm not afraid to use it!
Отговор
в отговор на Mixy #14

Ма големи сте мързели, да ви кажа ...

Къде отиде доброто старо програмиране? Готово, та готово - ми седнете си на д-тата и пишете, бе да му се не види макар, много се разглезихте ... аааааааааа, ще се караме
Mixy, дори това с TStrings си е келешлък, ако питаш мен. Не се обиждай... Какво ти пречи да пишеш директно във файла?

Отговор
в отговор на ДъpвeнФилocoф #15

Zashto da e trudno kato moje da e mnogo trudno?

Tuka shteh da razkaja edin vic ama me domarzq .... ako se kanish da otkriwash koleloto nonstop - dejstwaj! az predpochitam da se sasredotocha w neshtata koito direktno zasqgat proekta po kojto rabotq a ne da podgotwqm patishta za reshawaneto. Btw az sam edin ot naj ortodoksalnite programisti - edinstweniq chiujd kod kojto izpolzwam(i kojto ne e prosto obwiwka na OS-a) e engine za baza danni wsichko ostanalo gledam da si go pisha sam. Makar che ne mardam nikade bez uses classes, sysutils..;

------------------------------
I got a COMPILER, and I'm not afraid to use it!
Отговор
в отговор на ДъpвeнФилocoф #16

Re: Мързела е генератор на прогреса!

> Mixy, дори това с TStrings си е келешлък, ако питаш мен. Не се обиждай... Какво ти пречи да пишеш директно във файла?

Ако караме на тоя принцип, за какво въобще ни е Delpni с неговите IDE, обекти и компонентен модел? Давай да блъскаме на добрия, стар Assembler! Или пък направо да разкараме компютрите - лист и молив стигат!

Сега сериозно: програмата ми плюе доста работи и почти няма статична информация. Освен всичко, HTML страниците ще трябва да са пригодни за директно публикуване в web (с форми, навигация и т.н.), с възможност за настройка от потребителя на генерирания изход и др. Сещаш се, че директното писане във файла не е най-удачния вариант. Ако имаш сериозни идеи, готов съм да ги изслушам. Просто в момента нямам време да преоткривам топлата вода (иначе не ми липсва ентусиазъм) ...

Mixy
Отговор
в отговор на SDR #17

Re: Компоненти за генериране на HTML

10x!

Свалих библиотеката и я разгледах. Но за момента ми е малко трудно - без описания и коментари, доста тежко се чете чужд код. Но за без пари - толкова!

Примерите наистина ще бъдат доста полезни и ще предадат завършен вид на съответните програми. Моя съвет е на първо време да сложиш един .txt описателен файл в архива, кое (за) какво е и кои файлове се включват в съответния проект. И поздравления за Regular Expressions класа - много готин и полезен ми се струва!



Mixy
Отговор
в отговор на Mixy #18

Re: Компоненти за генериране на HTML

RgularExpressiona ne moj - mersi wse pak :) prosto sam go slojil tam zashtoto e neshto koeto mi trqbwa w search path-a :) btw w bibliotechkata moesh da namerish i web server-che koeto go izpolzwame dosta useileno poslednite godina i neshto ako shte stroish intraweb prilojenie polzwaj go s zdrawe. Btw sega se setih che nawremeto pisah edna diplomna rabota za edin "student" koqto moe da sluji kato chudesen primer za towa kak se polzwa web servera i dokumentite. Za baza danni e izpolzwan MySQL a za wrazka kam neq zeosdbo interfejsa na WEB prilojenieto e pod wsqkakwa kritika - ama za tolkowa pari i tolkowa wreme - poweche i ne moe da se iska :) Ako ne uspeesh da go kompilirash - probwaj da smenish CustomDocs.t s tozi ot bibliotekata sashto i konstrukci ot wida

cd.Sok.LastSend(tp.ProduseDoc)

sa "stari" i trqbwa da se zamenqt s

cd.SokObj.LastSend(tp.ProduseDoc)

za po-lesno ili s

cd.ProduseDoc(tp)

ako iskash da ti se poddarjat sesinite danni, koito bqha dobaweni sled prekluchwaneto na WC servera (WC kato Web Commerce da ne si pomislish neshto drugo )

Prichinata poradi koqto me marzi az da go poprawq e che naskoro si smenih rabotnata shtajga i sega ne mi se instalira nanowo MySQL i zeos inache koda gore dolo dawa predstawa za kakwo idwa rech

az malko se poowlqkoh...

za malko da zabrawq eto q i samata diplomna rabota [линк] <- w mometa ima malko probelem pri downloada ama towa da se nadqwame sha go opraqt ot bol.bg

------------------------------
I got a COMPILER, and I'm not afraid to use it!
Отговор
в отговор на SDR #19

Re: Компоненти за генериране на HTML

> RgularExpressiona ne moj - mersi wse pak :)

Да, видях, че автора е друг, но ми се беше сторило, че нещо си го пипнал. Както и да е, може и да бъркам, или друг клас да съм гледал .

Сървъра също ми е интересен, но сега нямам време да го бъзикам - по-натам ще гледам да го дръпна и разчопля ...

Mixy
Отговор