QBS >> Elementy standardowe >> Q-Tenberg >> Podręcznik do Q-Tenberga >> Lekcja 4

Lekcja 4: Programowanie wydruku

 

Lekcja 4: Wydruk zazwyczaj trzeba oprogramować

Wszystko pięknie, ale zazwyczaj jednak chcemy, aby na wydruku znalazły się dane z bazy danych. Co więcej, dane te chcemy jeszcze odpowiednio przetworzyć, policzyć jakieś sumy i inne bajery.

Twórcy Q-Tenberg'a stanęli przed problemem: jak to zrobić, żeby wydruk oprogramować, ale żeby nie trzeba było przekompilowywać programu po każdej zmianie wydruku. Odpowiedź jest prosta: własny kompilator!

Po wciśnięciu ikonki w dolnym lewym rogu "Edycja kodu programu", pojawia się nam prosty edytorek. Widzimy w nim kod programu, który domyślnie wygląda następująco:

void main(Buffer mainBuf){}

Coż to za dziwny język - zapytacie? Czyżby java? Oczywiście, że nie, kompilator javy to trochę za duże przedsięwzięcie jak na edytor wydruków. Język ów nazywa się QVL (Q-Line Virtual Language) i generalnie najlepiej poznaje się go metodą czytania cudzego kodu. Być może dowiemy się o nim więcej w kolejnych lekcjach. Na razie wystarczy powiedzieć, że możemy wywoływać metody obiektów, jest kilka klas i nie można definiować nowych. Mamy też pętlę while oraz specjalną sekcję łapania wyjątku skończenia strony "do{} afterbreak{}" analogiczną do javowego "try{} catch(PageBreakException e){}".

Generalnie, wywołanie wydruku rozpoczyna się od przekazania sterowania programowi poprzez wywołanie main(mainBuf). mainBuf jest obiektem klasy buffer i jest to nasz "uchwyt" do wydruku - on udostępnia nam metody, dzięki którym możemy wrzucać pozycje do tabelki itd. Następna lekcja przybliży nam ideę buforów.

Następna lekcja