Tvorba sestav - DataReport |
![]() |
Součástí Visual Basicu 6.0 je i návrhář sestav - DataReport, který je provázán s datovým prostředím DataEnvironment. Pokud si pamatujete předchozí verze Visual Basicu, pak v nich existoval na vytváření sestav prvek Crystal Reports, který byl poměrně kvalitní a umožňoval tvorbu dosti flexibilních tiskových sestav. Jeho nevýhodou ovšem bylo, že tyto sestavy nešlo zakompilovat do EXE souboru při kompilaci projektu a bylo nutné je při tvorbě instalačních balíčků zvlášť do instalace přidávat jako samostatné soubory. Pokud si dobře pamatuji, tak bylo možné si z webu autorů stáhnout verzi s prostředím integrovaným do VB a pak šlo tyto sestavy zakompilovat, ale občas se stávalo, že takováto aplikace nepochopitelně "zavěsila". Nyní zpět k DataReportu. Jak sem již uvedl dříve, je tento návrhář vázán na DataEnvirnoment (dále jen DE). To znamená, že data se načítají přímo z RecordSetu, který vytvoříte v DE. Má to své výhody i nevýhody. Výhodou je, že pokud není RecordSet ještě otevřený, tak si ho DataReport sám inicializuje. Navíc jako vývojář máte možnost si RecordSet zinicializovat ještě dříve, než spustíte jeho zobrazení v DataReportu a změnit jeho parametry - třídění záznamů nebo klidně i celý Source, což je vhodné například pro sestavy, kdy předtím provádíte určitý výběr dat z RecordSetu na základě nějakých parametrů. Nevýhod DataReportů je několik, uvedu ty, na které jsem narazil při vývoji mých projektů. V první řadě - DataReport není zrovna flexibilní, spousta jeho objektů nemá schopnost změny parametrů během runtime. Například pokud byste chtěli mít v DataReportu obrázek, který se bude měnit podle nějakých parametrů, tak na to zapomeňte. Jako další nevýhodu vidím to, že DataReport neumožňuje založit více sekcí Detaily, tudíž nemůžete vytvářet reporty složené z více RecordSetů. Ovšem nechtěl bych, aby tu vyznělo, že DataReport je nějaký špatný nástroj, to ne. Pro běžné sestavy, kterých je většina, je naopak velmi jednoduchým a pohodlným nástrojem, který Vám umožní tvorbu sestav v několika málo minutách. Na speciální sestavy ale asi budete muset zainvestovat do některého z komplexnějších profesionálních nástrojů. |
![]() |
Autor: The Bozena |