Friday, September 12, 2014

Summarize from subreports in JasperReport

One from typically reporting tasks is calculate aggregate operations: summarize, counting, averaging. JasperReport allow run this operation. But if you work with subreports you can meet with strange behavior. Below I will tell about one aggregate operations - calculating sums and pay attention upon not evident moments.

Main principle of summarizing is passing sum value from subreport to main report and accumulate it in accord value on main report. We can modify sample from previous article for get such result:
Picture1: Report with sums.

Monday, September 8, 2014

Runing JasperReport subreport from java code

In previous post I created JasperReport report with subreport and runned it from through iReport. But, I think, more interesting is way to run it from java code.

Wednesday, August 6, 2014

Using JavaBean datasource for report and subreport in iReport

Usually I prefer use pure SQL as datasource for various database-related tasks, e.g. reporting. But for some tasks is better way to use JavaBean as datasource model. Below I will write sample such datasource and reveal how use it for obtain such result.
Picture 1: Report, based on JavaBean datasource.

Tuesday, June 24, 2014

Minus one crutch

I migrated one of my projects used Firebird1.5 to version 2.5. Main problem of this migration was broken backward compability of Firebird SQL-dialect. Because in this project is more than 500 SQL-queries I wrote text analyser for:

  1. get sql from java, python, pascal and self-written DSL.
  2. analyzed sql queries and show recommendation for new version.
So, I migrated FB2.5 month ago and now have some infers:
  • now I haven't problems related with FB1.5 will not work on modern platforms.
  • now don't need external extension (UDF in FB terminology). FB2.5 has own good tools.
  • in FB2.5 have increased performance.
But I have revealed two bad surprises. First surprise: because I can't test queries results I was caught sorting  problems with null values. So, new syntax is more strict. The second problem - on Linux one query works very slow. At the same time on WinXP on VirtualBox this query works in 5 times faster. May be it is only Ubuntu problem, need test on other distros.

Useful link: From Firebird 1.5 to 2.5

Friday, June 15, 2012

mkv 2 avi

Для всей папки с mkv:
for f in *.mkv; do mencoder "$f"  -oac mp3lame  -ovc copy -o "avi/${f%.mkv}.avi"; done

Tuesday, June 5, 2012

Хоть я и не люблю Java

но временами она меня радует. Недавно порадовала либка для обработки опций коммандной строки args4j. На данный момент эта библиотечка самая простая в использовании вещь из всех мной перепробованных и не тянет за собой никаких зависимостей.

Thursday, May 17, 2012

Предыдущий пост заставил меня вспомнить не менее прекрасный тред на ту же тему. Тут избранные цитаты:

Ну можете и подождать - мы, пользователи, Fedora, выступим early adopters (мы постоянно проверяем за вас опенсоурс новинки, это нормально), проверим, чтоб все работало, а мэйнтейнеры ваших дистров подберут уже готовое и отлаженное. Главное, чтоб они ничего не попортили.
...
Я просто читать умею, в отличие от, и представляю, зачем все эти улучшения - avahi, pulse, systemd, теперь вот это. Кстати, бойтесь, Леннарт примерно с год назад нащупал еще одну тему, которая требует переделки :), но это уж пусть он сам анонсирует, когда придет время.

Ну и самое вкусное:
Да тут почти все камменты написаны неграмотными троллигна ради, а ты цепляешься ко мне, человеку почти без троек закончившему советскую школу, т.е. интеллектуальному элитарию на фоне дикарей, рожденных в 1990е.