void __fastcall TForm1::Button4Click(TObject *Sender)
{ // Hisobot tugmasi bosilganda String str; str = ExtractFilePath(Application->ExeName)+"\\report.fr3"; frxReport1->LoadFromFile(str); frxReport1->ShowReport(); } Бу кодни ёзишдан олдин ҳисобот файлини яратиш лозим. Бу файлни яратиш учун, frxReport1 компонентаси устида сичқончанинг ўнг тугмасини чертилади, ҳосил бўлган менюдан Edit Report банди танланади. Шунда ҳисобот файлини ҳосил қилувчи ойна ҳосил бўлади (38.3–расм). Бу ойна ёрдамида ҳисобот файли яратилади. Бунинг учун ойна ёрдамида файлни фойдаланувчи томонидан яратилган маълумотлар база билан боғлаш учун менюлар сатридаги Report бандидан Data бандини танланади. Шунда 38.4–расмда келтирилган ойна ҳосил бўлади. Бу ойнадан керакли банднинг олдига белги қўйилади ва ОК тугмаси босилади. Шунда 38.3–расмда келтирилган ойнанинг ўнг қисмида маълумотлар базасининг майдонлари билан боғланган ҳолда, ҳисобот яратиш учун маълумотлар базасига боғланган майдонлар ҳосил бўлади.
38.3–расм: FastReport ҳисоботлар яратиш ойнаси
38.4–расм: МБ танлаш
Ҳосил бўлган майдонларни ишчи соҳадаги MasterData бандига жойлаштирилади. MasterData бандини танланиб, унинг ҳусусиятларидан DataSet бандига frxDBDataset1 ёки фойдаланувчи томонидан ўзгартириш киритилган номи берилади. MasterData бандига жойлаштирилган майдонларни турли кўринишда жойлаштириш мумкин (38.5–расм).
38.5–расм: MasterData бандига майдонларни жойлаштириш
38.5–расмда келтирилган MasterData майдонидаги изохларни ёзиш учун 38.3–расмда келтирилган ойнанинг чап томонида келтирилган компонентлардан Text object компонентасидан фойдалинилади. Бундан ташқари ҳисоботларни жадвал шаклида олиш мумкин. Бунинг учун ҳисоботни тайёрлашда ҳар бир майдоннинг хошиясидаги чизиқларни кўринишини таъминлаш керак бўлади. Бу ҳисоботни тайёрлашда ReportTitle бандини қўлланилади. Бу бандга жадвал кўринишининг юқори сарлавҳа қисмини, жадвалнинг керакли бўлган изоҳлар келтириш мумкин (38.6–расм). Ҳисобот яратишда маълумотларни бир – бирига қўшиш ёки бирлаштириш, стандарт функциялардан фойдаланиш ёки фойдаланувчи томонидан яратилган функциялардан фойдаланиш мумкин.
Жадвал кўринишда тайёрланган ҳисоботни ҳам листинг 38.1 да кўрсатилганидек чақириш мумкин. Агар икки ва ундан ортиқ кўринишдаги ҳисоботлар мавжуд бўлса, у ҳолда листинг 38.1 га ўзгартиришлар киритилади. Бу ўзгартиришлар листинг 38.2 да келтирилган.
Листинг 38.2: Hisobot тугмаси босилганда сўров ойнаси ҳосил қилиш.